Up to date

This page is up to date for Godot 4.2. If you still find outdated information, please open an issue.

CollisionShape2D

继承: Node2D < CanvasItem < Node < Object

CollisionObject2D 父级提供 Shape2D 的节点。

描述

CollisionObject2D 父级提供 Shape2D 并允许对其进行编辑的节点。这可以为 Area2D 提供检测形状或将 PhysicsBody2D 转变为实体对象。

教程

属性

Color

debug_color

Color(0, 0, 0, 1)

bool

disabled

false

bool

one_way_collision

false

float

one_way_collision_margin

1.0

Shape2D

shape


属性说明

Color debug_color = Color(0, 0, 0, 1)

  • void set_debug_color ( Color value )

  • Color get_debug_color ( )

碰撞形状的调试颜色。

注意:默认值为 ProjectSettings.debug/shapes/collision/shape_color。这里记录的 Color(0, 0, 0, 1) 值是占位符,不是实际的默认调试颜色。


bool disabled = false

  • void set_disabled ( bool value )

  • bool is_disabled ( )

禁用的碰撞形状在世界中没有影响。这个属性应该用 Object.set_deferred 改变。


bool one_way_collision = false

  • void set_one_way_collision ( bool value )

  • bool is_one_way_collision_enabled ( )

设置此碰撞形状是否仅应检测到一侧(顶部或底部)的碰撞。

注意:如果这个 CollisionShape2DArea2D 节点的子节点,则这个属性无效。


float one_way_collision_margin = 1.0

  • void set_one_way_collision_margin ( float value )

  • float get_one_way_collision_margin ( )

用于单向碰撞的边距(以像素为单位)。较高的值将使形状更厚,并且对于高速进入形状的对撞机来说效果更好。


Shape2D shape

该碰撞形状拥有的实际形状。