Godot Engine 学习笔记 CollisionShape2D

时间:2024-03-15 17:56:47

CollisionShape2D

以下为我对于官方文档的翻译以及使用情况,3.0版本的文档
CollisionShape2D官方文档
继承: Node2D < CanvasItem < Node < Object
类型: Core

简要说明

表示2D空间中的碰撞形状数据的节点。

成员变量

  • bool disabled - 一个有缺陷的碰撞形状在世界上不会造成影响。
  • bool one_way_collision - 设置碰撞形状是否只检测一侧(顶部或底部)的碰撞。
  • Shape2D shape - 这个碰撞形状所拥有的实际形状。

说明

编辑器用于创建和编辑2D空间中的碰撞形状。您可以使用该节点来表示各种冲突形状,例如,将该节点添加到 Area2D 以给出检测形状,或者将其添加到 PhysicsBody2D 以创建实体对象。重要:这是一个编辑器只帮助创建形状,使用 get_shape 获取实际形状。

使用

创建碰撞形状

例如,为一个RigidBody2D创建碰撞形状。
创建场景:

  • RigidBody2D
    • CollisionShape2D

Godot Engine 学习笔记 CollisionShape2D
然后为CollisionShape2D节点创建一个碰撞形状。
Godot Engine 学习笔记 CollisionShape2D
先点击黄色方框区域就会出现红色方框中的选项,根据需求创建可以不同形状的碰撞形状。
比如,这里创建个CircleShape2D,圆形。
Godot Engine 学习笔记 CollisionShape2D
然后场景编辑器上就会出现一个蓝色半透明圆形,这个就是刚创建形状,也是碰撞区域,如果大小形状和需求还有细微差别,可以通过圆形周围的小点经行形状变化,直到成为自己需要的,那么这个碰撞形状就创建完成了。