跳转至

CPUParticles

继承

GeometryInstance

简要描述

基于CPU的3D粒子发射器。

描述

基于CPU的3D粒子节点,用于创建各种粒子系统和效果。

另请参见Particles,它提供与硬件加速相同的功能,但可能无法在较旧的设备上运行。

成员

类型 属性名 默认值
int amount 8
float angle 0.0
Curve angle_curve
float angle_random 0.0
float angular_velocity 0.0
Curve angular_velocity_curve
float angular_velocity_random 0.0
float anim_offset 0.0
Curve anim_offset_curve
float anim_offset_random 0.0
float anim_speed 0.0
Curve anim_speed_curve
float anim_speed_random 0.0
Color color Color( 1, 1, 1, 1 )
Gradient color_ramp
float damping 0.0
Curve damping_curve
float damping_random 0.0
Vector3 direction Vector3( 1, 0, 0 )
int draw_order 0
Vector3 emission_box_extents
PoolColorArray emission_colors PoolColorArray( )
PoolVector3Array emission_normals
PoolVector3Array emission_points PoolVector3Array( )
int emission_shape 0
float emission_sphere_radius
bool emitting true
float explosiveness 0.0
int fixed_fps 0
bool flag_align_y false
bool flag_disable_z false
bool flag_rotate_y false
float flatness 0.0
bool fract_delta true
Vector3 gravity Vector3( 0, -9.8, 0 )
float hue_variation 0.0
Curve hue_variation_curve
float hue_variation_random 0.0
float initial_velocity 0.0
float initial_velocity_random 0.0
float lifetime 1.0
float lifetime_randomness 0.0
float linear_accel 0.0
Curve linear_accel_curve
float linear_accel_random 0.0
bool local_coords true
Mesh mesh
bool one_shot false
float orbit_velocity
Curve orbit_velocity_curve
float orbit_velocity_random
float preprocess 0.0
float radial_accel 0.0
Curve radial_accel_curve
float radial_accel_random 0.0
float randomness 0.0
float scale_amount 1.0
Curve scale_amount_curve
float scale_amount_random 0.0
float speed_scale 1.0
float spread 45.0
float tangential_accel 0.0
Curve tangential_accel_curve
float tangential_accel_random 0.0

方法

返回值类型 方法名称
void convert_from_particles(particles: Node)
float get_param(param: int) const
Curve get_param_curve(param: int) const
float get_param_randomness(param: int) const
bool get_particle_flag(flag: int) const
void restart()
void set_param(param: int, value: float)
void set_param_curve(param: int, curve: Curve)
void set_param_randomness(param: int, randomness: float)
void set_particle_flag(flag: int, enable: bool)
##枚举
enum DrawOrder:
- DRAW_ORDER_INDEX = 0

粒子按发射顺序绘制。

  • DRAW_ORDER_LIFETIME = 1

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

  • DRAW_ORDER_VIEW_DEPTH = 2

粒子按深度顺序绘制。


enum Parameter: - PARAM_INITIAL_LINEAR_VELOCITY = 0

set_paramset_param_randomnessset_param_curve一起使用以设置初始速度属性。

  • PARAM_ANGULAR_VELOCITY = 1

set_paramset_param_randomnessset_param_curve一起使用以设置角速度属性。

  • PARAM_ORBIT_VELOCITY = 2

set_paramset_param_randomnessset_param_curve一起使用来设置轨道速度属性。

  • PARAM_LINEAR_ACCEL = 3

set_paramset_param_randomnessset_param_curve一起使用以设置线性加速度属性。

  • PARAM_RADIAL_ACCEL = 4

set_paramset_param_randomnessset_param_curve一起使用以设置径向加速度属性。

  • PARAM_TANGENTIAL_ACCEL = 5

set_paramset_param_randomnessset_param_curve一起使用以设置切向加速度属性。

  • PARAM_DAMPING = 6

set_paramset_param_randomnessset_param_curve一起使用以设置阻尼属性。

  • PARAM_ANGLE = 7

set_paramset_param_randomnessset_param_curve一起使用以设置角度属性。

  • PARAM_SCALE = 8

set_paramset_param_randomnessset_param_curve一起使用以设置比例尺属性。

  • PARAM_HUE_VARIATION = 9

set_paramset_param_randomnessset_param_curve一起使用来设置色调变化属性。

  • PARAM_ANIM_SPEED = 10

set_paramset_param_randomnessset_param_curve一起使用以设置动画速度属性。

  • PARAM_ANIM_OFFSET = 11

set_paramset_param_randomnessset_param_curve一起使用以设置动画偏移属性。

  • PARAM_MAX = 12

表示Parameter枚举的个数。


enum Flags: - FLAG_ALIGN_Y_TO_VELOCITY = 0

set_particle_flag一起使用来设置flag_align_y

  • FLAG_ROTATE_Y = 1

set_particle_flag一起使用来设置flag_rotate_y

  • FLAG_DISABLE_Z = 2

set_particle_flag一起使用来设置flag_disable_z

  • FLAG_MAX = 3

表示Flags枚举的大小。


enum EmissionShape: - EMISSION_SHAPE_POINT = 0

所有粒子将从一个点发射。

  • EMISSION_SHAPE_SPHERE = 1

粒子将在球体的体积中发射。

  • EMISSION_SHAPE_BOX = 2

粒子将在盒子的体积内发射。

  • EMISSION_SHAPE_POINTS = 3

粒子将在emission_points中随机选择的位置发射。粒子颜色将通过emission_colors进行调制。

  • EMISSION_SHAPE_DIRECTED_POINTS = 4

粒子将在emission_points中随机选择的位置发射。粒子的速度和旋转将基于emission_normals进行设置。粒子颜色将通过emission_colors进行调节。

  • EMISSION_SHAPE_MAX = 5

表示EmissionShape枚举的个数。


常量

成员说明

  • int amount
Default 8
setter set_amount(value)
getter get_amount
  • float angle
Default 0.0
setter set_param(value)
getter get_param
  • Curve angle_curve
setter set_param_curve(value)
getter get_param_curve
  • float angle_random
Default 0.0
setter set_param_randomness(value)
getter get_param_randomness
  • float angular_velocity
Default 0.0
setter set_param(value)
getter get_param
  • Curve angular_velocity_curve
setter set_param_curve(value)
getter get_param_curve
  • float angular_velocity_random
Default 0.0
setter set_param_randomness(value)
getter get_param_randomness
  • float anim_offset
Default 0.0
setter set_param(value)
getter get_param
  • Curve anim_offset_curve
setter set_param_curve(value)
getter get_param_curve
  • float anim_offset_random
Default 0.0
setter set_param_randomness(value)
getter get_param_randomness
  • float anim_speed
Default 0.0
setter set_param(value)
getter get_param
  • Curve anim_speed_curve
setter set_param_curve(value)
getter get_param_curve
  • float anim_speed_random
Default 0.0
setter set_param_randomness(value)
getter get_param_randomness
  • Color color
Default Color( 1, 1, 1, 1 )
setter set_color(value)
getter get_color
  • Gradient color_ramp
setter set_color_ramp(value)
getter get_color_ramp
  • float damping
Default 0.0
setter set_param(value)
getter get_param
  • Curve damping_curve
setter set_param_curve(value)
getter get_param_curve
  • float damping_random
Default 0.0
setter set_param_randomness(value)
getter get_param_randomness
  • Vector3 direction
Default Vector3( 1, 0, 0 )
setter set_direction(value)
getter get_direction
  • int draw_order
Default 0
setter set_draw_order(value)
getter get_draw_order
  • Vector3 emission_box_extents
setter set_emission_box_extents(value)
getter get_emission_box_extents
  • PoolColorArray emission_colors
Default PoolColorArray( )
setter set_emission_colors(value)
getter get_emission_colors
  • PoolVector3Array emission_normals
setter set_emission_normals(value)
getter get_emission_normals
  • PoolVector3Array emission_points
Default PoolVector3Array( )
setter set_emission_points(value)
getter get_emission_points
  • int emission_shape
Default 0
setter set_emission_shape(value)
getter get_emission_shape
  • float emission_sphere_radius
setter set_emission_sphere_radius(value)
getter get_emission_sphere_radius
  • bool emitting
Default true
setter set_emitting(value)
getter is_emitting
  • float explosiveness
Default 0.0
setter set_explosiveness_ratio(value)
getter get_explosiveness_ratio
  • int fixed_fps
Default 0
setter set_fixed_fps(value)
getter get_fixed_fps
  • bool flag_align_y
Default false
setter set_particle_flag(value)
getter get_particle_flag
  • bool flag_disable_z
Default false
setter set_particle_flag(value)
getter get_particle_flag
  • bool flag_rotate_y
Default false
setter set_particle_flag(value)
getter get_particle_flag
  • float flatness
Default 0.0
setter set_flatness(value)
getter get_flatness
  • bool fract_delta
Default true
setter set_fractional_delta(value)
getter get_fractional_delta
  • Vector3 gravity
Default Vector3( 0, -9.8, 0 )
setter set_gravity(value)
getter get_gravity
  • float hue_variation
Default 0.0
setter set_param(value)
getter get_param
  • Curve hue_variation_curve
setter set_param_curve(value)
getter get_param_curve
  • float hue_variation_random
Default 0.0
setter set_param_randomness(value)
getter get_param_randomness
  • float initial_velocity
Default 0.0
setter set_param(value)
getter get_param
  • float initial_velocity_random
Default 0.0
setter set_param_randomness(value)
getter get_param_randomness
  • float lifetime
Default 1.0
setter set_lifetime(value)
getter get_lifetime
  • float lifetime_randomness
Default 0.0
setter set_lifetime_randomness(value)
getter get_lifetime_randomness
  • float linear_accel
Default 0.0
setter set_param(value)
getter get_param
  • Curve linear_accel_curve
setter set_param_curve(value)
getter get_param_curve
  • float linear_accel_random
Default 0.0
setter set_param_randomness(value)
getter get_param_randomness
  • bool local_coords
Default true
setter set_use_local_coordinates(value)
getter get_use_local_coordinates
  • Mesh mesh
setter set_mesh(value)
getter get_mesh
  • bool one_shot
Default false
setter set_one_shot(value)
getter get_one_shot
  • float orbit_velocity
setter set_param(value)
getter get_param
  • Curve orbit_velocity_curve
setter set_param_curve(value)
getter get_param_curve
  • float orbit_velocity_random
setter set_param_randomness(value)
getter get_param_randomness
  • float preprocess
Default 0.0
setter set_pre_process_time(value)
getter get_pre_process_time
  • float radial_accel
Default 0.0
setter set_param(value)
getter get_param
  • Curve radial_accel_curve
setter set_param_curve(value)
getter get_param_curve
  • float radial_accel_random
Default 0.0
setter set_param_randomness(value)
getter get_param_randomness
  • float randomness
Default 0.0
setter set_randomness_ratio(value)
getter get_randomness_ratio
  • float scale_amount
Default 1.0
setter set_param(value)
getter get_param
  • Curve scale_amount_curve
setter set_param_curve(value)
getter get_param_curve
  • float scale_amount_random
Default 0.0
setter set_param_randomness(value)
getter get_param_randomness
  • float speed_scale
Default 1.0
setter set_speed_scale(value)
getter get_speed_scale
  • float spread
Default 45.0
setter set_spread(value)
getter get_spread
  • float tangential_accel
Default 0.0
setter set_param(value)
getter get_param
  • Curve tangential_accel_curve
setter set_param_curve(value)
getter get_param_curve
  • float tangential_accel_random
Default 0.0
setter set_param_randomness(value)
getter get_param_randomness

方法说明

  • convert_from_particles convert_from_particles(particles: Node)

设置此节点的属性,以使给定的Particles节点与分配的ParticlesMaterial匹配。


  • get_param get_param(param: int) const

返回由Parameter指定的参数的基值。


  • get_param_curve get_param_curve(param: int) const

返回由Parameter指定的参数的Curve


  • get_param_randomness get_param_randomness(param: int) const

返回由Parameter指定的参数的随机性因子。


  • get_particle_flag get_particle_flag(flag: int) const

返回给定标志的启用状态(有关选项,请参见Flags)。


  • restart restart()

重新启动粒子发射器。


  • set_param set_param(param: int, value: float)

设置Parameter指定的参数的基值。


  • set_param_curve set_param_curve(param: int, curve: Curve)

设置Parameter指定的参数的Curve


  • set_param_randomness set_param_randomness(param: int, randomness: float)

设置Parameter指定的参数的随机性因子。


  • set_particle_flag set_particle_flag(flag: int, enable: bool)

启用或禁用给定标志(有关选项,请参见Flags)。