Wednesday, February 20, 2013

How to Derive the Near and Far Clip Plane Distances From the Projection Matrix

Here is a method to derive the near and far clip plane distances from the projection matrix. Assuming the the projection matrix is created with two entries that are calculated as:

// n = near clip plane distance
// f  = far clip plane distance

C = matrix[2][2] = (-f - n) / ( f - n);
for a column major matrix
D = matrix[2][3] = (-2 f n ) / ( f - n)

The near and far clip planes are calculated:

float n = D / (C - 1.0);
float f = D / (C + 1.0);


Wednesday, December 12, 2012

Zero Decompression Time (ZDT) Texture Compression Example



I put an example of ZDT compression at  http://lightpointsoftware.com/ to compare against one of the kodak images.  The compression is 16:1 and requires almost no transcoding to DXT from the ZDT format.



Wednesday, October 24, 2012

FBX Viewer 3.00 posted


I posted the source to my FBX viewer.   It has been significantly reworked to isolate the renderer from the FBX importing step.

http://code.google.com/p/fbxviewer/


It supports Visual Studio 2010 and Visual Studio 2012.

x86 and x64 bit builds.

FBX SDK v 2014.0 beta 2

Uses FreeImage to load texture files.

Uses DirectX 9.0 for rendering, however, since the graphics API is abstracted, other version of DirectX or OpenGL could be used.

-Doug




Sunday, July 22, 2012

High Compression Rate Texture Mapping



I have implemented texture compression method scheme that involves compressing a source image, using a high compression rate, vector quantization style compressor, into a format that decompresses directly into DXT format, so the transcoding step is significantly reduced or eliminated.

This scheme is specific to compressing block-based, GPU texture compression.

This compression method is covered a patent called "High Compression Rate Texture Mapping", filed on November 19, 2010.  Patent 20110115806. I have granted the open source community immunity from this patent.