跳到主要内容

Particles

继承

GeometryInstance

简要描述

3D粒子发射器。

描述

用于创建各种粒子系统和效果的3D粒子节点。 Particles具有发射器,该发射器以给定的速率生成一定数量的粒子。

使用process_material属性添加ParticlesMaterial以配置粒子外观和行为。另外,您可以添加一个ShaderMaterial并将其应用于所有粒子

成员

类型属性名默认值
intamount8
intdraw_order0
Meshdraw_pass_1
Meshdraw_pass_2
Meshdraw_pass_3
Meshdraw_pass_4
intdraw_passes1
boolemittingtrue
floatexplosiveness0.0
intfixed_fps0
boolfract_deltatrue
floatlifetime1.0
boollocal_coordstrue
boolone_shotfalse
floatpreprocess0.0
Materialprocess_material
floatrandomness0.0
floatspeed_scale1.0
AABBvisibility_aabbAABB( -4, -4, -4, 8, 8, 8 )

方法

返回值类型方法名称
AABBcapture_aabb() const
Meshget_draw_pass_mesh(pass: int) const
voidrestart()
voidset_draw_pass_mesh(pass: int, mesh: Mesh)

枚举

enum DrawOrder:

  • **DRAW_ORDER_INDEX = 0**

粒子按发射顺序绘制。

  • **DRAW_ORDER_LIFETIME = 1**

按照剩余寿命的顺序绘制粒子。

  • **DRAW_ORDER_VIEW_DEPTH = 2**

粒子按深度顺序绘制。


常量

  • **MAX_DRAW_PASSES = 4**

支持的最大绘制过程数。

成员说明

  • int amount
Default8
setterset_amount(value)
getterget_amount
  • int draw_order
Default0
setterset_draw_order(value)
getterget_draw_order
  • Mesh draw_pass_1
setterset_draw_pass_mesh(value)
getterget_draw_pass_mesh
  • Mesh draw_pass_2
setterset_draw_pass_mesh(value)
getterget_draw_pass_mesh
  • Mesh draw_pass_3
setterset_draw_pass_mesh(value)
getterget_draw_pass_mesh
  • Mesh draw_pass_4
setterset_draw_pass_mesh(value)
getterget_draw_pass_mesh
  • int draw_passes
Default1
setterset_draw_passes(value)
getterget_draw_passes
  • bool emitting
Defaulttrue
setterset_emitting(value)
getteris_emitting
  • float explosiveness
Default0.0
setterset_explosiveness_ratio(value)
getterget_explosiveness_ratio
  • int fixed_fps
Default0
setterset_fixed_fps(value)
getterget_fixed_fps
  • bool fract_delta
Defaulttrue
setterset_fractional_delta(value)
getterget_fractional_delta
  • float lifetime
Default1.0
setterset_lifetime(value)
getterget_lifetime
  • bool local_coords
Defaulttrue
setterset_use_local_coordinates(value)
getterget_use_local_coordinates
  • bool one_shot
Defaultfalse
setterset_one_shot(value)
getterget_one_shot
  • float preprocess
Default0.0
setterset_pre_process_time(value)
getterget_pre_process_time
  • Material process_material
setterset_process_material(value)
getterget_process_material
  • float randomness
Default0.0
setterset_randomness_ratio(value)
getterget_randomness_ratio
  • float speed_scale
Default1.0
setterset_speed_scale(value)
getterget_speed_scale
  • AABB visibility_aabb
DefaultAABB( -4, -4, -4, 8, 8, 8 )
setterset_visibility_aabb(value)
getterget_visibility_aabb

方法说明

  • capture_aabb capture_aabb() const

返回与轴对齐的边界框,其中包含当前帧中所有活动的粒子。


  • get_draw_pass_mesh get_draw_pass_mesh(pass: int) const

返回在索引pass处绘制的Mesh


  • restart restart()

重新启动粒子发射,清除现有粒子。


  • set_draw_pass_mesh set_draw_pass_mesh(pass: int, mesh: Mesh)

设置在索引pass处绘制的Mesh