【プラグイン】レンズの制限範囲の大きさを動的に変更

使用方法:

  1. node2dを作成し、node2dノード上にZoomCamera2Dカメラの子ノードを作成します
  2. 【initial_camera.gd】をnode2dノードにアタッチします

initial_camera.gd (5.8 KB)

image
3. node2dノードの右側のインスペクターでデータを設定します(インスペクターの名前とデータベースの変数名を一致させてください)


4. データベースのプロジェクト変数で、対応する名前と変数を設定します(変数名とインスペクターの名前を一致させてください)


5. 追加:データベースのプロジェクトスイッチで、変数のリセット読み込みスイッチを設定できます(名前とデータベースのリセットスイッチの名前を一致させてください)

機能内容:

  1. データベースのプロジェクト変数を読み込み、カメラの制限範囲を変更します(limit left -200 limit right xxx )
  2. データベースのプロジェクトスイッチにより、カメラ変数データの読み込みを有効化またはリセットできます(スイッチによる動的読み込み) (refresh switch record)
  3. シーンの開始時に、設定済みのカメラサイズを一度だけ読み込みます

:warning::カメラデータを再度読み込む場合、アクションで変数を変更した後、スイッチをオンにし、【0.1秒待つ】必要があります。その後、スイッチをオフにしてください。
スイッチの切り替えが速すぎると、データが読み込まれないことがあります。

用途:

  1. カメラの表示制限範囲を動的に変更:通常、シーンに隙間があると没入感が損なわれるため、キャラクターがチェックポイントを通った際に制限範囲を変更し、カメラのズーム動作と組み合わせて滑らかなズームなどを実現できます
  2. シーンの数を圧縮:通常、シーンは一つずつ描画する必要があり、シーン間はポータルや条件でリンクされています。非線形ゲームの場合、後になってシーン間の条件リンクを管理するのが難しくなることがあります。空のシーンを作成し、そこに他のすべての既製シーンを生成することで、座標に基づいてキャラクターなどを配置し、カメラ範囲をシーンのサイズに合わせて自由に調整できます(空のシーン内でシーンを生成し、シーン読み込みオブジェクトがシーンIDを読み込み、対応するシーンを生成し、対応するシーンでカメラデータを変更する)
    :warning::ただし注意が必要です。空のシーン内でシーンを使用してAシーンを生成する場合、Aシーンにモンスターやプレイヤーがいる場合、衝突インタラクションは可能ですが、距離条件(攻撃距離など)は有効にならず、位置のズレなどの問題が発生する可能性があります。空のシーンからIDのみでAシーン、Bキャラクター(座標変数が必要)、Cモンスター(座標変数が必要)などを個別に生成することをお勧めします

デモ:

1783398931281