Speed vs. Quality Tradeoffs
Since these graphs consist of distinct nodes that communicate
only by frame buffers, it is possible to switch nodes between
hardware and software. This has several applications:
- Switching by shader: whenever a hardware variant of
a shader is available, use it, even if it has reduced
functionality. This is useful for fast previews. For example,
while the user interacts with the scene by moving an object,
fast preview rendering is done; when the interactions stops a
high-quality image is rendered and displayed.
- Switching by layer: speed can be further accelerated
by marking layers as optional, for example rendering only the
base surface without the more expensive Phong highlight
layer.
- Switching by functionality: specific effects can be
achieved by switching functional node groups between hardware
and software rendering. For example, an object may be rendered
in software with accurate transparent ray-traced shadows, or it
may be rendered in hardware with nontransparent shadowmapped
shadows. In general, any effect that requires surface mapping
can be switched in this way by rendering the map in software
and the mapped object in hardware.
- Switching by object: entire objects and all their
associated shaders can be switched. This is useful for scenes
that are well suited for hardware rendering, except for a small
number of objects that require the flexibility of
software.
- Layer Persistence: recomputation of software layers
can be delayed for some frames. It is often sufficient to
re-use light maps for multiple frames. Not every node in the
graph needs to be executed for every frame.
These modes are a central design goal because they provide a
smooth continuous tradeoff between speed and quality.
Traditionally, hardware rendering was considered to generate
images with poor quality, good enough for fast games but not for
professional video or film production. But in fact not all
aspects of a scene have equally high demands on rendering
complexity - some parts of a scene can easily be rendered in
hardware, while others absolutely require software. mental ray
3.3 is designed to permit this arbitrary combination of hardware
and software rendering.
Return to Autodesk Index