利用者:Testscreenings/Ivy port

提供: wiki
< 利用者:Testscreenings
2010年7月31日 (土) 23:37時点におけるwiki>Mindronesによる版
(差分) ← 古い版 | 最新版 (差分) | 新しい版 → (差分)
移動先: 案内検索

Concepts and progress on porting the Ivy generator over to Blender

A kind of log for porting the ivy generator over to blender.

What do we want

  1. get something that works like the ivy generator directly in blender.
  2. have the ivy growth be animatable? --> growing animations
  3. influenced by forcefields maybe?
  4. curve guides for growing directions
  5. immediate mode without animation --> paint gPencil strokes on surfaces and have the ivy branches generated approximately along them
  6. see if this can integrate with the tree generator made during BBB now in trunk, see http://www.bigbuckbunny.org/index.php/trees/

links

here are some links to related stuff:

original Algorithm

redesign

notes on the redesign

Coding stuff

reports

bug reports, comments, suggestions

First run

mainly pictures:

adhesion

the original adhesion:


The original algorithm for the adhesion has two problems:

  • 1. There is no guarantee that an adhesion vector gets calculated because the adhesion vector gets calculated as the normal vector of the hyperplane of the face if and only if it hits the face. (see the implementation of adhesion2)
  • 2. The translation to Pythons runs way to slow, mainly because the test is calculated for every face.


adhesion3


I have written adhesion3 as a compromise for speed, trading accuracy. As a first step the 4 closest faces are calculated. In a second step each face gets covered in sampling points which lie on the edges and the surface of the face in a regular pattern. The adhesion vector is then calculated from the NodePoint to the closest sampling point.

Sampling.jpg
Sampling2.jpg



{{#dpl:

 |debug=0
 |skipthispage=no
 |mode=ordered
 |namespace=利用者
 |titlematch=Testscreenings/Ivy port/%
 |shownamespace=false
 |format=Subpages,²{#ifeq:²{IsUpper¦²{SUBPAGENAME:%PAGE%}²}²¦1¦²{Multiply¦*¦²{#expr:1+²{PagetitlePartsAmount¦%TITLE%}²-²{PagetitlePartsAmount¦²{PAGENAME}² }² -1 }² }² ²{SUBPAGENAME:%TITLE%}²¦}²,,

}}