Always In World Space - If true, the acceleration vector is assumed to be in world-space coordinates. The acceleration is retrieved from the Acceleration distribution using the Particle. Attractor Modules These modules implement methods of causing particles to be attracted toward a specific position in space, which can be defined in the form of a point, line, or another particle's position.
They can even be combined to create more complex effects. This is the result of using a point attractor in combination with a line attractor with its strength animated over the life of the particle to create the swirling effect. Hover for animated preview Attractor Line The line attractor allows for having particles be drawn to a line in 3D space.
Attractor End Point 0 - Specifies one endpoint of the line to attract the particles toward. End Point 1 - Specifies the other endpoint of the line to attract the particles toward. Range - A float distribution giving the radial range of the attraction around the line. Particle-life relative. Strength - The strength of the attraction negative values repel. Attractor Particle Hover for animated preview The particle attractor allows for having particles be drawn to the particles emitted from another emitter in the system.
It contains the following members s : Attractor Affect Base Velocity - If true, the velocity adjustment will be applied to the base velocity. EmitterName - The name of the attracting source emitter. Inherit Source Vel - If true, the particle will inherit the velocity of the source if it expires.
Range - A float distribution giving the radial range of the attraction around the source particle. Renew Source - If true, when the source particle expires, a new one will be selected. Otherwise, the particle will no longer be attracted to another.
Particle-life relative if Strength By Distance is false. Otherwise, the strength is retrieved using the source particle RelativeTime. Location SelectionMethod - The method to use when selecting an attractor target particle from the emitter. Attractor Point Hover for animated preview The point attractor allows for defining a point to which particles are attracted and its radius of effect. Override Velocity - Unused.
Position - A vector distribution indicating the position of the point with respect to the particle emitter. The value is retrieved using EmitterTime. Range - A float distribution that gives the radius of the points effect. Strength - The strength of the point attractor. Strength By Distance - If true, the strength is distributed evenly along the radius. Use World Space Position - If true, the position is assumed to be in world-space coordinates. Beam Modules These modules are used to configure or modify the behavior of emitters using the Beam TypeData module.
It provides the following properties: Modifier Modifier Type - Specifies what the module is modifying. Position Options - Options associated with the Position property. Otherwise, position is not affected. Strength Options - Options associated with the Strength property. Otherwise, strength is not affected. Tangent Options - Options associated with the Tangent property.
Otherwise, tangent is not affected. Beam Noise Hover for animated preview The Beam Noise module allows for injecting noise along the beam. Frequency - The frequency of the noise points along the beam. FrequencyDistance - The distance at which to place noise point. If this value is 0. If not 0. This allows for having fewer noise points on shorter beams, and to add noise points automatically as the beam grows. Frequency] range. NOTE: Currently, low-frequency noise is the only noise supported.
Noise Lock Radius - The radius of the sphere around noise points that indicates they are locked. Noise Lock Time - How long the noise points should be locked before picking a new noise point. Noise Range - A distribution providing the range of the noise point positions.
If using a constant curve, the mapping is time 0. Noise Range Scale - This distribution provides a method for scaling the noise range over the emitter time. The lookup value for this distribution is determined by dividing the number of noise points present by the maximum number of noise points ie, the Frequency.
Noise Speed - A vector distribution providing the speed at which noise points move. Noise Tangent Strength - The strength to apply to tangents at noise points during the interpolation along the beam. Noise Tension - The tension to apply to the tessellated noise line. Noise Tessellation - The number of points to interpolate between noise points. Oscillate - If true, noise points will bounce back and forth across the beam direct line. Smooth - If true, attempt to smoothly move between noise points.
Target Noise - If true, apply noise to the target point. Use Noise Tangents - If true, tangents are calculated at each noise point. Beam Source The Beam Source module implements a single source for a beam emitter. If a source module is not present in a beam emitter, the emitter location itself is used as the source.
It provides the following properties: Source Lock Source - If true, the source position will only be set at spawn time. Lock Source Strength - If true, the source strength will only be set at spawn time. Lock Source Tangent - If true, the source tangent will only be set at spawn time.
Source - A vector distribution allowing for the setting of the source position. Used when the method is set to Default, or in the event of any other method failing to determine a source point. The value is retrieved from the distribution using the current emitter time. Source Absolute - If true, treat the source as an absolute position in world space i.
Source Method - This enumeration allows for setting the method for obtaining the beams source position. Source Name - The name of the actor to use as the source. If the actor is not found, the fallback is to use the Source distribution. Source Strength - A float distribution that provides the strength of the tangent from the source point for each beam. The value is retrieved using the current emitter time.
Source Tangent - A vector distribution allowing for setting the source tangent. Source Tangent Method - This enumeration allows for setting the method for obtaining the beams source tangent. Beam Target The Beam Target module implements a single target for a beam emitter.
If a target module is not present in a beam emitter, the emitter assumes that the beam is to be used directionally. It provides the following properties: Target Lock Radius - The radius of the sphere that the current beam-end should be in to be considered locked to the target point.
Used when utilizing a beam that has a Speed value set. Lock Target - If true, the target position will only be set at spawn time. Lock Target Strength - If true, the target strength will only be set at spawn time. Lock Target Tangent - If true, the target tangent will only be set at spawn time. Target - A vector distribution allowing for the setting of the target position. Used when the method is set to Default, or in the event of any other method failing to determine a target point. Target Absolute - If true, treat the target as an absolute position in world space ie, do not transform it.
Target Method - This enumeration allows for setting the method for obtaining the beams target position. Target Name - The name of the actor to use as the target. If the actor is not found, the fallback is to use the Target distribution. Target Strength - A float distribution that provides the strength of the tangent from the target point for each beam.
Target Tangent - A vector distribution allowing for setting the target tangent. Target Tangent Method - This enumeration allows for setting the method for obtaining the beams target tangent. Camera Modules These modules modify the emitter behavior with respect to the camera. Camera Offset The Camera Offset module allows the positions of sprite particles to be offset relative to the camera.
It provides the following properties: Camera Camera Offset - The camera-relative offset to apply to the sprite particle location. Spawn Time Only - If true, the offset from this module will only be processed when the particle is originally spawned. Update Method - Specifies the method to use when updating the offset from this module. Collision Modules Collision Hover for animated preview Parameters for having the emitter handle collisions of particles.
It contains the following member s : Collision Apply Physics - A Boolean indicating whether physic should be applied between a particle and the object it collides with.
The particle does not have physics applied to it - it just generates an impulse applied to the object it collides with. This is the default behavior. The value is retrieved based on the EmitterTime at the spawn of the particle, and is stored in the particle. 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 Delay Amount.
Dir Scalar - A float value that is used to scale the bound of the particle to 'assist' in avoiding interpenetration or large gaps. Max Collisions - A float distribution indicating the maximum number of collisions a particle can have.
The value is retrieved based on the EmitterTime at the spawn of the particle. This allows for particles bouncing off walls and coming to rest on floors. This allows for bouncing particles off a pawn, but not having them freeze in mid-air. Vertical Fudge Factor - A float value used to determine what is vertical.
True vertical will have a Hit. This allows for Z components in the range of [1. These values are used to track the collision information per particle. The following pseudo-code explains the update process for collision particles. Determine the location of the particle. This is required due to the fact that the actual location isn't calculated until after the Update call. Determine the appropriate extent to use during the line check. The Mass is grabbed from the distribution relative to the particle time.
Note: Color modules require the material used by the emitter to be using a VertexColor expression to pass the color from the module to the material. Note: Color was previously in the [ Full-floating point color is now supported in particles. Initial Color Hover for animated preview The Initial Color module sets the color of a particle at spawn time. The particle will retain this color over its lifetime unless another color module overrides it.
Start Alpha - A float distribution indicating the alpha component of the particle. Value is retrieved based on the EmitterTime at the spawn of the particle.
Start Color - A vector distribution indicating the color of the particle. In Spawn, the module retrieves the appropriate values from the distributions using the emitter time, setting the Particle.
Color and Particle. BaseColor values to it directly. Init Color Seeded The Init Color Seeded module is identical to the Initial Color module in that it sets the initial color of a particle at spawn time; however, this module allows you to specify seed information to be used when choosing distribution values in order to provide a more consistent effect from the module each time the emitter is used.
RandomSeed Random Seed Info - The random seed s to use for selecting "random" values for this module's properties. If that fails, it will fall back to getting it from the Random Seeds array. Instance Seed Is Index If true, the seed value retrieved from the instance will be an index into the Random Seeds array.
Parameter Name The name to expose to the placed instance for setting this seed. Random Seeds The random seed values to utilize for this module. If multiple values are specified, a value will be chosen at random by the instance. Parameter Color The Parameter Color module is used to set the color of a particle at spawn time according to an emitter instance parameter.
It allows for the same emitter to be instanced in a level, but appear with different colors. It contains the following member s : Color Color Param - The name of the parameter in the instance parameters to retrieve the color from.
Default Color - The default color to use in the event that the parameter is not set on the emitter. In Spawn, the module retrieves the appropriate value from the instance parameters and sets it as the color.
If it is not found, it will use the Default Color. This means that any color modules that came before it will have their value stepped on! Note: This module is the equivalent of using a ParticleParameter distribution in the Initial Color module. It was written prior to ParticleParameter distributions existing. It contains the following member s : Color Alpha Over Life - A float distribution indicating the alpha component to apply to a particle.
The value is retrieved using the RelativeTime of the particle during its update. Clamp Alpha - If true, the alpha value will be clamped to the [0. Color Over Life - A vector distribution indicating the color to apply to a particle. In Spawn, the module retrieves the appropriate values from the distributions using the particle time, and sets the Particle Color and BaseColor values to it.
In Update, the module retrieves the appropriate values from the distributions using the particle time, and sets the Particle. Color value to it. It contains the following member s : Color Alpha Scale Over Life - A float distribution indicating the alpha component to apply to a particle. Color Scale Over Life - A vector distribution indicating the color to apply to a particle. Emitter Time - A Boolean indicating if the effect should be based on the emitter time or the particle time.
In Spawn and Update, the module retrieves the appropriate values from the distributions using the selected time, and uses these values to scale the particle color. Event Modules 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: Events Type - The type of event. Use this to trigger an event on every other collision, say. Low Freq - Allows for randomness in the frequency range. 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. 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 Listens for a named event and then kills all the particles of the emitter. 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.
Event Name - The name of the event to listen for. Event Receiver Spawn Listens for a named event and then spawns particles based on what events fire. 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. Source Event Generator Type - What type of event to listen for. 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. 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. Kill Modules Kill modules will kill a given particle if it meets the rules defined by specific implementations.
Kill Box The Kill box module is used to kill particles when they move outside of a defined box. It contains the following member s : Kill Lower Left Corner - A vector distribution defining the lower left corner of the box.
Upper Right Corner - A vector distribution defining the upper right corner of the box. Absolute - If TRUE, the corner settings will be considered as world-space values and remain unchanged when testing.
If the 3D preview mode is enabled, the wire box will be drawn in the Cascade preview window. Kill Height The Kill height module is used to kill particles when they move above a defined height.
It contains the following member s : Kill Height - A float distribution defining the height to kill particles at or above. Absolute - If TRUE, the value will be considered as world-space values and remain unchanged when testing.
If the 3D preview mode is enabled, a plane will be rendered at the height of the kill value. Lifetime Modules Lifetime Hover for animated preview The Lifetime module is used to set the initial lifetime of a particle at spawn time. It contains the following member s : Lifetime Lifetime - A float distribution indicating the lifetime of the particle, in seconds. In Spawn, the module retrieves the appropriate values from the distribution using the current emitter time.
This is then added to the Particle. OneOverMaxLifetime field, to allow for multiple lifetime modules to be applied. Lifetime Seeded The Lifetime Seeded module is identical to the Lifetime module in that it sets the lifetime of a particle at spawn time; however, this module allows you to specify seed information to be used when choosing distribution values in order to provide a more consistent effect from the module each time the emitter is used.
Location Modules Initial Location Hover for animated preview The Initial Location module is used to set the initial location of a particle at spawn time.
It contains the following member s : Location Start Location - A vector distribution indicating the location the particle should be emitted, relative to the emitter. If the particle emitter does not have the Use Local Space flag, this value is transformed into world-space. The Particle. Location field then has this value added to it. Initial Loc Seeded The Initial Loc Seeded module is identical to the Initial Location module in that it sets the initial location of a particle at spawn time; however, this module allows you to specify seed information to be used when choosing distribution values in order to provide a more consistent effect from the module each time the emitter is used.
World Offset The World Offset module is used to offset the initial location of a particle. The offset is in world space but respects the Use Local Space flag through the life of the particle. This means the particle will always spawn offset in world space regardless of the orientation of the emitter, but will keep that offset relative to the emitter throughout its life.
It contains the following member s : Location Start Location - A vector distribution indicating the world-space offset the particle should use. Orient Mesh Emitters - If true, mesh particles emitted by mesh emitters will be oriented to the bone or socket source.
Selection Method - The method by which a bone or socket is chosen from the Source Locations array. Source Locations - An array of source bones or sockets on the Skeletal Mesh from which to spawn particles. Property Description Bone Socket Name Specifies the name of the bone or socket on the SkeletalMesh to use as the source for the particles. Offset The offset from this individual bone or socket to use in addition to the Universal Offset.
Source Type - Specifies whether the source locations are bones or sockets. Universal Offset - The offset to apply to each bone or socket source. Update Position Each Frame - If true, the locations of the particles will be updated to those of the bones or sockets each frame.
Direct Location The Direct Location module is used to directly set the location of a particle. It contains the following member s : Location Direction - Currently unused.
Location - A vector distribution giving the location of the particle at a given time. The value is retrieved based on the Particle RelativeTime. NOTE that the particle location is set to this value, thereby over-writing any previous module impacts.
Location Offset - A vector distribution giving the offset to apply from the position retrieved from the Location calculation. The offset is retrieved using the EmitterTime. This is useful for using a Location field set by script code to an Actor or something, and a random LocationOffset to offset it around the object. The offset will remain constant over the life of the particle. Scale Factor - A vector distribution which allows for scaling the velocity of the object at a given point in the timeline.
This allows for warping the particles to fit the path they are following. Emitter Init Loc The Emitter InitLoc module is used to set the initial location of a particle to the position of a particle from another emitter in the same particle system. It contains the following member s : Location Emitter Name - The name of the emitter to use as a source for the location particles. Inherit Source Rotation - A Boolean that indicates the spawned particle should inherit the rotation of the source particle.
Inherit Source Rotation Scale - Amount to scale the source rotation by when inheriting it. Inherit Source Velocity - A Boolean that indicates the spawned particle should inherit the velocity of the source particle.
Inherit Source Velocity Scale - Amount to scale the source velocity by when inheriting it. Selection Method - An enumeration indicating how to select the particles from the source emitter. Emitter Direct Loc The Emitter DirectLoc module is used to set the location of a particle to the position of a particle from another emitter in the same particle system for the particle's entire life.
It contains the following member s : Location EmitterName - The name of the emitter to use as a source for the location particles. The particle used will be the one at the same index as the particle having its location set. Cylinder Hover for animated preview The Cylinder module is used to set the initial location of particles within a cylinder shape. It contains the following member s : Location Height Axis - An enumeration indicating which particle system axis should represent the height axis of the cylinder.
Start Height - A float distribution giving the height of the cylinder - centered about the location. Start Location - A vector distribution indicating the location of the bounding primitive, relative to the position of the emitter. Start Radius - A float distribution giving the radius of the cylinder. Surface Only - A Boolean value indicating that the particles should only be spawned on the surface of the primitive. Velocity - A Boolean value indicating that the particle should get its velocity from the position within the primitive.
Velocity Scale - A float distribution indicating the scale that should be applied to the velocity. Only used if the Velocity value is checked true. Cylinder Seeded The Cylinder Seeded module is identical to the Cylinder module in that it sets the initial location of particles within a cylinder shape; however, this module allows you to specify seed information to be used when choosing distribution values in order to provide a more consistent effect from the module each time the emitter is used.
Sphere Hover for animated preview The Sphere module is used to set the initial location of particles within a sphere shape. Start Radius - A float distribution giving the radius of the sphere. Sphere Seeded The Sphere Seeded module is identical to the Sphere module in that it sets the initial location of particles within a sphere shape; however, this module allows you to specify seed information to be used when choosing distribution values in order to provide a more consistent effect from the module each time the emitter is used.
Source Movement The Source Movement module is used to offset the location of particles based on the movement of the source i. It contains the following properties: SourceMovement Source Movement - A vector distribution specifying the scaling factor to apply to the source movement before adding to the particle location.
The value is retrieved using particle-relative time. Material Modules Material modules operate on the materials applied to particle emitters. Parameter Material The Parameter Material module allows for overriding the material s applied to sprite emitters or sections of the static mesh used in a mesh emitter.
It contains the following member s : ParticleModuleMaterialByParameter Default Materials - An array of materials to attempt to use when no parameter matching the Material Parameters is found. Material Parameters - An array of the names of instance parameters used to specify the material to use to override the current material. For sprite emitters, only the first element in the array is valid. The elements in the array are mapped to the material slots of the static mesh for mesh emitters.
If no material is supplied through an instance parameter and the entry is the Default Materials array is empty set to None , the emitter's material for sprite emitters or the material from the StaticMesh element for mesh emitters will be used, allowing for selectively overriding the materials specific parts of the static mesh.
Orbit Hover for animated preview This is the only orbit module implemented. It allows for offsetting and rotating the sprite from the actual particle position. Multiple orbit modules can be chained together in a variety of ways. Chaining Chain Mode - An enumeration that describes how this module is chained together with other modules in the emitter.
The combination of the module with the one prior to it is defined by setting this value. Offset Offset Amount - A vector distribution giving the offset of the sprite from the particle 'center'. Offset Options - The options associated with the Offset Amount. Process During Spawn If true, the associated piece of data will be processed during the spawning of a particle. Process During Update If true, the associated piece of data will be processed during the update of a particle.
If false, then the particle RelativeTime will be used. Rotation Rotation Amount - A vector distribution giving the amount to rotate the offset about the particle position. Rotation Options - The options associated with the Rotation Amount. RotationRate Rotation Rate Amount - A vector distribution giving the rate at which to rotate the offset about the particle position.
In 'turns'. Currently, this is a sprite-based module only. It contains the following member s : Orientation Lock Axis Flags - Indicate the axis the particle should lock to. Parameter Modules Dynamic Parameter The Dynamic Parameter module is used to pass four scalar values to the material s used by the emitter allowing the emitter to control material effects.
Each element in the Dynamic Params array has the following properties: Param Name - The name of the associated parameter in the DynamicParameter expression of the material. This property is read-only and populated automatically.
Use Emitter Time - If true, use the emitter time to retrieve the distribution value for the parameter. Otherwise, use the particle-relative time. Spawn Time Only - If true, only set the paramater value when the particle is spawned.
Otherwise, the value is updated each frame. Value Method - Specifies the method used to get the parameter value. Scale Velocity By Param Value - If true, the velocity value passed to the material will be scaled by the value set in the Param Value distribution.
Dynamic Parameter Seeded The Dynamic Parameter Seeded module is identical to the Dynamic Parameter module in that it allows the emitter to pass values to the material s ; however, this module allows you to specify seed information to be used when choosing distribution values in order to provide a more consistent effect from the module each time the emitter is used.
Spawn Time Only - If true, only set the parameter value when the particle is spawned. Rotation Modules Initial Rotation Hover for animated preview The Initial Rotation module is used to set the initial rotation of a particle at spawn time. It contains the following member s : Rotation Start Rotation - A float distribution indicating the rotation the particle should be emitted at 1. Init Rotation Seeded The Init Rotation Seeded module is identical to the Initial Rotation module in that it sets the initial rotation or particles; however, this module allows you to specify seed information to be used when choosing distribution values in order to provide a more consistent effect from the module each time the emitter is used.
It contains the following member s : Rotation Rotation Over Life - A float distribution indicating the rotation the particle should have 1. Scale - A Boolean indicating that the existing particle rotation should be scaled by the value retrieved from the RotationOverLife distribution.
It contains the following member s : Rotation Rot Rate - A vector distribution indicating the rotation rate the particle should have, in rotations per second. The value is retrieved using the particle-relative time. Scale Rot Rate - If true, the current rotation rate of the particle is scaled by the value of the Rot Rate distribution. Initial Rot Rate Hover for animated preview The Initial RotRate module is used to set the rotation rate of a particle when it is emitted.
It contains the following member s : Rotation Start Rotation Rate - A float distribution indicating the rotation rate the particle should have, in rotations per second. Init Rot Rate Seeded The Initial RotRate Seeded module is identical to the Initial Rot Rate module in that it sets the rotation rate of a particle when it is emitted; however, this module allows you to specify seed information to be used when choosing distribution values in order to provide a more consistent effect from the module each time the emitter is used.
It contains the following member s : RandomSeed Random Seed Info - The random seed s to use for selecting "random" values for this module's properties. Rotation Start Rotation Rate - A float distribution indicating the rotation rate the particle should have, in rotations per second.
It contains the following member s : Rotation Life Multiplier - A float distribution indicating the scale factor that should be applied to the rotation rate of the particle.
Value is retrieved based on the RelativeTime at the spawn and update of the particle, and the Particle. RotationRate is multiplied by it. Size Modules Initial Size Hover for animated preview The Initial Size module is used to set the initial size of a particle at spawn time.
It contains the following member s : Size Start Size - A vector distribution indicating the initial size that should be used for a particle. Value is retrieved based on the EmitterTime during the spawn of the particle and added to the Size and BaseSize of the spawning particle. Initial Size Seeded The Initial Size Seeded module is identical to the Initial Size module in that it sets the size of a particle when it is emitted; however, this module allows you to specify seed information to be used when choosing distribution values in order to provide a more consistent effect from the module each time the emitter is used.
Size Start Size - A vector distribution indicating the initial size that should be used for a particle. It contains the following member s : Size LifeMultiplier - A vector distribution indicating the scale factor for the size that should be used for a particle. Value is retrieved based on the RelativeTime of the particle during its update. If false, the corresponding component is left unaltered. During both Spawn and Update, the Particle. Size value is multiplied with the retrieved scale value.
Size By Velocity Scales the size of a particle by a portion of the velocity. It contains the following member s : Size VelocityMultiplier - A vector distribution indicating the how the velocity should be scaled prior to scaling the size of the particle. Size value is multiplied by the retrieved scale value times the velocity of the particle at that time. NOTE that this module overrides any size adjustments made prior to this module in that frame.
It contains the following member s : ParticleModuleSizeScale Size Scale - A vector distribution indicating the how the BaseSize should be scaled before being used as the size of the particle. Value is retrieved based on the AbsoluteTime of the particle during its update.
Spawn Per Unit Allows for spawning particles based on the distance the emitter has traveled. Useful for things like sprite based smoke trails where the trail needs to stay cohesive whether traveling quickly or slowly and spawning a relative number of particles to always fill in gaps.
When the emitter is moving, skip processing the default spawn rate. Movement Tolerance - A float value giving the tolerance for moving vs. In the event of stacked spawn modules multiple spawn modules on the same particle emitter , if ANY module indicates the 'default' spawn rate should not be processed it will not be processed.
Spawn Per Unit - A float distribution giving the amount of particles to spawn per unit. The value is retrieved using the EmitterTime. Unit Scalar - A float value giving the scalar to apply to the distance traveled. The value from SpawnPerUnit is divided by this value to give the actual number of particles per unit.
Using this module when spawning from other emitters may seem to not behave as expected when trying to spawn particles from a single lead particle. SpawnPerUnit actually uses the movement delta of the particle system itself and as such doesn't understand what work to do when it's attached to subemitters inside the particle system. Even though its parents are moving through space, the actual whole system is still stationary so the SpawnPerUnit module does nothing.
This is useful for additional effects based off the time when the parent effect's particles were spawned. You need the spawn time because the RelativeTime is for when that specific particle system will die. Due to having random durations you are not guaranteed for that value to represent the order in which the individual particles were spawned. Currently, sub-images are ordered from left-to-right, top-to-bottom.
It contains the following member s : SubUV Sub Image Index - A float distribution indicating the index of the sub-image should be utilized for the particle. For example, if the second image is desired - image 1 - then the value should be set to 1. It contains the following properties: FlipBook Frame Rate - A float distribution specifying the framerate at which the sub-images should be 'flipped' through. If greater than the last frame, it will clamp to the last one.
If 0, then randomly selects a starting frame. Use Emitter Time -If true, the emitter time is used to retrieve the value of the FrameRate distribution. Otherwise, the relative particle time is used. Sub UVSize - A vector distribution indicating the size of the texture sample desired. SubUV Select Selects the sub-image to use based on a vector distribution. The x red and y green parameters of the distribution are used to index the horizontal U and vertical V sub-image, respectively.
It contains the following member s : SubUV Sub Image Select - A vector distribution indicating the horizontal and vertical index of the sub-image desired for display. In World Space - If true, the velocity is assumed to be in world-space. Start Velocity - A vector distribution providing the velocity to apply to a particle at its spawn time. The value is retrieved using the EmitterTime of the owner emitter. Start Velocity Radial - A float distribution providing the velocity to apply to a particle along its radial direction.
This direction is determined by the subtracting the location of the emitter from the particle location at spawn time. Initial Vel Seeded The Initial vel Seeded module is identical to the Initial Velocity module in that it sets the velocity of a particle when it is emitted; however, this module allows you to specify seed information to be used when choosing distribution values in order to provide a more consistent effect from the module each time the emitter is used.
Inherit Parent Vel Contributes the velocity of the parent the particle emitter itself to a particle when spawning. Check out the Epic games site. Questions about support via UDN? Opening Cascade The Cascade particle editor can be opened by double-clicking any Particle System asset or through the right-click context menu of a Particle System asset in the Content Browser.
Either of these will open up that particular particle system in Cascade for editing. Tool Bar - Visualization and navigation tools. Preview Pane - Shows the current particle system including all emitters contained in that system. Controls in the Sim toolbar options set simulation speed. Emitter List - This pane contains a list of all emitters in the current particle system, and a list of all modules within those emitters. Properties Pane - This pane allows the properties of the current particle system, particle emitter, or particle module to be viewed and modified.
Curve Editor - This graph editor displays any properties that are being modified over either relative or absolute time. As modules are added to the graph editor, there are controls for which to display discussed later in this document.
Save Package - Saves the package containing the particle system. View View Origin Axes - Toggles the display of the axes markers at the world origin of the preview pane. View Particle Counts - Toggles display of paticle count stats for each emitter in the particle system in the preview pane. View Particle Event Counts - Toggles display of particle event stats for each emitter in the particle system in the preview pane.
View Particle Times - Toggles display of particle time stats for each emitter in the particle system in the preview pane. View Particle Distance - Description needed.
View Geometry - Toggle display of a stand-in static mesh in the preview pane. Can be useful for testing certain emitter effects such as collision. View Geometry Properties - Opens the properties window for the stand-in geometry allowing you to modify its properties and change the mesh being used. Save Cam Position - Saves the viewpoint from the preview pane's camera out as the thumbnail for the particle system in the Content Browser.
Save Motion Radius - Description needed. Window Properties: - Toggles the display of the Properties Pane. Preview: - Toggles the display of the Preview Pane. Tool Bar There is also a toolbar, as shown below: The toolbar contains the following controls from left to right on the toolbar : Icon Name Description Restart Sim This will reset the simulation in the preview window.
Restart in Level This reset the particle system, and any instance of the system in the level. Save Thumbnail Image Saves the viewpoint from the preview pane's camera out as the thumbnail for the particle system in the Content Browser.
Toggle Orbit Mode Toggle the preview viewport camera between orbiting around the particle system or free-moving. Toggle Motion Toggle the effect of any motion from modules on emitters. Change view mode Cycles the viewmode used in the preview pane.
Toggle Bounds Toggles the display of the particle system's current bounds in the preview pane. Toggle PostProcess Toggles the use of the cascade post process chain in the preview pane.
Toggle Grid Toggles the display of the grid in the preview pane. Play Play the simulation in the preview viewport. Pause Pause the simulation. Set sim speed Cycles through the available sim playback speeds.
Toggle Loop System For emitters not set to loop, this will force them to in the preview viewport. Toggle Realtime Realtime preview of emitters in the preview viewport. Background Color Allows the user to change the background color of the preview viewport. Toggle Wireframe Sphere Undo Undo the last operation performed.
Redo Redo the last undone operation. Preview Pane The preview pane gives you a rendered preview of the current particle system just as it would appear when rendered in-game.
It provides realtime feedback of changes made to the particle system in Cascade. In addition to the fully rendered preivew, the preview pane can also render in unlit, texture density, overdraw, and wireframe viewmodes and show information such as the current bounds of the particle system. Emitter List The emitter list contains each particle emitter contained within the particle system being edited in Cascade.
It is a horizontal listing of all the emitters where each column represents a single particle emitter contained in the system. Each column is made up of an emitter block, followed by any number of module blocks. The first image is displayed when the emitter is enabled, the second when disabled.
It is important to note that when disabled, the emitter will not have Tick or Render called on it. The middle button is the rendering mode for the emitter. Clicking it will switch to the next rendering mode available. The following icons are supported: The emitter should render normally. The emitter should render wire-crosses at the positions of the particles.
The emitter should render points at the positions of the particles. The emitter should not rendered at all. The final button on the emitter block is the following: This button will send the relevant emitter properties to the curve editor window 4.
Each module in an emitter appears in a column under the emitter block. The following image is of a module in Cascade: The upper right icon is the button for sending the relevant module data to the curve editor. NOTE: Disabled modules that are shared between emitters will be disabled on all emitters! The final button is only present on modules that can render a 3D representation of themselves in the preview viewport.
The right indicates it is currently disabled. The green box that appears on the left side of a module will add that module to the graph editor. The color of the module that appears in the Graph Editor is determined randomly when the module is created.
To change this, open the Cascade set of properties in the Property window for the module you want to modify, and set the color there. Manipulating the graph The yellow box that appears to the right of the entry in the Graph Editor toggles rendering the splines for that module. Right clicking on one of these entries will allow you to remove it from the graph.
Creating points on the graph Note that you need to make sure the Distribution you are modifying is a 'curve' type eg DistributionFloatConstantCurve before you can add multiple points etc. To create points in the Graph Editor, ctrl-left click on the spline for the value you want. The easiest way to do this is by turning off all the other modules by using the checkbox discussed above.
All modules start at 0 with a single key at time 0. Ctrl-Left clicking on the spline anywhere in the timeline will create a point there. This point can be dragged around at will, but as discussed above if the spline represents a vector XYZ then it will move all 3 keys for that vector in time but not in value.
Right clicking on a keypoint will bring up a menu and let you manually enter the Time or Value of that keypoint. If its a key in a color curve, it will also let you select its color using the color picker. If the module is ColorOverLife, then the splines rendered will reflect the current color at that time, while the points will be colored to reflect the particular channel for that spline.
See the Curve Editor User Guide page for more details. Properties Pane The properties pane contains a standard UnrealEd properties window minus the advanced search and favorites features. The properties displayed in this pane depend on what is currently selected in Cascade.
0コメント