Penguin: a Portfolio Model for Adjusting Graphics Level of Detail
Rich Gossweiler, Bernardo Huberman
When there are multiple objects in the scene and the rendering engine
cannot render all of them at their best quality, objects are often rendered
at a reduced level of detail (LOD). It is not uncommon to model an object
with different numbers of polygons. A penguin viewed from afar needs less
polygons than when it is close to the camera.
Two problems with using multiple levels of detail are (1) determining who
gets reduced or improved and (2) when this change happens. Frequent changes
to objects cause them to jitter or "pop" as they go from one level to
another. This can be visually distracting.
The idea with a portfolio model is to model each object as a stock. Its
value is based on how "important" it is -- in this case, how much visual
angle it consumes and how close to the center of the scene. Since the
camera and objects move, this importance value fluxuates over time. We call
this variance or risk.
The portfolio model compares the change in importance over time to evaluate
its variance or risk. Using these measures, the system can calculate what
objects are returning the most value and which ones are more
risky. Combining these numbers produces a risk curve. Setting the system to
low-risk means that objects won't change their level-of-detail much, but
they may never acheive their highest resolution. By setting the risk high,
objects try to achieve their best resolution, but risk popping a lot as
they are forced to vary LOD more.
For the developer, this model reduces the problem to optimizing the risk
curve and/or setting a single risk number regardless of the number of
objects in the scene.
Methods and apparatuses for selecting levels of detail for objects having
multi-resolution models in graphics displays, Richard Gossweiler,
Bernardo Huberman, November 29, 1999.