Hasty Briefsbeta

Bilingual

Wavelets in 3D Graphics

2 days ago
  • Haar wavelet basis is applied to compress low contrast textures in a 3D polygonal game engine, leveraging its multiresolution properties.
  • The main problem is high memory usage: a typical scene requires ~200MB for textures and mipmaps; simple palettization causes stutter.
  • A compressed representation using Haar nonstandard decomposition allows incremental reconstruction of mipmaps, avoiding sudden decompression hits.
  • Compression steps: weighting coefficients, discarding small ones, quantizing with neural network, and Huffman coding.
  • Achieves 8:1 compression with no visible artifacts; up to 35:1 usable depending on contrast; blockiness can be mitigated by bilinear filtering.
  • Drawbacks: increased complexity in caching and pipeline; suggests using zlib may have been simpler.
  • Haar is chosen for speed and intuitivity; other wavelets were explored but memory is currently not the bottleneck.