首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >XNA模型转换为bizzarre

XNA模型转换为bizzarre
EN

Stack Overflow用户
提问于 2013-04-11 15:46:15
回答 1查看 90关注 0票数 0

当使用Matrix.CreateTranslation(x,y,z)时,我得到了奇怪的结果。我使用固定值进行了测试,每次只使用一个变量,并确定了以下内容:

  • 当更改X坐标时,模型从左上角移动到右下角。
  • 当改变Y坐标时,模型按其应有的方向上下移动。
  • 我不打算改变Z坐标,但由于我的程序的性质,我无法确切地知道它是做什么的。

我已经画好我的模型了。旋转很好。我正在按照正确的顺序(至少我认为)执行我的翻译:scale * rotation * translation

我认为问题在于我的相机设置,但我不知道到底是什么问题。我试图创造一个自上而下风格的RTS相机。

这是我的相机设置:

代码语言:javascript
复制
campos = new Vector3(5000.0F, 5000.0F, 5000.0F)
effect.View = Matrix.CreateLookAt(campos, Vector3.Down, Vector3.Up)

我可以根据需要提供更多的信息。

EN

回答 1

Stack Overflow用户

发布于 2013-04-11 16:09:08

Matrix.CreateLookAt的第二个论点不是摄像机面对的方向,而是目标点。

如果你想让摄像机往下看,请用

代码语言:javascript
复制
Matrix.CreateLookAt(campos, campos + Vector3.Down, Vector3.Forward)

这将告诉相机,总是看一点以下的相机。

您的翻译可能不太好,因为相机没有看到您想要的位置,因此看起来模型是对角移动的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15953239

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档