地区¶
Inherits: CollisionObject < Spatial < Node < Object
类别: 核心
简要说明¶
用于检测和三维物理影响的通用区域节点。
属性¶
0.1 |
||
“主控形状” |
||
假 |
||
1 |
||
1 |
||
9.8 |
||
0.0 |
||
假 |
||
矢量3(0,-1,0) |
||
0.1 |
||
真 |
||
真 |
||
0.0 |
||
0.0 |
||
假 |
||
“主控形状” |
||
0.0 |
||
0 |
方法¶
get_collision_layer_bit ( int bit ) const |
|
get_collision_mask_bit ( int bit ) const |
|
get_overlapping_areas ( ) const |
|
get_overlapping_bodies ( ) const |
|
overlaps_area ( Node area ) const |
|
overlaps_body ( Node body ) const |
|
无效 |
set_collision_layer_bit ( int bit, bool value ) |
无效 |
set_collision_mask_bit ( int bit, bool value ) |
信号¶
area_entered ( Area area )
当另一个区域进入时发出。
area_exited ( Area area )
当另一个区域退出时发出。
当另一个区域进入时发出,报告哪些区域重叠。
当另一个区域退出时发出,报告哪些区域重叠。
body_entered ( Node body )
当物理体进入时发出的。
这个 body
参数可以是 PhysicsBody 或A GridMap 实例(虽然网格图本身不是物理体,但它们将其带碰撞形状的分片注册为虚拟物理体)。
body_exited ( Node body )
当物理体退出时发出的。
这个 body
参数可以是 PhysicsBody 或A GridMap 实例(虽然网格图本身不是物理体,但它们将其带碰撞形状的分片注册为虚拟物理体)。
当物理体进入时发出,报告哪些形状重叠。
这个 body
参数可以是 PhysicsBody 或A GridMap 实例(虽然网格图本身不是物理体,但它们将其带碰撞形状的分片注册为虚拟物理体)。
当物理体退出时发出,报告哪些形状重叠。
这个 body
参数可以是 PhysicsBody 或A GridMap 实例(虽然网格图本身不是物理体,但它们将其带碰撞形状的分片注册为虚拟物理体)。
枚举¶
枚举 SpaceOverride :
SPACE_OVERRIDE_DISABLED = 0 ---该区域不影响重力/阻尼。
SPACE_OVERRIDE_COMBINE = 1 ——该区域将其重力/阻尼值与迄今为止计算的值相加(in priority 命令)。
SPACE_OVERRIDE_COMBINE_REPLACE = 2 ——该区域将其重力/阻尼值与迄今为止计算的值相加(in priority 顺序),忽略任何低优先级区域。
SPACE_OVERRIDE_REPLACE = 3 ---此区域将替换任何重力/阻尼,甚至是默认值,忽略任何较低优先级的区域。
SPACE_OVERRIDE_REPLACE_COMBINE = 4 ---该区域取代目前计算的任何重力/阻尼(in priority 但继续计算其余区域。
描述¶
检测到的三维区域 CollisionObject 节点重叠、进入或退出。还可以更改或覆盖局部物理参数(重力、阻尼)。
属性描述¶
float angular_damp
违约 |
0.1 |
设定器 |
设置角度阻尼(值) |
吸气剂 |
得到角阻尼 |
物体在这个区域停止旋转的速率。表示每秒损失的角速度。值的范围从 0
(无阻尼)至 1
(全阻尼)。
String audio_bus_name
违约 |
“主控形状” |
设定器 |
设置音频总线(值) |
吸气剂 |
获取音频总线 |
区域音频总线的名称。
bool audio_bus_override
违约 |
假 |
设定器 |
设置音频总线覆盖(值) |
吸气剂 |
是否覆盖音频总线( |
如果 true
,该区域的音频总线将覆盖默认音频总线。
int collision_layer
违约 |
1 |
设定器 |
设置碰撞层(值) |
吸气剂 |
获取“碰撞层”() |
该区域的物理层。可碰撞对象可以存在于32个不同层中的任何一个层中。如果对象A在对象B扫描的任何层中,或者对象B在对象A扫描的任何层中,则会检测到接触。另请参见 collision_mask .
int collision_mask
违约 |
1 |
设定器 |
设置碰撞屏蔽(值) |
吸气剂 |
获取碰撞掩模( |
物理层对此区域进行扫描以确定碰撞检测。
float gravity
违约 |
9.8 |
设定器 |
设置重力(值) |
吸气剂 |
获得重力 |
该区域的重力强度(范围从-1024到1024)。该值乘以重力矢量。这有助于在不改变重力方向的情况下改变重力。
float gravity_distance_scale
违约 |
0.0 |
设定器 |
设置重力距离刻度(值) |
吸气剂 |
得到重力距离刻度 |
点重力的衰减因子。值越大,重力随距离减小的越快。
bool gravity_point
违约 |
假 |
设定器 |
设置重力为点(值) |
吸气剂 |
是重力点 |
如果 true
,从一个点计算重力(通过 gravity_vec )也见 space_override .
Vector3 gravity_vec
违约 |
矢量3(0,-1,0) |
设定器 |
设置重力矢量(值) |
吸气剂 |
得到重力矢量 |
该区域的重力矢量(未标准化)。如果重力是一个点(参见 gravity_point ,这将是吸引人的地方。
float linear_damp
违约 |
0.1 |
设定器 |
设置线性阻尼(值) |
吸气剂 |
得到线性阻尼 |
对象在此区域中停止移动的速率。表示每秒损失的线性速度。值的范围从 0
(无阻尼)至 1
(全阻尼)。
bool monitorable
违约 |
真 |
设定器 |
设置可监视(值) |
吸气剂 |
可监视() |
如果 true
,其他监控区域可以检测到该区域。
bool monitoring
违约 |
真 |
设定器 |
设置监视(值) |
吸气剂 |
正在监视( |
如果 true
,该区域检测进入和退出该区域的身体或区域。
float priority
违约 |
0.0 |
设定器 |
设置优先级(值) |
吸气剂 |
获取优先级() |
该地区的优先权。首先处理更高优先级的区域。
float reverb_bus_amount
违约 |
0.0 |
设定器 |
设置混响量(值) |
吸气剂 |
获取“混响量”() |
该区域对其相关音频应用混响的程度。范围从 0
到 1
具有 0.1
精度。
bool reverb_bus_enable
违约 |
假 |
设定器 |
设置使用混响总线(值) |
吸气剂 |
使用的是混响总线( |
如果 true
,该区域对其关联的音频应用混响。
String reverb_bus_name
违约 |
“主控形状” |
设定器 |
设置混响总线(值) |
吸气剂 |
获取混响总线( |
用于此区域关联音频的混响总线名称。
float reverb_bus_uniformity
违约 |
0.0 |
设定器 |
设置混响均匀度(值) |
吸气剂 |
获得一致性 |
这个区域的混响程度是均匀的。范围从 0
到 1
具有 0.1
精度。
SpaceOverride space_override
违约 |
0 |
设定器 |
设置“空间覆盖”模式(值) |
吸气剂 |
获取空间覆盖模式()。 |
此区域内重力和阻尼计算的覆盖模式。见 SpaceOverride 对于可能的值。
方法说明¶
返回层掩码上的单个位。
返回碰撞遮罩上的单个位。
Array get_overlapping_areas ( ) const
返回相交列表 Area
s.由于性能原因(碰撞都是同时处理的),这个列表在物理步骤中修改一次,而不是在移动对象后立即修改。考虑改用信号。
Array get_overlapping_bodies ( ) const
返回相交列表 PhysicsBody s.由于性能原因(碰撞都是同时处理的),这个列表在物理步骤中修改一次,而不是在移动对象后立即修改。考虑改用信号。
如果 true
,给定区域与该区域重叠。
注: 移动对象后,此测试的结果不会立即显示。对于性能,重叠列表在物理步骤之前每帧更新一次。考虑改用信号。
如果 true
给定的物理体与该区域重叠。
注: 移动对象后,此测试的结果不会立即显示。对于性能,重叠列表在物理步骤之前每帧更新一次。考虑改用信号。
这个 body
参数可以是 PhysicsBody 或A GridMap 实例(虽然网格图本身不是物理体,但它们将其带碰撞形状的分片注册为虚拟物理体)。
设置/清除图层蒙版上的各个位。这简化了编辑 Area
的层。
设置/清除碰撞屏蔽上的单个位。这简化了编辑 Area
将此分层 Area
扫描。