【Blender】シームで囲われた部分を選択する
編集モードではLキーでつながっている点や辺をすべて選択できますが、このとき面選択モードだと、シームで囲われた部分だけが選択されます。 腕のシームを少しクリアしてみます。 腕にカーソルを合わせてLキーを押すと、胴体も選択さ… 続きを読む »
編集モードではLキーでつながっている点や辺をすべて選択できますが、このとき面選択モードだと、シームで囲われた部分だけが選択されます。 腕のシームを少しクリアしてみます。 腕にカーソルを合わせてLキーを押すと、胴体も選択さ… 続きを読む »
振り向いている時に敵からプレイヤーが見えたら再度歩きのステートに遷移させる処理をStateMachineBehaviourで行います。 まず、敵のアニメーターコントローラーのBaseレイヤーのインスペクタでAdd Beh… 続きを読む »
前の記事では、ナビメッシュエージェントをアニメーションで振り向かせようとすると、ルートのオブジェクトはそのままで、ボーンだけが回転してしまいました。 これはアニメーションのインポート設定でRoot Transform R… 続きを読む »
攻撃後の敵がプレイヤーの方へ振り向く動作が少し不自然なので、振り向くアニメーションを追加してみます。 まずBlenderで左右に振り向くアニメーションを作りました。 今回はとりあえず攻撃した後必ずターンするようにしました… 続きを読む »
前の記事の方法で敵が残像を残すようにしてみます。 まず敵を複製してコンポーネントをすべて削除した残像用のオブジェクトにスクリプトをつけます。 using System.Collections; using System.… 続きを読む »
今までは生成した直後のラグドールのポーズがデフォルトのままなので、敵がラグドールに置き換わった時に、敵の姿勢が急に伸びたように見えていました。 そこで、生成したラグドールの各ボーンの位置・角度を破壊する直前の敵の各ボーン… 続きを読む »
前の記事でラグドールが伸びたりする問題はなくなりましたが、まだ倒れ方が不自然なので、ジョイントの動きに制限をつけてみます。 Character Jointを使うと、3つの軸に沿った回転を制限できます。コンポーネントのAx… 続きを読む »
HPが0以下になった敵をラグドールに切り替えます。 まず敵のラグドールを作るために敵を複製して、アニメーターやナビメッシュエージェントなどのコンポーネントを削除して、オーディオソースコンポーネントだけを残しました。 これ… 続きを読む »
敵を近接攻撃すると敵が怯むアニメーションをして唸り声を上げるようにします。 まずBlenderで怯むアニメーションを作りました。 アニメーターコントローラーに新しいステートを作ってこれを設定します。新しいトリガーパラメー… 続きを読む »
前の記事と同様にプレイヤーも敵を近接攻撃できるようにしてみました。敵のHPゲージも作って攻撃が当たると減らします。 // プレイヤーにつけたスクリプト // 刀で攻撃中 else if (animator.GetCurr… 続きを読む »
攻撃モーション中に敵が滑るように動くと不自然なので、攻撃中はナビメッシュエージェントが移動しないようにしてみます。 前の記事の敵のスクリプトを少し修正します。 using System.Collections; usin… 続きを読む »
敵キャラから攻撃を受けたときにHPを減らします。 まずBlenderで敵キャラのモデルとアニメーションを作りました。 これにナビメッシュエージェントとAudioSourceとスクリプトのコンポーネントを追加します。 us… 続きを読む »
画面にコンパスを表示してみます。どの方向を北にするか変えられるようにします。 まず、Imageオブジェクトを作ってコンパスの画像をアタッチします。ピボットを真ん中にして、RectTransformのZ軸のRotation… 続きを読む »
前の記事でレーダーに表示する敵のマークのサイズを、プレイヤーと敵の高さの差によって変えてみます。プレイヤーより高い位置にいる敵の画像は大きく、低い敵は小さく表示します。 // Update() for(int n = 0… 続きを読む »
レーダーで捉えた複数の敵をミニマップ上に表示してみます。ミニマップ上の画像の色は敵の色に合わせて変えます。敵の生成や削除もできるようにします。 using System.Collections; using System… 続きを読む »
レーダーで赤い球の位置を捉えて、ミニマップに表示してみます。 まずミニマップの中心の黒い点と対象物を示す赤い点のためのImageオブジェクトをシーンに配置して、丸い画像をスプライトにして両方にアタッチしました。 空のゲー… 続きを読む »
はしごに裏から乗ろうとするとキャラクターがはしごに引っかかってしまう問題を解決してみました。 キャラクターをはしごの前に移動させるときにキャラクターコントローラーのMoveメソッドを使うと、はしごのコライダーに当たって止… 続きを読む »
前の記事の方法でエージェントを配置するときに、ナビゲーションエリアを使って配置させたくないところのナビメッシュを削除しておきます。 まずエージェントを配置するスクリプトを付けた空のゲームオブジェクトを中心として、4方向に… 続きを読む »
どの高さからでもはしごに乗れるようにします。また、はしごの上まで来たら自動ではしごを降りるようにします。 前の記事では、地面の近くのはしごに乗る位置に空のゲームオブジェクトを置いていましたが、はしごの終点の少し上に置くこ… 続きを読む »
はしごにレイが当たっているときにマウスクリックではしごを登り始め、登っているときはプレイヤーの回転を制限します。また、ななめのハシゴに沿って登れるようにします。 // カメラ // はしごをのぼる else if (hi… 続きを読む »