우선 소리를 내기위해서는 audio sourse 라는 componet를 추가해야한다.
그 후 script를 만들어서 AudioSourse 와 AudioClip을 설정하여서 음악을 재생할 수 있다.
public AudioClip clip;
AudioSource audioSource;
...
audioSource = GetComponent<AudioSource>(this); //this는 생략가능
audioSource.clip = this.clip;
audioSource.Play(); // 또는 audioSource.PlayOneShot();
[의문] 이후에 연동을 시켜줄 때, audio clip 추가 시 왜 audio source에 있는 audio clip에 추가하면 오류가 발생하는가? 왜 script의 clip 값에만 추가해도 실행이 되는가?
결국 음악을 실행는 원리는 audio source에 있는 audio clip에 원하는 음악파일을 넣어서 실행하는 것이 아닌가?
그렇다면 미리 audio source의 audio clip에 원하는 파일 값을 넣는다면 음악이 재생되어야하는 것이 아닌가?
하지만 언제나 그렇듯 컴퓨터는 자신이 수행받는 일을 할 뿐이다.
중간과정을 건너뛰면 편할 것 같지만, 컴퓨터 입장에서는 그렇지 않다.
오류가 발생하면 컴퓨터는 그 순간 수행을 멈춘다. 그렇기 때문에 script의 clip값에 음악파일을 넣지 않는다면 null값으로 인해서 프로그램이 멈추는 것이다.
그리고 script의 clip값을 받아서 AudioSource의 AudioClip값에 넣어주는 것이기 때문에 굳이 Audio Clip에 값을 추가 할 필요가 없는 것이다.
음악을 재생해 주는 것은 AudioSource가 맞지만 원하는 파일을 할당해주는 것은 script의 역할인 것이다.
/
/
/
1.Splash Image
우리가 게임을 시작하면 나오는 게임사와 게임엔진 로고들이 나온는 화면
Unity 기본제공 기능으로
edit -> project setting -> player -> Splash Image 에서 설정가능
2.DontDestroyOnLoad
싱글톤으로 만드는 이유와 그 활용법, 이미 instance가 있다면 스스로를 파괴하고 그렇지 않다면 바뀌는 scene에 그대로 가져가는 것. 노래가 끊기지않고 이어지거나 정보가 사라지는 일도 없다.
3.buildSetting -> playerSetting -> resolution ans presntation
(portrate : 세로 게임기능 / landscape : 가로 게임기능) 게임에 따라서 on/off 해주면 된다.