我基本上有这个代码。当我尝试使用OnMouseUp()
函数时,我在unity3d中遇到了性能错误。我不知道如何使用Touch functions
用于安卓。
void OnMouseUp()
{
DetectCollider.IfInMain = false;
DetectCollider.Score = 0.00f;
MainMenux.SetActive(false);
Mech.transform.rotation = Quaternion.Euler(270, 180, 0);
DetectCollider.Speed = 100;
ScoreCountTurn = true;
}
答案 0 :(得分:2)
尝试这样的事情。它也应该适用于Android。
void Update() {
if (Input.GetMouseButtonUp(0))
{
DoStuff();
}
}
或者您可以使用Input.GetTouch(),然后检查TouchPhase,而不是GetMouseButtonUp()。并以这种方式支持多点触控。
void Update() {
if (Input.GetTouch(0).phase == TouchPhase.ended)
{
DoStuff();
}
}
答案 1 :(得分:0)
必须使用Touch事件,这里有完整的示例: http://docs.unity3d.com/ScriptReference/Touch-phase.html
“TouchPhase.Ended”将等于OnMouseUp,但我不认为很少OnMouseUp会对你的游戏做任何明显的减速(你可以查看探查器如果使用大部分时间并优化那些)。
此外,您还必须实施光线投射以检查哪个对象被触摸位置击中。