Unity 触摸控件每秒至少工作 5-6 次
Unity touch controls works at least 5-6 times in a second
我正在尝试在我当前的 Unity 项目上实现触控。
我目前正在尝试执行这行代码,但我发现 fps 已显着下降并且它执行有关触摸控制的行比我预期的要多。
for(int i=0;i<Input.touchCount;i++)
{
Debug.log("Touched");
}
我很好奇,是否有更有效的方法来从 IOS 和 Android 的用户那里获取触摸输入,谢谢。
我想您在更新功能中使用了它。
你需要那样做:
void Update()
{
if (Input.touchCount > 0)
{
Touch touch = Input.GetTouch(0);
if (touch.phase == TouchPhase.Began)
{
Debug.Log("Touched");
}
}
}
这样它只会在开始时为触摸调用一次。
您的做法是“触摸屏幕时,在日志中打印 'Touched'”。
如果你想做很多手指你可以做
void Update()
{
if (Input.touchCount > 0)
{
int countTouches = Input.touchCount;
for (int i = 0; i < countTouches; i++)
{
if (Input.GetTouch(i).phase == TouchPhase.Began)
{
Debug.Log("Touched");
}
}
}
}
我正在尝试在我当前的 Unity 项目上实现触控。 我目前正在尝试执行这行代码,但我发现 fps 已显着下降并且它执行有关触摸控制的行比我预期的要多。
for(int i=0;i<Input.touchCount;i++)
{
Debug.log("Touched");
}
我很好奇,是否有更有效的方法来从 IOS 和 Android 的用户那里获取触摸输入,谢谢。
我想您在更新功能中使用了它。 你需要那样做:
void Update()
{
if (Input.touchCount > 0)
{
Touch touch = Input.GetTouch(0);
if (touch.phase == TouchPhase.Began)
{
Debug.Log("Touched");
}
}
}
这样它只会在开始时为触摸调用一次。
您的做法是“触摸屏幕时,在日志中打印 'Touched'”。
如果你想做很多手指你可以做
void Update()
{
if (Input.touchCount > 0)
{
int countTouches = Input.touchCount;
for (int i = 0; i < countTouches; i++)
{
if (Input.GetTouch(i).phase == TouchPhase.Began)
{
Debug.Log("Touched");
}
}
}
}