GDCChina09 blizzard的Colt McAnlis的文章。
使用megatexture处理terrain的material。
Updatemegatexture,使用render to render target固然可以做到合成texture的目的,但是没有压缩的texture sample效率太低了,我们需要一种realtime compressable的texture合成技术。
Id的解决方案:
Jgp->rgba8->dxt,但是会有:
- Jpg的压缩率要高于dxt
- 质量失真和压缩解压缩效率比较低的问题
Bliz的方案:使用huffman编码对dxt进一步压缩。
- 给出的一个数据是达到1:16的压缩率(对比1:6的dxt)
- 对dxt格式中的block color和selector bits分别huffman压缩
- 但是unique的color多了之后就会降低压缩率,所以使用vector quantization把large data set根据相似性分组,然后把相似的颜色弄成一个颜色,这样就又提升了压缩率了。
把compose和标准megatex的形式做一个结合。
Examplebased texture synthesis:sample texture as a function of the neighborhood