カメラの動き

記事作成 2019年6月
PlayMaker 1.9.0 / Unity 2018.2.6f1

@実際にゲーム画面を作る、カメラについてです。
まず、こんな感じで操作キャラクターの方向を追い続ける動きについて。

しばらく説明用に、 十字キーでキャラクターを操作するで作成した
操作キャラクターを使いたいと思います。

シーンビューで見ると、カメラはこのように動いています。

----------------------------------------------
これを、ノードで実現すると

[Smooth Look At]を選択し、ターゲットオブジェクトに、操作キャラクター(Capsule)
をドロップ。

----------------------------------------------
おまけのアクセントで、[Camera Fade In]
このアクションを使うとゲーム開始時に簡単にフェードイン効果を付けられます。

----------------------------------------------
@次はこのように、キャラクターの手前に一定距離を保って追随する動きです。
スクロール型のアクションなど、結構汎用性があるでしょうか。


----------------------------------------------
これを実現するには、変数と3つのアクションを使います。
まずキャラクターとカメラの位置を決めます。見栄えのいい落ち着きのいい
ポジションを定めます。

この位置をキープし続けるように設定します。
インスペクターを確認すると、操作キャラクターはこう


カメラはこう  Z軸がキャラクターから-4の値です。


Zが-4

この距離を常に保つように設定します。


----------------------------------------------
カメラに付ける状態遷移です。
[Get Position]
でキャラクター(Capsule)の、X Z 座標を取得します。
[Float Operator]
のSubtract(引き算)で4を引きます。その結果を変数[flo 自機からの距離]に入れます。
[Set Position]
でカメラ(Owner)の位置を、X(横)はそのまま、Zはキャラクターから4引いた値を
設定します。

あらかじめ、変数はこんな感じで作っておきます。


----------------------------------------------

ここまでやると、キャラクターの背後から常に映し続ける、3Dシューティングの
ようなカメラワークも気になるところですが、それは

操作自体が左右キーで回転、上キーで前進のような形にしないと実用的
とは言えないのでまた別の機会に。

(参考) 2020年 11月01日 左右キーで回転。上方キーで前進するタイプの操作に
ついても記事にしました。   一人称コントローラ

0 件のコメント:

コメントを投稿