Creating Audio Playing Buttons
이 강좌에서는, 당신은 당신의 맵에 소리나, 음악, 아니면 당신이 원하는 모든 소리를 틀수 있는 버튼을 만드는 법을 배울것 입니다.
func_button 제작
시작 하기위해 당신은 블럭을 만드시고 그것을 func_button 으로 만들어 주세요 (CTRL+T)
- '이름' 을 정해주세요, 여기에선, 우리는 "Button 1" 이라고 하겟습니다.
- 'Speed' 설정을 당신의 버튼이 움직이게 하고 싶은 숫자를 넣어주세요. 다시, 여기에선 우리는 이 값을 5 로 대입하겟습니다. 당신이 이 버튼이 움직이는것을 원하지 않는다면, 'Flags' 탭을 누르셔서, Don't move 탭을 체크 해제 시켜주세요.
- 만약 당신이 버튼을 움직이게 하고싶다면, 당신은 'Move direction' 으로 방향을 바꿀수 있습니다. 간단하게 Pitch 와 Yaw 그리고 Roll 만 바꾸어 주세요.
- 'Sound' 를 선택해주세요. 이 소리는 당신이 버튼을 발동 시켯을때 나는 소리입니다. 이것은 전적으로 당신이 음악을 선택하는 것입니다.
- 'Delay before reset' 을 -1 로 설정해주세요. 이것은 한번의 소리나 음악이 끝났을때, 당신이 다시 버튼을 쏘면 음악이 재생되게 해줄것을 보장합니다.
- 방금 위에 했던것 처럼, 'Locking Sound' 와 'Unlocking Sound' 를 선택해주세요. 이것은 선택적입니다.
- 'Flags' 탭을 클릭하셔서, Damage Activates 박스를 체크해주세요. 만약 당신의 버튼이 손이 닿기에 충분히 낮다면, 당신은 Touch Activates 를 체크하셔도 됩니다.
- 'Output' 탭을 클릭하셔서, 다음의 'Output'들을 적용해주세요:
- My output named: OnDamaged
- Targets entities name: SoundPlayer
- Via this input: PlaySound
ambient_generic 제작
다음으로, ambient_generic 를 만들 차례입니다.
- 이 엔티티를 위한 '이름'을 설정해주세요. 이 에제 에서는, SoundPlayer 라고 부를것입니다.
- 'Sound Name' 을 선택해주세요. 이 예제에서는 "Browse" 버튼을 눌러서 당신만의 소리를 골라주세요.
- 'Volume' 을 설정해주세요. 이 변수는 소리가 얼마나 크게 틀어질지를 좌우합니다. 우리는 10 으로 해보겟습니다.
- 'Starting Volume' 을 설정해주세요. 이것은 선택적입니다. 당신은 이것을 기본 설정값으로 나두어도 상관없습니다.
- 'Max Audible Distance' 를 설정해주세요. 이 변수는 얼마나 소리가 퍼져나갈지를 설정합니다. 이것에 대한 옳은 값이나 틀린값은 없습니다, 이것은 당신이 얼마나 소리가 퍼져나갈지를 설정하는 것일 뿐이니까요.
- 'Source Entity Name' 를 설정해주세요. 이 변수는 단지 prop_dynamic /prop_static 로 엔티티를 만들고 싶을떄 써주시면 됩니다. 만약 당신의 소리가 당신이 배치한 ambient_generic 에게서 나길 원한다면, 이것을 바꾸지 마세요. 여기서는 우리가 설정할 값은 Speaker 1 입니다.
- 'Flags' 탭을 누르세요. 만약 당신이 당신의 소리가 반복되기를 원하신다면 Is NOT looped 를 체크 해제해주세요. 만약 당신이 당신의 소리가 한번만 들리게 하고 싶다면 체크를 해주세요.
선택: 스피커 설정
이것은 선택적인 단계입니다. 만약 당신이 'Source Entity Name' 의 항목을 선택했다면, 이 단계를 'Source Entity Name' 근본적으로 어떻게 만드는 건지 알려드리겟습니디, 이 단계는 단지 당신의 소리가 프롭으로 부터 나오길 원한다면 진행하세요.
이 예제에선, 우리는 prop_dynamic 엔티티를 사용할것입니다, 이것의 'World Model' 값을 우리는 models/props_spytech/siren001.mdl 로 설정해주세요.
- S이 프롭의 'Name' 을 설정해주세요, 우리는 이 값을 Speaker 1 로 설정해주세요. 만약 당신이 기억한다면, 마지막 단계는, 'Source Entity Name' 의 ambient_generic 을 Speaker 1 로 설정하는 것입니다. 스피커로부터 소리가 나오는 것입니다.
![Note.png](/w/images/thumb/c/cc/Note.png/10px-Note.png)
끝입니다! 당신의 버튼도 완성됬고, 당신의 소리도 완성됬고. 이제 당신에게 남은건 버튼을 누르는 것과, 소리를 듣는 것입니다.
팁
- 당신은 버튼을 한 가지의 소리보다 더 많은 소리를 낼수 있게 할수 있습니다. 간단하게 많은 ambient_generic 엔티티들을 당신이 필요한만큼 만들고, 그들의 이름을 모두 지어주세요, 예를 들면 "SoundPlayer1", "SoundPlayer2" 같은 것으로요. 이제 func_button 의 'Output' 탭으로 가셔서 더 많은 출력값을 만들어 주세요, 하나에 모든 새로운 ambient_generic 을 대응시키세요 그리고 다음 output 값을 따르세요:
- My output named: OnDamaged
- Targets entities name: <당신의 ambient_generic 엔티티의 이름, 예를 들어 SoundPlayer1, Soundplayer 2, 등등>
- Via this input: PlaySound
- 당신이 버튼을 쏠때 스피커를 통해 노래가 나올것입니다.