14.11.2014 Views

Procedural modelling in Houdini based on Function Representation

Procedural modelling in Houdini based on Function Representation

Procedural modelling in Houdini based on Function Representation

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

4.4 <str<strong>on</strong>g>Procedural</str<strong>on</strong>g> functi<strong>on</strong>-<str<strong>on</strong>g>based</str<strong>on</strong>g> <str<strong>on</strong>g>modell<str<strong>on</strong>g>in</str<strong>on</strong>g>g</str<strong>on</strong>g> <str<strong>on</strong>g>in</str<strong>on</strong>g> Houd<str<strong>on</strong>g>in</str<strong>on</strong>g>i<br />

Figure 4.4: The <str<strong>on</strong>g>in</str<strong>on</strong>g>teracti<strong>on</strong> with the FRep API (Kravtsov 2011)<br />

4.4 <str<strong>on</strong>g>Procedural</str<strong>on</strong>g> functi<strong>on</strong>-<str<strong>on</strong>g>based</str<strong>on</strong>g> <str<strong>on</strong>g>modell<str<strong>on</strong>g>in</str<strong>on</strong>g>g</str<strong>on</strong>g> <str<strong>on</strong>g>in</str<strong>on</strong>g> Houd<str<strong>on</strong>g>in</str<strong>on</strong>g>i<br />

4.4.1 The <str<strong>on</strong>g>modell<str<strong>on</strong>g>in</str<strong>on</strong>g>g</str<strong>on</strong>g> workflow<br />

Modell<str<strong>on</strong>g>in</str<strong>on</strong>g>g us<str<strong>on</strong>g>in</str<strong>on</strong>g>g FRep nodes is very similar to the traditi<strong>on</strong>al approach of procedural <str<strong>on</strong>g>modell<str<strong>on</strong>g>in</str<strong>on</strong>g>g</str<strong>on</strong>g><br />

<str<strong>on</strong>g>in</str<strong>on</strong>g> Houd<str<strong>on</strong>g>in</str<strong>on</strong>g>i. FRep nodes can be classified as primitives and operati<strong>on</strong>s. In order to<br />

keep the workflow as natural as possible without forc<str<strong>on</strong>g>in</str<strong>on</strong>g>g users to adapt to new nodes, FRep<br />

Houd<str<strong>on</strong>g>in</str<strong>on</strong>g>i’s built <str<strong>on</strong>g>in</str<strong>on</strong>g> primitives Box, Sphere, Torus, C<strong>on</strong>e and Tube (called Cyl<str<strong>on</strong>g>in</str<strong>on</strong>g>der <str<strong>on</strong>g>in</str<strong>on</strong>g> the FRep<br />

API) can be used.<br />

Mak<str<strong>on</strong>g>in</str<strong>on</strong>g>g use of Houd<str<strong>on</strong>g>in</str<strong>on</strong>g>i’s native primitive nodes also enables us to reuse guide geometry and<br />

handles. Figure 4.5 shows a basic example of an ord<str<strong>on</strong>g>in</str<strong>on</strong>g>ary box and sphere be<str<strong>on</strong>g>in</str<strong>on</strong>g>g fed <str<strong>on</strong>g>in</str<strong>on</strong>g>to<br />

an FRep blend node. The FRep node at the end of the tree (frep_node6) is needed for<br />

polyg<strong>on</strong>isati<strong>on</strong> and outputt<str<strong>on</strong>g>in</str<strong>on</strong>g>g the mesh.<br />

In additi<strong>on</strong> to the already menti<strong>on</strong>ed primitive types, the <str<strong>on</strong>g>in</str<strong>on</strong>g>termediate layer (or to be more<br />

precise, the traversal algorithm described <str<strong>on</strong>g>in</str<strong>on</strong>g> Secti<strong>on</strong> 4.4.2) is also aware of the Transform<br />

SOP which can be employed for scal<str<strong>on</strong>g>in</str<strong>on</strong>g>g, translat<str<strong>on</strong>g>in</str<strong>on</strong>g>g and rotat<str<strong>on</strong>g>in</str<strong>on</strong>g>g (see Figure 4.6).<br />

19

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!