В сцене имеется главный юнит, который может захватить спаун, создающий его клоны.
При клике на созданный юнит "контрольный ID" меняется на ID этого юнита, а камера плавно перемещается к нему:
public void Update()
{
if (Player[ID] != null && (battleTap == true || supportTap == true))
{
CameraTracking();
}
}
public void CameraTracking()
{
cam.Camera.transform.position = Vector3.SmoothDamp(cam.Camera.transform.position,
Player[ID].GetComponentInChildren<Camera>().transform.position,
ref cam.m_MoveVelocity, cam.m_DampTime);
}
На всех юнитах установлен скрипт легкого смещения камеры:
private void Start()
{
_offset = transform.position - PlayerCamera.transform.position;
}
private void Update()
{
transform.position = PlayerCamera.transform.position + _offset;
}
В начале все работает отлично. Однако, если в инспекторе выключить, а затем включить главный юнит, появится едва заметный люфт камеры.
Более того, он появляется при наблюдении за созданными на спауне клонами юнита - это едва заметно, однако имеет место быть.
Люфт пропадает при переходе на главный юнит. При сохранении изменений в Visual Studio люфт пропадает у всех юнитов. Что это может быть?