opengl 裁剪空间中三角形的重心坐标与屏幕空间中三角形的重心坐标有什么关系[已关闭]

gblwokeq  于 2022-12-03  发布在  其他
关注(0)|答案(1)|浏览(147)

已关闭。此问题需要更多focused。当前不接受答案。
**想要改进此问题吗?**更新问题,使其仅关注editing this post的一个问题。

2天前关闭。
Improve this question
假设我有一个三角形,比如(PC0,PC1,PC2),它的重心坐标是((1,0),(0,1),(0,0)),它们都在剪切空间中。
现在我想计算屏幕空间中的插值重心坐标,我怎样才能做到这一点呢?我已经看到了一些像透视校正插值,但我不能找到一个很好的Map关系之间。

pxq42qpu

pxq42qpu1#

从屏幕空间重心(b0,b1,b2)到剪辑空间重心(B0,B1,B2)的转换由下式给出:

(b0/w0, b1/w1, b2/w2)
(B0, B1, B2) = -----------------------
                b0/w0 + b1/w1 + b2/w2

其中(w0,w1,w2)是三角形三个顶点的w坐标,由顶点着色器设置。(请参见How exactly does OpenGL do perspectively correct linear interpolation?)。
逆变换由下式给出:

(B0*w0, B1*w1, B2*w2)
(b0, b1, b2) = -----------------------
                B0*w0 + B1*w1 + B2*w2

相关问题