using Cinemachine; using UnityEngine; public class CameraShake : MonoBehaviour { [SerializeField]private CinemachineFreeLook v_Camera; private float shakeTimer; public static CameraShake Instance; private void Start() { if (Instance != this) Destroy(Instance); Instance = this; } public void ShakeCamera(float intensity, float time) { CinemachineBasicMultiChannelPerlin multiChannelPerlin = v_Camera.GetComponent(); multiChannelPerlin.m_AmplitudeGain = intensity; shakeTimer = time; } private void Update() { if (shakeTimer > 0) { shakeTimer -= Time.deltaTime; if (shakeTimer <= 0f) { CinemachineBasicMultiChannelPerlin multiChannelPerlin = v_Camera.GetComponent(); multiChannelPerlin.m_AmplitudeGain = 0f; } } } }