Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
1WeekGameJam準備会 ゲームにサウンドをつけてみよう
Search
zarakima
June 03, 2018
Programming
1.1k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
1WeekGameJam準備会 ゲームにサウンドをつけてみよう
2018/06/03(日) 秋葉原Weeybleで行われた、 Unityもくもく勉強会×1週間ゲームジャム準備会のLT#2です。
zarakima
June 03, 2018
Other Decks in Programming
See All in Programming
Laravelで学ぶ Webアプリケーションチューニング入門/web_application_tuning_101
hanhan1978
4
1.8k
PostgreSQL 18で考えるUUID主キー
kazuhiro1982
0
470
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
590
リアルな遅延を測る仕様
kota_yata
1
100
いまどきの Codex で開発する visionOS アプリの開発スタイルについて
karad
0
140
運用ダッシュボードの設計を誰も教えてくれないのだけどみなさんどうしてるんですか? - チームに監視するという文化を根付かせるための第一歩を踏みたい -
satoshi256kbyte
1
120
Laravel Boostに学ぶ、AIにPHPを書かせる技術 〜OSSの実装から蒸留するエージェント制御の王道〜
kentaroutakeda
3
690
VibeCodingからAgenticWorkflowへ
starfish719
0
460
PHP Application における Kubernetes 内 gRPC 通信
ganchiku
0
590
そこに3びきプロダクトがいるじゃろう——生成AI時代における“価値が届かない理由”の構造
kosuket
0
480
Lean は証明の正しさを確認するためだけのツールって思ってませんか?
inoueasei
1
160
komatsuna「分散システムにおけるバグ分析手法」
komatsunaqa
0
260
Featured
See All Featured
Embracing the Ebb and Flow
colly
88
5.1k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.3k
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
1
390
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
3k
The Limits of Empathy - UXLibs8
cassininazir
1
600
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
Between Models and Reality
mayunak
4
390
Building an army of robots
kneath
306
46k
A designer walks into a library…
pauljervisheath
211
24k
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
570
Product Roadmaps are Hard
iamctodd
55
12k
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
660
Transcript
1WeekGameJam४උձ ήʔϜʹαϯυΛ͚ͭͯΈΑ͏ 2018.6.3 Weeyble Game
ࠓճͷ֓ཁ • ؆୯ͳࣗݾհ • ԻΛग़͢ • αϯυͷ͜ͱ͍ͭߟ͑Δʁ • SEͱBGMΛ͍͍ײ͡ʹ͢Δ •
Ի͕໐Βͳ͍ͱ͖ʙ
ࣗݾհ • zarakima • unityroom: ͍ͨ͋ͨΓΘ͍ͤ͘ ʢ͓: spaceʣ •
࠷ۙWeeybleʹΑ͘ग़ೖΓ͍ͯ͠Δਓ
ԻΛग़͢
ԻΛग़͢ ࠷ݶɺҎԼͷ3͕ͭඞཁ • AudioClipʢԻݯʣ • Audio Sourceʢίϯϙʔωϯτʣ • Audio Listenerʢίϯϙʔωϯτʣ
AudioClip • Իݯͷૉࡐͷ͜ͱ • AssetsϑΥϧμʹ ೖΕ͓ͯ͘ • ΠϯεϖΫλ͔Β Ի͕֬ೝͰ͖Δ ࠶ੜͰ͖Δʂ
Audio Source • Իݯ(AudioClip)Λ࠶ੜ ͢ΔͨΊͷίϯϙʔωϯτ • ԻΛ໐Β͍ͨ͠ɺ͔ͭ ݪଇήʔϜ్தͰফ͑ͳ͍ ήʔϜΦϒδΣΫτʹ ͜ͷίϯϙʔωϯτΛՃ
࠶ੜ͍ͨ͠"VEJP$MJQΛ ͜͜ʹೖΕΔ
Audio Listener • ԻΛฉͨ͘Ίͷίϯϙʔωϯτʢฉ͖खʣ • ʮγʔϯʹ͚̍ͭͩʯ͋Δͷ • Main Cameraʹ͚ͭͯ ͓͚Α͍
͋ΔλΠϛϯάͰԻΛग़͢ using System.Collections; using System.Collections.Generic; using UnityEngine; public class
SingleSound : MonoBehaviour { // Կ͔ʹͨͬͨΒ void OnTriggerEnter(Collider other) { // ԻΛग़͢ GetComponent<AudioSource>().Play(); } } AudioSourceʢͱAudioClip)͕Ճ͞Ε͍ͯΔήʔϜ ΦϒδΣΫτʹɺҎԼͷεΫϦϓτΛՃ͢Δ
ෳͷԻΛग़͢ using System.Collections; using System.Collections.Generic; using UnityEngine; public class
TripleSound : MonoBehaviour { public AudioClip enemySE; public AudioClip stoneSE; public AudioClip wallSE; private AudioSource audioSource; void Start() { audioSource = GetComponent<AudioSource>(); } void OnTriggerEnter(Collider other) { if (other.gameObject.tag == "enemy") { audioSource.PlayOneShot(enemySE); } else if (other.gameObject.tag == "stone") { audioSource.PlayOneShot(stoneSE); } else { audioSource.PlayOneShot(wallSE); } } }
αϯυͷ͜ͱɺ ͍ͭߟ͑Δʁ
αϯυͷ͜ͱ͍ͭߟ͑Δʁ • ΧοτͱγʔϯɿSEͱBGM • ԻݯΛ୳͢(͕͔͔࣌ؒΔ͔) • ԻݯͷϑΥʔϚοτ ʢࠓճʣਂ͘ߟ͑ͳͯ͘Α͍
SEͱBGM • SEɿήʔϜͷग़དྷࣄʹ߹Θͤͯग़͢ޮՌԻ • BGMɿϓϨΠதৗʹྲྀΕ͍ͯΔԻָ • ήʔϜΛʢେͬ͟ͺʹʣઃܭͨ͠ஈ֊Ͱɺ SEͱBGMͷ͕ʢͬ͘͟ΓʣѲͰ͖Δ
ԻݯΛ୳͢ • ຐԦࠢ https://maoudamashii.jokersounds.com/ • ޮՌԻϥϘ https://soundeffect-lab.info/ • UnityͪΌΜͷɿϘΠεύοΫ •
ʢࠓճʣཔΊΔʂʂ
ԻݯͷϑΥʔϚοτ • ࠓճ͍ήʔϜͳͷͰͳΜͰ͍͍ • .ogg/.mp3ѹॖ͞Ε͓ͯΓɺ࠶ੜ։࢝࣌ʹ CPUͷύϫʔΛ͏ɻ.wavѹॖ͞Ε͍ͯͳ͍ ͷͰ͍ԻͷಡΈࠐΈ࣌ʹ͕͔͔࣌ؒΔ͋Γ
SEͱBGMΛ͍͍ײ͡ʹ͢Δ
SEͱBGMΛ͍͍ײ͡ʹ͢Δ ԻΛઃఆͨ͠ঢ়ଶͰ ʮAudio MixerʯΛ͏ • Audio SourceΛάϧʔϓԽ͠ɺ·ͱΊͯѻ͑Δ • ͦΕΛར༻͠ɺSE͕໐ͬͨͱ͖ɺBGMͷԻྔΛ Ұ࣌తʹԼ͛ͨΓͰ͖Δ
Audio MixerΛ͏ • Audio MixerΛͭ͘Δ Create->Audio Mixer • Audio MixerΠϯυΛग़͢
ϝχϡʔɹWindow->Audio Mixer
Audio MixerΛ͏ • MasterͷԼʹࢠάϧʔϓΛ࡞ΔʢBGM/SEʣ BGMͱSEಉ͡֊ʹͳΔΑ͏ʹɻ ӈΫϦοΫ ʮ"EE$IJME(SPVQʯ
Audio MixerΛ͏ • ඍௐ͢Δલʹɺ֤ήʔϜΦϒδΣΫτͷ AudioSourceʮOutputʯʹάϧʔϓΛ ઃఆ͓͖ͯ͠·͢ʢΕ͍͢ͷͰҙʂʣ • ͜ͷঢ়ଶͰήʔϜΛ࣮ߦ͠Ի͕໐Δ͜ͱΛ֬ೝ
Audio MixerΛ͏ʢμοΩϯάʣ • SEͷμοΩϯά࠶ੜ ʢSEΛ࠶ੜ͢Δͱ͖ɺଞͷԻྔΛߜΔʣ #(.Լͷ"EEΛԡԼ͠ ʮ%VDL7PMVNFʯΛબ
υϥοά͠ %VDL7PMVNFͷԼ ͖ͭͮ Audio MixerΛ͏ʢμοΩϯάʣ
• SEʹSendΛઃఆ->ΠϯεϖΫλͷઃఆ 4&Լͷ"EEΛԡԼ͠ ʮ4&/%ʯΛબ Audio MixerΛ͏ʢμοΩϯάʣ
• BGMͷThresholdʢ͖͍͠ʣ BGMͱSE͕ಉ࣌࠶ੜ͞Ε͍ͯΔͱ͖ɺSEԻྔ͕ ͜ͷᮢΛ͍͑ͯΔؒμοΩϯάΛద༻͢Δ ࠨӈʹυϥοά͠ ͖͍͠Λௐ͢Δ Audio MixerΛ͏ʢμοΩϯάʣ
Audio MixerΛ͏ • શମͷϘϦϡʔϜΛௐ͢Δ • ήʔϜΛ࣮ߦ͠ɺԻΛฉ͖ͳ͕ΒThresholdͱ શମͷϘϦϡʔϜΛඍௐ͍ͯ͘͠ͱ͍͍ײ͡ʹ ֤߲ͷͭ·ΈͰ ϘϦϡʔϜௐ
Ի͕໐Βͳ͍ͱ͖
Ի͕໐Βͳ͍ͱ͖ • ίϯϙʔωϯτʢAudioSource/ AudioListenerʣ͍͍ͯΔ͔ʁ • AudioClipΛઃఆ͢ΔॴʢAudioSource εΫϦϓτͷΠϯεϖΫλʣʹઃఆ͍ͯ͠Δ͔ • AudioMixerΛ༻͍ͯ͠Δ߹ AudioSourceͷOutput֬ೝ
ͬͱৄ͍͠ࢿྉ • Unite2018 ʮAudioػೳͷجૅͱ࣮ςΫχοΫʯ https://www.slideshare.net/ UnityTechnologiesJapan002/unite- tokyo-2018audio