Welcome to the Second Life Forums Archive

These forums are CLOSED. Please visit the new forums HERE

Prop: 2108 - Animated Textures for llParticleSystem()

Jopsy Pendragon
Perpetual Outsider
Join date: 15 Jan 2004
Posts: 1,906
10-04-2006 17:52
WHY ME? -- As the proprietor of "The Particle Laboratory" learning center, I tend to get a high volume of questions regarding what can be done with llParticleSystem(). Many of the questions I get have answers like "That can't be done in SL". This feature would make most of those "can't be dones" possible.

WHY NOW? -- Of the numerous feature requests have come and gone for particles, I'm aware of only one change to particles has been made in the last nearly 3 years that I've been using them. (the introduction of ANGLE_BEGIN and ANGLE_END and retirement of the very confusing INNERANGLE and OUTERANGLE). It's been a very dry spell for particles. :)

AT WHAT COST? - Most of the code to create this feature already exists and should have little to no impact on any other parts of the SL client, which should hopefully make it both EASY and NON-RISKY.

WHY NOT OTHER PARTICLE FEATURE REQUESTS? -- By adding this aspect to llParticleSystem, many of the particle questions I have to answer with "You can't do that in SL" would be resolved in one fell swoop. The most numerous "can't do that" I get is the inability to "Fade-in" a particle texture.

WHAT IS THE FEATURE? -- Independently, llSetTextureAnim() and llParticleSystem() are extremely versatile, powerful and cool... just imagine the effects that could be created if particle textures could be animated!!! Bubbles that pop, butterflies that flap wings, fire that flickers and turns to smoke, magical effects that fizzle out, droplets that break apart, textures that spin...

The hypothetical syntax could be:

CODE

llParticleSystem( [ PSYS_SRC_TEXTURE, "MyAnimParticle",
PSYS_PART_ANIM_FLAGS,
( ANIM_ON | SCALE | ROTATE | SMOOTH | LOOP | PING_PONG | REVERSE ),
// default: 0, obviously not all options at once!
PSYS_PART_ANIM_FRAMES, < (frames_wide), (frames_tall), (unused) >,
// default < 1, 1, 0 >
PSYS_PART_ANIM_RANGE, < (start), (end), (rate) >,
//default <0,0,0>
// ...(remainder of particle definition)
] );


Alternately, perhaps allow -1 for the (side) argument of llSetTextureAnim( (options), (side), (wide), (tall), (start), (end), (rate) ); and have it apply to that prim's particle texture.


Yes, I know full well that this feature request goes straight into the "froofie but cool" list of feature requests that so many people hate because they would rather have LL to ignore everything except lag and stability issues... but I think adding it would be a huge step forward in addressing the numerous lamented short-comings with particles, and give content creators a powerful new creative tool.

And, to the folks that 'hate' particles, I'd like to point out that any tool can be mis-used. Folks don't hate cube prims just because someone made them blue and put them all over with inflamatory politicial messages. Be mad at the tool's abuser not the tool. :)

Anyway, here's to hoping that this feature is not just possible... but fairly trivial to deploy!

Prop: 2108 - Add llSetTextureAnim capabilities to llParticleSystem!
_____________________
* The Particle Laboratory * - One of SecondLife's Oldest Learning Resources.
Free particle, control and targetting scripts. Numerous in-depth visual demonstrations, and multiple sandbox areas.
-
Stop by and try out Jopsy's new "Porgan 1800" an advanced steampunk styled 'particle organ' and the new particle texture store!
Argent Stonecutter
Emergency Mustelid
Join date: 20 Sep 2005
Posts: 20,263
10-05-2006 17:04
How about simply "fix particle alpha".

As documented, it looks like you SHOULD be able to fade in a particle by setting the start alpha below the end alpha. Why not just make that actually work?
Jopsy Pendragon
Perpetual Outsider
Join date: 15 Jan 2004
Posts: 1,906
10-06-2006 11:33
From: Argent Stonecutter
How about simply "fix particle alpha".

As documented, it looks like you SHOULD be able to fade in a particle by setting the start alpha below the end alpha. Why not just make that actually work?


True.. but that would be a bug report instead of a feature proposal. :)
Lex Neva
wears dorky glasses
Join date: 27 Nov 2004
Posts: 1,361
10-07-2006 11:30
This sounds like a really cool idea... but is it technically feasible? llSetTextureAnim() uses the U/V settings of the texture associated with the 3d meshes in-world. Since particles aren't associated with any 3d mesh, is there a place to set the U/V settings of a particle in the 3d API? Maybe someone who's actually done 3d programming can answer this question...

Oh, also of note is that you can set the particle texture to the same as the quicktime media texture, and the movie will play on each particle. Maybe you can use that while waiting for this feature to be implemented?
Draco18s Majestic
Registered User
Join date: 19 Sep 2005
Posts: 2,744
10-08-2006 08:53
Technically, there is a 3D mesh associated with a particle. Particles get rendered in the 3D environment any way you'd like (typically hash marks), but you can tell it to display them as Facings and they all show up as little squares facing the camera.
Sound a bit like our particles? Square, always faces the camera....

OK then, they aren't exactly a mesh, but they DO use the same texture editor as everything else in a 3D animation program. With a few differences using the Particle dialog so that you can randomize the look of the particle.
Jopsy Pendragon
Perpetual Outsider
Join date: 15 Jan 2004
Posts: 1,906
10-08-2006 16:52
The reason I'm so jazzed up for animated particles is I've recentely re-loaded and played a bit of Shiney's 'Sacrifice' (one of my all time favorite games).

It has an excellent use of animated sprite/particle effects, despite being a 6 year old title. :D (I'm presuming it's openGL as there's a mac version of it as well.).

I know I'm being a bit of a fanatical zealot on this one feature... (I'd even promise to design and donate 20 animated particle textures to the Linden Library if they come through on this one.)
_____________________
* The Particle Laboratory * - One of SecondLife's Oldest Learning Resources.
Free particle, control and targetting scripts. Numerous in-depth visual demonstrations, and multiple sandbox areas.
-
Stop by and try out Jopsy's new "Porgan 1800" an advanced steampunk styled 'particle organ' and the new particle texture store!
Takuan Daikon
choppy choppy!
Join date: 22 Jun 2006
Posts: 305
10-08-2006 17:02
I agree that animated particle textures would add a great deal of visual "wow" to SL, and the syntax that you propose looks no more complicated than what already exists.

I'm gonna throw some votes at this for sure.
Argent Stonecutter
Emergency Mustelid
Join date: 20 Sep 2005
Posts: 20,263
10-08-2006 18:53
I like the idea for a lot of other reasons, but I don't want to have to mess around with texture animation jus to get fade-in. :)
Jopsy Pendragon
Perpetual Outsider
Join date: 15 Jan 2004
Posts: 1,906
10-08-2006 22:19
From: Argent Stonecutter
I like the idea for a lot of other reasons, but I don't want to have to mess around with texture animation jus to get fade-in. :)


True, very valid point :D