简单的3D投影和方向处理?

我目前正在开发一个古怪的复古飞行模拟游戏,并遇到了一些关于我的3D项目的问题,因为我找不到任何关于这个主题的实用通用文档。

如何在以下情况下将我的游戏世界中的简单位置向量转换为屏幕上的2D向量:

摄像机的位置 摄像机方向(见下文) 视场范围 屏幕的高度和宽度(以及宽高比)

我还在寻找一种存储方向的方法,我已经编写了一个基本的向量库,但我不确定如何存储旋转,以便在摄像机(和投影代码)以及实际的游戏对象旋转处理中使用。我目前正在考虑使用四元数,但是在投影转换中,使用四元数是否可能(且易于)代替矩阵?

有关在代码中实现四元数的好资源吗?我需要编写一个单独的复数库吗?

谢谢您的时间和任何帮助 :)

原文链接 https://stackoverflow.com/questions/7576263

点赞