マニュアル:傾斜設定

このマニュアルでは、以下の 2 つの主要なトピックについて説明します。

  1. 物理挙動としての斜面
  2. ビジュアルスクリプトにおける斜面の検出

1. 物理挙動としての斜面

GameObject の挙動の設定

ACTION GAME MAKER の GameObject は、Godot の CharacterBody2D から継承されており、斜面での挙動を設定できます。
GameObject ノードの インスペクター を開き、CharacterBody2D > floor の項目を確認してください。

以下は、各床関連オプションの意味です。

  • Stop on Slope(斜面で停止): オンにすると斜面の挙動が有効になります。
    オフにすると、斜面は垂直な壁として扱われます。
  • Constant Speed(一定速度): オンにすると、斜面での移動速度が一定に保たれます。
    オフにすると、登る際に減速し、降りる際に加速し、物理的な挙動を反映します。
  • Block on Wall(壁でブロック): オンにすると、壁に衝突した際に物体が停止します。
    オフにすると、壁に沿ってスライドします。これは主にトップダウンゲーム向けに設計されています。
  • Max Angle(最大角度): 物体が静止して立てる最大の角度です。
    → この角度を超えると、キャラクターは滑り落ちます。
  • Snap Length(スナップ長さ): キャラクターが斜面から「飛び出す」のを防ぎます。
    → 斜面からこのピクセル数以内の位置にいる場合、キャラクターは下に引き寄せられ、接地した状態を維持します。

2. ビジュアルスクリプトでの斜面検出

斜面タイルの作成

TileSet エディターで、単にタイルを選択し、Physics の下に斜面形状の衝突判定を定義するだけです。
これにより、物理的に斜面として機能します。
ただし、ビジュアルスクリプトで斜面を検出するには、さらに 1 つの設定が必要です。


タイルへの斜面属性の割り当て

引き続き TileSet で、目的のタイルを選択し、WallCollision メニューで 「Is Slope」 を有効にしてください。

:warning:「Is Slope」が有効になっているタイルのみ、ビジュアルスクリプトで斜面として認識されます。