JekSun97 / gdTree3D

Plugin for procedural generation of 3D trees of varying complexity for Godot Engine.
Other
172 stars 7 forks source link

Close to perfect procedural tree growth, can blending be added between whole number values? #4

Closed lukasbmeier closed 2 months ago

lukasbmeier commented 2 months ago

I have been loving the program and messing with different values and trees. Given the nature of the plugin, it almost asks for a tree growth animation to be attempted. Attached is the best I could come up with given my limited practice with the tool. The jump between branch counts is the biggest immersion breaker. The height and max radius transitions are smooth given the float values. My ask is would it be possible to blend the "integer/whole number" values more smoothly (either make float or other means)? The original animation was over 60 secs, but I shortened it to 10 secs to for easier viewing. One method is using tweens, the other is full animation player.

https://github.com/user-attachments/assets/b2c65d39-13c7-4742-a8a5-e89a0c224920

https://github.com/user-attachments/assets/aa47d294-9dc1-4d2e-968f-83e957105ee5

JekSun97 commented 2 months ago

When you increase the number of branches, the polygons are redrawn instantly, which cannot be done smoothly.

But you can initially set the desired number of branches in the minimum tree growth, and then gradually increase the parameters "branch_length", "branch_length_falloff", and "length" or "climb_rate" this will give a smoother animation.

lukasbmeier commented 2 months ago

I appreciate the fast response. Two questioons: What does climb rate affect? I do not see the affected visually but must be missing it. (edit - NVM on the first questions I was using a height of 0 for testing)

Two: I set the final number of branches (6) and decrease the branch length and falloff and it looks very similar to the sapling stage I had, however with the twigs with that many branches overwhelm the "sapling." is there a way to introduce twig density as a float parameter as I think with that addition this method can definitely work for a smooth growth animation. ? image image

lukasbmeier commented 2 months ago

I tried to scale the twig as low as I can (0.05) but still its more overwhelming that a sapling would have imo. I appreciate the work and response immensely and dont want this request to come off as ungrateful. No worries if I am asking too much for sapling -> mature smooth growth using this image

JekSun97 commented 2 months ago

What does climb rate affect?

"Climb Rate" uses the overall height of the tree, including the distance between branches, "Length" determines the height of the lower trunk of the tree, starting from the "ground" and up to the upper branches. The difference can be seen here: https://github.com/user-attachments/assets/500dcf8f-adce-49f4-bd9a-d1649b248496

Two: ...

As I wrote above, everything that is changed in the plugin using the "Int" type, unfortunately, cannot be changed smoothly.

I tried to scale the twig as low as I can (0.05) but still its more overwhelming that a sapling would have imo.

Yes, when I wrote this plugin I did not think about dynamic animation of growth, in the near future I will try to minimize the increase of all parameters in the plugin, as time will allow

lukasbmeier commented 2 months ago

Thank you. Loving the plugin. My only request now is twig parameters to affect the number of leaf/twig planes per branch. Thanks for all your hard work, glad to see this in the Godot community.