Geometry Approximation Property Editor
| Hardware Display | Surface, Surface Trim | Surface, Surface Trim | Polygon Mesh | Displacement | Hair
Geometry approximation specifies how polygons, surfaces, and curves should be tessellated (divided into triangles at rendering time). The various methods of approximation let you reduce the number of triangles in the geometry of an object and still render a very smooth surface.
To Display: Select the object to edit and click the Selection button in the main command area. Choose the Geometry Approximation icon from the explorer view.
This type of approximation does not affect the geometry of the object; it is used for display purposes only.
Parametric
Surface U, V |
Defines the number of steps to draw between knots in U and V for surfaces. This type of approximation uses non-adaptive sampling between parametric intervals. |
Curve U |
Defines the number of steps between knots in U for drawing curves. |
Surface Curve U |
Defines the number of steps between knots in U for drawing surface curves like isolines, boundaries, etc. |
This type of approximation affects the entire geometry of an object. Surface approximation is often used in conjunction with displacement approximation. The Surface Trim options affect how imported surface objects with trims are rendered.
Surface Method/Trim Method |
Parametric: The Parametric method of surface approximation defines the U and V steps of the selected object as seen by the geometry. This type of approximation uses non-adaptive sampling between parametric intervals. Length/Distance/Angle (LDA): The LDA approximation method is a curvature-dependent approximation based on subdivisions by length, distance, and angle. This type of approximation uses adaptive sampling between parametric intervals. Fine: The Fine approximation method is a curvature-dependent approximation based on subdivisions by length. It creates extremely detailed approximation. This type of approximation uses adaptive sampling between parametric intervals. |
Parametric
U, V Step |
Changing these values changes the number of steps in the object’s surface. These parameters remain the same throughout the animation, and if the camera gets very close to the object the steps might be seen. |
Length/Distance/Angle
Length |
Subdivides the surface or curve so that no edge length of the tessellation exceeds the Length parameters. Edge is given as a distance in camera space or as a fraction of a pixel diagonal in raster space. Small values such as 1 are recommended. Length is affected by the Min and Max parameters. |
Distance |
Specifies the maximum distance between the tessellation and the actual curve or surface. The value is a distance in camera space or a fraction of a pixel diagonal in raster space. As a starting point, a small distance such as 0.1 is recommended. Distance is affected by the Min and Max parameters. |
Angle |
Specifies the maximum angle in degrees between normals of adjacent tiles of a displaced polygon or the tessellation of a surface or its displacement or between tangents of adjacent segments of the curve approximation. Large angles such as 45 degrees are recommended. Angle is affected by the Min and Max parameters. |
Stopping Condition |
Choose one of the following: Length, Distance and Angle: Tessellation continues until the Length, Distance and Angle requirements have all been met. Length, Distance or Angle: Tessellation stops when either the Length, Distance, or Angle requirement has been met. |
View Dependent |
Use this check box to go from camera space to raster space. |
Fine
Length |
Subdivides the surface or curve so that no edge length of the a tessellated triangle exceeds this value. When View Dependent is disabled, Length is calculated in object space, and edges that exceed the Length value in Softimage units are subdivided until all edges are shorter than the Length value, or until the Max subdivision level (specified in the Subdivision Limit parameters) is reached. When View Dependent is enabled, Length is calculated in raster space, and edges that exceed the Length value, as a fraction of a pixel diagonal, are subdivided until all edges are shorter than the Length value, or until the Max subdivision level (specified in the Subdivision Limit parameters) is reached. |
View Dependent |
Switches the maximum edge length threshold from object space to raster space. |
Sharpness |
Controls whether triangles generated by fine approximation use interpolated or geometric normals. When the Sharpness value is set to 0, triangles generated by fine approximation use interpolated normals, producing a smooth, rounded look. When the Sharpness value is set to 100, triangles generated by fine approximation use geometric normals, producing a crisp, faceted look. Setting Sharpness to values between 0 and 100 interpolated between the completely smooth look that you get when Sharpness is set to 0 and the completely faceted look you get when it’s set to 100. For example, a value of 50 results in a half-smooth/half-faceted look. |
Subdivision Limit
To prevent massive amounts of subdividing, a limit can be assigned to each selected object, which helps to optimize the quality of surfaces with areas of different curvatures. The defaults are 0 and 3 for Length/Distance/Angle approximation and 0 and 7 for Fine Approximation. You can usually achieve good results using the default values.
Recursive Steps Minimum |
Specifies the minimal triangulation (or recursion levels of adaptive subdivision). |
Recursive Steps Maximum |
Edges are further subdivided until they satisfy the given criterion or the Max subdivision level is reached. |
Controls how polygon mesh objects are displayed and rendered.
Discontinuity
Controls the continuity of the shading between polygons.
Automatic |
Creates a discontinuity in the shading as if there is a sharp edge between two polygons if their dihedral angle (the angle between their normals) is greater than the Discontinuity Angle. Otherwise, normals are averaged to give an illusion of smoothness. |
Angle |
Specifies the angle above which edges are sharp when Automatic Discontinuity is on. For a completely faceted polygon mesh object, set this value to 0. |
|
For faster interaction, turn off Automatic discontinuity. This will also avoid shading artifacts that can result if an edge crosses the discontinuity Angle, thus becoming smooth or faceted as the object deforms during animation. Instead of relying on Automatic discontinuity for faceted edges, use Mark Hard Edge/Vertex Property Editor. |
Subdivisions
OGL Level |
The number of times to subdivide the surface iteratively for display in the 3D views. |
Render Level |
The number of times to subdivide the surface iteratively when rendering. Each iteration increases the number of polygons, which can result in very dense and heavy geometry. |
OGL Triangulation Update |
Controls the balance between accuracy and speed when drawing polygons in the OpenGL display modes such as Hidden Line, Constant, Shaded and Textured. • Recreate at each refresh is the most accurate and always recalculates triangulation. Playback and interaction are slowest in this mode. • Skip during interaction does not recompute triangulation of polygons while you are working, and waits for you to pause before retriangulating. The display updates faster as you modify objects, but you may see some artifacts in the OpenGL views, for example, when a polygon becomes concave while manipulating points. Triangulation is still recomputed when required during playback. • Skip during interaction and playback does not recompute triangulation of polygons while you are working nor while animation is playing back. Again, this mode is faster but you may see some artifacts in the OpenGL views. • Update only when topology changes never retriangulates unless you modify the topology, for example, by adding or removing points. This mode is the fastest but potentially creates the most artifacts in the OpenGL views. |
Angle-based normals (slower) |
Controls how the normals at each point are calculated when rendering: • When on, XSI uses the average of the adjacent polygon angles, weighted according to the angle of the corresponding polygon at the point. The result is more accurate in some situations but takes longer to calculate. • When off, XSI uses the unweighted average of the adjacent polygon normals. This option is substantially faster. Although it is less accurate, the result may not be noticeable in most situations. |
The options in the displacement tab approximate areas that have had a displacement assigned to them through a texture. Displacement approximation is directly influenced by the surface-approximation values.
|
Changing these values will have an impact on rendering time and on the render region. |
Displacement Method |
Parametric: The Parametric method of surface approximation defines the U and V steps of the selected object as seen by the geometry. This type of approximation uses non-adaptive sampling between parametric intervals. Length/Distance/Angle (LDA): The LDA approximation method is a curvature-dependent approximation based on subdivisions by length, distance, and angle. This type of approximation uses adaptive sampling between parametric intervals. Fine: The Fine approximation method is a curvature-dependent approximation based on subdivisions by length. It creates extremely detailed approximation. This type of approximation uses adaptive sampling between parametric intervals. |
Max Displ. |
Specifies the maximum displacement value. This value must be set correctly for displacement maps to work properly. If the displacement value is higher than the Max Displacement value, displacement will be clipped. For example, if you have applied a displacement map to an object using a displacement value of 3, but Max Displ. Is set to 2, the displacement will be clipped to 2. |
Subdivision
Step |
Increasing the Step value will smooth the displacement effect but increase render time. Changing this value alters the number of steps in the object’s surface. This parameter remains the same throughout the animation, and if the camera gets very close to the object the steps might be seen. |
Length/Distance/Angle
Length |
Subdivides the surface or curve so that no edge length of the tessellation exceeds the Length parameters. Edge is given as a distance in camera space or as a fraction of a pixel diagonal in raster space. Small values such as 1 are recommended. Length is affected by the Min and Max parameters. |
Distance |
Specifies the maximum distance between the tessellation and the actual curve or surface. The value is a distance in camera space or a fraction of a pixel diagonal in raster space. As a starting point, a small distance such as 0.1 is recommended. Distance is affected by the Min and Max parameters. |
Angle |
Specifies the maximum angle in degrees between normals of adjacent tiles of a displaced polygon or the tessellation of a surface or its displacement or between tangents of adjacent segments of the curve approximation. Large angles such as 45 degrees are recommended. Angle is affected by the Min and Max parameters. |
Stopping Condition |
Choose one of the following: Length, Distance and Angle: Tessellation continues until the Length, Distance and Angle requirements have all been met. Length, Distance or Angle: Tessellation stops when either the Length, Distance, or Angle requirement has been met. |
View Dependent |
Use this check box to go from camera space to raster space. |
Fine
Length |
Subdivides the surface or curve so that no edge length of the a tessellated triangle exceeds this value. When View Dependent is disabled, Length is calculated in object space, and edges that exceed the Length value in Softimage units are subdivided until all edges are shorter than the Length value, or until the Max subdivision level (specified in the Subdivision Limit parameters) is reached. When View Dependent is enabled, Length is calculated in raster space, and edges that exceed the Length value, as a fraction of a pixel diagonal, are subdivided until all edges are shorter than the Length value, or until the Max subdivision level (specified in the Subdivision Limit parameters) is reached. |
View Dependent |
Switches the maximum edge length threshold from object space to raster space. |
Sharpness |
Controls whether triangles generated by fine approximation use interpolated or geometric normals. When the Sharpness value is set to 0, triangles generated by fine approximation use interpolated normals, producing a smooth, rounded look. When the Sharpness value is set to 100, triangles generated by fine approximation use geometric normals, producing a crisp, faceted look. Setting Sharpness to values between 0 and 100 interpolated between the completely smooth look that you get when Sharpness is set to 0 and the completely faceted look you get when it’s set to 100. For example, a value of 50 results in a half-smooth/half-faceted look. |
Subdivision Limit
To prevent massive amounts of subdividing, a limit can be assigned to each selected object, which helps to optimize the quality of surfaces with areas of different curvatures. The defaults are 0 and 3 for Length/Distance/Angle approximation and 0 and 7 for Fine Approximation. You can usually achieve good results using the default values.
Recursive Steps Minimum |
Specifies the minimal triangulation (or recursion levels of adaptive subdivision). |
Recursive Steps Maximum |
Edges are further subdivided until they satisfy the given criterion or the Max subdivision level is reached. |
These parameters determine the subdivision approximation for viewing or rendering hair with the Hair Renderer shader or other XSI shaders.
Subdivisions
Curve Type |
Generates a general Bezier curve for the hair. You can specify the degree of curve approximation. - Linear creates a linear curve approximation (straight segments). If you select this option, the OGL Level and Render Level options are unavailable because you cannot approximate straight lines with more lines. - Quadratic creates a quadratic curve approximation (smooth). This option doesn’t guarantee a continuous curve throughout the entire length of the hair. If the original line segments are at too steep of an angle, there may be a cusp where they meet. If you select this option, additional points required to construct the curves are generated. This results in one extra control point for each generated hair point, less one. - Cubic creates a cubic curve approximation (smoothest), guaranteeing continuity between hair segments. If you select this option, additional points required to construct the curves are generated. This results in two new control points. |
OGL Level |
The subdivision level for approximating the curves when viewing hair in the OpenGL views in the viewports. This parameter generates 2^Level line segments for approximation. For example, if this value is 0, the curves are approximated by 1 line segment; for a value of 1, by 2 segments; for a value of 2, by 4 segments, etc. The slider displays a range of 0 to 4, but you can enter a value up to 7 in the text box. This parameter is independent of the Render Level setting. |
Render Level |
The subdivision level for approximating the curves when rendering hair (in the render region or to file). This parameter generates 2^Level line segments for approximation. For example, if this value is 0, the curves are approximated by 1 line segment; for a value of 1, by 2 segments; for a value of 2, by 4 segments, etc. The slider displays a range of 0 to 4, but you can enter a value up to 7 in the text box. This parameter is independent of the OGL Level setting. |
SOFTIMAGE|XSI v.6.01