今日はUnity。というか、しばらく、Unity。
ちょっと前に勉強のために作った3Dアクションゲーム。
unityroom.com
音については、あちこちのフリーサイトから集めてきていましたが、この度、この拙作に音をプロデュースしてくださると、とある方々からお声がけ頂きました🤩
新しいシチュエーションの音パターンも提供いただけるので、今日から順次実装していきます!
まずは足音。
いくつかのyoutubeで足音の実装方法を学んではいたけれど、納得いく音素材が見つけられなかったので、このゲームについては、そのまま足音無しにしていました。
でも、今回提供いただく予定の音源の中に、草原・砂漠・ダンジョンの3パターンがあり、
まず砂漠パターンの音源が納品されましたので、早速実装してみたいと思います。
まず、音源管理のScriptableObject、AudioSOに足音の音源を登録。
//AudioSO public AudioClip[] WalkingAtGrasslandSE ;//草原の足音 public AudioClip[] WalkingAtDesertSE;//砂漠の足音 public AudioClip[] WalkingAtDungeonSE;//ダンジョンの足音
次にGameManager に足音管理用の変数を追加。
//GameManager public int WalkingArea = 1;//足音判定用 0:草原、1:砂漠、2:ダンジョン
更に、Player Controllerに足音再生用のAudioSource格納用の変数を追加。
//PlayerController public AudioSource audioSource_FootSteps; //足音用のAudioSource格納用(Ground CheckerのAudioSource)
そして、足音を鳴らすコードを追加。
//PlayerController public void Play_FootSteps() { int StepSE = UnityEngine.Random.Range(0, 5); switch(gameManager.WalkingArea) { case 0: break; case 1: audioSource_FootSteps.PlayOneShot(AudioSO.Entity.WalkingAtDesertSE[StepSE]); break; case 2: break; } }
そしてそして、走るアニメーションクリップにこの関数を呼び出すトリガーを追加する。
youtu.be
やっぱり、足音があるのって自然😍