[sldev] The "flashing particles" bug isn't a flashing particles
bug...
Argent Stonecutter
secret.argent at gmail.com
Thu Jun 14 13:23:09 PDT 2007
OK, I've been working with Farallon on this, and I've figured it out.
The problem is that if you have "PSYS_PART_FOLLOW_SRC_MASK" then
"PSYS_SRC_BURST_RADIUS" is ignored... you can't create a particle
system that uses "PSYS_PART_FOLLOW_SRC_MASK" and starts the particle
emission at a distance. Why not, I don't know, it's always been an
annoyance to me, but I'd just gotten used to it. Farallon had some
particle systems he'd modified that had a non-zero radius set, and he
hadn't zeroed them out...
Before 1.15 or so, it acted as if "PSYS_SRC_BURST_RADIUS" was zero.
Now it seems to create the particles at "PSYS_SRC_BURST_RADIUS" then
applies the "PSYS_PART_FOLLOW_SRC_MASK" rule on the following frame.
The correct "fix" is uncertain.
It seems to me that "PSYS_PART_FOLLOW_SRC_MASK" shouldn't prevent
"PSYS_SRC_BURST_RADIUS" from working, and this should be fixed so
that particles can be created at a distance and still follow source.
that is, the original behavior is a bug.
However, that would possibly make some existing particle systems act
funny. Now me, I'd go ahead and say "well, you created an undefined
particle system, it's legal for Second Life to make demons fly out of
your nose" (nasal demons look like red sparks. Who knew?). There's
precedent for this, and I've not seen these sparks outside Seal Cove
so I suspect there's not that many particle systems out there with
the problem. Plus, there's probably some systems out there where
people have set this and figured that when the bug got fixed their
particle systems would start working right.
The alternate fix, simply zeroing out "PSYS_SRC_BURST_RADIUS" when
"PSYS_PART_FOLLOW_SRC_MASK" is set, seems miserly to me. We should be
looking for ways to fix old bugs like this.
More information about the SLDev
mailing list