ivfix reads an Inventor object and restructures it to improve the object's rendering performance. ivfix
processes the scene graph in two phases:
Phase 1)
Analyzes the organization of the input scene graph, and tries to sort it a better way to take
advantage of coherence. For example, it tries to organize subgraphs by common textures, since
switching textures is expensive. Once sorted, it also tries to combine subgraphs so that the
final result has fewer nodes.
Phase 2)
"Flattens" the subgraphs that result from the first phase. This tessellates all shapes into
triangles that are then organized into triangle strips. For example, two spheres may be combined
into one triangle strip.
Warning!ivfix does not try to preserve any non-appearance attributes, such as names. It will also
remove most engines, animation nodes, and field-to-field connections. ivfix is best run on individual
objects, not on entire scenes. When rendered, the output object will be equivalent to the original file,
but much of the object hierarchy will be lost.
Note also that the output file may be larger than the input file. For example, a sphere node will be
converted into triangle strips.
The following command line options are allowed:
-a Write an ASCII file. The output file is binary by default.
-ddir
Add dir to the list of directories to search, e.g. for file nodes.
-h Print the usage message.
-n Do not generate any normals.
-p ivfix usually tries to define properties as SoVertexProperty nodes. This option prevents that.
-t Do not generate any texture coordinates.
-v (Verbose) Display status information during processing.
-V (Very verbose) Display more detailed status information.