Programing/Unity(C#)
[Unity] 화면 흔들림 효과
hye3193
2024. 1. 3. 13:51
[SerializeField] float shakeDuration = 1f;
[SerializeField] float shakeMagnitude = 0.5f;
Vector3 initialPosition;
void Start()
{
initialPosition = transform.position;
}
public void Play()
{
StartCoroutine(Shake());
}
IEnumerator Shake()
{
float elapsedTime = 0f;
while (elapsedTime < shakeDuration)
{
transform.position = initialPosition + (Vector3)Random.insideUnitCircle * shakeMagnitude;
elapsedTime += Time.deltaTime;
yield return new WaitForEndOfFrame();
}
transform.position = initialPosition;
}
카메라의 포지션을 정해진 범위 안에서 이동시켜 화면이 흔들리는 것처럼 보이는 효과
수학을 이용하지 않는 간단한 버전