using UnityEngine;
using Cinemachine;
namespace SPWN
{
public class CamOverrideExample : MonoBehaviour
{
public CinemachineBrain brain; // Reference to CinemachineBrain on your main Camera
public CinemachineVirtualCamera camA; // Virtual Camera A
public CinemachineVirtualCamera camB; // Virtual Camera B
private bool isOverridden = false;
void Start()
{
if (brain == null || camA == null || camB == null)
{
Debug.LogError("Assign brain and virtual cameras!");
return;
}
// Initially enable camA and disable camB
camA.Priority = 10;
camB.Priority = 0;
}
void Update()
{
if (Input.GetKeyDown(KeyCode.Space))
{
if (!isOverridden)
{
// Switch to camB by raising priority
camB.Priority = 20;
camA.Priority = 0;
brain.m_DefaultBlend.m_Time = 1f; // 1 second blend
Debug.Log("Switched to CamB with blend.");
}
else
{
// Switch back to camA
camA.Priority = 20;
camB.Priority = 0;
brain.m_DefaultBlend.m_Time = 1f;
Debug.Log("Switched back to CamA with blend.");
}
isOverridden = !isOverridden;
}
}
}
}