| 72 | |
| 73 | Each parameter can be specified in a number of ways: |
| 74 | * '''`<constant name=`"'''''parameter'''''`" value="`'''''number'''''`"/>`''' - the parameter will always have the given value. |
| 75 | * '''`<uniform name=`"'''''parameter'''''`" min="`'''''number'''''`" max="`'''''number'''''`"/>`''' - the parameter will be given a random value between min and max. Every value in that range is equally likely (hence the "uniform"). Max must be greater than min. |
| 76 | * '''`<copy name=`"'''''parameter'''''`" from="`'''''parameter'''''`"/>`''' - the parameter's value will be copied from the value of some other parameter. This lets you do randomised greyscale colours - use a `uniform` for `color.r` so that it's given a random value, then use some `copy` so that `color.g` and `color.b` are given the ''same'' random value as `color.r`. The 'from' parameter must have been computed first (i.e. be higher up in the parameter list from earlier in this section - `color.g` can copy from `color.r`, but can't copy from `color.b` since that's computed later). |
| 77 | * '''`<expr name=`"'''''parameter'''''`" `'''''...'''''`"/>`''' - a hopefully-temporary inflexible hack to make construction dust scale with the number of workers. You probably shouldn't use this. |
| 78 | |
| 79 | Each parameter has a sensible default value, so you don't need to explicitly specify them all. E.g. you can omit all the `position` parameters if the particles should just be emitted directly from the emitter point instead of being spread randomly over a larger volume. |
| 80 | |
| 81 | == Effectors == |
| 82 | |
| 83 | Once a particle has been emitted, it will move and spin according to its velocity, and it will automatically fade in and out. You can add more complex motion with '''particle effectors'''. |
| 84 | |
| 85 | Currently they're very limited so the only thing you can do is: |
| 86 | * '''`<force x=`"'''''number'''''`" y=`"'''''number'''''`" z=`"'''''number'''''`"/>`''' - each particle will be subjected to a constant acceleration force (in metres per second per second) in each direction. Each attribute will default to 0, so typically you can just write e.g. `<force y="-2.5"/>` to get downwards acceleration (simulating gravity). |