June 20

More mipmapping

Hi All,

I've added mipmapped texture rendering to Sapphire to speed-up rendering of extremely large texture maps. I'll post some screenshots tomorrow, and explain a little bit more about the technology and benefits thereof. Anyway, to enable efficient mipmap texture rendering, I have had to modify the mipmap generation scheme in L3DT. Previously, mipmaps were generated at 4x resolution steps, meaning the 1st mipmap was 1/4th the resolution of the full map, the second was 1/16th, the third 1/64th, etc. This was fine for the 2D renderer in L3DT, and didn't use up much disk space. However, for efficient 3D texture rendering I've had to change to 2x resolution (1/2, 1/4, 1/8, etc). The upside is that Sapphire will now render megatextures efficiently, but the down-side is that L3DT will now take a bit longer to generate mipmaps, and that more space on disk will be taken up by those mipmaps (~1/3 the total map size). Given that the mipmaps now let me fly around over a terrain with a 3 gigabyte texture using only a 256Mb graphics card, I consider a little extra storage space to be a pretty good trade-off.

Also, the next release of the Zeolite plugin API will include functions to manipulate these mipmaps, just in case clever plugin developers can find another clever use for them.

Cheers, Aaron.

2011/01/13 07:34

Permanent link (2007:jun:20)