3d 三维顶点到二维图像的转换

3d 三维顶点到二维图像的转换,3d,mapping,2d,perspective,vertices,3d,Mapping,2d,Perspective,Vertices,我想做的就是创建一个视口,将平面正方形的三维地形映射到二维透视图 想象一下,从一片完全平坦的田野向外眺望。离得越远的地形块看起来越向地平线向内倾斜,看起来也越短 我已经做了大量的研究,研究如何科学地正确地做到这一点,并发现: (除了这篇文章是2D的。我希望它也能说明视口的“高度”或z维度) 有没有一种更简单的方法来做到这一点,并创造真正的感知,而不必编程: -三维光线/球体相交 -球体上点到点的距离 我想问的是,是否有一种更简单的方法可以将3D世界中的顶点映射到2D平面,同时保持透视扭曲的真实

我想做的就是创建一个视口,将平面正方形的三维地形映射到二维透视图

想象一下,从一片完全平坦的田野向外眺望。离得越远的地形块看起来越向地平线向内倾斜,看起来也越短

我已经做了大量的研究,研究如何科学地正确地做到这一点,并发现:

(除了这篇文章是2D的。我希望它也能说明视口的“高度”或z维度)

有没有一种更简单的方法来做到这一点,并创造真正的感知,而不必编程:

-三维光线/球体相交

-球体上点到点的距离

我想问的是,是否有一种更简单的方法可以将3D世界中的顶点映射到2D平面,同时保持透视扭曲的真实性

任何有用的文章或建议将不胜感激


谢谢

执行此操作的标准方法是使用和矩阵。这根本不需要任何距离计算:对于每个顶点,它需要4x4矩阵乘法和除法来缩放最终的2D点

而且,是的,它在科学上和几何上都是正确的,尽管我应该注意到它假设了一个平面的,像照相机一样的投影屏幕和一个理想的,像针孔一样的镜头。如果您想要基于“视角”的视图,最好的选择可能是添加为后期处理

您可能应该从介绍计算机图形学的文本开始,比如Alan Watt的3D计算机图形学。一部古老的“经典”作品是Foley、van Dam等人的《计算机图形学:原理与实践》