게임프로그래밍/Unity_C#

[MMORPG 게임 개발(C#, Unity)] Part 3. 3D Sound 효과가 적용되지 않을 때

shine94 2025. 5. 1. 12:24

https://www.inflearn.com/community/questions/446293/%EC%A0%80%EB%8F%84-3d-%EC%82%AC%EC%9A%B4%EB%93%9C-%ED%9A%A8%EA%B3%BC%EA%B0%80-%EC%A0%81%EC%9A%A9-%EC%95%88%EB%90%98%EB%84%A4%EC%9A%94?srsltid=AfmBOorsgBqiVtJ1SA-tkRanhVMhfclNN_StrpTr7futwPD9Vzc3mu8V

 

저도 3D 사운드 효과가 적용 안되네요 - 인프런 | 커뮤니티 질문&답변

누구나 함께하는 인프런 커뮤니티. 모르면 묻고, 해답을 찾아보세요.

www.inflearn.com

 

 

 

 

강의 내용대로 작업했지만 3D 사운드 효과가 발생하지 않아 확인해본 결과,

강의에서 누락된 부분이 있다는 답변을 참고해 아래와 두 가지 버전으로 실습해봤다

 

1. 코드에서 처리

   단, 이 코드는 OnTriggerEnter 이벤트에 의해 실행되므로, 대상 오브젝트가 다른 물체와 출동해야 소리가 재생된다

private void OnTriggerEnter(Collider other)
{
    AudioSource audioSource = GetComponent<AudioSource>();
    audioSource.clip = Resources.Load<AudioClip>("Sounds/UnityChan/univ0005");   // 재생할 오디오 클립 로드
    audioSource.spatialBlend = 1.0f;        // 3D 사운드
    audioSource.minDistance = 1f;           // 최소 거리
    audioSource.maxDistance = 10f;          // 최대 거리
    audioSource.loop = true;                // 반복 재생 여부
    audioSource.Play();
}

 

2. 오디오 소스(AudiSource) 컴포넌트에서 누락된 설정 적용

   특히, Audio Resource와 Play On Awake, Loop 설정 반드시 하기

      - 🎵 Audio Resource : 재생할 오디오 클립 연결
      - ▶️ Play On Awake : 자동 재생 여부
      - 🔁 Loop : 반복 재생 여부
      - 🔊 Spatial Blend : 3D로 설정 (오른쪽 끝)
      - 📉 Volume Rolloff / Min/Max Distance : 거리 감쇠 조절