我一直想解决几天的怪异问题,我想知道是否有人可以帮助我。
我有以下几条信息:
射线原点和法线可以位于3D空间中的任何位置,但是它们必须以#1中描述的矩阵作为父项(矩阵本身可以在3D空间中具有任何初始旋转和/或位置)。
我需要做的是计算父矩阵的旋转,以确保射线原点和射线方向对齐,以确保射线与目标点相交,最好使用向上矢量如果有不止一种可能的解决方案,则对齐。
有什么简单的方法可以计算出来吗?
编辑:
有些图片正好显示了我正在尝试做的事情。抱歉造成混乱!
在此图片中,橙色立方体表示父矩阵(不旋转),黄色球体表示射线源,蓝色箭头表示射线方向。还有一个向上矢量和目标点。
我需要旋转将射线源和方向作为父对象的矩阵,以便使射线直接指向目标对象,并使射线源落在由父矩阵位置,目标点和上矢量定义的2D平面上
这是第三个示例,显示射线方向现在如何直接指向目标点。
最后,这是另一张图片,粗略显示了整个对象如何与上矢量对齐。
这里的主要问题是没有什么是常数-父矩阵偏移(读取:位置)可能会更改,或者射线的原点和方向可能会更改。目标点也将移动,向上向量也将移动。这意味着我需要弄清楚当对象在3D空间中移动时如何重新对齐所有内容。