|On this page|
An IFD file is a scene description file, containing all the information (lights, cameras, geometry, shaders, render properties, and so on) necessary to render a frame. Mantra takes an IFD file (generated from a Houdini scene) and renders it.
The IFD file also has any geometry needed to render the scene (for example, character skins, props, and so on). There are two methods for storing the geometry:
Temporary geometry files (default)
Writes the geometry into temporary files and references the temp files in the IFD. This has several benefits:
IFD generation can be faster, because Houdini can write the IFD and the geometry files in parallel, instead of writing each piece of geometry into the IFD one at a time.
IFD reading can be faster, because Mantra can load the external geometry files in parallel.
Total disk space used is smaller, because the external geometry files can use compression options not implemented inside IFD.
Geometry can be shared across frames. Each IFD file represents a single frame. When writing multiple IFD files for an animation, Houdini can detect static geometry and have the IFD files reference the same external file across multiple frames. If you have a lot of static geometry (for example, sets and props), this can be a significant saving.
Writes the geometry into the IFD file as binary. This can make the IFD file very large and it can take a long time to generate the IFD file. The benefit is that one file contains everything you need to render, so it may be easier to track assets.
Note that Houdini supports a type of geometry called packed disk primitives. This type of geometry is represented in Houdini as just a reference to geometry in a file on disk, and the geometry is streamed from disk as-needed. When this type of geometry is included in an IFD "inline", only the file reference is written to the IFD, and Mantra streams the geometry from disk just like Houdini, so this type of geometry will not bloat the IFD or slow generation.
The downside of using packed disk primitives to speed up the IFD compared to using temporary geometry files (see below) is that you must manually manage the geometry files.
Where to store geometry files
Houdini may generate a large number of geometry files with an IFD. You may need to manage where the files are stored to avoid running out of disk space, and/or to make the accessible across the network for a render farm.
The Mantra render node has two separate parameters for storing render geometry files.
Local temp storage
When Save inline geometry is off, Houdini saves geometry files to this directory when you pipe an IFD directly to Mantra (as opposed to saving the IFD to disk). This is useful because you may be saving IFDs to a network disk, but when you pipe directly to Mantra you want to always use fast local storage and avoid slow network storage.
Temporary files stored for pipes should automatically be cleaned up, but due to crashes or interrupted jobs, Houdini might leave these files on disk. You should periodically remove any old files left in this directory.
See also Shared temp storage.
Set up where Houdini writes temporary geometry files
You don’t usually need to change the Local temp storage directory. This is where Houdini saves temporary geometry files when streaming directly to Mantra (for the interactive render view). The only reason to change it might be to choose a directory on a faster drive like an SSD.
Set up Houdini to inline geometry
The default is off (that is, to write geometry to external temporary files instead of inlining).
If you know your geometry won’t change, you can add this render property and turn it on to speed up interactive rendering by not regenerating geometry files:
Reuse cached outlined geometry
Normally, when Save inline geometry is off, Houdini always writes geometry files during IFD generation, overwriting any existing files. When this option is on, if a file of the same name already exists, Houdini will re-use the existing geometry files instead of overwriting it. This does not compare file modification times, it only checks the file name, so after geometry is generated once it will never be updated as long as this is on. Turning this on can speed up lighting significantly, as long as you know you won’t be updating your geometry.
If you add this property, remember to always turn it off for final renders to ensure you get the up-to-date geometry.
The Save geometry inline checkbox is a render property. You can add it to individual objects to set whether each object’s geometry should be inlined or written to temporary files.
Save Geometry Inline