【发布时间】:2019-02-04 17:48:22
【问题描述】:
我的代码中有以下方法:
private void OnMouseDown()
{
cube.transform.position = new Vector3(0, 1, 0);
}
当点击游戏对象时,该方法被调用。改变立方体的位置需要很长时间(不超过一秒,但仍然很长,至少半秒)。确实会影响用户的游戏体验。
如果我不改变立方体的位置,但例如它的材质,它仍然很慢。所以我知道这与我的 OnMouseDown() 事件中的行无关。
但请注意,我的场景中确实有大约 35 个导入的 3D 网格,以及超过 50 个原始游戏对象。这与方法缓慢有什么关系吗?因为当我创建一个只有 2 个游戏对象的空 Unity 项目时,该方法很快。
是因为我的完整场景吗?有任何想法吗?谢谢!
如果有人也知道如何加快速度,我很想知道!
编辑:如果我删除所有 3D 网格,该方法很快...
【问题讨论】:
-
嗯...这应该是即时的。你的帧率是多少?
-
大约 10 fps。
-
我想我们需要更多信息。您能否告诉我们更多关于您的硬件规格的信息,3D 对象是高多边形的吗?您还可以删除分析器的屏幕截图吗?也许是因为低端规格和高多边形物体会导致 10fps 的延迟?仅当您可能具有较高的多边形时,最后一个。
-
听起来由于您的机器规格,您的输入滞后很多,其他输入操作是否需要同样多的时间?我的女儿在她电源严重不足的笔记本电脑上玩行尸走肉(告密者),并且至少有半秒的输入延迟(即使帧速率不是我见过的最差的)