スポンサーリンク

Unity実習9、ゲームを作ってみよう編パート2-3

今回はゲームに音を入れます
BGMやSEって大事ですからね、これがあるだけで結構変わる

まずはUnityのAssets Storeにアクセスします
その後 Free music pack と検索
画像のものを見つけて、ダウンロードしてインポート
SnapCrab_Unity Personal (64bit) - Mainunity - Chapter7Game - PC Mac Linux Standalone DX11_2016-5-20_14-17-14_No-00

音源の設定
音を鳴らしたい物体に設定をして、そこから音が出ているようにします
ゴール地点の柱を選択
Add Componentを選択して Audio > Audio Sourceとクリック
InspectorにAudio Sourceが追加されるので、そこにある AudioClipに音を追加します
None (Audio Clip)と書かれている右に⦿印があるので、そこをクリック
すると、小さなウィンドウが開いくので、その中から Loop 16 - 145 bpm-complete をダブルクリック
ループ再生されるように、Audio Sourceの中にある Loop にチェック
Spatial Blendの値を1にします
初期状態だと0で、2Dになっていて、BGMの音量だったり聞こえる向きに変化がない状態
SnapCrab_Unity Personal (64bit) - Mainunity - Chapter7Game - PC Mac Linux Standalone DX11_2016-5-20_14-34-49_No-00

プレイすると柱からなんか聞こえますね
ちなみに、Audio Listenerというものがありまして
初期状態ではカメラにこいつが付いています
なので、カメラの向きで音の聞こえ方が変わってきますが、カメラについているこれを消して
キャラクターに Add Component で付けると、キャラクターの向きで聞こえ方が変わります
色々あるんですねぇ
SnapCrab_Unity Personal (64bit) - Mainunity - Chapter7Game - PC Mac Linux Standalone DX11_2016-5-20_14-42-33_No-00


そして、なんとサウンド設定はこれで終わり!
嘘やん
まだページ残ってるけど!と思ったら、スマホに対応させようでした
これでもやるのね...


今回はスマホの画面にジョイスティックを設置して
キャラクターを動かせるようにするそうな
Unityには色んな環境でプレイ出来るように、入力機能のアセットが元からあるのでそれをインポート
便利ですね
Assets > ImportPackage > CrossPlatformInput
インポートが終わったらProjectで
Assets > Standard Assets > CrossPlatformInput > Prefabs
と進んでいき、中にある MobileSingleStickController を、Hierarchyにドラッグ&ドロップ
SnapCrab_Unity Personal (64bit) - Mainunity - Chapter7Game - PC Mac Linux Standalone DX11_2016-5-20_14-49-58_No-00

入れるだけで機能するようになっているので、何もしなければスマホで動作するそうです
が、テストビューで確認すると表示されてません
どうも、デフォルトだとPC用のプレビュー?になっているので、設定でモバイル用に変更
本だと、Unityのメニューにある File > Build Settings と選ぶと小さいウィンドウが出るので
PlatformをAndroidなりiOSにして、Switch Platformを押せば完了

と、なっていますが
Switch Platformが押せない、あれれ?
SnapCrab_Build Settings_2016-5-20_14-57-35_No-00

Androidと書かれたところの下にOpen Download Page なんてあるので
「もしかして初期状態じゃ入っていない?」なんて思いながらそのボタンを押したら
まさかの404エラー
どうなってんの...
無題

色々と調べてみたところ、どうもJava関連の、Android開発で必要なものを色々とインストールしておかないといけないそうな
またこのパターンですか
とりあえず、調べて行って、URLのサイトの通りにやれば出来る?っぽかったのですが
Unityの方でExternal ToolsにAndroidの項目がなかったので諦めました
インストールとかかなり多いですし、凄く時間がかかります
出来た人がいれば教えて下さい...
http://mltmdkana.hatenablog.com/entry/2016/02/15/050002

仕方がないので、Androidは諦めて次の工程へ

処理の負担を下げる
視界に入っていないオブジェクトは表示しないように設定しましょうとのこと
元々、描画距離外のは表示していませんが
壁越しでも距離内であれば表示しています
なので、壁などで隠れているものは消えるようにしちゃおう、と言った感じ
Occulusion Cullingと言うそうな

ステージ全体に処理を適用するので
「空のオブジェクト」を作って、ステージを構成している物全てをひとまとめに(親子関係にする)
空のオブジェクトの名前は Stage
SnapCrab_Unity Personal (64bit) - Mainunity - Chapter7Game - PC Mac Linux Standalone DX11_2016-5-20_15-49-50_No-00

そうしたら、Inspectorで、Staticの部分にチェックを入れます
本当にチェックを入れるのかと問われるのでYes
ここにチェックを入れておくと、何か設定を変えても変化しなくなる?そうな
良く分かりませんが、入れといたほうが良いらしい
SnapCrab_Unity Personal (64bit) - Mainunity - Chapter7Game - PC Mac Linux Standalone DX11_2016-5-20_15-54-44_No-00

UnityのメニューからWindow > Occlusion Cullingをクリック
Inspectorの隣に新しくタブが追加される(場合によっては違う場所に行くかも?)ので
Visualizationをクリック
下の方に Bake ボタンがあるのでクリックすると、設定完了
カメラの死角にあるものは表示されません
ちょっと分かりにくいですが、スタート直前の画面だとゴール地点の足場が非表示なっています
SnapCrab_Unity Personal (64bit) - Mainunity - Chapter7Game - PC Mac Linux Standalone DX11_2016-5-20_15-56-58_No-00

SnapCrab_Unity Personal (64bit) - Mainunity - Chapter7Game - PC Mac Linux Standalone DX11_2016-5-20_15-59-24_No-00

これで、第6章が終わりました
長かった...
次の7章で最後のようですが、2Dゲームを作ってみよう、とのこと
正直3Dやることが多いので2Dからのほうが良いかもしれないですね...

本が上手く手順通りにいかなかったりで
ちょっとめげそうですが、頑張りますよ!
関連記事

Leave a Reply


管理者にだけ表示を許可する

Comment

  • 2016/05/20 (Fri) 17:13
    カモメ / URL

    UnityのExternal ToolsにAndroidの項目がないって再起動とかしても無い?

    なければUnityのアップデートで設定の場所が変わってたり、Androidの項目を表示させるためのチェックボックスがあったりするかもしれないから設定を隅々までよく見るか、Googleの検索ツールから期間指定(アップデート後からの記事を出すように)してググれば解決するかも?

  • 2016/05/22 (Sun) 15:41
    NF / URL
    No title

    カモメ>
    再起動しても無いなぁ

    期間指定なんてあったのか!
    ちょっと色々探してみる

Leave a Reply


管理者にだけ表示を許可する