我从所有GameObjects中删除了所有脚本以测试问题。
我有一个相机名称Fly Camera。 (禁用了主摄像机,而不是仅使用一台摄像机) 在飞行相机上,我附加了一个新的简单脚本,该脚本可以在两点之间修剪相机。并且还添加了一些多维数据集。
在层次结构中,在游戏运行时用鼠标选择“飞行摄像机”时,摄像机将左右平滑移动。但是,如果在游戏运行任何其他GameObject时在“层次结构”中进行选择,则相机将结结巴巴。或者至少在“游戏”窗口中看起来像是口吃。
我不确定这是否正常,但似乎有点奇怪,如果您在层次结构中选择了另一个对象,它将在游戏窗口视图中结结巴巴。
脚本:附加到飞行摄像机:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class MoveTest : MonoBehaviour
{
private Vector3 pos1 = new Vector3(-40, 0, -50);
private Vector3 pos2 = new Vector3(40, 0, -50);
public float speed = 1.0f;
void Update()
{
transform.position = Vector3.Lerp(pos1, pos2, (Mathf.Sin(speed * Time.time) + 1.0f) / 2.0f);
}
}
我在游戏运行时打开了Profiler,这是三个屏幕截图。 在层次结构中选择飞行摄像机时的第一个:
第二个屏幕截图显示了在层次结构中选择另一个GameObject之后,即在探查器更改其中间之前的那一点:
最后的屏幕截图大约是在选择了另一个游戏对象后10秒钟,这使相机陷入了停顿状态:一旦在事件探查器中选择了另一个对象,则开始出现停顿现象,更改需要几秒钟才能显示:
然后,如果我要更改并再次选择摄像机,它将平滑移动,并且探查器将再次如屏幕截图1所示。
启用了探查器编辑器和启用了统计信息的屏幕截图: