c++ - (DirectX) 生成旋转矩阵以匹配 vector

标签 c++ matrix directx directx-9

我如何获取一个 vector 并生成一个矩阵,该矩阵将旋转网格以沿该 vector 面对?

细节:

我想让我的播放器模型旋转以面向相机的方向。现在,它总是指向它开始的方向,而转动只会让相机看向玩家的一侧。

我试验过 D3DXMatrixYawPitchRoll,并取得了部分成功。然而,我注意到完美对齐的一些时间漂移,并且当我尝试在偏航时俯仰时出现一些奇怪的摇晃问题。

最佳答案

它的工作方式几乎与我发布的这个答案完全相同:

Rotate a sphere so that its pole heads towards the camera

主要的变化是“相机位置”-“对象原点”改为“对象原点”-“相机位置”。

关于c++ - (DirectX) 生成旋转矩阵以匹配 vector ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6204583/

相关文章:

android - 如何缩放大于 4096 像素的位图?

matlab - 矩阵的值在其边缘周围平滑地下降到零

python - 如何构建一个 N*(N+1) 矩阵,其数量在 1~N*N 范围内且完全分布?

c# - D3DImage TryLock 失败

c++ - 防病毒软件一直将我的项目检测为病毒

c++ - 如何识别 Windows 静态库中的导出函数?

c++ - 使用 ATL 将 LPTSTR 转换为 LPWSTR

c++ - 模板参数组合排序

c++ - “placement new”有什么用?

wpf - 像素着色器将纹理投影到任意四边形