Xah Particle Maker Manual: Advanced

By Xah Lee. Date: , 2010-05

This page shows you the advanced use of Xah Particle Maker. If you don't know the basics, see: Xah Particle Maker Tutorial.

Parameter Display

emitter info display sprite info display
Particle Parameter Info. These are the parameters for the current particle.

For advanced users, you can set particle parameters by typing it in chat.

When a parameter doesn't make sense, it is displayed as a diamond ♢. For example, StartAngle and EndAngle have no effect when the particle pattern is not “angle” or “angle cone”, so, they are displayed as ♢.

Type the commands in open chat to set them.

For example, type “SecPerBurst 2” to set burst rate to 2.

Short Commands

Command's letter case does not matter. “SecPerBurst 2” is the same as “secperburst 2” or “spb 2”.

The capitalized letter means the abbreviation. Examples:

EmitterAge = ea
SecPerBurst = spb
BurstSpeedRange = bsr
…
StartColor = sc
EndColor = ec
… etc.

Command Details

All useful commands are displayed in the parameter display green text. So, you can just look at the green text and type your command there.

The only command not show in the parameter display is “EmitterAge”. You normally don't want to set that.

Anytime, you can type “help” to see the full command list. The following table explains in detail what they mean.

llParticleSystem Emitter Parameters
Command ExampleMeaningTips
EmitterAge 0Sets how long the particle effect lasts, in seconds. “0” is special, it means non-stop.Leave this to 0. Otherwise, you won't see any particles after that. If you want the emiter to stop after some time in your build, you can change the value of PSYS_PART_MAX_AGE after you generate the particle source code.
SecPerBurst .3Sets the period for each particle creation, in seconds.For example, a value of 2 means a burst every 2 second. A value of “.5” means a burst every half second.
NumPerBurst 50The number of particle images (called sprites) per burst.In general, when your burst rate is fast, your burst count should be small. You can try NumPerBurst 0 to turn the machine off.
age 5The duration each sprite exists.
BurstSpeedRange 1 3A range for speed of burst, in meters per second. First number is the range minimum, the second number is max.The particles will burst out at a random speed from your min max range. If the min and max are the same, that means the sprites flow out at the same speed.
ForceVector 0 0 -1A force applied to the sprites.For example, a value of “0 0 -0.5” emulates leafs falling down by gravity. If you want it to fall fast, try “0 0 -2” or larger negative z value. A value of “0 0 1” will make the sprites go up, such as smoke. A value of “2 0 0” will make the sprites flow towards east. If your pattern is Drop (the cylinder shaped prim), you almost always want some “ForceVector” value, since that pattern does not move sprites at all.
BeginRadius 10The distance sprites start to appear from the emitter.Set it to 0 if you want particles to flow out right from the emitter. If a value is 1 for example, then there will be no particles within 1 radius of the emitter. This parameter has no effect when the particle pattern is set to Drop, since Drop does not burst.
AngleRange 10 80A range, in degrees, where particle will bust out. Applies to Angle Cone and Angle (fan shaped) patterns.This is a very useful parameter. Common values are around “0 10”, for emulating a narrow nozzle, or around “90 90”, emulating a ring or circle.
SpinVector 0 0 30Rotates the emitter, in degrees, on x, y, z axes, per second.Useful for only Angle Cone and Angle (fan shaped) patterns. For example, if you have a Angle pattern, then 0 0 30 will make the pattern rotate 30° per second around the emitter's z axis.
texture ‹uuid of a texture›Sets a image as the sprites.This command is handy if you know a texture's uuid but don't have the image in your inventory. Normally, just drop textures to the Xah Particle Maker Texture Tool to set texture.
TargetKey ‹uuid of a prim or agent›Set the target for the particles to flow to.Also, try the Target You panel to set UUID to yourself. Particle target can be a agent (avatar) or object. When the agent or obj is more than about 90 meters away, the particles will target itself instead.
StartColor 1 0 0Applies a color to the sprite image. The values are R G B, from 0 to 1.The input can be a hexadecimal number or 0 to 255 based value. For example, to set it to red, the following are equivalent: “startcolor ff0000”, “startcolor 1 0 0”, “startcolor 255 0 0”.
EndColor 0 1 0Applies a color to the sprites, so that the images will change its color from start to end.
StartAlpha 1Sets the transparency of the sprite image. Valid values are 0 to 1. When “0”, it is completely transparent.
EndAlpha .5Sets the ending transparency.
StartScale 4 1Sets the starting scale of the sprite. First number is width, second is height.Remember, particles are just floating images.
EndScale 1 4Sets the ending scale of the sprite.This value is particularly useful when you have “Shooting” on.

For Scripters

For advanced scripters who are familiar with the LSL particle system, the following table lists all parameters in llParticleSystem, and the corresponding commands in Xah Particle Maker.

llParticleSystem Emitter Parameters
Parameter NameType in chat
PSYS_SRC_MAX_AGEEmitterAge ‹num›
PSYS_SRC_PATTERN(touch burst pattern prim)
PSYS_SRC_BURST_RATESecPerBurst ‹num›
PSYS_SRC_BURST_PART_COUNTNumPerBurst ‹num›
PSYS_SRC_BURST_RADIUSBeginRadius ‹num›
PSYS_SRC_BURST_SPEED_MAXBurstSpeedRange ‹min› ‹max›
PSYS_SRC_BURST_SPEED_MINBurstSpeedRange ‹min› ‹max›
PSYS_SRC_ANGLE_BEGINAngleRange ‹min› ‹max›
PSYS_SRC_ANGLE_ENDAngleRange ‹min› ‹max›
PSYS_SRC_OMEGASpinVector ‹x› ‹y› ‹z›
PSYS_SRC_ACCELForceVector ‹x› ‹y› ‹z›
PSYS_SRC_TARGET_KEYTargetKey ‹uuid›
PSYS_SRC_TEXTUREtexture ‹uuid›
llParticleSystem Sprite Parameters
Parameter NameType in chat
PSYS_PART_MAX_AGEage ‹num›
PSYS_PART_START_COLORStartColor ‹x› ‹y› ‹z›
PSYS_PART_END_COLOREndColor ‹x› ‹y› ‹z›
PSYS_PART_START_ALPHAStartAlpha ‹num›
PSYS_PART_END_ALPHAEndAlpha ‹num›
PSYS_PART_START_SCALEStartScale ‹x› ‹y›
PSYS_PART_END_SCALEEndScale ‹x› ‹y›
llParticleSystem PSYS_PART_FLAGS
Parameter NameOn/Off Panel
PSYS_PART_BOUNCE_MASKTouch the Bounce panel
PSYS_PART_EMISSIVE_MASKTouch the Glow panel
PSYS_PART_FOLLOW_SRC_MASK(feature removed from current release, because it is confusing to beginners and does not have any effect on emitters that is not moving. If you need it, just add it in the particle script.)
PSYS_PART_FOLLOW_VELOCITY_MASKTouch the Shooting panel
PSYS_PART_INTERP_COLOR_MASKTouch the “Color Changing” panel
PSYS_PART_INTERP_SCALE_MASKTouch the Size Changing panel
PSYS_PART_TARGET_LINEAR_MASK(feature removed from current release, because it is not that commonly needed. If you need it, just add it in the particle script.)
PSYS_PART_TARGET_POS_MASKTouch the Target You panel
PSYS_PART_WIND_MASKTouch the Follow Wind panel