Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/unity3d/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在android上旋转导致fps下降_C#_Unity3d - Fatal编程技术网

C# 在android上旋转导致fps下降

C# 在android上旋转导致fps下降,c#,unity3d,C#,Unity3d,使用对撞机和精灵渲染器在游戏对象上使用transform.Rotate会导致游戏在Android上滞后。关于如何改进这一点有什么想法吗 我曾尝试禁用碰撞器,并将刚体设置为“运动学”,如另一篇文章中所述,但没有效果 以下是旋转对象的组件: 下面是用于旋转的脚本: using System.Collections; using System.Collections.Generic; using UnityEngine; public class ObjectMove : MonoBehaviou

使用对撞机和精灵渲染器在游戏对象上使用transform.Rotate会导致游戏在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);
        }


}

因此,我基本上手动将inpsector中的bool更改为true/false,以管理我希望游戏对象旋转的方向。有没有其他方法可以做到这一点而不会造成如此低的fps?在PC上,它也会下降,但并不明显。

正如一些人在评论中提到的,是脚本的另一部分导致fps下降。我以为当时根本没有执行死刑,但显然是的。我的错。谢谢你的帮助

正如一些人在评论中提到的,是脚本的另一部分让fps下降了。我以为当时根本没有执行死刑,但显然是的。我的错。谢谢你的帮助

这是最简单的任务。它不应该制造问题。可能还有别的事。你确定是旋转吗?尝试分析你的游戏,看看是什么导致了延迟。您可以通过编辑器中的“窗口”菜单打开探查器。是的,我很确定这是旋转。当其他关卡(场景)以60 fps的速度运行时,当我用这个脚本添加更多的对象时,fps就变低了,大约有25-30 fps,其中有15个游戏对象。分析器显示“垃圾收集器”和“脚本”的频繁峰值在我添加这些游戏对象时也在上升。没有他们,它只显示一个大的尖峰,但根本没有那么频繁。旋转:如何添加这些对象?你也可以移除刚体并尝试一下吗?这是最简单的任务。它不应该制造问题。可能还有别的事。你确定是旋转吗?尝试分析你的游戏,看看是什么导致了延迟。您可以通过编辑器中的“窗口”菜单打开探查器。是的,我很确定这是旋转。当其他关卡(场景)以60 fps的速度运行时,当我用这个脚本添加更多的对象时,fps就变低了,大约有25-30 fps,其中有15个游戏对象。分析器显示“垃圾收集器”和“脚本”的频繁峰值在我添加这些游戏对象时也在上升。没有他们,它只显示一个大的尖峰,但根本没有那么频繁。旋转:如何添加这些对象?你也可以移除刚体并尝试一下吗?