Menu
CoddyTech

レイヤーとマスク

CoddyのGodotジャーニー「シグナルと衝突」セクションの一部。レッスン 22/27。

ボディとエリアは、番号付きの衝突レイヤーに属します。それぞれに2つの設定があります。

  • collision_layer: どのレイヤーに属しているか。
  • collision_mask: どのレイヤーを見るか。エリアは、マスクに含まれるレイヤー上のボディだけを検知します。

どちらも数値です。レイヤー1は1、レイヤー2は2、レイヤー3は4、レイヤー4は8です。すべて最初はレイヤー1に属し、マスクは1なので、すべてがすべてを検知します。

ここでは、プレイヤーはレイヤー2に属し、サンゴのボールはレイヤー1に属しています。プレイヤーだけがコインを取れるようにするには、コインがレイヤー2だけを見るようにします。

func _ready():
	collision_mask = 2
challenge icon

チャレンジ

中級

コインがプレイヤーだけを検知するようにします。

  1. プレイヤーはレイヤー2にいます。_ready()の開始時に、コインのcollision_maskをレイヤー2だけを検知するように設定します。
  2. connectの行はそのままにします。

「プレイ」を押します。ボールはコインを通り抜け、その後、歩いて近づいてコインを取ります。それから「確認」を押します。

自分で試してみよう

extends Area2D

func _ready():
	body_entered.connect(_on_body_entered)

func _on_body_entered(body):
	queue_free()
quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

シグナルと衝突のすべてのレッスン

自分で練習してみよう: Godotプレイグラウンド