I have added the ability to adjust how many trees to grow and also place the seed point of each tree.
I sorted out all known problems with the multiple L-system implementation. Now any number of L-systems can be grown at a given time. The position of the trees is currently hard-coded though I will make this dynamic at a later date. This marks all the planned features implemented though to a varying degree of success. The final stage of this project will only focus on improving these features.
I have started implementing the final feature of the L-system which is to grow multiple trees simultaneously.
A linked list is created for each tree. In each list are pointers to structures used to generate the tree. There are still some bugs in the implementation which cause the lists to not draw correctly which causes frequent crashes. Figure 1 shows the greatest complexity currently achieved. The goal of the new L-system string interpretation is to reduce a bias on branches when calculating self-occlusion and self-collision. Growing multiple branches almost simultaneously has been achieved but I have further improved the system. Below in green we see the branch growth order. At each stage the branches are grown in numerical order. I have therefore created a simple function to shuffle the order of growth which is shown in purple.
|
AuthorWrite something about yourself. No need to be fancy, just an overview. Archives
March 2014
Categories |