Welcome to Hplus Graphics Page!

This is my old home page which has accrued stuff since forever. A more modern version is found at enchantedage.com.

   
dds-infoSome code that shows how to load DDS texture image files. 2009-06-23
game_loopHow to structure a game main loop to support fixed physics time steps, yet support a wide range of graphics solutions (including those that run faster than your physics engine). 2009-06-23
skyboxHow to draw a sky box with no seams 2009-06-23
skinningHow to draw soft-skinned animated characters using openGL. 2009-06-23
vert_weightingA quickie explanation of how vertex weighting (skeleton skinning) works. 2009-06-23
dofReal-time Depth of Field; quick and dirty implementation using only vanilla OpenGL. 2009-06-23
kwxportA .X file exporter for 3dsmax version 8 which properly exports geometry and animation under many situations where the SDK exporter or PandaSoft exporter do not. 2009-06-23
camera-descriptionA description of the implementation of my simple camera system. 2009-06-23
xskinexpThe Microsoft DirectX SDK .X File exporter for 3dsMax 5, converted to better preferences and to use the ISkin modifier rather than Physique. 2009-06-23
vdbumpHow to account for surface roughness self-occlusion with normal mapped surfaces 2009-06-23
ripplesSimple demo of ripples in a connected mesh. 2009-06-23
vertex-arraysHow to turn separately indexed vertex and and texture index arrays (such as found in a 3DSMax model, or almost any other modeling package) into an appropriately factored single-index vertex array, as used by accelerated 3D hardware (both openGL and Direct3D). 2009-06-23
simple-gl-cameraI've answered the question "how do I make the camera move independently from my objects in OpenGL" often enough. Here's how. 2009-06-23
d3dx-animationThe D3DX animation API for .x mesh files leaves a lot to be desired. 2009-06-23
nuxporterExport .X meshes with good face normals from the DeleD Pro level editor. Also includes some other features. 2009-06-23
laserboltHow to draw a laser bolt in 3D using a combination of billboarding and oriented quads. 2009-06-23
expand-bitsHow to properly expand pixel values or sound sample values from a lower bit range (say, nybbles) to a higher bit range (say, bytes). 2009-06-23
opengl-pixel-perfectThings to know in order to do pixel-for-pixel matching between textures and on-screen pixels. 2009-06-23
opengl-perfAn answer I wrote on opengl.org concerning graphics card performance. 2009-06-23
matrix-layoutDescribes the difference between DirectX and OpenGL matrices (as well as the ODE library) 2009-06-23
simple-sceneA simple set of patterns that go together to create a solid system of rendering geometry in a game. 2009-06-23
circleQuick explanation of how to rasterize a circle using the mid-point algorithm. 2009-06-23
scene-graphMy two cents in the perennial scene graph argument. 2009-06-23
direct3d-pixel-centerA brief description of how to map coordinates to the center of pixels and texels in Direct3D/D3D9. Also illustrates how these rules are different from OpenGL. 2009-06-23
fire-particlesA simple particle system makes for a camp fire. 2009-06-23
heightfield-interpolationUsing cubic Hermite interpolation to determine the height of intermediate positions in a height field. 2009-06-23
cx-fileA simple Max 5.1 geometry exporter and mesh file format, supporting animation, skinning, multiple vertex channels, multiple materials, skeletons, attachment points, and other miscellanea. The page also has source and compiled plug-in for an ATI RenderMonkey geometry loader for the Cx format. 2009-06-23