置换贴图的好处到底是什么?他们是否真的加快了更高数量的多边形的渲染速度,或者这只是美工人员和引擎内工具暂时降低多边形数量的一个好把戏?我能看到的唯一真正的东西可能是层次细节算法,但只能在更远的距离上。
发布于 2011-01-18 03:19:20
它可以为渲染高多边形模型提供更紧凑的结构。置换贴图可以包含每个像素少至1个字节。如果你将其细分为置换贴图,那么你将在GPU上节省大量的内存带宽。
一个简单的顶点结构。
struct Vert
{
float x, y, z;
float nx, ny, nz;
float u, v;
};该结构的大小为32字节。因此,如果你想象你可以将顶点的数量减少四分之一(你应该能够做更多的地狱),并用一个1字节的高度图替换所有其他的顶点,那么你使用的内存量如下所示:
100,000 poly object = 3,200,000 bytes using vertex struct alone.
25,000 polys + 100,000 entry height map = 900,000 bytes.ie显示映射在28%的内存中为您提供相同的数据。获胜!:D
如果你存储一个法线贴图,并使用w/a组件来表示高度,那么你使用了400000字节的纹理,你现在的大小是1,200,000字节,仍然是大小的37.5%。此外,您现在可以删除12字节的正常存储,您真的下降到同样的数字,900,000字节。
你应该能够得到比这更高的几何压缩率。因此,总而言之,对于存储数据的一小部分,您可以获得一个外观更好的模型。
作为一个额外的好处,使用法线贴图/高度贴图系统,您还可以轻松缩放,以便功能较弱的机器只使用法线数据,您仍然可以获得相当好的结果。
https://stackoverflow.com/questions/4714618
复制相似问题