自己肯定感
unity1weekやゲームコンテストなどで自作ゲームを投稿する直前になると「こんなゲームどこが面白いんだろう?」病が発症する皆さんこんにちは。普段から自己肯定感低めで生活しているので制作中はゲーム作りに熱中して「このゲームは面白い!」と自信満々で盛り上がっているものの、いざ完成して熱が冷めると急に自信が無くなって作ったことを後悔したりします。まぁ、それでも投稿するけど。
ゴジラ小口
ロゴの「-1.0」の箇所が「小口」にしか見えないのですが、取り合ず話題になっているので映画館で鑑賞してきました。
ネットの評判通り「三丁目の夕日+ゴジラ」みたいな映画で、ゴジラの活躍(破壊)よりも人間ドラマの方に力点が置かれています。
この為、ゴジラが小笠原諸島海域からわざわざ東京へやってきて大暴れする理由は分からないし、「大怪獣ゴジラ」という既存生物を超越した存在を人々があっさりと受け入れるし、ゴジラに対処する方法も無理がありすぎるし、で「シンゴジラ」のような「大怪獣ゴジラを相手に人々がどうやって立ち向かい、倒していくか」を期待して観ると肩透かしに感じるかもしれません。
とは言え、重点の置かれた人間ドラマの方は「戦争のトラウマからの脱却」をテーマにしっかりと描かれていますし、ベタながらお涙頂戴のストーリーは心を打つものがあると思います。おそらく「シンゴジラ」よりも「ゴジラ-1.0」の方が好き、という方は多いでしょう。
何より監督が山崎貴というだけあって「大怪獣ゴジラ」のVFXシーンは必見で、海上でゴジラから追われる場面などはそのままUSJでアトラクション化できそうなぐらい迫力があり、恐らく過去一「怖いゴジラ」に仕上がっています。
これから日本だけでなく全米でも公開されるそうですが、多分「シンゴジラ」よりは評価を集め、集客するのではないでしょうか。私は「シンゴジラ」の方が好きですが。
サウンドの途中再生/一時停止
UnityでBGMやSE(効果音)などの音を再生するには「AudioSource」コンポーネントを使用します。
AudioSourceコンポーネントのAudioClipプロパティにmp3やoggなどの音源ファイルを指定してPlayメソッドをコールすればゲーム内に音楽を再生することができるのですが、イベントシーンなどでBGMのサビの部分から音楽を鳴らしたいケースでは、Timeプロパティにて再生開始の時間を指定することができます。
この時、指定は秒単位なので例えば1分30秒の所から再生を開始したい場合には以下のようなコードになります。
AudioSource AudioCtl; AudioCtl.time = 90.0f; AudioCtl.Play();
ゲームの一時停止機能を実装する場合、当然音楽も一時停止する必要があるので、そういった場合にはAudioSourceのPauseメソッドをコールします。
一時停止を解除する場合にはUnPauseを使用します。
AudioSource AudioCtl; // 一時停止 AudioCtl.Pause(); // 一時停止解除 AudioCtl.UnPause();
ここで一時停止解除の時にUnPauseではなくPlayをコールすると、先程のtimeプロパティに指定した時間から再生が開始されます。
また、これらの動作は「AudioSource」コンポーネントがアタッチされたGameObjectがアクティブ状態であることが前提です。
逆にGameObjectが非アクティブとなった場合には楽曲の再生は強制終了します。
非アクティブ状態でも音を鳴らしたい
非アクティブ時にも動くようにするには、メインメニューの「Edit」-「Project Settings」-「Player」を選択。
PlayerSettingsのInspectorウィンドウで中央にあるタブの左から2番目「Setting for PC, Mac & Linux Standalone」を選択。
「Run In Background」チェックボックスをONにします。
しかし、この設定はプロジェクト全体にかかわる設定です。この設定をONにすると、例えばコルーチンなどの処理も非アクティブ時に止まらなくなります。
全体への影響を考えて設定を変更する必要があります。
宣伝
今回展示した数学的脱出ゲーム「W.T.」は現在アーリーアクセス版リリース中です。
store.steampowered.comストーリー全5章中4章までを遊ぶことができます。
完成版は来年春リリース予定ですが、アーリーアクセス版の感想を完成版にフィードバックして行きたいので、何卒ご協力の程、よろしくお願いいたします。