Event modules allow you to generate events based on particles interacting with themselves, each other, or the world, and then listen for those events and cause reactions to them on an inter-particle system level. A good example is generating a named collision event whenever a particle collides with the world, and then spawning particles wherever those collisions occur.
Event Generator
The Event Generator module will generate an event (or multiple events) based on conditions you specify. This module has a single Events array that contains a list of all events you want the emitter to be able to generate. Each item in the Events array has the following properties:
Property |
Description |
Events |
|
Type |
The type of event. The possible types include:
Type |
Description |
EPET_Any |
Generate a named event from any of the possible event occurrences. |
EPET_Spawn |
Generate the named event whenever a particle in this emitter spawns. |
EPET_Death |
Generate the named event whenever a particle in this emitter dies. |
EPET_Collision |
Generate the named event whenever a particle in this emitter collides with something. |
EPET_Burst |
Generate a particle burst event. |
EPET_Blueprint |
Generate an event which talks to Blueprints, allowing you to execute Blueprint script or allow Blueprint script to execute particle commands. |
|
Frequency |
How often to trigger the event. <=1 means every time. Use this to trigger an event on every other collision, say. |
First Time Only |
Boolean to trigger the event only on the first time it would fire. |
Last Time Only |
Boolean to trigger the event only on the last occurrence of when it would fire. |
Use Reflected Impact Vector |
Boolean to decide whether you orient the result of the collision event in the direction of the impact vector instead of the hit normal. |
Custom Name |
This is the name of your event, which allows you to set up a listener to listen for this event name and then act accordingly. All events need to be named. |
Particle Module Events To Send To Game |
The events we want to fire off when this event has been generated. Requires your game to implement new subclasses of ParticleModuleEventSendToGame representing the types of game events particle events should be able to trigger. |
Event Receiver Kill All (EventRcvr KillAll)
EventReceiver Kill All listens for a named event and then kills all the particles of the emitter.
Property |
Description |
ParticleModuleEventReceiverKillParticles |
|
Stop Spawning |
If true, the emitter will cease spawning new particles in addition to killing all existing particles. |
Events |
|
Event Generator Type |
What type of event to listen for.
Type |
Description |
EPET_Any |
Generate a named event from any of the possible event occurrences. |
EPET_Spawn |
Generate the named event whenever a particle in this emitter spawns. |
EPET_Death |
Generate the named event whenever a particle in this emitter dies. |
EPET_Collision |
Generate the named event whenever a particle in this emitter collides with something. |
EPET_Burst |
Generate a particle burst event. |
EPET_Blueprint |
Generate an event which talks to Blueprints, allowing you to execute Blueprint script or allow Blueprint script to execute particle commands. |
|
Event Name |
The name of the event to listen for. |
Event Receiver Spawn (EventRcvr Spawn)
EventReceiver Spawn listens for a named event and then spawns particles based on what events fire.
Property |
Description |
Spawn |
|
Spawn Count |
Determines how many particles to spawn when an event fires. |
Use Particle Time |
For Death-based event receiving, if this is true, it indicates that the ParticleTime of the event should be used to look-up the SpawnCount. Otherwise (and in all other events received), use the emitter time of the event. |
Location |
|
Use PSys Location |
Boolean to decide whether the spawn event happens at the event of the particle that triggered the event, or at the origin of the particle system. |
Velocity |
|
Inherit Velocity |
If true, the velocity of the particle that triggers the event will be used as the starting velocity of the spawned particle. |
Inherit Velocity Scale |
Multiplier for scaling the velocity if Inherit Velocity is true. |
Source |
|
Event Generator Type |
What type of event to listen for.
Type |
Description |
EPET_Any |
Generate a named event from any of the possible event occurrences. |
EPET_Spawn |
Generate the named event whenever a particle in this emitter spawns. |
EPET_Death |
Generate the named event whenever a particle in this emitter dies. |
EPET_Collision |
Generate the named event whenever a particle in this emitter collides with something. |
EPET_Burst |
Generate a particle burst event. |
EPET_Blueprint |
Generate an event which talks to Blueprints, allowing you to execute Blueprint script or allow Blueprint script to execute particle commands. |
|
Event Name |
The name of the event to listen for. |