在我之前的问题中,确定在对四边形进行纹理处理时,面部被分解为三角形,并且纹理坐标以仿射方式插值。
不幸的是,我不知道如何解决这个问题。提供的链接很有用,但没有达到预期的效果。作者总结道:“请注意,图像看起来好像是一个延伸到远处的长矩形四边形......它可能会变得相当混乱......因为这会产生“错误的深度感知”。”
我想做的是让纹理保留纹理的原始缩放。例如,在梯形情况下,我希望纹素的垂直间距相同(使用绘图程序创建的示例):
请注意,由于垂直间距相同,但四边形的明显变形,纹理中的直线空间不再是世界空间中的直线。因此,我认为所需的映射是非线性的。
问题是:这在固定功能管道中是否可能?我什至不确定更一般的四边形的“正确答案”是什么。我想插值函数会很快变得非常复杂,我意识到“保留原始缩放”并不完全是一种算法。世界空间三角形在纹理空间中不再是线性的。
顺便说一句,我不太了解第 3和第 4纹理坐标;如果有人可以将我指向一个资源,那就太好了。