繁体   English   中英

为什么我在Unity3D的场景中从一个空的GameObject收到30个抽奖电话?

[英]Why am I getting 30 draw calls from an empty GameObject in my scene in Unity3D?

首先,我谈论的是SetPass调用,我知道这是绘制调用。

我有一个空的GameObject,在游戏中用作Camera目标。 我已将其定位在角色上方,并且当其达到x高度时,相机会向上移动。

启用“摄像机”目标后,我会收到约60个SetPass呼叫。 当我禁用它时,我得到大约30。

为什么这个简单的对象会产生那么多的SetPass调用?

这是启用了空GameObject的屏幕截图:

在此处输入图片说明

这是未启用GameObject的屏幕截图:

在此处输入图片说明

这是空的GameObject:

在此处输入图片说明

这是我引用空GameObject(cameraTarget)的地方:

无效FixedUpdate(){

if (cameraTarget != null){
    if (cameraTarget.transform.position.y > thisTransform.position.y) {
        thisTransform.position = new Vector3 (0, Mathf.SmoothDamp (thisTransform.position.y, cameraTarget.transform.position.y, ref velocity.y, smoothTime), 0); 
    }
}

}

当我在游戏过程中禁用空的GameObject时,我的游戏运行良好,即使它被禁用,相机仍会跟随该空的GameObject,并且我得到的SetPass调用越来越少了……很奇怪。

编辑:

贴在我的空GameObject上的标签图标导致绘制调用增加:

在此处输入图片说明

编辑:

我在“游戏”窗口中禁用了“ Gizmos”,它已删除了我所有场景中的绘制调用。 我猜这只是在编辑器中运行游戏时的一个问题。

Unity 5具有一个名为Frame Debugger的简洁功能。 您可以捕获帧并查看发生了什么,有关详细信息,请参见http://blogs.unity3d.com/2014/07/29/frame-debugger-in-unity-5-0/

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM