マニュアル: カメラ設定

ACTION GAME MAKER では、専用のカメラノード ZoomCamera2D を使用して、さまざまなカメラ動作を設定できます。


オブジェクトの追従

\u003e ZoomCamera2D は、カメラ設定で指定された target_id と一致する target_id を持つオブジェクトを追従します。

  1. カメラに追従させたいオブジェクトの子ノードとして CameraTargetSettings ノードを追加します。
  2. CameraTargetSettings ノードの target_id に任意の文字列を設定します。
  3. ZoomCamera2D ノードで、カメラに追従させたい同じ target_id を指定します。

複数のターゲットの追従

複数のターゲットが指定されている場合(複数のオブジェクトが同じ target_id を持つ、または複数の target_id が割り当てられている場合):

  • カメラは自動的に移動し、すべてのターゲットを画面内に表示するように調整されます。
  • 自動ズームが有効になっている場合、カメラは定義された範囲内でズームレベルを自動的に調整し、すべてのターゲットが表示されたままになるようにします。

CameraTargetSettings の設定

  • Target ID: カメラの追従ターゲットと一致させるために使用するカスタマイズ可能な文字列。
  • Enable: このオプションを無効にすると、カメラはこのターゲットを追従しなくなります。
  • Size: オブジェクトの原点からの周囲の領域を定義し、カメラが常にその領域を含めるようにします。これにより、複数のターゲットが存在する場合でも、ターゲットが切り取られるのを防ぎます。

これらのプロパティはすべて、Change Object Property アクションを使用して動的に変更できます。
\u003e:warning: カメラは、メインの GameObject 自体ではなく、CameraTargetSettings の位置を追従することに注意してください。したがって、CameraTargetSettings の位置を変更すると、追従ターゲットの位置もそれに応じて移動します。
ただし、横方向(左または右)にオフセットする場合は注意してください。キャラクターの向きが変わった際にカメラが移動してしまうためです。


カメラ移動の制限

カメラの移動は、ZoomCamera2D \u003e Camera2DLimit プロパティを使用して制限できます。

  • リミットは、カメラが移動できるシーン原点からの範囲を定義します。
  • 例えば、Top/Bottom = 0 に設定すると、垂直方向の移動はロックされ、水平方向の移動のみが可能になります。

これをビジュアルスクリプトの Offscreen 条件と組み合わせることで、「プレイヤーが画面外に落ちるとゲームオーバーになる」といったメカニクスを作成できます。


複数のカメラ間の切り替え

InitialCamera に加えて、同じシーン内に複数の ZoomCamera2D ノードを追加できます。
ただし、これらの追加カメラを Visual Script で使用するには、いくつかの設定が必要です。

手順:

  1. GameScene ノードを選択します。
  2. Inspector パネルで CameraList プロパティを展開します。
  3. + Add Element ボタンをクリックして、新しいカメラスロットを追加します。
  4. Assign ボタンをクリックし、登録したい ZoomCamera2D ノードを選択します。

登録が完了すると、ビジュアルスクリプトの “Change Camera” アクションを使用して、ゲームプレイ中にカメラを切り替えることができます。