我一直想知道为什么我们必须始终定义D3DVERTEX
的原因。是因为微软希望有机会把它放在一个类和重载运算符中,还是有其他原因?
由于
答案 0 :(得分:8)
这样您就可以使用任何方便的应用程序。如果你需要法线作为顶点的一部分,你可以拥有它。如果您不需要法线,那么每个顶点可以节省12个字节。如果您需要颜色信息,纹理坐标,镜面反射参数等,那么您可以根据具体需要选择是否定义它们。
如果微软要提供“D3DVERTEX”结构,你要么拥有500个不同的版本,不同的字段组合,要么你有一个巨大的版本包含每个可能的值,从而消耗你的带宽。