Welcome to the Second Life Forums Archive

These forums are CLOSED. Please visit the new forums HERE

Share your best bangs

Tip Baker
Registered User
Join date: 12 Nov 2005
Posts: 100
12-11-2005 05:21
Afternoon all,

I can find my away around the particle system reasonably well now, but so far all my attempts at making an explosion have been less 'destruction of Death Star' and more 'indoor firework'.

Would anyone like to share their favourite particle system settings/textures to help my little droids explode rather than fizzle.
Ordinal Malaprop
really very ordinary
Join date: 9 Sep 2005
Posts: 4,607
12-11-2005 05:28
Here's one that I use for a plasma bolt:
CODE

explode()
{
llParticleSystem([
PSYS_PART_FLAGS, PSYS_PART_EMISSIVE_MASK | PSYS_PART_FOLLOW_VELOCITY_MASK | PSYS_PART_INTERP_COLOR_MASK | PSYS_PART_FOLLOW_SRC_MASK,
PSYS_PART_START_COLOR, <1.0,1.0,1.0>,
PSYS_PART_START_ALPHA, 1.0,
PSYS_PART_END_COLOR, <1.0,0,0>,
PSYS_PART_END_ALPHA, 0.0,
PSYS_PART_START_SCALE, <1,1,0>,
PSYS_PART_MAX_AGE, 1.50,
PSYS_SRC_ACCEL, <0.00,0.00,0.0>,
PSYS_SRC_PATTERN, PSYS_SRC_PATTERN_EXPLODE,
PSYS_SRC_BURST_RATE, 0.1,
PSYS_SRC_BURST_PART_COUNT, 50,
PSYS_SRC_BURST_SPEED_MIN, 4.00,
PSYS_SRC_BURST_SPEED_MAX, 5.00,
PSYS_SRC_MAX_AGE, 1.0,
PSYS_SRC_OMEGA, <0.00,0.00,0.00>
]);
llPlaySound("explosion", 1.0);
llSetStatus(STATUS_PHYSICS, FALSE);
llSetAlpha(0.0, ALL_SIDES);
llSleep(1.0);
llDie();
}

The script locks the bolt in place and makes it invisible so that it can carry on emitting particles for a second, then kills it. I think it's a bit prettier that way.
Senuka Harbinger
A-Life, one bit at a time
Join date: 24 Oct 2005
Posts: 491
12-11-2005 07:53
I don't have the ability to log on, but my better looking explosions use a decreasing alpha and increasing size with a "fire" texture on the particles, and a 2nd particle system without a texture that creates a smoke effect using similar size/alpha.
_____________________
My SLExchange shop

Typos are forgiven; desecrating the english language with reckless abandon and necrophilic acts is not.


The function is working perfectly fine. It's just not working the way you wanted it to work.
Logan Bauer
Inept Adept
Join date: 13 Jun 2004
Posts: 2,237
12-11-2005 09:04
You can see my hair in my AV pic on the left side, my bangs are kinda long, hid partially under a hat.

What? Oh, no, not that kind of bang? Well, I don't "cyber" and if I did I certainly wouldn't post pics of any banging!!

Oh. OH! Ahh. THAT kind of "bang". Now I getya. ;)

CODE
key TEXT = "8047c429-ae04-cc28-0a92-23c70ad572ca"; //Texture
key SND = "390f6fbd-ae8d-2ee0-65d3-4c4950989c2a"; //Sound

boom()
{
llParticleSystem([
PSYS_PART_FLAGS, 0 | PSYS_PART_EMISSIVE_MASK |
PSYS_PART_INTERP_COLOR_MASK | PSYS_PART_INTERP_SCALE_MASK |
PSYS_PART_FOLLOW_SRC_MASK | PSYS_PART_FOLLOW_VELOCITY_MASK,
PSYS_SRC_PATTERN,PSYS_SRC_PATTERN_EXPLODE,
PSYS_SRC_TEXTURE, TEXT,
PSYS_PART_MAX_AGE,3.000000,
PSYS_PART_START_SCALE,<0.05, 0.1, 0.9>,
PSYS_PART_END_SCALE,<3.25, 3.52, 2.19>,
PSYS_SRC_BURST_RATE,0.005,
PSYS_SRC_ACCEL,<0.0000, 0.0000, 0.0000>,
PSYS_SRC_BURST_PART_COUNT,10,
PSYS_SRC_BURST_RADIUS,0.01,
PSYS_SRC_BURST_SPEED_MIN,0.290000,
PSYS_SRC_BURST_SPEED_MAX,0.35,
PSYS_SRC_INNERANGLE,1.550000,
PSYS_SRC_OUTERANGLE,1.540000,
PSYS_SRC_OMEGA,<2.00000, 2.00000, 2.00000>,
PSYS_SRC_MAX_AGE,4.000000,
PSYS_PART_START_ALPHA,0.5900000,
PSYS_PART_END_ALPHA,.050000
]);
}


default
{
touch(integer bologna)
{

llPlaySound(SND,1);
llSleep(0.1);
boom();
llSleep(5);
//llDie();
}
}
Kage Seraph
I Dig Giant Mecha
Join date: 3 Nov 2004
Posts: 513
12-11-2005 09:50
I second Senuka's approach-- have the main aprticle script fire off linkmessages to other waiting particle scripts. Explosions look much better with smoke, flames of mulitple kinds, shrapnel, pyroclastic missiles, etc. Just please reduce the # of particles per script for each script added. =)
Tip Baker
Registered User
Join date: 12 Nov 2005
Posts: 100
12-12-2005 09:09
Thanks guys,

You have put me on the right track.

Tip