Muli3D is a software rendering library that works across various platforms and supports advanced features seen in modern graphics cards.
The SDK for Muli3D is available for download and comes complete with documented source-code, an application framework, and several samples that present different aspects of the library.
Some of the standout features of Muli3D include its 16/32bit color-output, its wireframe and solid fill rendering capabilities, and its vertex and pixel shaders. Vertex shaders transform vertices to projection-space and set up registers for the pixel shader, while pixel shaders calculate a pixel's color and (optionally) its depth.
Muli3D also supports depth-correct interpolation of shader registers, as well as rendering of primitives through indexing into a vertex buffer. Other key features include multiple vertex data streams, standard 2d textures, cubemaps, and volume textures, mipmapping, texture sampling in vertex and pixel shaders, and no internal limits on texture dimensions.
Perhaps most impressive of all, Muli3D allows you to render to cubemap faces, which can be treated as standard 2d textures and used as frame- or depthbuffers. And with its comprehensive math-library that supports vectors, planes, quaternions, and matrices, there's no limit to what you can create with this powerful tool.
Recent updates to Muli3D have included a cleaned up project workspace, depthbounding capabilities that allow for the restriction of drawing operations to a specified depth range, fixed typos, and copy-constructors added to math-classes, among other minor changes. Overall, Muli3D is an impressive software library that's well worth considering for your next project.
Version 0.8: N/A