目次
前回のチュートリアル
はじめに
前回は、ブロックの配置とゲームオーバーの実装を行いました
今回は、サウンドの追加と色の変更を行っていきます
サウンドの追加
まず、BGM や SE を実装していきます
http://tutorial.unity3d.jp/archive/my-first-unity/project/sound.unitypackage
上記のリンクを開くと、「sound.unitypackage」というファイルをダウンロードできます
「sound.unitypackage」には、ゲームで使用する BGM や SE が格納されています
「sound.unitypackage」をダウンロードしたら、
Unity メニューの「Assets>Import Package>Custom Package...」を選択して、
ダウンロードした「sound.unitypackage」を選択します
「Import Unity Package」ウィンドウが表示されたら「Import」ボタンを押します
これで、Unity プロジェクトに BGM や SE を追加できました
壁の SE の実装
Unity プロジェクトに BGM や SE を追加できたので、
次は、壁にボールがぶつかった時の SE を実装していきます
Unity メニューの「Assets>Create>C# Script」を選択します
作成したプログラムファイルに「HitPlaySound」という名前を付けます
「HitPlaySound」をダブルクリックすると、
お使いの環境に合わせて Visual Studio や MonoDevelop などの、
プログラムを書くためのエディタが起動するので、
下記のプログラムをコピーして貼り付けます
using UnityEngine; public class HitPlaySound : MonoBehaviour { public AudioClip sound; private void OnCollisionEnter( Collision collision ) { AudioSource.PlayClipAtPoint( sound, transform.position ); } }
今回はプログラムの解説は割愛させていただきます
プログラムを貼り付けたら、Ctrl + S を押すなどしてプログラムファイルを保存します
Unity に戻り、「Cube」を選択します
さらに、Shift を押しながら「Cube (3)」を選択します
これで、すべての壁を選択した状態になりました
この状態のまま、「HitPlaySound」を「Add Component」ボタンの下にドラッグします
すると、すべての壁に「HitPlaySound」を反映することができます
そして、「Touch」という名前のサウンドファイルをドラッグして設定します
上記のように「Sound」の欄に「Touch」と表示されていれば設定完了です
これで、エディタ上部の再生ボタンを押してゲームを再生して、
壁にボールがぶつかると、SE が再生されることが確認できます
確認ができたらエディタ上部の再生ボタンを押してゲームを停止します
ブロックの SE の実装
次は、ブロックにボールがぶつかった時の SE を実装していきます
オブジェクトの一覧が表示されている Hierarchy ビューの検索欄に
「BlockController」と入力します
すると、「BlockController」が設定されたすべてのブロックが表示されます
そして、「Block」を選択してから、
Shift を押しながら一番下の「Block (5)」を選択すると、
すべてのブロックを選択した状態になります
この状態のまま、「HitPlaySound」を「Add Component」ボタンの下にドラッグします
すると、すべてのブロックに「HitPlaySound」を反映されるので、
さらに、「Damage」という名前のサウンドファイルをドラッグして設定します
これで、エディタ上部の再生ボタンを押してゲームを再生して、
ブロックにボールがぶつかると、SE が再生されることが確認できます
確認ができたらエディタ上部の再生ボタンを押してゲームを停止します
パドルの SE の実装
「HitPlaySound」を「Paddle」にドラッグします
そして、「Paddle」を選択した状態で、
「Touch」という名前のサウンドファイルをドラッグして設定します
これで、エディタ上部の再生ボタンを押してゲームを再生して、
パドルにボールがぶつかると、SE が再生されることが確認できます
確認ができたらエディタ上部の再生ボタンを押してゲームを停止します
ゲームオーバーの SE の実装
「Cube (3)」を選択した状態で、
「Death」という名前のサウンドファイルをドラッグして設定します
これで、エディタ上部の再生ボタンを押してゲームを再生して、
下の壁にボールがぶつかると、SE が再生されることが確認できます
確認ができたらエディタ上部の再生ボタンを押してゲームを停止します
BGM の実装
ここまでで SE の実装が完了したので、次は BGM を実装していきます
「Main Camera」を選択した状態で「Add Component」ボタンを押して、
入力欄に「AudioSource」と入力して、表示された「AudioSource」を選択します
「AudioSource」は、BGM を再生するための機能です
次に、「BGM」という名前のサウンドファイルを
「AudioClip」の欄にドラッグして設定します
これで、エディタ上部の再生ボタンを押してゲームを再生すると、
BGM が再生されることが確認できます
確認ができたらエディタ上部の再生ボタンを押してゲームを停止します
このままだと、BGM が1回再生されるとそのまま終わってしまうので
「Audio Source」の「Loop」にチェックを入れます
これで、BGM がループ再生されるようになります
また、BGM の音量が大きすぎる場合は、「Volume」のスライダを調整します
以上で、BGM と SE の実装が完了になります
ブロックの色の変更
最後に、ブロックの色を変更します
Unity メニューの「Assets>Create>Material」を選択します
すると、Material ファイルが作成されるので「BlockMaterial」と名前を付けます
Material(マテリアル)は、オブジェクトの色や陰影を管理するファイルです
「BlockMaterial」を選択して上記の赤枠で囲まれたアイコンをクリックします
「Color」ウィンドウが表示されたら、
入力欄に上から順に「255」「0」「0」「255」と入力して閉じます
次に、オブジェクトの一覧が表示されている Hierarchy ビューの検索欄に
「BlockController」と入力します
すると、「BlockController」が設定されたすべてのブロックが表示されます
そして、「Block」を選択してから、
Shift を押しながら一番下の「Block (5)」を選択すると、
すべてのブロックを選択した状態になります
その状態で、「BlockMaterial」を「Add Component」ボタンの下にドラッグします
これで、ブロックの色を変更することができました