The Nuclex.Graphics library provides supporting components for advanced graphics code. This currently includes a general-purpose primitive batching system and a debugging aid for drawing debugging overlays into a scene.

Primitive Batching

When you're drawing lots of small objects consisting of just a few polygons each, calling wiki:DrawUserPrimitives() hundreds of times is inefficient because today's GPUs are optimized for batch-processing large amounts of data. The classes in the 'Batching' help you collect smaller polygons into larger batches before sending them to the GPU.

Debugging Overlays

It's often difficult to verify that movement vectors, normals, bounding boxes and other properties involving math-intensive code are right. With the DebugDrawer, you can easily draw debugging overlays into the scene, including wireframe and solid-filled boxes, triangles and arrows.

Automatic Vertex Declaration

The VertexDeclarationHelper class in Nuclex.Graphics can free you from the work of having to maintain a separate VertexElements list for your vertex types and counting bytes to determine the offsets of vertex fields. This makes your vertex structures easier to maintain, more readable and eliminates the risk of your vertex element list going out of sync.

Last edited Dec 3, 2009 at 8:05 PM by Cygon, version 7


No comments yet.