Godot4 下から飛び乗れるすり抜け床の実装とジャンプ力の調整

無料・軽快な 2D / 3D 用のゲームエンジン Godot Engine 4 で、StaticBody2DCollisionPolygon2DPolygon2D ノード群で作成したポリゴン地形で、下からジャンプしてのることができるすり抜け床を作成します。
キャラクターを動かす CharacterBody2Dジャンプ力の調整も行います。

Godot4 CollisionPolygon2DのOneWayCollisionですり抜け床の実装2

※ GodotEngine 4.3 を使用しています。.NET 版ではありません。
※紹介するスクリプトは自己責任でお使いください。

前回の記事

前回は、Polygon2D ノードで作ったポリゴンの表示と、当たり判定領域をポリゴンで設定する CollisionPolygon2D ノード間で、位置・角度・拡大率も一致させることで、正しく当たり判定が行えるようにしました。

すり抜け床にするための CollisionPolygon2D の設定

前回追加した地形を空中に移動させて、すり抜け床にします。
CollisionPolygon2D ノードで当たり判定領域を設定している場合は、 One Way Collision プロパティをオンにすることですり抜け床に変えられます。

Godot4 すり抜け床にするために CollisionPolygon2D の OneWayCollisionを設定1

ジャンプすると下側からすり抜けていますが、ジャンプ力が足りず、飛び乗れていません。
※スペースキーでジャンプ、←→キーで左右に移動できます。

Godot4 CollisionPolygon2DのOneWayCollisionですり抜け床の実装1

ジャンプ力の変更

CharacterBody2D ノードにスクリプトを新規作成で割り当てた場合、左右の移動とジャンプが実装されたスケルトンコードが作られます。
スクリプトは、ウィンドウ上部の Script ワークスペースを選択した後、CharacterBody2D ノードに割り当てたスクリプト名を選択することで編集できます。

そのスクリプト内にある JUMP_VELOCITY 変数の値を変更することでジャンプ力が変えられます。
ジャンプ力はマイナスの値で設定されていて、マイナス方向に大きい値を設定するほどジャンプ力も増えます。

Godot4 CharacterBody2D のスケルトンコードのジャンプ力を変更1

今回は、既定値の -400.0 から -700.0 にジャンプ力を増やしました。

#const JUMP_VELOCITY = -400.0 # デフォルトのジャンプ力
const JUMP_VELOCITY = -700.0 # 増やしたジャンプ力

テスト

ステージのシーンを選択して F6 キーシーンを再生すると、ジャンプ力が増えて、すり抜け床に下からジャンプして飛び乗ることができました
※スペースキーでジャンプ、←→キーで左右に移動できます。

Godot4 CollisionPolygon2DのOneWayCollisionですり抜け床の実装2
Godot4 CharacterBody2D のスケルトンコードのジャンプ力を変更した結果

まとめ

今回は、無料・軽快な 2D / 3D 用のゲームエンジン Godot Engine 4 で、StaticBody2DCollisionPolygon2DPolygon2D ノード群で作成したポリゴン地形で、下からジャンプしてのることができるすり抜け床を作成しました。
キャラクターを動かす CharacterBody2Dジャンプ力の調整も行いました。

参照サイト Thank You!

記事一覧 → Compota-Soft-Press

コメント

Ads Blocker Image Powered by Code Help Pro

お願い - Ads Blocker Detected

このサイトは広告を掲載して運営しています。

ポップアップを閉じて閲覧できますが、よろしければ

このサイト内の広告を非表示にする拡張機能をオフにしていただけませんか?

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

We have detected that you are using extensions to block ads. Please support us by disabling these ads blocker.

タイトルとURLをコピーしました