Ulrika Zugzwang
Magnanimous in Victory
Join date: 10 Jun 2004
Posts: 6,382
|
11-23-2004 17:53
At the Burning Life festival, I saw a Linden-made object which would poof out smoke rings vertically. The rings were not solid, rather they were made of a ring of particles traveling in the trajectory of a cone, giving the illusion of a ring. I'm currently making a fun Christmas pipe for Neualtenburg and would like to integrate this ring into the object. Does anyone know how to make a smoke ring or whom I might ask for assistance (including Lindens)? I'll post the results in the script forum, if I'm successful in procuring an open-source version. ~Ulrika~
_____________________
Chik-chik-chika-ahh
|
Cross Lament
Loose-brained Vixen
Join date: 20 Mar 2004
Posts: 1,115
|
11-23-2004 19:10
Hmmm... probably using a particle script of type ANGLE, set to 360 degrees, with a constant low speed, and a force acting upwards on the particles. 
_____________________
- Making everyone's day just a little more surreal -
Teeple Linden: "OK, where did the tentacled thing go while I was playing with my face?"
|
Ulrika Zugzwang
Magnanimous in Victory
Join date: 10 Jun 2004
Posts: 6,382
|
11-23-2004 19:47
From: Cross Lament Hmmm... probably using a particle script of type ANGLE, set to 360 degrees, with a constant low speed, and a force acting upwards on the particles.  Yes but all eight (or so) particles would emit simultaneously in a cone. Could it be that there were eight prims, each pointing slightly off bore sight that emitted a single particle at once? I say that because these eight (or so) particles emulated a perfect ring. Is this truly as easy as you imply in the post above (I have my doubts) or is there something trickier going on? ~Ulrika~
_____________________
Chik-chik-chika-ahh
|
Cross Lament
Loose-brained Vixen
Join date: 20 Mar 2004
Posts: 1,115
|
11-23-2004 19:50
I just built it as described above in world and it works fine, Ulrika.  Oh, I forgot a step... I set the max age to a very short interval, and kept re-calling the particle system with a timer.  Of course, then SL became a total fucktard and kicked me out and absolutely will not let me actually connect to anything.
_____________________
- Making everyone's day just a little more surreal -
Teeple Linden: "OK, where did the tentacled thing go while I was playing with my face?"
|
Toy LaFollette
I eat paintchips
Join date: 11 Feb 2004
Posts: 2,359
|
11-23-2004 20:10
couldnt PSYS_SRC_PATTERN_ANGLE_CONE be used as the pattern?
_____________________
"So you see, my loyalty lies with Second Life, not with Linden Lab. Where I perceive the actions of Linden Lab to be in conflict with the best interests of Second Life, I side with Second Life."-Jacek
|
Cross Lament
Loose-brained Vixen
Join date: 20 Mar 2004
Posts: 1,115
|
11-23-2004 20:25
Actually, Toy's method would be even easier, I think.  This is approximately what I used (it'll take tweaking): updateparticles() { float rate = 0.1 ; // The delay between bursts of particles, in seconds float age = 5 ; // How long each particle lives, in seconds integer count = 20 ; // How many particles get created per burst llParticleSystem( [ PSYS_SRC_PATTERN, PSYS_SRC_PATTERN_ANGLE, PSYS_SRC_BURST_PART_COUNT,(integer) count, // defined above PSYS_SRC_BURST_RATE,(float) rate, // defined above PSYS_PART_MAX_AGE,(float) age, // defined above PSYS_SRC_BURST_RADIUS,(float) 0.05, // How far from emitter new particles start, PSYS_SRC_OUTERANGLE,(float) PI, // Angle defining ANGLE or ANGLE_CONE PSYS_SRC_BURST_SPEED_MIN,(float) 0.2, // Minimum velocity for new particles PSYS_SRC_BURST_SPEED_MAX,(float) 0.2, // Maximum velocity for new particles PSYS_SRC_ACCEL,(vector) < 0, 0, 0.25 >, // Acceleration affecting particles PSYS_PART_START_SCALE,(vector) < 0.2, 0.2, 0 >, // Start Size, (minimum .04, max 10.0?) PSYS_PART_END_SCALE,(vector) < 0.4, 0.4, 0 >, // End Size, requires *_INTERP_SCALE_MASK PSYS_PART_START_COLOR,(vector) < 0.8, 0.8, 0.8 >, // Start Color, (RGB, 0 to 1) PSYS_PART_START_ALPHA,(float) 1.0, // StartAlpha (0 to 1), PSYS_PART_END_ALPHA,(float) 0.0, // EndAlpha (0 to 1) PSYS_SRC_MAX_AGE,(float) 0.2, // Maximum life of emitter ( 0 = forever ) PSYS_PART_FLAGS, PSYS_PART_INTERP_SCALE_MASK | // Particles change size using *_END_SCALE 0 ] ); }
default { state_entry() { llSetTimerEvent( 1 ) ; } timer() { updateparticles() ; } }
_____________________
- Making everyone's day just a little more surreal -
Teeple Linden: "OK, where did the tentacled thing go while I was playing with my face?"
|
Upshaw Underhill
Techno-Hobbit
Join date: 13 Mar 2003
Posts: 293
|
11-25-2004 16:02
I did one that looked ok IMHO, I just used a very slow inviso-bullet and a loop that increased my burst radius. This may not scale down well though if you're looking for a attachment version, mine was for my pet dragon so it was fairly large scale  L8r, UU
|