【问题标题】:Unity; Vector3.Forward, changes x position, not declared z position统一; Vector3.Forward,改变 x 位置,未声明 z 位置
【发布时间】:2017-06-10 06:17:18
【问题描述】:

有人可以向我解释为什么当我声明“Vector3.Forward”或等效的“Vector3(0,0,1)”时,它会在 X 位置而不是 Z 位置更改游戏对象?这真的很简单,但我说不出话来。 1 所在的第三个变量是针对 z 位置的,而不是针对 x 位置的。对?

代码有效,我只是对其背后的逻辑感到困惑。

【问题讨论】:

  • 很可能是 Lestat 在他的回答中所说的 请下次在您的问题中添加代码。它将帮助人们了解您做错了什么。

标签: c# unity3d qvector3d


【解决方案1】:

“它会改变”是什么意思?你是 .Translate-ing 吗?

如果是,您可能正在本地空间中翻译它。如果你想在世界空间中翻译,将第二个参数添加到 .Translate 中,如下所示:

transform.Translate(Vector3.forward * Time.deltaTime, Space.World);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-09-15
    • 2010-09-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多