From BlenderWiki

Jump to: navigation, search
Note: This is an archived version of the Blender Developer Wiki. The current and active wiki is available on wiki.blender.org.

back Ivy port

a redesign of the ivy algorithm

Problems with the original algorithm

The original algorithm is relatively rigig. it can be extended but only as a whole. The decision where the next ivynode is placed is always determined the same way.


Proposals

Modularity

The goal of a redesign would be to make the algorithm more modular in order to being able to switch growing algorithms during the growing phase depending on different things. Is the ivy climbing/attached to a surface? How far away from a surface is the growing part? How long is the root? When was the last split? How many roots are already attached to the root. External stimuli: Where is the sun? Gravity. Distance to neighboring roots. Distance to floor/seeding-point.

data structure

The data structure in the original ivy seems reasonable. To store relevant data in separate objects. What may be missing may be a better way to store the Nodes, opposed to simply having long lists. Also it may be useful to store additional data on a higher level. Something like meta-data describing larger segments of the ivy.

animation

This is still a problem. How do we want the growing to be implemented? Re-meshing the ivy at every frame? --> no/different UVs etc. speed vectors.