unreal.ParticleModuleCollision

class unreal.ParticleModuleCollision(outer=None, name='None')

Bases: unreal.ParticleModuleCollisionBase

Particle Module Collision

C++ Source:

  • Module: Engine

  • File: ParticleModuleCollision.h

Editor Properties: (see get_editor_property/set_editor_property)

  • apply_physics (bool): [Read-Write] Apply Physics: If true, physic will be applied between a particle and the object it collides with. This is one-way - particle –> object. The particle does not have physics applied to it - it just generates an impulse applied to the object it collides with. NOTE: having this on prevents the code from running off the game thread.

  • b3d_draw_mode (bool): [Read-Write] B 3DDraw Mode: If true, the module should render its 3D visualization helper

  • collide_only_if_visible (bool): [Read-Write] Collide Only if Visible: If true, Particle collision only if particle system is currently being rendered.

  • collision_completion_option (ParticleCollisionComplete): [Read-Write] Collision Completion Option: What to do once a particles MaxCollisions is reached. One of the following: EPCC_Kill

    Kill the particle when MaxCollisions is reached

    EPCC_Freeze

    Freeze in place, NO MORE UPDATES

    EPCC_HaltCollisions,

    Stop collision checks, keep updating everything

    EPCC_FreezeTranslation,

    Stop translations, keep updating everything else

    EPCC_FreezeRotation,

    Stop rotations, keep updating everything else

    EPCC_FreezeMovement

    Stop all movement, keep updating

  • collision_types (Array(ObjectTypeQuery)): [Read-Write] Collision Types: Which ObjectTypes to collide with

  • damping_factor (RawDistributionVector): [Read-Write] Damping Factor: How much to `slow’ the velocity of the particle after a collision. Value is obtained using the EmitterTime at particle spawn.

  • damping_factor_rotation (RawDistributionVector): [Read-Write] Damping Factor Rotation: How much to `slow’ the rotation of the particle after a collision. Value is obtained using the EmitterTime at particle spawn.

  • delay_amount (RawDistributionFloat): [Read-Write] Delay Amount: How long to delay before checking a particle for collisions. Value is retrieved using the EmitterTime. During update, the particle flag IgnoreCollisions will be set until the particle RelativeTime has surpassed the DelayAmount.

  • dir_scalar (float): [Read-Write] Dir Scalar: The directional scalar value - used to scale the bounds to ‘assist’ in avoiding inter-penetration or large gaps.

  • drop_detail (bool): [Read-Write] Drop Detail: If true, when the World->bDropDetail flag is set, the module will be ignored.

  • ignore_source_actor (bool): [Read-Write] Ignore Source Actor: If true, then the source actor is ignored in collision checks. Defaults to true.

  • ignore_trigger_volumes (bool): [Read-Write] Ignore Trigger Volumes: Any trigger volumes that are hit will be ignored. NOTE: This can be turned off if the TrigerVolume physics object type is not in the CollisionTypes array. Turning this off is strongly recommended as having it on prevents the code from running off the game thread.

  • max_collision_distance (float): [Read-Write] Max Collision Distance: Max distance at which particle collision will occur.

  • max_collisions (RawDistributionFloat): [Read-Write] Max Collisions: The maximum number of collisions a particle can have. Value is obtained using the EmitterTime at particle spawn.

  • module_editor_color (Color): [Read-Write] Module Editor Color: The color to draw the modules curves in the curve editor.

    If bCurvesAsColor is true, it overrides this value.

  • only_vertical_normals_decrement_count (bool): [Read-Write] Only Vertical Normals Decrement Count: If true, then collisions that do not have a vertical hit normal will still react, but UsedMaxCollisions count will not be decremented. (ie., They don’t ‘count’ as collisions) Useful for having particles come to rest on floors.

  • particle_mass (RawDistributionFloat): [Read-Write] Particle Mass: The mass of the particle - for use when bApplyPhysics is true. Value is obtained using the EmitterTime at particle spawn.

  • pawns_do_not_decrement_count (bool): [Read-Write] Pawns Do Not Decrement Count: If true, then collisions with Pawns will still react, but the UsedMaxCollisions count will not be decremented. (ie., They don’t ‘count’ as collisions) NOTE: Having this on prevents the code from running in parallel.

  • vertical_fudge_factor (float): [Read-Write] Vertical Fudge Factor: The fudge factor to use to determine vertical. True vertical will have a Hit.Normal.Z == 1.0 This will allow for Z components in the range of [1.0-VerticalFudgeFactor..1.0] to count as vertical collisions.

get_particle_module_collision_props() -> (out_damping_factor=Distribution, out_damping_factor_rotation=Distribution, out_max_collisions=Distribution, out_collision_complete_option=ParticleCollisionComplete, out_collision_types=Array(ObjectTypeQuery), out_apply_physics=bool, out_ignore_trigger_volumes=bool, out_particle_mass=Distribution, out_dir_scalar=float, out_pawns_do_not_decrement_count=bool, out_only_vertical_normals_decrement_count=bool, out_vertical_fudge_factor=float, out_delay_amount=Distribution, out_drop_detail=bool, out_collide_only_if_visible=bool, out_ignore_source_actor=bool, out_max_collision_distance=float)

Get Particle Module Collision Props

Returns

out_damping_factor (Distribution):

out_damping_factor_rotation (Distribution):

out_max_collisions (Distribution):

out_collision_complete_option (ParticleCollisionComplete):

out_collision_types (Array(ObjectTypeQuery)):

out_apply_physics (bool):

out_ignore_trigger_volumes (bool):

out_particle_mass (Distribution):

out_dir_scalar (float):

out_pawns_do_not_decrement_count (bool):

out_only_vertical_normals_decrement_count (bool):

out_vertical_fudge_factor (float):

out_delay_amount (Distribution):

out_drop_detail (bool):

out_collide_only_if_visible (bool):

out_ignore_source_actor (bool):

out_max_collision_distance (float):

Return type

tuple