James T. Klosowski

Rendering on a Budget:
A Framework for Time-Critical Rendering

J. T. Klosowski and C. T. Silva
IEEE Visualization '99
pages 115-122, October, 1999


We present a technique for optimizing the rendering of high-depth complexity scenes. Prioritized-Layered Projection (PLP) does this by rendering an estimation of the visible set for each frame. The novelty in our work lies in the fact that we do not explicitly compute visible sets. Instead, our work is based on computing on demand a priority order for the polygons that maximizes the likelihood of rendering visible polygons before occluded ones for any given scene. Given a fixed budget, e.g. time or number of triangles, our rendering algorithm makes sure to render geometry respecting the computed priority.

There are two main steps to our technique: (1) an occupancy-based tessellation of space; and (2) a solidity-based traversal algorithm. PLP works by computing an occupancy-based tessellation of space, which tends to have smaller cells where there are more geometric primitives, e.g., polygons. In this spatial tessellation, each cell is assigned a solidity value, which is directly proportional to its likelihood of occluding other cells. In its simplest form, a cell's solidity value is directly proportional to the number of polygons contained within it. During our traversal algorithm, cells are marked for projection, and the geometric primitives contained within them actually rendered. The traversal algorithm makes use of the cells' solidity, and other view-dependent information to determine the ordering in which to project cells. By tailoring the traversal algorithm to the occupancy-based tessellation, we can achieve very good frame rates with low preprocessing and rendering costs.

In this paper, we describe our technique and its implementation in detail. We also provide experimental evidence of its performance and briefly discuss extensions of our algorithm.

Index Terms: Polygon rendering, visibility ordering, occlusion culling

Snapshot of PLP's traversal algorithm (in 2D example)

Click on the image to see an animation (1MB) of PLP's traversal algorithm.

We illustrate the nature of PLP's traversal algorithm in a 2D example. PLP will render geometry up to a fixed budget (of time or geometry). The different colors represent:

  • White: the input geometry (2D line segments)
  • Blue: the spatial tessellation (a Delaunay triangulation)
  • Red: the rendered geometry (and view frustum)
  • Green: the cells in tessellation considered most likely visible (whose geometry gets rendered)


IEEE - Copyright © 1999 by IEEE. Permission to make digital or hard copies of part or all of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit. To copy otherwise, to republish, to post of servers, or to redistribute to lists, requires prior specific permission and/or a fee.

plp_vis99.pdf (348987 bytes)