Microsoft KB Archive/175831

INFO: Rendering Acceleration Techniques

PSS ID Number: Q175831 Article last modified on 11-07-1997

IRIX:3.51,3.7; WINNT:3.51,3.7

IRIX winnt

================================================================ ==

The information in this article applies to:

 Softimage 3D for IRIX, versions 3.51, 3.7 == Softimage 3D for Windows NT, versions 3.51, 3.7 == 

= MORE INFORMATION =

Acceleration Techniques
BSP Tree and Ray Classification are two different acceleration techniques that the renderer uses to speed up the ray tracing process. If objects are not rendering as you would expect, or there are problems in the image, the acceleration technique does not impact on it.

The acceleration technique determines which algorithm mental ray uses to set up information that is necessary to do the ray tracing faster.

BSP is usually (but not always) faster than Ray Classification, specifically if your scene is under ~200K triangles. An advantage to Ray Classification is that it uses a constant amount of memory even as your scene gets larger. If your scene is average size and you have plenty of memory, it is recommended to use BSP.

How BSP Works
BSP builds a tree that can have either “branches” or “leaves.” For a given region of your scene, it divides it in half - two branches. Then it looks at the number of triangles in each region (leaves). If a leaf has more than a maximum number of triangles (specified by the ‘Max Size’ parameter in the interface), then you get two more branches that divide that part of space in half again. Again, look at the number of triangles in each leaf. If the value is below “Max Size,” stop dividing, if not, continue to divide until you reached the “Max Depth” value. “Max Depth” determines how many times you chop up space (into smaller and smaller bits) until you stop, even if you have more triangles in your leaf than you want.

This is necessary because mental ray uses the tree to determine what object is hit when it casts a ray. If the number of triangles in your leaves is very small, then mental ray evaluates the tree. It only considers triangles in that box and disregards the others (less evaluation results in faster rendering).

Ideally, you want your leaf size as small as possible, but if the computer was allowed to, it would perform endless subdivisions. The parameter “Max Depth” prevents this. If endless subdivisions where allowed (subdividing until every leaf is the size you want), some geometric situations would cause problems. For example, at the top of a sphere there are many triangles all meeting at a point; regardless of how many times you divide space at that point, you will always have the same number of triangles in your box. Without a “Max Depth” value to stop the subdivision, the computer would continue to divide to try to get the requested value of triangles in the box (which is impossible).

Your mileage may vary, again playing with the acceleration techniques and their parameters only affects how fast your scene renders, and how much memory the renderer needs. They are completely unrelated to image quality (anti-aliasing, missing polygons, etc.). Rendering the same scene with different acceleration settings results in exactly the same image. The only difference is the time it takes to render and how much memory is used.

Polygon Rendering Problems
If, when you render with the Softimage renderer, the results are fine and then when you render with mental ray there are problems (flickering, missing polygons), your model may have a geometry problem such as overlapping polygons, edges backtracking over themselves, etc.

Problems like this do not occur with NURBS or patches because mental ray performs the polygon conversion itself. For more details on controlling the surface approximation parameters, refer to documentation on Info > mental ray.

= REFERENCES =

SOFTIMAGE 3D mental ray Programmer’s Guide, page 22-23.

If you have any questions concerning the information contained in this article, contact support@softimage.com by e-mail.

= Additional query words: si si3d si3dren =

Keywords : si si3d si3dren Version : IRIX:3.51,3.7; WINNT:3.51,3.7 Platform : IRIX winnt Issue type : kbinfo ============================================================================= Copyright Microsoft Corporation 1997.