use*_*128 3 c++ vector direction
我正在研究一个问题,我在右手坐标系中工作,其中 y 轴垂直。我得到了一个表示 3 维向量的结构,如下所示:
struct vec{float x; float y; float z; };
Run Code Online (Sandbox Code Playgroud)
我需要编写一个函数,该函数接受代表北的单位向量和代表玩家的前向向量的单位向量,如果他们面向北的方向多于向南的方向,则返回。不幸的是,我不知道从这里去哪里,我相信我必须做类似的事情:
PlayerDirection = sqrt((PlayerVector.x *= PlayerVector.x)
+ (PlayerVector.y *= PlayerVector.y)
+ (PlayerVector.z *= PlayerVector.z));
Run Code Online (Sandbox Code Playgroud)
但我不知道从这里该去哪里。任何帮助/解释都会有帮助,谢谢。
对两个向量应用点积。如果两个向量之间的角度小于 90 度,则点积将为正值,否则为负值。