いのいち勉強日記

Turingで自動運転の開発をしています。京大でPhDをとりました。Kaggle Grandmasterです。

【Unity】シューティングゲームを作ってみよう!《Day 8》SEと画面遷移を実装!

8日目はゲームの体裁を整えるために

「SEと画面の遷移」実装します!

 

 

 

ゲーム作り8日目

 

ゲームの完成度を上げていくために

オープニングの画面やSEを作っていきます!

 

説明のシーン追加と画面の遷移

 

ゲーム開始前にゲームの説明をする画面を作りました。

 

 

f:id:sys-bio:20180403235033p:plain

 

ゲームのタイトルは

「COLORFUL SHOOTING!!!」

です!!!

 

そして「Press to Start!!!」を押すと

ゲーム実行画面に映るようにします。

 

 ゲーム画面の遷移方法はSceneManagerをインポートして

移動したいゲームシーンを指定するだけです!

 

ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー

using UnityEngine.SceneManagement;

ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー 

 

 これでシーンを移動するメソッドを使えます!

 

 

ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー

SceneManager.LoadScene ("GameScene");

ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー

 

 LoadSceneを使うことで目的のシーンに移ることができます!

これをメソッドにしてボタンと結びつければ完成です!

 

 

サウンドエフェクトの実装

 

次にサウンドエフェクト(SE)を実装していきます!

 

サウンドを出す方法は2ステップです。

  1. AudioSourceを音を出したいGameObjectにつける
  2. AudioClipで音声データを取得

 

まずは全体から音声を出すために、

GameManagerにAudioSourceのコンポーネントをつけました。

 

そして音声データは寺子屋本でも紹介されていた

「魔王魂」

というところでフリーの音声を取ってきました!

 

maoudamashii.jokersounds.com

 

音声データを「AudioClip」で宣言した変数に当てはめます!

 

ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー

public AudioClip gameoverSE;

ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー

こんな感じで欲しい音声を全部取得します!

 

 

そして、Start関数の中でAudioSourceを取得します!

ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー

void Start () {
        audioSource = this.gameObject.GetComponent<AudioSource> ();
    }

ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー

 

あとは鳴らしたいタイミングのところでPlayOneShotで鳴らせばOKです!

ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー

  audioSource.PlayOneShot (gameoverSE);

ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー

 

 これでこのコードが呼ばれた時に一度だけ実行されます。

 

 

BGMはGameManagerの

AudioSourceコンポーネントのAudioClipに直接貼り付けて

LoopをオンにすればBGMになります!

 

f:id:sys-bio:20180404002442p:plain

 

これでSEの実装はできました!

 

まとめ

 

一応ゲームっぽくなってきました!!!

 

ここまでできたので

明日は友達にやってもらって感想をもらおうと思います!!!

 

そして変なところがあれば修正を…

 

とりあえず一旦完成です!!!

 

今日も読んでいただきありがとうございました!