我正在尝试使用 DirectX7 在 2d(z 坐标为 0)中使用顶点和索引缓冲区创建 3d 效果。
用一张图更容易解释:
问题是线条坏了。他们应该是直的。为了渲染这个图像,它被分解成三角形并使用 DrawIndexedPrimitiveVB 进行渲染。显然,每个三角形都有点不同,我不明白为什么。
我在这里错过了一些微不足道的事情吗?
我不确定这是否会有所帮助,但源和目标四边形如下:
SPoint4:= pBounds4(1, 1, W - 2, H - 2);
DPoint4:= Point4(ProjTo2dX(i, FlyDist + DeepDist, W), ProjTo2dY(0, FlyDist + DeepDist, H), ProjTo2dX(W - i, FlyDist, W), ProjTo2dY(0, FlyDist, H), ProjTo2dX(W - i, FlyDist, W), ProjTo2dY(H, FlyDist, H), ProjTo2dX(i, FlyDist + DeepDist, W), ProjTo2dY(H, FlyDist + DeepDist, H));