Geometric Modeling on the GPU

The introduction of programmable GPUs is one of the major advances in computer graphics. GPUs can be viewed as vector oriented, parallel, stream processors. Their simple architecture is the secret of their high performance, which for certain classes of computations, is up to ten fold that of the fastest x86 CPU. GPUs were designed to improve the capabilities of rendering engines. Nevertheless, they can also be employed in many other fields. Applications that fit into their computational model will benefit the most from their high throughput.
There are numerous examples of advanced rendering algorithms that have become implementable, as a result of using the new generation of GPUs, in real-time applications. On the other hand, the full potential of the GPUs in the geometric modeling process is far from being fully explored. The aim of this project is to further investigate this research path.

Beyond Real-time Displacement Mapping

Striving for photorealism, texture mapping and its more advanced variations, bump and displacement mapping, have all become fundamental tools in computer graphics. Recently, the introduction of programmable graphics hardware has even enabled the employment of displacement mapping in real-time applications. While displacement mapping enables the actual modification of the underlying geometry, it is constrained by being an injective mapping. Further, it is also limited by mapping the geometry of only the (low-resolution) smooth base surfaces, typically by displacing their vertices, to follow high frequency details. Drawing from a recent work on Deformation-Displacement Mapping (DDM), in this work we offer real-time solutions to both limitations, solutions that now make it possible to employ the DDM paradigm on programmable graphics hardware. By reversing the role of the smooth base surfaces and their texture details, both the one-to-one constraint and the base smooth surface resolution limitation are resolved. Furthermore, this role-reversal also paves the way for other benefits such as a tremendous decrease in the memory consumption of texture detail information in the DDM and the ability to animate the details over the base surface. We show that the presented scheme can be used effectively to generate highly complex renderings and animations, in real-time, on modern graphics hardware with very little burden on the main-memory and CPU. The capabilities of the proposed method are demonstrated for both rational parametric base surfaces and polygonal base surfaces.


Real-Time Geometric Deformation Displacement Maps using Programmable Hardware

Presented: in Pacific Graphics 2005

Published : The Visual Computer, Volume 21 number 8-10 791-800, September 2005



Below, several samples of geometric texture tiles are shown.
Below are several movies that are screen snap-shots captures from a PC equipped with Nvidia 6800 GPU.
High quality versionThe movie demonstrates the use of animation in the texture space. The thorn tile above is animated by translating it in the surface parametric space. While in the second half of the movie, the tile is also scaled in the base-surface normal direction.
High quality versionAn animation of a model of Buddha (see above) over the body of the Utah teapot. Six instances of a model of Buddha are used in this animation sequence. The model is vertically folded back and forth, again by translating it in the parametric plane. This example demonstrates the abilities of Hardware-based DDM (HDDM) to handle extremely complex models as input.
High quality versionA metamorphosis between a thorn and a flower (see tiles above). This movie shows how two compatible tiles are blended together to create an in-between tile. In this example, the colors of the two extreme tiles are also blended together, per vertex, to create the intermediate colors.
High quality versionHDDM is used to add details to some of the objects in the scene. This movie demonstrates how HDDM can augment existing scenes with complex geometric details. The scene is modeled after the M.C.Escher's Reptiles drawing. In it, a model of a bottle, on the right side, demonstrates HDDM metamorphosis between a thorn tile and a flat tile that recreates the original shape of the bottle. On the left side of the scene, a model of a glass is ornamented with a chain-like tile. In this case, the surface of the glass is not shown. At the back of the scene, one can notice a model of a bucket covered with a thorny scale. For this model, the geometric texture is simply animated in the parametric texture space.
  This example shows multiple articulated robots that placed and animated over the body of the Utah teapot. This example demonstrates that HFFD can be used in conjunction with complex animations. This example also show that parametric textures can be used along with HFFD.
  A sphere with thorns. In this example we show a linear metamorphoses of a flat tile and a thorn. The tiles are texture mapped and shaded. In this example, part of the frames are a result of using an extrapolation of the two input tiles instead of interpolation.
This is a joint work with Eran Karpen and Gershon Elber, Technion.


Hardware-based Free-Form Deformation(HFFD)

Free-Form Deformations (FFD) is a common modeling technique. In FFD an object is embedded into a volume in space, and when that volume is deformed, this deformation is applied on the embedded object too. FFDs are usually implemented using trivariate Bezier or B-spline functions. When considering continuous representations, FFD can be analytically defined as the composition of a surface S into a trivariate function T. In practice, FFD is usually applied to polygonal models, and the exact composition can be approximated by evaluating the trivariate function at the vertices of the model.

In this work we present a method that would evaluate a useful class of B-spline functions, namely the class of (trivariate) uniform quadratic and cubic B-spline functions, on the GPU in real-time. The method enables us to animate the movement of deformable objects in complex graphical scenes at interactive rates.

Presented:  2005 Israel-Korea Bi-National Conference on New Technologies and Visualization Methods  for Product Development on Design and Reverse Engineering

Published: pending

Four swimming whales are animated in a transparent volume. The transparent shell represent the extreme iso-surfaces of the trivariate function.
A series of articulated ants are deformed in real-time using HFFD to follow a mebius band.
A model of a Porsche is animated within a general graphic scene. In this case the scene is modeled after one of M.C.Ascher's drawings.