반응형
필자의 오류 상황
저 같은 경우는 먼저 돌이 부서지는 소리를 내려고 했는데
코루틴 메소드에서 분명 소리가 난다는 로그가 찍혔음에도
소리가 나지 않아 의문이었습니다.
이 때 제 상황은 Play on Awake가 체크되어 있는 상태에서는 소리가 났습니다
Sound 오브젝트에 Audio Source를 달아주었고 rock_small 오브젝트에
아래와 같은 스크립트를 넣어줬습니다
IEnumerator Break()
{
if (audioSource != null && audioSource.clip != null)
{
audioSource.Play();
Debug.Log("소리 남");
}
else
{
Debug.Log("소리 안 남");
}
meshDestroy.DestroyMesh(); // 문제가 된 부분
yield return new WaitForSeconds(3f);
Destroy(gameObject);
}
그래서 체크해보니
meshDestory라는 외부 스크립트 메소드에서 문제가 발생했습니다.
이와 비슷하게 소리를 재생해야 하는데
재생하는 순간에 저 스크립트가 작동하면서
rock_small 오브젝트가 쪼개져 사실상 파괴되어
그 아래 Sound 오브젝트 마저 작동을 하지 못 하는 현상이었습니다
즉, 혹시라도 스크립트로 실행했을 때 소리가 안 난다면
위와 같이 오브젝트 파괴 시간과 재생 시간을 잘 보는 것이 중요하겠습니다
그 외의 문제로는
에디터 상에서 Mute 확인
Volume Rolloff
만약에 볼륨 소리 나는 위치가 플레이어가 저 공간 내에 없다면
소리가 들리지 않을 수 있습니다
Audio Source Setting
그 외에 체크해 봐야 할 것은
Output에서 Mixer를 체크해제 하고도 소리가 나는지 확인해야 합니다
- Mute가 체크되어 있다면 체크 해제 해야 합니다
- Volume이 0이 아닌지 확인해야 합니다
- Pitch도 0이면 소리가 안 난다고 합니다
반응형
'Unity(C#)' 카테고리의 다른 글
Unity 텍스쳐 isReadable is false 오류 해결 (2) | 2024.11.08 |
---|---|
음료수 회사 운영하기 v1.0.2 (0) | 2023.03.27 |
[Unity] 다른 스크립트 변수 가져오기 (0) | 2023.02.05 |
[Unity] Photon OnRoomListUpdate 작동 안 함 / 룸 리스트 안 보이는 오류 (0) | 2023.02.04 |
유니티(Unity) 오브젝트 Image Sprite 스크립트 변경 (0) | 2023.01.25 |