【Unity】TPSでメニューとカーソルを表示する
メニューとカーソルを表示してプレイヤーの移動回転を止めるのスクリプトをもとに、TPSキャラクターを使っているときにメニューとカーソルを表示して、移動とカメラをロックしてみました。 TPSキャラクターを使うには、カメラと一… 続きを読む »
メニューとカーソルを表示してプレイヤーの移動回転を止めるのスクリプトをもとに、TPSキャラクターを使っているときにメニューとカーソルを表示して、移動とカメラをロックしてみました。 TPSキャラクターを使うには、カメラと一… 続きを読む »
FPSコントローラーのカメラが指定したオブジェクトの方へ向きかけたら、自動でそのオブジェクトが正面に見えるようにカメラを回転してみます。 まずターゲットのCubeにタグとコライダーを付けました。 プレイヤーのスクリプトで… 続きを読む »
FPSキャラのカメラを横に傾ける #1、FPSキャラのカメラを横に傾ける #2でFPSコントローラーのカメラを動かすと、壁を貫通して向こう側が見えてしまいます。 傾けていて壁に当たると自動でキャンセルするようにしてみます… 続きを読む »
バケツを左クリックすると中に入って隠れます。隠れている間、蓋を少し開けて隙間から外を見れるようにします。 一人称視点でロッカーの中に入って隠れるのと同じ方法で、バケツの方を向くようにFPSコントローラーを移動させて、蓋を… 続きを読む »
ロッカーを左クリックすると開いて、FPSコントローラーで動かすプレイヤーが中に入ります。もう一度左クリックするとロッカーから出ます。 まず一人称のカメラからレイを飛ばして手が届く位置にロッカーがあるかどうかを調べます。 … 続きを読む »
キャラクターコントローラーで動かす一人称視点のプレイヤーをアニメーションで動かしてみます。直接Animaorコンポーネントをつけると問題があったので、アニメーションを付けた別のゲームオブジェクトに乗せて動かします。 まず… 続きを読む »
テレインレイヤーによって足音を変えてみました。前の記事の方法でアルファマップを取得して、一番割合の多いテレインレイヤーを調べます。 float[] slatmap = new float[0]; // — // Fi… 続きを読む »
テレインのプレイヤーが立っている場所にどのテレインレイヤーがどのくらい塗られているかを調べてみます。 FirstPersonControllerクラスのFixedUpdate()で地面に向かって球体のレイを飛ばすので、そ… 続きを読む »
HPが0以下になった敵をラグドールに切り替えます。 まず敵のラグドールを作るために敵を複製して、アニメーターやナビメッシュエージェントなどのコンポーネントを削除して、オーディオソースコンポーネントだけを残しました。 これ… 続きを読む »
敵を近接攻撃すると敵が怯むアニメーションをして唸り声を上げるようにします。 まずBlenderで怯むアニメーションを作りました。 アニメーターコントローラーに新しいステートを作ってこれを設定します。新しいトリガーパラメー… 続きを読む »
攻撃モーション中に敵が滑るように動くと不自然なので、攻撃中はナビメッシュエージェントが移動しないようにしてみます。 前の記事の敵のスクリプトを少し修正します。 using System.Collections; usin… 続きを読む »
敵キャラから攻撃を受けたときにHPを減らします。 まずBlenderで敵キャラのモデルとアニメーションを作りました。 これにナビメッシュエージェントとAudioSourceとスクリプトのコンポーネントを追加します。 us… 続きを読む »
はしごに裏から乗ろうとするとキャラクターがはしごに引っかかってしまう問題を解決してみました。 キャラクターをはしごの前に移動させるときにキャラクターコントローラーのMoveメソッドを使うと、はしごのコライダーに当たって止… 続きを読む »
どの高さからでもはしごに乗れるようにします。また、はしごの上まで来たら自動ではしごを降りるようにします。 前の記事では、地面の近くのはしごに乗る位置に空のゲームオブジェクトを置いていましたが、はしごの終点の少し上に置くこ… 続きを読む »
はしごにレイが当たっているときにマウスクリックではしごを登り始め、登っているときはプレイヤーの回転を制限します。また、ななめのハシゴに沿って登れるようにします。 // カメラ // はしごをのぼる else if (hi… 続きを読む »
FPSコントローラーではしごを登ってみます。 はしごを登る時は、はしごからの距離やキャラが回転できる範囲を常に同じにしたいと思ったので、今回はキャラクターコントローラーをはしごの前の指定の位置へワープさせ、指定の方向へ回… 続きを読む »
前の記事のプレイヤーをFPSコントローラーにして、移動するプレイヤーから遠くにいる敵の削除と、新しい敵の配置が自動で行われるようにしました。 using System.Collections; using System.… 続きを読む »
棒を登っているときに、歩いているときのようにカメラを周期的に動かしてみます。 カメラの回転はMouseLookクラスのLookRotation()で行うので、その中で体のY軸の回転と、カメラのX軸の回転にそれぞれ変数を足… 続きを読む »
棒を登っているときにカメラの水平な回転を制限します。 スタンダードアセットのMouseLookクラスにはカメラの縦回転を制限するClampRotationAroundXAxisメソッドが用意されているので、これを使ってみ… 続きを読む »
FPSコントローラーの移動方向を変えて棒や垂れ下がる鎖などを登れるようにしてみます。 まず頭のスクリプトで、近くで棒にレイが当たっているときにFキーが押されると、体のスクリプト(FirstPersonController… 続きを読む »