Topic: Synchronization Panoramas
In some cases, you may need to achieve that Pan, Tilt and FOV of several panoramas changed synchronously.
Using this script you can do this:
using InfinityCode.uPano;
using UnityEngine;
public class SyncPanoViews : MonoBehaviour
{
public Pano[] panoramas;
private bool ignoreEvents;
private void Start()
{
foreach (Pano pano in panoramas)
{
pano.OnPanChanged += OnPanChanged;
pano.OnTiltChanged += OnTiltChanged;
pano.OnFOVChanged += OnFovChanged;
}
}
private void OnFovChanged(float fov)
{
if (ignoreEvents) return;
ignoreEvents = true;
foreach (Pano pano in panoramas) pano.fov = fov;
ignoreEvents = false;
}
private void OnTiltChanged(float tilt)
{
if (ignoreEvents) return;
ignoreEvents = true;
foreach (Pano pano in panoramas) pano.tilt = tilt;
ignoreEvents = false;
}
private void OnPanChanged(float pan)
{
if (ignoreEvents) return;
ignoreEvents = true;
foreach (Pano pano in panoramas) pano.pan = pan;
ignoreEvents = false;
}
}
Kind Regards,
Infinity Code Team.
Boost your productivity a lot and immediately using Ultimate Editor Enhancer. Trial and non-commerce versions available.
Infinity Code Team.
Boost your productivity a lot and immediately using Ultimate Editor Enhancer. Trial and non-commerce versions available.