Tweak3D - Your Freakin' Tweakin' Source!
Pixel and Vertex Shading (Page 8/9)


Posted: February 25, 2001
Written by: Tuan "Solace" Nguyen

Vertex Programming Benefits (cont.)

Geometry Morphing
Using the same concepts of Procedural Deformation, a game can have realistic organic effects. When a person smiles, a lot of facial changes occur. Certain muscles expand in a direction while others contract all causing other things to occur at the same time. These organic animations can now be performed in real time using keyframe animation again. The programmer can pick a starting point and ending point and have the vertex engine interpolate every frame in-between with ease. The result is a smooth and realistic looking animation.

Irregular Transform
Some of the other less significant effects are lens effects such as those looking through a telescope or a fishbowl. NVIDIA has also implemented some of the effects that were introduced with the Voodoo5 such as Motion Blur. Also, games can now contain custom lighting effects previously not possible before or was possible but with a huge performance hit. An example of this is two-sided lighting. Before, if you had a flat surface and wanted to light up both sides of the surface differently, you’d have to model both sides of the flat surface, doubling triangle count and reducing performance. But now vertex shading allows custom lighting on both sides without having to double-model.


Bad example, but motion blur's benefits are quite obvious...


Accelerated High-order Surfaces


Per-pixel setup for Per-pixel bump mapping

You can think of high-order surfaces as true curved surfaces. If you’re familiar with 2D geometry from school, an example of a linear formula would be y= m*x + b or a straight line. Many straight lines can be used to create an illusion of a curved surface, but you’ll need many, many linear surfaces to accomplish a single curved surface. NVIDIA has improved acceleration of high-order surfaces in the GeForce3. A high-order formula would be y = mx^2 + b where x is raised to a power. X doesn’t have to be raised to the power of 2, but for most common surfaces, 2 would be enough to describe them mathematically.

You’ll be seeing more games this year with curved surfaces. This should help improve the look of characters and environments greatly. It would be impractical to render oranges using straight lines if you’re trying to achieve realistic models.

Next Page

  • News
  • Forums
  • Tweaks
  • Articles
  • Reviews