maxhacker11

CameraManager.cs

Jan 14th, 2024
1,104
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 0.96 KB | Source Code | 0 0
  1. using System.Collections.Generic;
  2. using UnityEngine;
  3. using Cinemachine;
  4.  
  5. public class CameraManager : MonoBehaviour
  6. {
  7.     static List<CinemachineVirtualCamera> cameras = new List<CinemachineVirtualCamera>();
  8.  
  9.     public static CinemachineVirtualCamera ActiveCamera = null;
  10.  
  11.     public static bool IsActiveCamera(CinemachineVirtualCamera camera)
  12.     {
  13.         return camera == ActiveCamera;
  14.     }
  15.  
  16.     public static void SwitchCamera(CinemachineVirtualCamera newCamera)
  17.     {
  18.         newCamera.Priority = 10;
  19.         ActiveCamera = newCamera;
  20.  
  21.         foreach (CinemachineVirtualCamera cam in cameras)
  22.         {
  23.             if (cam != newCamera)
  24.             {
  25.                 cam.Priority = 0;
  26.             }
  27.         }
  28.     }
  29.  
  30.     public static void Register(CinemachineVirtualCamera camera)
  31.     {
  32.         cameras.Add(camera);
  33.     }
  34.  
  35.     public static void Unregister(CinemachineVirtualCamera camera)
  36.     {
  37.         cameras.Remove(camera);
  38.     }
  39. }
  40.  
Advertisement
Add Comment
Please, Sign In to add comment