#14 敵モデルの設定

敵モデルを追加

【ヒエラルキ】敵モデルを右クリック > プレファブ >すべて展開を選択

敵モデルアニメーション設定

敵モデルフォルダ内でアニメーションコントローラ追加

【ヒエラルキ】敵モデル > 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

再生で敵アニメーション確認

blender2.79 モデルにボーンを入れる練習

立方体のみで形を作る

ボーンを入れる

Shift +A > アーマチュア >単一ボーン 下記の位置に設置

編集モード Eキーでボーンを設置していく

Eキーで追加 Alt + P > コネクト解除 位置を調整

対象を選択 >Ctrl + P > 接続でヒップと足のボーンをつなげる

ボーンを選択してCtrl + Tabでポーズ

選択したボーンを動かすことができる

#11 体力バーと弾薬UIの実装

【ヒエラルキ】テキスト追加 位置調整(中央寄せ)

テキストを左下に位置調整

Altを押しながら右端に位置指定

【ヒエラルキ】UI > スライダーを追加

スライダーの大きさを調節してAltを押しながら中央下に指定

Slider >Background 色を赤に指定

Slider >FillArea > Fill 色を緑に指定

Sliderのvalueを調整すると体力バーが完成していること確認

ハンドルが邪魔なのでHandleSlideArea > Handle Imageのチェックを外す

ハンドルを非表示にすると体力バーに隙間が空くので FillとFillAreaのRectTransformの左右を0に設定

SliderのMaxValueを100に変更

【ヒエラルキ】Text->AmmoText Slider->HPSliderに変更

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

【ヒエラルキ】Player > HpBarにHPSlider AmmoTextにAmmoTextを挿入

プレビューで弾を打つと右下の弾薬が減っていくことを確認

blender2.79b ハウス

Shift + A 立方体挿入

編集モード 面選択 Iキーで面追加

スケールと位置を調整

Eキーで押し込む

Ctrl + R カットを入れる

屋根部分の辺を選択してGキーで上へ引っ張る

屋根の部分を選択してGキーでZ軸高さ調整

Shift+Dでコピーし、Pキーで分離、Eキーで押し出す

Sキーで屋根のスケール調整

側面の壁選択 > Iキーでインセット

メニューから細分化選択

Ctrl + Bでべべル

Eキーで窓枠を押し出す

Shift + A で立方体を追加(煙突部分)

煙突上面を選択してIキーでインセット、Eキーで押し込み煙突穴を作成

円柱を追加 スケールを調整

立方体追加 ドアの下に設置

コピーして段にする

ライトの位置調整

#9 射撃モーションのバグ修正

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

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

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

【ヒエラルキ】PlayerモデルにWeaponコンポーネント追加

アニメーション追加

Playerモデルを選択

アニメーション > Fire

打ち終わった後の列でイベント追加

追加したイベントにcanShot()関数を設定

Blender2.79b グラス

円柱を挿入

編集モード Ctrl + R で上下2か所にカットを入れる

Aキーで全選択 > Alt + 下のカットの部分を選択するとカットの部分一周が選択される

下カット部分のスケール調整

同様に一番上の口の部分もスケール調整

面選択で一番上の面を削除

辺選択に切り替え Shift + Alt + 4つの辺を選択

Ctrl + B でベベルにする

オブジェクトーモード スムーズシェードをかける

モディファイヤ >厚み付け(0.05に設定)

グラスの足を作成するため円柱を追加

編集モード Ctrl +R 下の部分にカットを入れる

足の下の面を選択してスケールを調整

Ctrl + R でカットを入れベベルで調整

底部分を面選択してEキー 厚みを出す

Ctrl +B で厚みのブブに丸みをつける

足とグラスの位置調整

#6 アニメーション反映①

【ヒエラルキ】Player > MainCamera >Playerモデルにアニメーターコンポーネント追加

プロジェクトのModel > SlimShooter Pack > Animations

アニメータコントローラー追加(名前 Player)

上で作成したPlayerを開きAnimationをすべて追加

【ヒエラルキ】Player > MainCamera >Playerモデル >AnimatorのコントローラーにAnimatatorController(Player)を挿入

Plyaer(AnimatorController)下の画像のように遷移作成

パラメータ Fire(trriger型), Reload(trriger型), Walk(bool型), Run(bool型)作成

AmingIdle -> Walking の遷移矢印を選択

Conditions > Walkingを選択(trueに設定)

同様にWalking -> AmingIdle の遷移矢印を選択

Conditions > Walkを選択(falseに設定)

Walking -> Run の遷移矢印を選択

Conditions > Runを選択(trueに設定)

Run -> Walking の遷移矢印を選択

Conditions > Runを選択(falseに設定)

Run -> Reloading 遷移矢印を選択

Conditions > Realod追加(bool型なので追加のみでよい)

Walking -> Reloading 遷移矢印を選択

Conditions > Realod追加(bool型なので追加のみでよい)

AmigIdle -> Reloading 遷移矢印を選択

Conditions > Realod追加(bool型なので追加のみでよい)

Reloading -> AmingIdle は追加必要なし

AmigIdle -> Fire 遷移矢印を選択

Conditions > Fire追加(bool型なので追加のみでよい)

Fire -> AmingIdle は追加必要なし

Walking -> Fire 遷移矢印を選択

Conditions > Fire追加(bool型なので追加のみでよい)

Fire -> Walking 遷移矢印を選択

Conditions > Walkingを選択(trueに設定)

Run -> Fire 遷移矢印を選択

Conditions > Fire追加(bool型なので追加のみでよい)

Fire -> Run 遷移矢印を選択

Conditions > Runを選択(trueに設定)

Fire > Transitions Run,Walk,AmingIdleの順番に優先順位を入れ替え

AmingIdle -> Walking遷移矢印を選択

終了時間あり(HasExitTime)のチェックを外す

Walking -> AmingIdle遷移矢印を選択

終了時間あり(HasExitTime)のチェックを外す

Walking -> Run, Run -> Walking も同様にチェックを外す

Run -> Reloading 終了時間ありのチェックを外す 遷移間隔を0秒に変更

Walking -> Reloading, AmingIdle -> Reloadingも同様に 終了時間ありのチェックを外す 遷移間隔を0秒に変更

Reloading -> AmingIdle 終了時間を1秒に設定  遷移間隔を0秒に変更

AmingIdle -> Fire 終了時間ありのチェックを外す 遷移間隔を0秒に変更

Fire -> AmingIdle 終了時間を1秒に設定  遷移間隔を0秒に変更

Walking -> Fire 終了時間ありのチェックを外す 遷移間隔を0秒に変更

Fire -> Walking 終了時間を1秒に設定  遷移間隔を0秒に変更

Run -> Fire 終了時間ありのチェックを外す 遷移間隔を0秒に変更

Fire -> Run 終了時間を1秒に設定  遷移間隔を0秒に変更