使用变换。在具有碰撞器和精灵渲染器的游戏对象上旋转会导致游戏在Android上滞后。关于如何改善这一点有什么想法吗?
我曾尝试禁用对撞机,并设置了刚体设置为运动学,如另一篇文章中所述,但无济于事。
以下是旋转对象的组成部分:
这是用于旋转的脚本:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class ObjectMove : MonoBehaviour
{
//Rotate
float speed = 150.0f;
public bool forward = false;
public bool back = false;
public bool down = false;
public bool up = false;
public bool right = false;
public bool left = false;
void Update()
{
//Rotate
if(forward == true)
{
transform.Rotate(Vector3.forward * speed * Time.deltaTime);
}
if (back == true)
{
transform.Rotate(Vector3.back * speed * Time.deltaTime);
}
if (down == true)
{
transform.Rotate(Vector3.down * speed * Time.deltaTime);
}
if (up == true)
{
transform.Rotate(Vector3.up * speed * Time.deltaTime);
}
if (right == true)
{
transform.Rotate(Vector3.right * speed * Time.deltaTime);
}
if (left == true)
{
transform.Rotate(Vector3.left * speed * Time.deltaTime);
}
}
因此,我基本上在检测器中手动将布尔值更改为true / false,以管理我希望游戏对象旋转的方向。还有另一种方式可以做到而又不会导致如此低的fps吗?在PC上,它也会下降,但并不明显。
答案 0 :(得分:0)
正如评论中的某些人所提到的,脚本的另一部分确实使fps下降。我以为当时甚至没有执行,但显然是。我的错。感谢您的帮助!