ParticleSystem (BETA)

v7 beta documentation in progress. v7 beta documentation may be incomplete or inaccurate.
v7 functions and features may be significantly different from previous ACS versions.
These instructions are not valid for current v6+ ACS!


Requires the ParticleSystem root prim script.


ParticleSystem is an optional full permission root prim script. It allows you to assign prim(s) to emit vehicle exhaust smoke, and also lets you customize smoke for burnout, CornerFX and prims to emit particles during flight mode.

You can assign particles to different prims by placing special keywords in the prim name, and then those prims will emit the particles from the specified prims when appropriate. For example, by labeling an exhaust prim with the exh keyword, it will emit exhaust fumes when the engine is running.

The ParticleSystem script contains different LSL llParticleSystem routines which you can customize (such as change color and size) or replace entirely with your own particle settings, such as ones generated with a particle generator.

You do not need to customize the ParticleSystem to use it.



Upgrading from earlier ACS versions:

ParticleSystem replaces multiple scripts; the Exhaust script, Custom Burnout Particles, Boat Wake, Tire Tracks, and Flight Particles. Instead of individual scripts for all of these, they have been combined into a single root prim script that uses a keyword system to active particles in the correct prims.

You will need to remove any of those individual particle-generating scripts, and add the exh keyword to exhaust prim(s) and the fly keyword to prim names for flight particles. The burnout particles will activate in prims with the burn keyword.

You can continue to use the Exhaust Flame Mod script as before.

You can transfer any custom particle routines from those older individual scripts to the appropriate routines inside ParticleSystem


Setup

Drop the ParticleSystem script, set the permissions. Edit as you please.

After adding or removing keywords to prims you must Reboot the vehicle so it can scan and detect the prims.


Particle types and keywords

exh - generates exhaust particles

fly - generates particles during flight mode. Make sure the keyword is fly and not flight.

burnout - generates particles for burnout

track - generates tire track particle effect. Triggered only during skid/burnout events unless you set the TracksAlwaysOn value to TRUE at the top of the ParticleSystem script.

wake - generates boat/water wake in boat mode or in the water when using the amphibian sensor script.


Things to Know

  • Minimum displayable particle size appears to be 0.25 on any x,y,z size vector value. To display smaller particles: in your custom particle texture, increase the amount of transparency bordering your custom particle graphic specified by PSYS_SRC_TEXTURE.

About LSL Particles

The LSL particle system allows a single prim to emit one kind of particle at a time. If the particle is directional, it uses the orientation of the prim. Particles emit from the center of a prim, so it is often best to use small invisible prims at the location where you wish particles to emit, such as at the end of a tail pipe for exhaust smoke.

Customizing may take some trial and error to figure out if you are new to particles and they are beyond the scope of this documentation, but jump in and experiment.

To change colors for example, you would change the LSL color vectors next to the following:

PSYS_PART_START_COLOR, <1.0, 1.0, 1.0>,
PSYS_PART_END_COLOR, <0.0, 0.0, 0.0>,

That example shows the particles starting <1.0, 1.0, 1.0> (white) and ending <0.0, 0.0, 0.0> (black)

You will also see SCALE vectors for size, and ALPHA vectors for transparency, PSYS_PART_MAX_AGE for how many seconds the particles last and even where to set a uuid for particle texture ( PSYS_SRC_TEXTURE ).

A prim can only emit one kind of particle at a time, so if you have more than one particle keyword on a prim, the prim will only emit particles of the most recently triggered particle event


Light Cycle style effects for tire track

The Tire Track particle system can be used for non-tire track purposes, such as for Light Cycle style effects trail. Replace the existing particles_TireTracks settings in the ParticleSystem with these settings:

    PSYS_PART_MAX_AGE,60,
        PSYS_PART_FLAGS, PSYS_PART_INTERP_SCALE_MASK | PSYS_PART_INTERP_COLOR_MASK |         PSYS_PART_EMISSIVE_MASK,
        PSYS_PART_START_COLOR, <1.0, 1.0, 0.0>,
        PSYS_PART_END_COLOR, <0.0, 0.0, 1.0>,
        PSYS_PART_START_SCALE,<0.5,2.0,2.0>,
        PSYS_PART_END_SCALE,<0.5,2.0,2.0>, 
        PSYS_SRC_PATTERN, PSYS_SRC_PATTERN_DROP,
        PSYS_SRC_BURST_RATE,.01,
        PSYS_SRC_ACCEL,             <0.00000, 0.00000, 0.00000>,
        PSYS_SRC_BURST_PART_COUNT,1,
        PSYS_SRC_BURST_RADIUS,.1,
        PSYS_SRC_BURST_SPEED_MIN,0,
        PSYS_SRC_BURST_SPEED_MAX,.1,
        PSYS_SRC_OMEGA,             <0.00000, 0.00000, 0.00000>,
        PSYS_SRC_ANGLE_BEGIN,0.0, 
        PSYS_SRC_ANGLE_END,         3.141593,
        PSYS_SRC_TARGET_KEY,(key)"",
        PSYS_SRC_TEXTURE, (key)"9a16587d-8828-0648-6179-b3008e658016",//Change Texture Here
        PSYS_SRC_MAX_AGE, 1.000,
        PSYS_PART_START_ALPHA,  0.5,
        PSYS_PART_END_ALPHA, 0.0

You will likely also wish to set the TracksAlwaysOn to TRUE;

integer         TracksAlwaysOn = TRUE;

And of course you will want to at least adjust your PSYS_PART_START_COLOR, PSYS_PART_END_COLOR, PSYS_PART_START_SCALE, PSYS_PART_END_SCALE to fit your build.


[v7 Main]