Performance Tips

The biggest improvement regarding 3D graphics in Eyeshot version 12 is the FastZPR feature. When this feature is not active (the number of items in the scene does not go beyond the Model.Entities.MaxComplexity value) you can play with the following settings.

 

Display Mode

Always use the least acceptable ViewportLayout.DisplayMode. For example, if you are drawing only wires, don't forget to set the display mode as Wireframe. If you are drawing 3D objects, try first Shaded display mode, it uses colors only instead of all material properties. 

 

Silhouette Curves

Silhouettes are computationally expensive and can slow down a scene. They can be either disabled entirely, drawn only at the end of a dynamic movement (the default) or drawn at every frame. Set the ViewportLayout.SilhouettesDrawingMode property of the desired display mode to:

Model.Wireframe.SilhouettesDrawingMode = silhouettesDrawingType.Never;
Model.Shaded.SilhouettesDrawingMode = silhouettesDrawingType.Never;
Model.Rendered.SilhouettesDrawingMode = silhouettesDrawingType.Never;

 

Planar Reflections

Available only in the Rendered display mode, they require an extra drawing pass so they decrease the frame rate. They can be disabled with the following property:

Model.Rendered.PlanarReflections = false;

 

Realistic Shadows

Available only in the Rendered display mode, they require extra drawing steps so they slow down drawing speed. They can be disabled with the property:

Model.Rendered.ShadowMode = shadowType.None;

 Their quality, but also the time required to draw them, can be tuned with the property:

Model.Rendered.RealisticShadowQuality = realisticShadowQualityType.Low;

 

Edges and Internal wires

In Shaded and Rendered display modes, you may want to turn off edges and internal wires drawing in this way:

Model.Shaded.ShowEdges = false;
Model.Shaded.ShowInternalWires = false;
Model.Rendered.ShowEdges = false;

 

Transparent Objects

Many transparent objects will for sure slow down drawing. Keep their number at the minimum or keep low their triangles count.

 

Scene Graph

A complex multilevel scene structure using Block/BlockReference will allow saving memory but in general, does not improve the frame rate.

 

Tessellation

The bigger is the scene number of segments/triangles the slower will be to be drawn. You can try reducing the overall segments/triangles count calling Model.Entities.RegenAllCurved() with the biggest acceptable deviation (chordal error) tolerance.

Was this article helpful?
0 out of 0 found this helpful
Have more questions? Submit a request

Comments

0 comments

Please sign in to leave a comment.