GithubHelp home page GithubHelp logo

radiatoryang / hedera Goto Github PK

View Code? Open in Web Editor NEW
775.0 26.0 63.0 33.43 MB

paint 3D ivy in the Unity Editor, watch procedurally generated meshes simulate growth and clinging in real-time

License: GNU General Public License v2.0

C# 96.69% ShaderLab 3.31%
unity 3d 3d-models game-development painting foliage-wiggle environment-art game-art

hedera's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

hedera's Issues

Leaf Position is incorrect

Incorrect results when using the Tool. (see the Leafs) any quick Idea how to fix this issue?
(it's the ExampleIvyMeshExport.obj file inside the Example folder)

Hedera Leaf position

error CS0120: An object reference is required for the non-static field, method, or property 'SceneView.drawGizmos'

Hello, I imported the unity package from Releases into my Unity project (2019.4.8f1). It warned me about obsolete APIs, then I got the following error:
Hedera\Editor\Scripts\IvyEditor.cs(282,18): error CS0120: An object reference is required for the non-static field, method, or property 'SceneView.drawGizmos'

Then underneath it:

Some scripts have compilation errors which may prevent obsolete API usages to get updated. Obsolete API updating will continue automatically after these errors get fixed.

Do you know how to fix this?

Thank you!

On Runtime?

hi mate hedera great job. congratulations. Is there a way to do this in the runtime and not the editor?

Export to OBJ not working

Hi,
At the start I wannt to say that this plugin is awesome. I have an issue with exporting to obj. Don't know why, when I press that obj button it ask to hide/delete or not instantiate but when I pressed any of them it saves empty object. Maybe I'm missing something here. My Unity version is 2020.3.4f1.

add assembly definition files? need help

if anyone is an expert at the .asmdef stuff, I can't seem to get it to work... I can get the C# to link together OK, but it falls apart when Unity Editor can't seem to link IvyEditor to IvyBehavior, this breaking the inspector

pull requests are welcome

Incorrect leaf placement on concave meshes (with solution discussed)

First, thanks for this tool! It's incredible.

I am building a blocky environment out of mesh colliders. Painting Ivy works correctly, but ivy that grows around corners (say across a roof then down a wall) fails to respect the new surface and does not calculate the new adhesion normal.

It results in unrealistic looking growth, and leaves that only respect the initially painted normal.

leaf_flat

It's because of the "find closest point on a mesh collider" logic. It is looking at vertices, and in my case the nearest vertex is very far away (big blocks!).

I have coded a dirty solution for my case : to find the closest point on a mesh collider I send many ray casts outwards from the start point in a rough sphere.

It seems to fix the issue! But obviously it's even slower (by how much I'm not sure).

If you want me to make a PR with my dirty solution let me know :)

leaf_angle

Issue with Vines

Hi @radiatoryang ! First off, I'd like to say : HATS OFF TO YOU! This is a work of ART! KUDOS to you my brother! PLEASE keep working on this BEAUTIFUL work of art! <3 Second, I'm having a hard time understanding some of the functions being used in some of the code. I am studying the code in order to learn procedural generation of plants & I think that some of these functions may rely on the use of a DLL file. I would like to ask if you could possibly make this DLL-free. In other words, I would like to ask if you could possibly put the Source code of the DLL into Unity CS form. Or if there's some way you could make it an Open DLL? Either way. Anyway, once again, KUDOS to you, my friend & keep on keeping on with this project! It's BEAUTIFUL! <3

Sincerely,

Thundros

Painting not working in Unity 2020.1.0a17

When I push "paint", click and drag mouse in editor window - nothing happened. I just select objects in editor, like usual. I'm using Unity 2020.1.0a17 and HDRP 7.1.7.

fake issue

I just wanted to upload this GIF here, no actual issue here lol

hedera_paint_demo

v2.0.0 roadmap -- paint grass and trees

This is planned for the far future when I have time again, maybe Summer 2020 -- but it wouldn't be very difficult to expand Hedera to simulate grass and trees, and become a complete foliage solution.

Most of the hard part was figuring out the Unity Editor file architecture and core mesh generation. In theory, grass and trees are just another type of ivy: grass is ivy that spreads laterally and points upwards with no branches, and trees are ivy that branch more readily and grow upwards / avoid walls.

But this is pretty low priority for me -- there's already a lot of grass and tree plugins out there, and skilled Hedera users can already use it to paint trees.

v1.3 to-do list / possible roadmap

not sure when I'll get to these features, if ever, but here's what I'm thinking about for the semi-distant future

  • improve leaf placement
  • add IvyProfile option to generate ivy as one mesh (via submeshes)
  • add IvyProfile option for 32 bit index
  • add IvyProfile + IvyBehaviour option to automatically generate LODGroup
  • (when Unity 2021.2 ships) evaluate if URP or HDRP are mature enough, consider packaging NodeGraph leaf shaders for them

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.