DXT is not Enough
- texture footprint matters for games
- retail moving to 17GB of DVDs
- not ok for distrib and consumers
Quality - Size - Decompression speed
This way is done
- zip for DXT
- Memcpy right to the GPU
Why do I care?
- shouldn't keep full zip archive in memory
- only keep around what's streamed.
Though to bin-sort assets in to proper archives
- so instead, leave textures to ??
IDTech5
- RAGE different texture requirement
- Tons more texture data
- store as hyper compressed
- convert to DXT runtime
Down-sides
- very processor intensive
- introduces 2x noise ( DCT )
- DXT color quality is very low
Different idea
- why we post-compress DXT data?
- no error introduce
- can store in memory hyper compressed
Data set
- Random collection of images
- some from games
- some from public
- some from img library
- includes DDS headers
DXT
- orig 37 mb
- dxt1 7.63 mb
- dxt1 + zip 4.82
- dx1 + zip(indv) - 5.1
Tricks - lossy
- De-interleaving: let low together, hi together
DXTi ( de-interleaving)
- Dxt1i 7.63
- Dxt1i 7.63
Huffman compression
- ditionary system
- AAAABBBC 56 bit
- 0000 11 10 8 bit
DXTih ( huffman )
Delta encoding
- creates duplicate symbols for easy compression
DXT1ihd( + delta encoding )
Code book
- code book of colors ( unique)
- delta encode them
- store 256 bit index into codebook
- slide window
Expanding blocks
DX1Tihc8
Timings
CRUNCH codec!!!
-spend offiine compression
Comments
Post a Comment