首页 > 解决方案 > 为什么我的对象在按下按钮时不连续旋转?

问题描述

我有一艘宇宙飞船,它会顺时针或逆时针旋转,具体取决于按下左键还是右键。我使用的是虚拟操纵杆,它工作正常,但决定更改为左右按钮。现在,如果单击一个按钮,它会旋转到一个固定位置并在我每次按下按钮时停止,我希望它在按住按钮时沿一个方向连续移动并在释放时停止。

我将统一标准资产与跨平台输入 ButtonHadler 脚本与我的“移动”脚本结合使用。

void Update()
{   
    if (CrossPlatformInputManager.GetButtonDown("turn"))
    {
       TurnShip();           
    }       
}

public void TurnShip()
{            
    transform.Rotate(Vector3.up * 50f * Time.deltaTime);        
}

标签: c#androidunity3d

解决方案


您正在使用GetButtonDown,它仅在您按下按钮时返回一次true ,并且在您释放按钮并再次按下之前保持为 false 。改为使用GetButton


推荐阅读