给定一个顶点和一个四元数,计算一个顶点3.0在第一个前面

问题描述:

我有一个顶点vertC和一个四元数quatC。这些分别定义相机的位置和旋转。我需要计算一个顶点vertX,它与vertC的距离为3.0,并正确旋转(即它直接位于相机的前面)。我该怎么做?给定一个顶点和一个四元数,计算一个顶点3.0在第一个前面

+0

您是使用C++和OpenGL还是使用Unity3D(C#)? – Draco18s

+0

C++和OpenGL。 – user1765354

使用x方向平移vertC.x + 3.0,Y方向平移vertC.y + 3.0以及Z方向平移vertC.z + 3.0来准备具有其平移分量的矩阵。让我们称这个矩阵的翻译组件为TransM。

让我们在转换之前调用顶点vertX作为vertX!。 然后最终transfomation

vertX! = quaterion * TransM * vertX

希望以后这就是你想要的。