Unity

[Unity] 유니티 카운트다운(count down) 효과음 추가하기, Audio sound play 유니티예제

정보처리마법사 2016. 11. 17. 15:15
반응형

[Unity] 유니티 카운트다운(count down) 효과음 추가하기, Audio sound play 유니티예제 

 

 

AudioSource.PlayClipAtPoint()

 

안녕하세요 정보처리마법사 입니다.

 

이번 포스팅의 주제는 카운트다운 효과음 추가하기에 관한 내용입니다

카운트다운 효과음을 주는 방법에는 이 방법 이외에도 무궁무진한 방법이 있겠으나 그냥 제가 임의로 짠

코드이오니 굳이 따라하실 필요는 없고 자신만의 방법으로 해보시면 되겠습니다.


 


먼저 하이어라키에 빈 게임오브젝트를 하나 만들고, C# 스크립트를 만들고 위 소스코드를 입력 후 아까 만든 게임오브젝트에 attach 합니다.




그러면 위 이미지와 같이 인스펙터에 Countdown_321 , Countdown_start 가 생기는 데 미리 프로젝트에 오디오 파일을 넣어 둔 후

그 오디오 파일을 위 체크했는 부분으로 각각 위치에 맞게 드래그 해줍니다. 그러면 준비는 끝입니다.


일단 소스코드에서 다른 내용은 별로 참고하실 필요까지는 없고, 

AudioSource.PlayClipAtPotint() 메소드만 보시면 되겠습니다.










실행도 잘되고 소리도 잘 나오는군요.



소스코드

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
using UnityEngine;
 
public class countdown_sound : MonoBehaviour
{
    public AudioClip countdown_321;
    public AudioClip countdown_start;
 
    float remaining_time = 4;
 
    bool justOnce_3 = false;
    bool justOnce_2 = false;
    bool justOnce_1 = false;
    bool justOnce_start = false;
 
    void Update()
    {
        remaining_time -= Time.deltaTime;
 
        one_beep(3ref justOnce_3);
        one_beep(2ref justOnce_2);
        one_beep(1ref justOnce_1);
        one_beep(0ref justOnce_start);
    }
 
    void one_beep(int _range, ref bool _once)
    {
        if (remaining_time > _range && remaining_time < _range + 1)
        {
            if (!_once)
            {
                if (_range != 0)
                    AudioSource.PlayClipAtPoint(countdown_321, transform.position);
                else
                    AudioSource.PlayClipAtPoint(countdown_start, transform.position);
                Debug.Log(_range);
                _once = true;
            }
        }
    }
}

cs

 







이상으로 포스팅을 마칩니다. 감사합니다.


 


 




Fin.


잘 못 된 정보가 있으면 말씀해주세요~


공감버튼 클릭은 작성자에게 큰 힘이 됩니다.  행복한 하루 되세요.


 


반응형