unity3d 旋转/翻转游戏对象90度(Unity)

wnavrhmk  于 2023-03-03  发布在  其他
关注(0)|答案(3)|浏览(255)

好吧,我是个新手,互联网把我搞糊涂了,你有欧拉角,四元数;一个使用度,另一个使用弧度,你应该使用lerp,slerp,lookat,你不能在没有父对象的情况下手动设置枢轴...等等。
我想做的是每当我按下一个键时,围绕它的枢轴点在Z轴上顺时针旋转一个游戏对象90度,就像一个俄罗斯方块。
我真的在寻找一个简短的,简单的解释,这样我就明白我在做什么,以避免进一步的混乱。帮助真的很感激!谢谢!

egmofgnx

egmofgnx1#

答案是:结合协程使用线性插值函数。

ni65a41a

ni65a41a2#

可以使用四元数直接设置变换和旋转。
你可以简单地做到这一点

transform.rotation = Quaternion.Euler(new Vector3(0, 0, transform.rotation.eulerAngles.z+90));

四元数,欧拉使用度,如果你想把它和弧度一起使用,你应该使用四元数。

qfe3c7zg

qfe3c7zg3#

我觉得

``` lang-C#
   if (Input.GetKeyDown(KeyCode.A))
    {
        transform.Rotate(0, 0, 90);
    }

我会那样做的。只要把钥匙A换成你要的钥匙就行了。

相关问题