【Unityゲーム作成講座2】アドベンチャーゲームの作り方#12(サウンドシステム①)【ゆっくり解説】
Summary
Please replace the link and try again.
Takeaways
- 🎮 ゲームのサウンドシステムの導入方法が解説されています。
- 🔊 オーディオマネージャースクリプトを作成し、マスターボリュームなどの調整を担当します。
- 🎶 BGMの流れをゲームオブジェクトとオーディオソースを用いて管理します。
- 📊 効果音やシステム音の音量は、スクリプト内で個別に調整可能です。
- 🔧 音量の調整は、スライダーを用いてシステムUIから行うことができます。
- 🎵 異なるゲーム状態(通常時・戦闘時など)に対応するBGMの切り替えが行われます。
- 🔄 BGMのフェードイン・フェードアウトによる滑らかな曲の遷移を次回の課題とします。
- 💿 効果音やBGMの音源は、無料商用利用可のサイトから調達することが可能です。
- 🧱 ゲームの音環境を構築するために、スクリプトとUI要素が組み合わせて活用されます。
- 🛠️ 音量の調整機能を実装することで、ゲームのプレイ性や印象を大きく変えることができます。
- 📖 シングルトンパターンを使用して、オーディオマネージャーのインスタンスを効率的に管理します。
Q & A
オーディオマネージャーの役割は何ですか?
-オーディオマネージャーは、ゲーム内のオーディオシステムを統括し、音量の調整や音源の管理、BGMや効果音の再生などを担当します。
マスターボリューム、SFXボリューム、システムボリューム、BGMボリュームのそれぞれの意味は何ですか?
-マスターボリュームはゲーム全体の音量を調整し、SFXボリュームは効果音の音量、システムボリュームはシステム音の音量、BGMボリュームは背景音楽の音量を制御するための変数です。
オーディオソースというコンポーネントは何を担当するのですか?
-オーディオソースコンポーネントは、音声クリップを流し、音を鳴らすことを担当します。BGMや効果音、システム音の再生に使用されます。
スクリプト内で自動的に行う処理とは何ですか?
-スクリプト内で自動的に行う処理は、ゲーム開始時や特定のイベント発生時に自動的に実行される処理です。例えば、ゲームオブジェクトの生成やオーディオソースの設定などが含まれます。
音量調節の仕組みを説明してください。
-音量調節は、マスターボリュームと各チャンネルのボリュームを掛け合わせることで行われます。スライダーでマスターボリュームを調整することで、効果音、システム音、BGMの音量を一気に制御できます。
ゲームのシステムパネルを開くにはどうすればいいですか?
-ゲームのシステムパネルを開くためには、画面右クリックで作成したシステムボタンを押します。ボタンを押すと、システムパネルが開いて、音量調節などのシステム操作ができます。
シングルトンパターンのメリットは何ですか?
-シングルトンパターンのメリットは、ゲーム中に存在するオーディオマネージャーのインスタンスを1個だけに制限し、どこからでも同じインスタンスにアクセスできることです。これにより、オーディオの統一的な管理が可能になり、インスタンスが重複する可能性を排除できます。
効果音を選んだ基準は何ですか?
-効果音は、ゲームの状況やアクションに合わせて適切な音を選択することが重要です。例えば、攻撃時のパンチ音は力強い音、ボタン押下時の音は地味で明了したもの、成功時の音はポジティブなイメージを持つものなど、ゲームの状況に合わせて適切な効果音を選択します。
BGMの選択にどのような考慮事項がありましたか?
-BGMの選択には、ゲームの雰囲気やプレイヤーの感情に合わせて適切な曲を選ぶことが重要です。戦闘用BGMは緊張感や興奮を引き出す曲、通常時BGMは落ち着いた雰囲気を出せる曲が適しています。また、曲の著作権や商用利用可否も考慮する必要があります。
BGMのフェードインとフェードアウトはどのように実現されるのですか?
-BGMのフェードインとフェードアウトは、オーディオソースのボリュームを徐々に増減または減少させることで実現されます。再生中のBGMの音量を徐々に小さくして新しいBGMを徐々に大きくすることで、滑らかな曲の遷移が可能です。
ゲームのステートによって異なる音が鳴らすようにするにはどうすればいいですか?
-ゲームのステートに応じて異なる音を鳴らすためには、各ステートに応じたオーディオクリップを準備し、ステートに入った際に適切な音を再生するようにスクリプトを記述します。例えば、攻撃ステートでは攻撃音を、勝利ステートでは勝利音を再生するように設定します。
Outlines
🎮 ゲームのサウンドシステムの導入方法
ゲームのオーディオシステムを構築する方法について解説します。まず、オーディオマネージャーというスクリプトを作成し、マスターボリューム、SFXボリューム、システムボリューム、BGMの音量を調整するためのフロート変数を用意します。次に、オーディオソースコンポーネントを用いてBGMを管理し、ゲームオブジェクトにアタッチして自動的に音楽を再生させる処理を記述します。また、スライダーを作成して音量を調節できるようにします。
🔊 音量調節システムの構築
ゲーム内の音量調節システムを構築する方法について説明します。スライダーを作成し、システム音やBGMの音量を調整するためのUIを構築します。オーディオマネージャーシングルトンを用いて、音量の調整を簡便に行うことができるようにします。また、スクリプトを用いてスライダーの値とオーディオシステムの音量を連動させ、音量の調節を実装します。
🎵 BGMの選定と効果音の調達
ゲームに使用するBGMと効果音の選定、調達方法について説明します。戦闘用のBGMと通常時のBGMを選定し、効果音ラボから必要な効果音をダウンロードします。BGMは2種類、通常時と戦闘時の曲を使い、効果音は攻撃やアイテムの使用などに対応する音源を選びます。これらの音源をユニティに取り込み、オーディオマネージャーにアタッチして使用します。
🎮 ゲーム内の音声の再生処理
ゲーム内で必要な音声を再生するための処理を記述します。システム音や効果音を鳴らす関数を作り、ゲームのステートに応じて適切な音を再生します。また、敵との戦闘やアイテムの組み合わせなど成功時の音や失敗時の音を区別して鳴らしたり、BGMの切り替え時に自然に过渡するように処理を記述します。音声の再生はオーディオマネージャーを用いて行い、音量の調整も含まれます。
🌟 効果音とBGMの調整とテスト
ゲーム内の効果音とBGMの調整とテスト方法について説明します。スライダーで調整した音量を確認し、ゲームの各種ステートで鳴らされる音声をテストします。効果音は攻撃やアイテム使用、成功・失敗時の音などに使い、BGMは通常時と戦闘時を区別して鳴らします。また、BGMの切り替えを滑らかに行うためのフェードアウト・フェードインの処理を次回の課題として提案します。
Mindmap
Keywords
💡オーディオシステム
💡マスターボリューム
💡BGM
💡効果音
💡システム音
💡オーディオマネージャー
💡スクリプト
💡音量調節
💡スライダー
💡シングルトン
Highlights
オーディオシステムの導入方法についての解説
ゲーム内オーディオマネージャースクリプトの作成
音量を調節するためのフロート変数の準備
効果音とシステム音の音量変数の設定
マスター音量を掛け合わせる方法の説明
オーディオソースコンポーネントの使い方
ゲームオブジェクトにオーディオソースを自動的にアタッチするスクリプトの作成
ウェイク関数の使用とゲーム開始時の処理
音量調節スライダーの作成と設定
システムUIパネルの作り方とスクリプトのアタッチ
ボリューム変更関数の作成とスライダーとの連携
効果音とBGMの選曲とダウンロード方法
オーディオマネージャーでのBGMのアタッチ方法
システム音を鳴らす関数の作成と使用方法
効果音を鳴らす関数の作成とステートでの利用
BGMのフェードインとフェードアウトの仕組み
音量調節システムの完成とテスト
Transcripts
みなさんこんにちは happy
sunrise のゆっくり霊夢です今回
はサウンドシステムの導入の仕方について
解説していきます今回の作業内容の
プロジェクトファイル及び参考にさせて
いただいた動画の url は概要欄に
貼ってありますというわけで早速レッツ
ゴー
早速始めて以降今回はオーディオシステム
をつくってゲーム内におとう鳴らす仕組み
を解説するよ有無まず何すりゃいいんだ
まずはスクリプトを作ろう
オーディオマネージャーというスクリプト
作ってオーディオマネージャー
ほいそのスクリプトをメインオブジェクト
にアタッチして
ほいじゃあそのスクリプト開いて入らない
中身決してまずは音量を調節する仕組み
から作るよ音量を表すフロート変数を用意
しよう public float 変数
名はマスターボリュームパーセント
マスターボリュームパーセント初期値は
とりあえず1とかにしておこう=1 f
この値が1の場合は音量 max 例の
場合はミュートになる付6ふむ次は効果音
の音量変数名は sfx ボリューム
パーセント sfx ってなんだサウンド
エフェクトの約なるほど public
float sfx ボリューム%=1次
はシステム音木鶏 public
float システムボリューム%=1
最後に bgm public float
music vol %=1音量調節は
以上の4チャンネルに分ける下の3つの
音量にマスター音量を掛け合わせることで
全体の音量を調節できるようにするよう
ふむふむ一応この値を外から勝手に変え
られないようにプロパティで保護しよう
次は bgm を管理するための
コンポーネントを用意するオーディオ
ソースというコンポーネントに音声
クリップを当てはめれば音楽を流すことが
できるじゃあユニティーに戻って
オーディオソースをゲームオブジェクトに
アタッチし俺止まった今回はその作業も
スクリプト内で自動的に行うそんなこと
できるのかオーディオソース型の変数作っ
て変数名はミュージックそうすぱぶりっく
は要らないオーディオソースミュージック
ソースではゲーム開始と同時にオーディオ
ソースコンポーネントがータッチされた
ゲームオブジェクトを生成しそれをメイン
オブジェクトの子にする処理を書こうその
仕組みはウェイク関数に各アウェイク関数
過去のシリーズの中では初登場かなあ
ウェイク関数はゲーム開始と同時に一度
だけ実行される関数だ4つたと関数よりも
前に実行されるんだったかそうだから
ゲーム内のキャラのパラメーターの初期化
とかとは違ってゲームのシステムの構築の
ための処理などを書くまあ明確なルールが
あるわけじゃないからどっちでもいいんだ
けどねまず何を書けばいいまずは新規の
ゲームオブジェクトを生成する処理ゲーム
オブジェクト
ニューミュージックソース=ニューゲーム
オブジェクトmusic 総数これで
ミュージックソースという名前のゲーム
オブジェクトがヒエラルキー常に作られる
ふむふむミュージック総数 at
コンポーネントオーディオ総数これでこの
オブジェクトにオーディオソースがー
タッチされたふむそれと同時に
ミュージックソースにコンポーネントを
代入しよう music そう水=
なるほど最後にこのゲームオブジェクトを
メインオブジェクトの子に設定するニュー
ミュージックソーストランスフォーム
ペアレント=トランスフォーム
これで1回動かしてどうなるか見てみよう
をメインオブジェクトの下にミュージック
ソースって名前のオブジェクトが生成され
たそしてそのオブジェクトにオーディオ
ソースコンポーネントがアタッチされて
いるな成功だねこのオーディオクリップと
いう枠の中に音声データをアタッチして
再生すればこのゲームオブジェクトのある
位置からおとう鳴らすことができる今回の
ゲームは3 d じゃないから意味ない
けどな今回のゲームで使うのはこの
ボリュームというパラメーターだけだね
スクリプトでこの値を動かして bgm の
音量を調節するというわけで次は音量調節
関数を作ろうちょっと待て今 bgm 用
のオーディオソースは用意したが効果音と
システム音にも同様にオーディオソースが
必要なんじゃないか効果音とシステム音は
長久手市に秒の単発の音だからわざわざ
オーディオソース用椅子必要はない単発の
おとう鳴らすだけならオーディオソース.
プレイクリップ at ポイントという
便利関数を実行すればいいだけはいえーい
まずは効果音のボリュームを調整する関数
から関数名はセットボリュームアンダー
バー sfx にしよう public
ぽいどセットボリュームアンダーバー
sfx 引数はフロートを1個変数名は
パーセンとフロートパーセント中身は超
単純 sfx ボリューム%=パーセント
音量はスライダーで調節できるようにする
スライダーの値をこの関数の引数に
当てはめれば自在に音量調節ができ
るってわけですふむ6次はシステム音の
ボリューム変更処理 public
void セットボリューム
システムフローとパーセントシステム
ボリューム%=パーセント次 bgm の
ボリューム public void
セットボリュームミュージックフロート
パーセント music vol %=
パーセントここではオーディオソースの
ボリュームの値もどう時に変更する必要が
ある music ソースポリューム=
music vol パーセントかける
マスターボリューム%ふむ最後にマスター
音量 public void セット
ボリュームマスター
マスターボリューム=パーセントここでも
オーディオソースのボリュームを変更する
ミュージックソースボリューム=
music vol パーセントかける
マスターボリュームパーセントよし今度は
スライダーを作るよユニティーに戻って
ホイ画面の右下にボタン作ってボタンの
名前はシステムキャンバスを右クリック
ui ボタンその後ボタンを画面右下に
移動うそのボタンの中の文字をシステムに
書き換える
システムこのボタンを押したらシステム
画面を開けるように使用画面のど真ん中に
パネルを用意してキャンバスを右クリック
ui パネル
そしてパネルをちょっと縮める
こんなもんかパネルが半透明だとちょっと
見づらいから色を濃くしてパネルの
イメージコンポーネントのカラーを
クリックアルファの値を100にするこれ
でよしパネルの名前はパネルアンダーバー
システムにしようパネルアンダーバー
システムこのパネルでは音量調節だけで
なく今後西武とかロードもできるようにし
ていく予定ですふむついでにさっき作った
ボタンはボタンアンダーバーシステムに
変えておこうボタンアンダーバーシステム
ではパネルの中にスライダー ui を
設置し用パネルを右クリック
ui スライダーそのスライダーを大体
ここらへんに移動させる
続いてこのスライダーの中にテキストを
追加スライダーを右クリック
ui テキストその敵須藤スライダーの左
端に寄せる
4
こんなもんかそのテキストの文字を
マスター音量と書き換えよう
文字が見切れたこういう時は
アレンジメントを中央揃えに指定ベスト
フィットにチェックを入れるこれでよし
ok そのスライダーの名前をスライダー
アンダーバーマスターにしておいて
スライダーアンダーバーマスターその
スライダーを3個複製してコントロール d
コントロール d コントロール d
それぞれ名前をスライダー sfx
スライダーミュージックスライダー
システムに変えて
そいつらをパネル内にきれいに並べてホイ
ホイ
ほい
そしてスライダーの中のテキストも
書き換える
なくもっと
000
なんか文字サイズが不揃いで不格好だなぁ
こういう時はテキストの max サイズ
を小さくしてあげればいい4つのテキスト
を同時選択してコントロールをしながら
テキストをクリック
そして max サイズの値を14に
しようこれで綺麗になったふむこの
スライダーコンポーネントのバリューと
いう値これはスライダーのハンドルが左端
に行くと0右端に行くと1になるこの値を
さっき作ったボリューム変更関数と連動さ
せるわけだなそういうことです角
スライダーのボリュームの値は全部市にし
ておこう
できたぜそしてこのパネルを表示にする
ではシステムパネルを管理するための
スクリプトを作ろうシステム ui と
いう名前のスクリプト作って
システム ui そいつをメイン
オブジェクトにアタッチして
スクリプト開いてさっき作ったシステム
関連のパーツ等をこのスクリプトにア
タッチしていくよチャーそのための枠を
作るぜ頼むぜーまずはネームスペースいう
神具ユニディエンジン ui システム
ボタン用の枠を作る public ボタン
ぽたんアンダーバーシステム次にパネル
public a 6オブジェクトパネル
アンダーバーシステム阻止て各種音量調整
スライダー public slider
slider アンダーバーマスター
スライダーアンダーバー music
スライダーアンダーバー sfx っっ
スライダーアンダーバーシステム
できた税化したぜではシステムボタンを
押したらパネルが開く仕組みを作ろうか
at リスナーを使ってボタンの押下を
感知する仕組みをつくってどうやるんだっ
けまずボタンが押されたかどうかを判定
するブール値を作るそうだったそうだった
ぶーるープッシュボタンシステム=
false そしてあっとリスナーを使っ
てボタンを押したと同時にこのプールを
ブルーに変えるだったなそうそうぽたん
アンダーバーシステム音 click at
リスナーラムダ演算子 pb システム=
true そしてフレームの最後に忘れず
に false に戻すそうしないと
ボタン1回押したらそれから毎フレーム
ボタン連打することになるからねできた
よしではアップデート関数内にボタンが
押されたらパネルを表示しパネルが押され
た状態で再度ボタンを押したらパネルを
表示にする処理書いて任せろもしボタンが
押されたら
パネルが表示されている場合はパネルを
表示にするパネルが表示ならパネルを表示
するできたぜではユニティーに戻って各
パーツをアタッチし抵抗
おい
ほい
ホイホイ
ホイホイってきたアーチャーちゃんと動く
かテストしてみよう
000
動いてるぜではこのスライダーと
ボリュームを連動させる処理を各幼稚
ステム ui スクリプトに戻ってホイ
まずはマスター音量のスライダーからこれ
も at リスナーだろうそうだけど
スライダーの場合ボタンとちょっと書き方
が異なるスライダー master on
バリューチェンジどうあっどリスナー本場
流チェンジどつまり値が変わったときに
実行される処理仮想つまりハンドルが動い
た時にこの格好の中に書かれた処理が実行
されるつまりセットボリュームマスター
関数だなそうということはここで
オーディオマネージャーを参照しなきゃ
いけないなというわけでオーディオ
マネージャーをシングルトンかしてここ
から参照できるようにしようシングルトン
って何って方はステート工藤 ai の
作り方動画の40分30秒あたりで解説し
てますとりあえずオーディオマネージャー
クラス開いたぜシングルトンの書き方覚え
てる忘れたぜそんじゃあ改めて説明する
まずはオーディオマネージャー方の
static 変数を用意する
public static オーディオ
マネージャーインスタンス static
変数はゲーム内に必ず1個しか実態が存在
しないたとえオーディオマネージャーが2
個以上あってもこのインスタンスという枠
はかならず共通の1個のオーディオ
マネージャーを指し示すこれ参照の概念が
わからないとピンと来ないだろうなピンと
こない方に必殺技を教えてあげようどんな
技だよくわからんけど動きゃいいと強引に
納得するお前の常套手段だな真面目な話
マジでこれでなんとかなりますし理解わー
とから追い付いてきますゲーム作りで一番
やっちゃいけないことは手が止まって1
カ所にとどまり続けてしまうことです
とにかく書いて動かしてみるを徹底し
ましょう本題に戻ろうウイ次はウェイク
関数内に降格
もしインスタンスが塗るじゃなければ自分
を抹消するもシーンスタンスが塗るなら
インスタンスに自分を代入するそして
シーン切り替え時に自分を抹消しない今回
のゲームではシーン切り替えを行わないの
で本来この文は不要だけど一応これが
シングルトンの書き方の一つですこれで
ゲーム開始から終了までの間
オーディオ manager .
インスタンスは常に2個以上にならず確実
に1個だけ存在する状態が保障される
インスタンスが一個しかないということは
どのインスタンスを参照するのか選ぶ必要
もないつまりオーディオ manager
.インスタンスを呼べばいつでもどこでも
共通のオーディオマネージャーにアクセス
できるってわけですすげー星一つ忘れちゃ
いけないのがウェイク分の下に書いたこの
オーディオソースの初期化処理これらは
インスタンスが null の時だけ実行
されるべき内容だからこうやって切り取っ
てここに貼り付けるこれでシングルトン家
官僚システム言う位に戻ってぽいてワーッ
とリスナーの中でボリューム調整処理を
書いていくわけですけどもが無駄演算子
だろういやスライダーの場合それだと
うまくいかないそうなのかなので今回は
降格 delegate 中括弧
のカッコの中に処理を書けばいい
delegate ってなんだ分の中に
関数を作りながら埋め込むような仕組みだ
よそれラムダ式と何が違うんだほぼ同じだ
よじゃあなんでラムダ式じゃダメなんだ魔
理沙君はい動けばいいんだお前もわかって
ないのかよってりゲートやラムダ式はまだ
勉強不足なのでもっといい書き方はあるか
もしれないですがとりあえず自分が知っ
てるか気かたで進めさせていただきます
チャーとりあえず処理を書く税頼む
オーディオ manager .
インスタンス
セットボリュームマスターカッコこの格好
の中にスライダーの値を入れればいいわけ
だがその値はどうやってるんだー
slider .ばいうで参照できる
スライダー master . value
同じ要領で他の3つのスライダーにも関数
設定してっ
ん
ん
voodoo
できたよしこれで音量調節システムは
出来上がったいよいよ応答鳴らすのかその
前に音源を調達しなきゃね音源ってどう
やって調達するんだてはちょっとお買い物
行く母が妹の私が普段使わせていただい
てる曲はすべてこのドーバーシンドローム
さんで調達してる無料で商用利用可能な上
にハイクオリティーな bgm が
てんこ盛りだよそいつはすげぇ今回調達
する bgm は2種類
戦闘用の bgm と通常時の bgm
ちなみに選曲はあらかじめしておいたよう
ずらしく用意がいいなまず戦闘 bgm と
して採用させていただいたのがこちら匠東
さん作曲の大決戦を前が普段から愛用し
てる曲だな非常に汎用性が高く
めちゃくちゃちょうどいい感じがすごく
ちょうどいいデビューが下手くそすぎて
作曲者さんが可哀想だちなみに
ダウンロードの仕方は超簡単仮面下の
ダウンロードボタンを押してダウンロード
ファイルボタンを押すだけ f 6
次に通常時の bgm として今回使用さ
せていただくのがこちらかまぼこ幸子さん
作曲
不穏な雰囲気この曲もワイルドマンで使わ
せてもらったな曲名通りすごい不穏な
雰囲気があってなおかつシュールな感じも
してお気に入りいては以上の2曲を
ダウンロードしてダウンロードしたぜ次は
効果音を手に入れようこちらの効果音ラボ
さんはかゆいところに手が届く無料の音源
を大量に取り扱ってらっしゃいますこの
サイトには死ぬほどお世話になってるな
冗談抜きでこのサイトなかったらこの
チャンネル積んだ誰かもしれないぐらいお
世話になっておりますてどんなおとう調達
するんだ今回は4種類まず攻撃したり攻撃
を食らったりした時の実施って音あとは
ボタンを押したときのお父さん種類ほど
オッケまず10知っておとう手に入れよう
このように効果音ラボさんはさまざまな
音源をカテゴリ別に並べてくれてる今回は
戦闘カテゴリの中のパンチの中から感じの
ものを選ぼう
なんかちょっと重たすぎるかなし他にも
まだまだあるよ
しっ
をこれがいいショーパンチちょうどいい
コミカルさだじゃあこちらをダウンロード
次はボタンを押したときのシステム音か
ボタンで検索してみてそしたらズラって
候補が出てくるからこの中からいいのを
探そう目移りするナマズは一番
オーソドックスなボタンをクリックした時
のカチって音とりあえずボタン押すたびに
鳴らすならあんまり視聴強くない方がいい
な
これだいい感じに地味な音じゃあこれ
ダウンロード次は組み合わせが成功した時
や敵との戦闘に勝利したときなどいいこと
が起こったときに鳴らすプルリンってを
とっ
そして組み合わせが失敗したときなどの部
って音以上をダウンロードしてユニティー
に戻ろうただ今では手に入れた音源を
ユニティー内に取り込むオーディオという
フォルダを新しく作って
オーディオそしてその中に音源をドラッグ
ドロップ
ほいそしてそれぞれの名前を分かりやすく
支えてあげよう
ん
持っていません
ん
おっ
できたぜよしこれらの音源オーディオ
マネージャーにアタッチするよまずは2
種類の bgm の枠を作るパブリック
オーディオクリップ bgm アンダー
バーノーマルパブリックオーディオ
クリップ bgm アンダーバーバトル
ふむふむこんな感じであとはシステム音と
効果音の枠も作って了解
できたでは音源を当たっしよう
ん
アタッチしたぜオーディオマネージャーに
戻ってではおとう鳴らす関数を今から作っ
ていくよいいぞ最初に作るのはシステム音
を鳴らす関数
関数名はプレイシステムにしよう
public void プレイシステム
引数はオーディオクリップを1個音の
鳴らし方はいたって簡単オーディオソース
.プレイクリップ at ポイント引数は
3つ
右から音声クリップおとう鳴らす市の情報
最後に音量まずは音声クリップ次に位置
座標か今回のゲームでは市関係ないから
普通に減点座標でいいトランスフォー
home .ポジション最後に音量か音量
はシステム音量とマスター音量を
掛け合わせた数字システムボリューム
パーセントかけるマスターボリューム
パーセントでは早速おとうならしてみよう
メインクラス開いてメインクラスまずは
メインコマンドステートの最初に音を
鳴らしてみようこの state エンター
処理の最後にさっき作った関数を実行する
オーディオマネーじゃあインスタンス
プレイシステムオーディオマネージャー
インスタンスシステムクリックこれで
メインコマンドに移行するたびにカチって
音が鳴るわけかこの時くれぐれも
state エンター処理の格好の外に
書かないでねじゃないと毎フレーム
クリック音がなってしまうよ業界いっ
ちゃあ同じ処理を書くステートの最初に
書いていって次は敵と遭遇ステートの最初
おっ
その次は戦闘コマンド state
次は攻撃ステーとか攻撃 state で
はクリック音ではなく殴った音を入れる
から飛ばす
同様に敵からの攻撃 state も
飛ばす
的に勝利した state ここでは成功
したと機能等ならそうか
システムアンダーバーサクセス次
インベントリを開く state ここで
もクリック音鳴らす
さらにこの中では使うボタンが押された
タイミングでもおとうならそう
ここではステートの変化が無いからかそう
そう次アイテム組み合わせ state
このステートの最初にもクリック音を
鳴らす
そして組み合わせが成功したら成功音失敗
したら失敗音を鳴らす
ん
ん
続いて部屋の選択 state ここでも
クリック音を鳴らす
その次の部屋移動ステーとでも同様
次の何も見つからなかった state で
は失敗 on
アイテムを見つけた state では
成功音を鳴らす
これで1回動かしてみるかよしきたああ
あああ
となってる
なんかを通る生なじゃあ音量下げ8
スライダーもちゃんと機能してるいい感じ
だねでは同じ要領で効果音を鳴らす関数
作るよ仕組みはシステム音と全く同じ業界
public void プレイ
sound effects
オーディオソースプレイクリップ at
ポイントクリップ transform
ポジション効果音ボリュームかける
マスターボリュームよしじゃあ攻撃
state 内でこの関数実行しようまず
は自分から敵への攻撃 state
オーディオマネージャーインスタンス
プレイ sound effect
audio マネージャーインスタンス
sound effects アタック敵
からの攻撃する8でも同じものを書く
じゃあ再度テスト
4位
4
敵からの攻撃と自分の攻撃で音変えても
いいかもなあそこらへんは各自お好みで
調整してください一応成功だぜじゃあ最後
に bgm ならそうよっしゃー
public void プレイ
music
音楽に関しては専用のオーディオソースを
用意したからそのオーディオソースの
クリップっては国音源をアタッチして
プレイという関数を実行する music
ソースクリップ=クリップミュージック
そうスプレーではメインクラス開いて
メインコマンドステートに入った時点で
通常 bgm
敵との遭遇ステートに入った時点で戦闘 b
cm を鳴らそう
できたアーティスト
を音がなってううるせえええええちょっと
先に音量調節しよう
ちゃんとなってるがうん
おいメインステートに戻るたびに曲が
リセットされてしまうぞメインステートに
入るたびにクリップ入れ直してプレイ関数
実行するからだねもっと工夫しよう
もしアタッチしようとしてるクリップが
現在アタッチされてるクリップと同じだっ
たら何もせずに終了
これでいちいち途切れなくなるということ
でラスト
ん
goo
[音楽]
ん
goo
グー
ん
いい感じ敵と戦ってみよう
[音楽]
ちゃんと切り替わったなぁ敵を倒してみて
[音楽]
なんだか bgm の切り替わりが急
すぎるなそこなんですよ問題は今回はここ
で区切って続きは次回にしよう次回は再生
している bgm をゆっくりフェード
アウトさせるのと同時に次の bgm を
ゆっくりフェードインさせることで滑らか
に曲を遷移させる仕組みをつくるよう
楽しみだぜというわけで今回も最後までご
視聴ありがとうございましたもし
よろしければチャンネル登録お待ちして
おります次回も必ず見てくださいまたねー
関連動画をさらに表示
1/3 Unreal Engine Vol.001 Building UE4 Scenes to work with TouchDesigner
【初心者向け】Zoomの始め方講座
【AIで15分WEB制作】 Gamma AIでLPやHPを一瞬で作る方法
ゲーム市場の崩壊を招き砂漠に埋め立て処分された伝説のクソゲー!史上最悪のゲームと呼ばれたE.T.のアクションアドベンチャー【E.T. The Extra-Terrestrial】
DALL-E3完全ガイド【この動画一本で理解できるdalle3の教科書】初心者OK!
Minecraft Far Lands or Bust - Episode #001 - The First Day
実はAI動画だった?本物だと思わせる作り方をわかりやすく解説!(癒し系風景動画)/ How to make Nature scenery animation by AI
5.0 / 5 (0 votes)