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.

Chapter 3<br />

Technical background<br />

Work<str<strong>on</strong>g>in</str<strong>on</strong>g>g with 3rd party code and frameworks can be challeng<str<strong>on</strong>g>in</str<strong>on</strong>g>g. Al<strong>on</strong>g with the technical<br />

details, a fair understand<str<strong>on</strong>g>in</str<strong>on</strong>g>g of the overall envir<strong>on</strong>ment is required to make the right design<br />

decisi<strong>on</strong>s later. This chapter gives an overview of the FRep API and the key HDK c<strong>on</strong>cepts<br />

relevant to this project.<br />

3.1 FRep API<br />

This project is us<str<strong>on</strong>g>in</str<strong>on</strong>g>g the FRep API developed by (Kravtsov 2011). He describes the communicati<strong>on</strong><br />

between API and applicati<strong>on</strong>s as follows:<br />

“The ma<str<strong>on</strong>g>in</str<strong>on</strong>g> and most comm<strong>on</strong> way of communicati<strong>on</strong> between the FRep API<br />

and higher-level applicati<strong>on</strong>s us<str<strong>on</strong>g>in</str<strong>on</strong>g>g FReps is through the parameters of the FRep<br />

entities and through the creati<strong>on</strong> of complex FRep trees c<strong>on</strong>ta<str<strong>on</strong>g>in</str<strong>on</strong>g><str<strong>on</strong>g>in</str<strong>on</strong>g>g the aforementi<strong>on</strong>ed<br />

entities.” (Kravtsov 2011)<br />

3.1.1 Architectural overview<br />

The FRep API itself makes use of a number of libraries and underly<str<strong>on</strong>g>in</str<strong>on</strong>g>g APIs. Figure 3.1<br />

shows the API <str<strong>on</strong>g>in</str<strong>on</strong>g> the c<strong>on</strong>text and <str<strong>on</strong>g>in</str<strong>on</strong>g> relati<strong>on</strong> to the <str<strong>on</strong>g>in</str<strong>on</strong>g>termediate layer. The plug<str<strong>on</strong>g>in</str<strong>on</strong>g> developed<br />

acts as <str<strong>on</strong>g>in</str<strong>on</strong>g>termediate layer between the external applicati<strong>on</strong> (Houd<str<strong>on</strong>g>in</str<strong>on</strong>g>i) and the API.<br />

5

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

Saved successfully!

Ooh no, something went wrong!