【问题标题】:Unity Player Rotation IssueUnity 玩家轮换问题
【发布时间】:2020-05-07 20:49:31
【问题描述】:

我正在使用 Unity 创建一个游戏,其中玩家必须使用 wasd 一次移动玩家 1 个瓷砖(3D),我想让玩家在按下其中一个键时平滑旋转并相应地移动如下图所示。我尝试了无数种方法,但似乎仍然无法使其发挥作用,如果您能帮助我,将不胜感激。

【问题讨论】:

    标签: unity3d 3d rotation


    【解决方案1】:

    Lerping 有利于从一个位置平稳移动到另一个位置,您可以从这里重构代码并调用

    void update() {
    if (Input.GetKey("w")) {
    //begin lerp up
    }
    //program same for asd 
    }
    

    https://docs.unity3d.com/ScriptReference/Vector3.Lerp.html

    【讨论】:

    • 这是一个很好的答案,只是认为添加Unity将旋转存储为四元数可能会有所帮助(即使在2D游戏中)并且有一个专用的Lerp用于 lerping 四元数 Quaternion.Slerp 的函数可能比 Lerp 工作得更好
    猜你喜欢
    • 1970-01-01
    • 2021-07-26
    • 2015-07-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多