关于DOOM的伪3d的工作方式,我已经看到了很多资料,并且浏览了一段时间的游戏代码,但仍然看不到过程的核心。我了解二叉树的排序过程和纹理加载,但是我无法确定它是如何预先确定要渲染的visplane位置的。我尝试用LÖVE2D自己制作类似的系统,使用多角形矩形网格,这些网格根据相机看待它们的角度而弯曲(爱我一些三角函数),但是它并没有真正提供我想要的图像。>
基本上,我有一面100像素宽的墙。我可以确定它的相对位置,并在屏幕上渲染它的纹理。我们甚至可以根据与墙壁的距离对纹理进行一些大小更改。这样我们得到...
但是墙壁一直都盯着相机。所以我们把它放在一个网格上,然后...
...嗯,这很丑。现在,我可靠地理解了所涉及的数学。我只需要此墙是四边形的顶点的x,y坐标,就无法为其提供可靠的公式。