2

我目前正在处理 OpenGL ES (2, iOS 6)……我有一个问题

一世。让 是一个必须绘制的网格。而且,

ii. 我可以要求旋转/翻译,以便改变观点。

那么,我如何(实时)知道显示的任何顶点的位置?

先感谢您。

杰加普

4

2 回答 2

2

目前还不完全清楚你在追求什么,但是如果你想知道你的对象在做了一堆旋转和平移之后在哪里,那么一个非常简单的选择,如果你在你的程序代码中而不是在着色器中执行这些更改, 是简单地将变换矩阵的最后一行或最后一列(取决于您使用的是行主矩阵还是列主矩阵),这将是对象中心的最终平移作为坐标向量。

最后一行或最后一列与将最终变换矩阵乘以对象的局部坐标中心向量(即 (0,0,0,1))相同。

如果您想知道对象的顶点在哪里,而不是对象的中心,则将局部坐标空间中的该顶点乘以最终的变换矩阵,您将得到该顶点所在的新坐标。

于 2013-04-02T05:47:36.547 回答
0

我想指出两点:

  1. 背面剔除丢弃三角形,而不是顶点。
  2. 三角形也被剪裁,使它们在视锥内。

我很好奇您为什么关心未显示的内容?

于 2013-04-02T04:45:38.767 回答