본문 바로가기
1인개발/유니티

유니티 오디오 클립 Argument Null Exception: Value cannot be null 오류

by MaskOfDali 2020. 7. 8.
반응형

유니티에서 효과음을 넣고 플레이 해 보니 효과음이 발생해야 할 곳에서 게임이 멈추고 Argument Null Exception이 발생했다. 어디에나 있고 뭘 해도 생기는 Null Exception...

 

이 글은 비전공 + 무경험 + 독학자로서 공부 및 기록을 겸하며 작성되고 있으므로, 전문적인 내용이 아님을 알려드립니다.

 

그만 나와주셔요

오류가 안내해 주는 곳을 보니  playerAudioPlayer.PlayOneShot(jumpAudio); 이 부분이 나온다.

 

    private AudioSource playerAudioPlayer;   
    public AudioClip jumpAudio;   

    void Start(){
        playerAudioPlayer = GetComponent<AudioSource>();
    }

    public void Jump() {
        playerAudioPlayer.PlayOneShot(jumpAudio);
    }

 

 

파라미터가 null이면 안된다고 해서  if (jumpAudio != null)을 추가해봤지만 오류는 사라지지 않고 코드를 보면서 한참을 고민 해봤는데 뭐가 문제인지 감을 못잡고 있었는데,

 

- Audio Source 변수 선언 하고 컴포넌트 찾았고

- Audio Clip 변수 선언 했고 Asset 할당 했고

 

........ 그런데 Audio Source 컴포넌트 추가를 하지 않고 있었다ㅎ 멍충이는 나였고, null exception은 안나올 수 없는 거였다.

 

컴포넌트가 없는데 백날 컴포넌트를 찾아봐야...

 

Audio Source 컴포넌트 추가 해주기

 

컴포넌트를 추가하고 플레이 해 보니 오류가 사라졌다..

오류가 발생했을 때 코드만 볼 것이 아니라 컴포넌트들을 모두 면밀히 살펴봐야 하겠다. 내가 틀리고 컴퓨터는 옳다.

반응형

댓글