我是否正确地为立方体贴图指定了我的坐标?

时间:2013-04-01 21:33:27

标签: c++ opengl texture-mapping

到目前为止,我对立方体贴图的理解是,需要为立方体中使用的每个顶点指定3D纹理坐标,而不是2D纹理的(u,v)坐标。

一些假设

  • 立方体贴图使用标准化顶点来表示三角形的纹理坐标。

  • 这些标准化顶点类似于指定的实际顶点:标准化纹理坐标使用其相应顶点的大小。

  • 因此,如果顶点的单位大小为1,则其标准化纹理坐标N为1.0f / sqrt(3.0f);

以下哪些假设是正确且不正确的?如果有任何不正确,请说明原因。

修改

虽然没有必要,但可以理解的是一个例子,或者更确切地说,推荐使用它的方法是什么 - 使用可编程管道。

1 个答案:

答案 0 :(得分:3)

立方体贴图是由在立方体拓扑中排列的6个二次纹理组成的纹理。立方体贴图纹理坐标的唯一关键数量是它们的方向。在立方体贴图中,其纹素由起始于立方体中心的矢量方向寻址。纹理坐标向量的长度无关紧要。假设你有两个立方体贴图纹理坐标

(1, 1, 0.5)

(2, 2, 1)

它们都处理相同的立方体贴图纹理。