#29 ポストプロセス実装

参考URL docs.unity3d.com/ja/2019.4/Manual/PostProcessingOverview.html

体力の低下とともに画面を赤黒くしていく処理

ウインドウ > パッケージマネージャからpostprocessingをインポート

【ヒエラルキ】ゲームオブジェクト > 3Dオブジェクト >Postprocess volumeを追加

ゲームオブジェクト > ボリューム > グローバルボリューム追加

グローバルボリューム > 新規を押すと自動的にグローバルボリュームが適用される

グローバルボリューム > addOverride > postprocessing > color adjustments, vignetteを追加

カラーと視界のぼかしを調整

【スクリプト】FPSController.cs編集

【ヒエラルキ】Player > ボリュームにGlobalVolumeを挿入

【ヒエラルキ】GlobalVolume > 優先度を1に設定

再生で操作確認

#28 アイテムSE実装

【ヒエラルキ】Player > AudioSourceコンポーネント追加(開始時に再生のチェックを外す)

【スクリプト】FPSController.cs編集

【ヒエラルキ】Player > FPSControllerのItemに追加したAudioSourceコンポーネントを挿入

HealItemSEにSoundフォルダ内のHealSE音を挿入

同様にAmmoSEにも音ファイルを挿入

#26 アイテム作成

アセットストアよりアイテムアセットをダウンロード

インポートしたアイテムアセットのPreafbを開く

色がついていない状態であれば 編集 > RenderPipeline > 下記の項目を選択

アイテムを適当に追加

【ヒエラルキ】Prefabを展開 > 既存のアニメーションコンポーネントを削除

タグを追加 弾薬回復用Ammoタグと体力回復用Medタグを作成

アイテム2つを選択してボックスコライダーを追加

トリガーにする にチェック

コライダーの編集で大きさを調整

リジッドボディコンポーネント追加

2つのアイテムをPrefab化

Prefab化できたら

ヒエラルキ上のアイテム2つを削除

【スクリプト】FPSController.cs編集

【ヒエラルキ】Player > AmmoBox(回復する玉数), medBox(HP回復数)を設定

再生でアイテム取得後、玉の数とHPが回復していることを確認

#25 敵モデルスポーンシステムを実装

【ヒエラルキ】空のオブジェクト追加(名前SpawrPoint)

追加したオブジェクトを任意の位置に配置

【ヒエラルキ】SpawrPoint > ボックスコライダー追加

トリガーにするにチェック

コライダーの編集でオブジェクトの大きさを調整

【スクリプト】Spawn.cs作成

【ヒエラルキ】SpawnPoint > Spawnコンポーネント追加

敵モデルを追加してパラメータ調整

【ヒエラルキ】SpawnPoint > Rigidbody追加

配置したSwarnPointを通過したときに敵モデルが出現することを再生して確認

#23 ゲームクリア処理

【ヒエラルキ】GameOverTextを複製してGameClearTextを作成

GameClearTextの文字を”GameClear”に変更

【ヒエラルキ】空のオブジェクト作成(名称Goal)

Goal > ボックスコライダー追加

ボックスコライダー編集でゴールの当たり判定をおこなうための範囲を調整

【ヒエラルキ】Goal > リジットボディ追加(どちらかのオブジェクトにRigidbodyがアタッチされていなければ衝突は検出できないみたい

【スクリプト】FPSController.cs編集

再生で目的地に到達後ゲームクリア処理が行われていることを確認

#22 ゲームオーバー処理

【ヒエラルキ】Canvasにテキスト追加

テキストの位置を中央に設定

テキスト文字を”GameOver”に変更

文字の大きさを調整

【スクリプト】FPSController.cs編集

【ヒエラルキ】Player > FPSControllerのGameOverTextにTextを挿入

再生でGameOver処理後、再スタートに切り替わることを確認

#21 地形の生成

【ヒエラルキ】Plane,敵モデルをいったん非表示にする

【ヒエラルキ】3Dオブジェクト > terrainを追加

メニューからウインドウ > レンダリング >ライティングを選択

フォグと自動生成のチェックを外す

【ヒエラルキ】terrain >横幅と奥行きを調整

地形を作成

【ヒエラルキ】terrain > ペイントを選択して作成

地形にテクスチャを張り付けていく

参考URL https://polyhaven.com/

Texture保存用のフォルダ作成

ダウンロードしたtextureを挿入

texture > PaintTextureに変更

サイズを調整して表示を確認する(本物っぽくなる)

地形にテクスチャを適用出来たら次は木を植える

アセットストアから木のアセットをインポート

ウインドウ > AI > ナビゲーション

ナビゲーションを開きベイクする(敵モデルの移動範囲設定)

【ヒエラルキ】Player > MainCamera > 環境 > backgroundTypeをSolidColorに変更

Lighting > 環境 >フォグにチェック(霧) 背景と同じ色を指定

DirectionalLight > 背景を暗くする

【ヒエラルキ】Player > MainCamera > サブカメラの背景をMainCameraの背景と同じに設定

#20 敵モデルにSEを追加

【ヒエラルキ】Player > AudioSourceコンポーネントを2つ追加(ゲーム開始時に再生のチェック)を外す

【ヒエラルキ】敵モデル > AudioSourceコンポーネントを追加

【スクリプト】ZombiController.cs編集

【スクリプト】FPSController.cs編集

【ヒエラルキ】Player > FPSControllerコンポーネント > VoiceとImpactにそれぞれAudiosourceを挿入

サウンドフォルダ内にある音声ファイルをHitVoiceSEに挿入

同様にHitImpactSEにもサウンドファイルを挿入

【ヒエラルキ】敵モデル > ZombicControllerコンポーネント > ZomVoiceにAudioSourceを挿入

Howlにサウンドファイルを挿入

同様にAttackにもサウンドファイルを挿入

敵との距離によって音の大きさを変える処理

敵モデル > AudioSource