我知道这样做的四元数方法。但最终这些方法需要我们将所有有问题的对象转换到相机的旋转“空间”中。
但是,看看数学,我确信必须有一种简单的方法来获得仅基于相机的 YAW(航向)和 PITCH 的直线的 XY、YZ 和 XZ 方程。
例如,给定视锥体的法线,例如 (sqrt(2), sqrt(2), 0),您可以轻松地为 XY 平面构造线 (x+y=0)。但是一旦 Z(在这种情况下,Z 用于深度,而不是 GL 的 Y 坐标加扰)发生变化,计算就会变得更加复杂。
此外,给定应用旋转的顺序:偏航、俯仰、滚动;滚动根本不会影响视锥体的法线。
所以我的问题很简单。如何从 3 坐标视图法线(即归一化,即矢量长度为 1)或偏航(以弧度表示)、俯仰(以弧度表示)对到一组映射方向的三线方程穿越太空的“眼睛”?
笔记:
四元数我在这方面取得了成功,但是对于模拟中的每个实体来说,数学太复杂了,无法进行视觉检查,并且必须检查所有可见对象,即使进行各种检查以减少可见对象的数量也是如此。