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

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

テキスト文字を”GameOver”に変更
文字の大きさを調整

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




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

再生でGameOver処理後、再スタートに切り替わることを確認
日々の学習メモ
【ヒエラルキ】Canvasにテキスト追加
テキストの位置を中央に設定
テキスト文字を”GameOver”に変更
文字の大きさを調整
【スクリプト】FPSController.cs編集
【ヒエラルキ】Player > FPSControllerのGameOverTextにTextを挿入
再生でGameOver処理後、再スタートに切り替わることを確認
【ヒエラルキ】Plane,敵モデルをいったん非表示にする
【ヒエラルキ】3Dオブジェクト > terrainを追加
メニューからウインドウ > レンダリング >ライティングを選択
フォグと自動生成のチェックを外す
【ヒエラルキ】terrain >横幅と奥行きを調整
地形を作成
【ヒエラルキ】terrain > ペイントを選択して作成
地形にテクスチャを張り付けていく
参考URL https://polyhaven.com/
Texture保存用のフォルダ作成
ダウンロードしたtextureを挿入
texture > PaintTextureに変更
サイズを調整して表示を確認する(本物っぽくなる)
地形にテクスチャを適用出来たら次は木を植える
アセットストアから木のアセットをインポート
ウインドウ > AI > ナビゲーション
ナビゲーションを開きベイクする(敵モデルの移動範囲設定)
【ヒエラルキ】Player > MainCamera > 環境 > backgroundTypeをSolidColorに変更
Lighting > 環境 >フォグにチェック(霧) 背景と同じ色を指定
DirectionalLight > 背景を暗くする
【ヒエラルキ】Player > MainCamera > サブカメラの背景をMainCameraの背景と同じに設定
【ヒエラルキ】Player > AudioSourceコンポーネントを2つ追加(ゲーム開始時に再生のチェック)を外す
【ヒエラルキ】敵モデル > AudioSourceコンポーネントを追加
【スクリプト】ZombiController.cs編集
【スクリプト】FPSController.cs編集
【ヒエラルキ】Player > FPSControllerコンポーネント > VoiceとImpactにそれぞれAudiosourceを挿入
サウンドフォルダ内にある音声ファイルをHitVoiceSEに挿入
同様にHitImpactSEにもサウンドファイルを挿入
【ヒエラルキ】敵モデル > ZombicControllerコンポーネント > ZomVoiceにAudioSourceを挿入
Howlにサウンドファイルを挿入
同様にAttackにもサウンドファイルを挿入
敵との距離によって音の大きさを変える処理
敵モデル > AudioSource
【ヒエラルキ】敵モデル追加 プレファブ解除
【ヒエラルキ】3Dオブジェクト > ラグドールを選択
表示されたラグドールに挿入した敵モデルの各部位を挿入してCreateボタンを押す
敵モデルにコライダーが表示されることを確認
作成したラグドール化した敵モデルをPrefabフォルダに挿入
【スクリプト】ZombiContoroller.cs編集
【スクリプト】Weapon.cs編集
【ヒエラルキ】敵モデル > ZombiControllerコンポーネント >RagdoolにPrefabフォルダに保存しているラグドール敵モデルを挿入
【ヒエラルキ】敵モデルをいったん非表示にする
【ヒエラルキ】PlayerモデルをAltキーを押しながら選択
展開された中から武器(AKM)を右クリック
3Dオブジェクト > キューブを選択
再生した状態でCtrl + Shift + P でポーズする
作成したCubeを選択
Cubeを銃口手前に配置
TransFormのメニューから位置情報をコピーする
再生を解除後Cubeを選択してTransformに張り付け
【スクリプト】ZombiController.cs編集
【スクリプト】Weapon.cs編集
【ヒエラルキ】Playerモデル > 3Dモデル部分(CH49_nonPBR)を選択してアニメーションを開く
アニメーションタブFireに変更
銃撃開始位置のモーションを確認してイベントタグを設置
設置したイベントにShooting()関数を設定
【ヒエラルキ】Playerモデル > 3Dモデルを選択 > カギマークをロック >ShotDirectionにCubeを挿入
挿入後カギマークは外しておく
【ヒエラルキ】Cube >MeshRendererのチェックを外す
【ヒエラルキ】敵モデルを表示させカプセルコライダーコンポーネント追加
カプセルコライダーの高さを2 Yを1に設定
【ヒエラルキ】Cubeの回転Y軸180°に設定
再生で敵モデルを攻撃できるか確認
適当に人型モデルを配置
骨を入れる
Shift + A > アーマチュア > 単一ボーンを選択
Eキーで骨を人型に配置していく
骨を配置し終わったらオブジェクトと骨を選択したまま Ctrl + P > 自動のウエイトで を選択
これでモデルと骨の一体化ができる
アニメーションを作成していく
オブジェクトモードからポーズモードへ変更
骨を選択しGキーでモーションを設定
Aキーで骨を全選択してIキーを押す
位置と回転を選択してモーションを記録する
ドープシートで確認すると指定の時間軸にモーションが記録されていることがわかる
同じように時間軸を指定してモーションを付けていく
fbxファイルでエクスポートする
エクスポートしたfbxファイルをUnityで読み込み
アニメータコントローラ追加
アニメータコントローラを開いてからのステートを作成
作成したステートにアニメーションを設定
エクスポートしたフォルダ内にあるアニメーションをステートに挿入
【ヒエラルキ】モデル > Animatorコンポーネント追加
作成したアニメータコントローラをAnimatorコンポーネントに挿入
再生で動きを確認する
【スクリプト】GameState.cs編集
【スクリプト】FPSController.cs編集
【スクリプト】ZombiController.cs編集
【ヒエラルキ】敵モデルを選択 > アニメーションを開く(Attack)
調整したモーションにイベントを設置
追加したイベントにDamagePlayer()関数を設定
【ヒエラルキ】敵モデル >AttackDamage(攻撃力)を設定
【スクリプト】ZombiController.cs編集
【ヒエラルキ】Player > タグをPlayerに変更
【ヒエラルキ】敵モデル > RunSpeedを設定
再生で敵がPlayerを追いかけてくることを確認
【スクリプト】ZombiController.cs作成
【ヒエラルキ】敵モデルにZombiControllerコンポーネント追加
【ヒエラルキ】敵モデルにナビメッシュエージェントコンポーネント追加
敵モデルをPrefab化
Assets > Prefabフォルダ作成 > 敵モデルをPrefabフォルダに挿入
【ヒエラルキ】敵モデルはPrefab化できたのでヒエラルキ内の敵モデルを削除
Window > AI > ナビゲーション追加
地面の設定を行う
インスペクタ > 静的にチェック
ナビゲーション(インスペクタの隣) > ベイク > ベイクを実行
地面が作成されたことを確認(NavMeshAgentを追加している敵モデルが歩ける範囲)
【ヒエラルキ】Prefabから敵モデルを追加して再生で動きを確認
敵モデルを追加
【ヒエラルキ】敵モデルを右クリック > プレファブ >すべて展開を選択
敵モデルアニメーション設定
敵モデルフォルダ内でアニメーションコントローラ追加
【ヒエラルキ】敵モデル > Animatorコンポーネント追加
敵モデルフォルダ内に追加したアニメーターコントローラを敵モデルのAnimatorコンポーネントに追加
敵モデルアニメータコントローラを開く
敵モデルのアニメーションをすべて挿入
idleをデフォルトエステートに設定
各アニメーションに相互遷移させる
パラメータAttack,Death,Walk,Runをbool型で追加
Idle -> Attack 終了時間チェック外す Conditions Attack true
Attack -> Idle 終了時間チェック外す Conditions Attack false
Idle -> Walk 終了時間チェック外す Conditions Walk true
Walk -> Idle 終了時間チェック外す Conditions Walk false
Idle -> Run 終了時間チェック外す Conditions Run true
Run -> Idle 終了時間チェック外す Conditions Run false
Idle -> Dying 終了時間チェック外す Conditions Death true
再生で敵アニメーション確認