In article <000f01c79cf1$65f0cdc0$1402a8c0@eyx2>, "Edwin Young" <edwin@bathysphere.org> writes:
While you're at it, why not just go straight to 16-bit or floating-point?
Because that's a far more invasive change to the code. Currently the DAC is always passed around as an array of 256 entries of 3 bytes each. However, there is fudging around with the actual values that restricts them to the range 0-63 instead of 0-255. I never quite realize that fractint cheaped out on the 256 color colormap in this way until I started digging in the code.
In my own program I use a float in the range [0..1] for pretty much all intermediate color calculations, and only truncate to 8-bit when writing the final color out to the image. That will hopefully make it easier to support super-high-quality formats like OpenEXR in the future. Just a thought.
Do you have a URL for the specification of OpenEXR? I've never heard of it before. At some point all you describe is in the works. However, the code base as it stands is still a far cry from being easily extensible to support such a change. Its going to get there, but its still farther than closer. -- "The Direct3D Graphics Pipeline" -- DirectX 9 draft available for download <http://www.xmission.com/~legalize/book/download/index.html> Legalize Adulthood! <http://blogs.xmission.com/legalize/>