• All submissions to this site are governed by Second Life Project Contribution Agreement. By submitting patches and other information using this site, you acknowledge that you have read, understood, and agreed to those terms.
Issue Details (XML | Word | Printable)

Key: VWR-4899
Type: Bug Bug
Status: Resolved Resolved
Resolution: Fixed
Priority: Critical Critical
Assignee: Unassigned
Reporter: Nizzy Lusch
Votes: 35
Watchers: 8
Operations

If you were logged in you would be able to see more operations.
1. Second Life Viewer - VWR

Windlight Particle System - burst severely weakened

Created: 13/Feb/08 02:34 PM   Updated: 12/Mar/08 08:33 PM
Component/s: Graphics
Affects Version/s: First Look: WindLight, 1.19.1 Release Candidate
Fix Version/s: 1.19.1 Release Candidate

File Attachments: None
Image Attachments:

1. particle problem.png
(108 kB)

2. windlight-particles.jpg
(491 kB)
Environment:
Second Life 1.19.0 (79674) Feb 8 2008 16:51:12 (Second Life WindLight)

You are at 230686.2, 267870.2, 21.4 in Far Far Away located at sim3268.agni.lindenlab.com (64.129.45.33:13004)
Second Life Server 1.19.0.79368

CPU: Intel Pentium 4 (Unknown model) (3192 MHz)
Memory: 2046 MB
OS Version: Microsoft Windows XP Service Pack 2 (Build 2600)
Graphics Card Vendor: NVIDIA Corporation
Graphics Card: GeForce 7800 GTX/PCI/SSE2
OpenGL Version: 2.0.3
LLMozLib Version: 1.1.0 (Mozilla GRE:1.8.0.12_0000000000)
Issue Links:
Duplicate

Linden Lab Issue ID: DEV-10687
Linden Lab Internal Branch: windlight14


 Description  « Hide
As of this very version of Windlight, number of particles pr. burst is severely weakened. I have been testing the exact same script in prior versions of Windlight as well as default viewer, and this behaviour is new.

Below is an example script you can test. In previous versions/default viewer, this script would create an instant cloud of particles produced by a single burst, when the object containing the script was clicked. In most recent Windlight it will produce 2-3 particles at best, sometimes none.

Example code for testing - stick in a prim and click:
//------------------------------------------------------------------------

startParticles()
{
llParticleSystem([
PSYS_PART_FLAGS, 0 |
PSYS_PART_INTERP_COLOR_MASK |
PSYS_PART_INTERP_SCALE_MASK |
PSYS_PART_WIND_MASK |
PSYS_PART_FOLLOW_VELOCITY_MASK,
PSYS_SRC_PATTERN,PSYS_SRC_PATTERN_EXPLODE,
PSYS_PART_MAX_AGE,15.0,
PSYS_PART_START_COLOR, <0.05,0.05,0.05>,
PSYS_PART_END_COLOR, <1.0,1.0,1.0>,
PSYS_PART_START_SCALE,<4.0,4.0,4.0>,
PSYS_PART_END_SCALE,<15.0,15.0,15.0>,
PSYS_SRC_BURST_RATE,10.5000,
PSYS_SRC_ACCEL, <0,0,0.175>,
PSYS_SRC_BURST_PART_COUNT,100,
PSYS_SRC_BURST_RADIUS,2.0,
PSYS_SRC_BURST_SPEED_MIN,0.5,
PSYS_SRC_BURST_SPEED_MAX,1.5,
PSYS_SRC_TARGET_KEY,(key)"",
PSYS_SRC_INNERANGLE,0.0,
PSYS_SRC_OUTERANGLE,0.0,
PSYS_SRC_OMEGA, <0,0,0>,
PSYS_SRC_MAX_AGE, 0.0,
PSYS_SRC_TEXTURE,"",
PSYS_PART_START_ALPHA, 0.6,
PSYS_PART_END_ALPHA, 0.0
]);
}

stopParticles()
{
llParticleSystem([]);
}

default
{
touch_start(integer total_number)

{ startParticles(); llSleep(0.5); stopParticles(); }

}
//------------------------------------------------------------------------

**Snapshot is another example comparing Release Candidate and Windlight with the same particle effect.



 All   Comments   Change History      Sort Order: Ascending order - Click to sort in descending order
Nizzy Lusch added a comment - 13/Feb/08 07:07 PM
After more experiments with particles I've concluded that the system slowly increases the number of produced particles pr. burst over time. It takes quite some time, and it's therefore no less broken, however this might give you some clues.

New example script to show this effect - watch how the clouds increase over time:
//--------------------------------------------------------------------------

startParticles()
{
llParticleSystem([
PSYS_PART_FLAGS, 0 |
PSYS_PART_INTERP_COLOR_MASK |
PSYS_PART_INTERP_SCALE_MASK |
PSYS_PART_WIND_MASK |
PSYS_PART_FOLLOW_VELOCITY_MASK,
PSYS_SRC_PATTERN,PSYS_SRC_PATTERN_EXPLODE,
PSYS_PART_MAX_AGE,15.0,
PSYS_PART_START_COLOR, <0.05,0.05,0.05>,
PSYS_PART_END_COLOR, <1.0,1.0,1.0>,
PSYS_PART_START_SCALE,<4.0,4.0,4.0>,
PSYS_PART_END_SCALE,<15.0,15.0,15.0>,
PSYS_SRC_BURST_RATE,1.5000,
PSYS_SRC_ACCEL, <0,0,0.175>,
PSYS_SRC_BURST_PART_COUNT,100,
PSYS_SRC_BURST_RADIUS,2.0,
PSYS_SRC_BURST_SPEED_MIN,0.5,
PSYS_SRC_BURST_SPEED_MAX,1.5,
PSYS_SRC_TARGET_KEY,(key)"",
PSYS_SRC_INNERANGLE,0.0,
PSYS_SRC_OUTERANGLE,0.0,
PSYS_SRC_OMEGA, <0,0,0>,
PSYS_SRC_MAX_AGE, 0.0,
PSYS_SRC_TEXTURE,"",
PSYS_PART_START_ALPHA, 0.6,
PSYS_PART_END_ALPHA, 0.0
]);
}

default
{
touch_start(integer total_number)

{ startParticles(); }

}
//---------------------------------------------------------------------


Infrared Wind added a comment - 14/Feb/08 06:18 PM
I've discovered the exact same thing. I tested the behavior using some fireworks I have. They worked fine in the previous version of WindLight and they work fine in the current release client. But in Second Life 1.19.0 (79674) there are no more bursts.

It almost looks like the particles are delayed in starting. In another test I have a popgun that shoots a ball which has a "plasma" type particle script. In 1.19.0 (79674) the ball shoots out and a little later the particles appear, whereas in the previous Windlight and in the current RC the particles appear as soon as the ball is shot.


Eyana Yohkoh added a comment - 15/Feb/08 11:04 AM - edited
Just added the snapshot for a visual comparison.

particles(key lightningTarget) // particles for the chain effect. the target is sent by mainObj
{
playSound();
integer bounce = 0; // Make particles bounce on Z plane of object
integer glow = 1; // Make the particles glow
integer interpColor = 1; // Go from start to end color
integer interpSize = 1; // Go from start to end size
integer followSource = 0; // Particles follow the source
integer followVel = 1; // Particles turn to velocity direction
integer wind = 0; // Particles affected by wind
integer pattern = PSYS_SRC_PATTERN_ANGLE;
key target = lightningTarget;
float age = 0.25;
float maxSpeed = 0; // Max speed each particle is spit out at
float minSpeed = 0; // Min speed each particle is spit out at
string texture = ""; // Texture used for particles, default used if blank
float startAlpha = .75; // Start alpha (transparency) value
float endAlpha = .75; // End alpha (transparency) value (if interpColor = TRUE)
vector startColor = <1,1,1>; // Start color of particles <R,G,B>
vector endColor = <1,1,1>; // End color of particles <R,G,B> (if interpColor = TRUE)
vector startSize = <3, 3, 0>; // Start size of particles <x,y>
vector endSize = <3, 3, 0>; // End size of particles (if interpSize == TRUE)
vector push = <0,0,0>; // Force pushed on particles
float life = 0; // Life in seconds for the system to make particles
integer count = 1; // How many particles to emit per BURST
float rate = 0.06; // How fast (rate) to emit particles
float radius = 0.0; // Radius to emit particles for BURST pattern
float outerAngle = 0; // Outer angle for all ANGLE patterns
float innerAngle = 0; // Inner angle for all ANGLE patterns
vector omega = <0,0,0>; // Rotation of ANGLE patterns around the source
integer flags = 0;
if (target == "owner") target = llGetOwner();
if (target == "self") target = llGetKey();
if (glow) flags = flags | PSYS_PART_EMISSIVE_MASK;
if (bounce) flags = flags | PSYS_PART_BOUNCE_MASK;
if (interpColor) flags = flags | PSYS_PART_INTERP_COLOR_MASK;
if (interpSize) flags = flags | PSYS_PART_INTERP_SCALE_MASK;
if (wind) flags = flags | PSYS_PART_WIND_MASK;
if (followSource) flags = flags | PSYS_PART_FOLLOW_SRC_MASK;
if (followVel) flags = flags | PSYS_PART_FOLLOW_VELOCITY_MASK;
if (target != "") flags = flags | PSYS_PART_TARGET_POS_MASK;
llParticleSystem([ PSYS_PART_MAX_AGE,age,
PSYS_PART_FLAGS,flags,
PSYS_PART_START_COLOR, startColor,
PSYS_PART_END_COLOR, endColor,
PSYS_PART_START_SCALE,startSize,
PSYS_PART_END_SCALE,endSize,
PSYS_SRC_PATTERN, pattern,
PSYS_SRC_BURST_RATE,rate,
PSYS_SRC_ACCEL, push,
PSYS_SRC_BURST_PART_COUNT,count,
PSYS_SRC_BURST_RADIUS,radius,
PSYS_SRC_BURST_SPEED_MIN,minSpeed,
PSYS_SRC_BURST_SPEED_MAX,maxSpeed,
PSYS_SRC_TARGET_KEY,target,
PSYS_SRC_INNERANGLE,innerAngle,
PSYS_SRC_OUTERANGLE,outerAngle,
PSYS_SRC_OMEGA, omega,
PSYS_SRC_MAX_AGE, life,
PSYS_SRC_TEXTURE, texture,
PSYS_PART_START_ALPHA, startAlpha,
PSYS_PART_END_ALPHA, endAlpha
]);
}

Sorry mine is a bit messy, but if you look at the beginning of the function you should get a clearer idea of what my settings are. Most notably I am using PSYS_SRC_PATTERN_ANGLE unlike the other posted examples and I am having similar effects of not enough particles being emitted. The rate for the particle burst is at 0.06 and it's very obvious from watching the effect in action that this is not the case whatsoever.


WarKirby Magojiro added a comment - 15/Feb/08 05:38 PM
Many of my products rely heavily on particles. This is causing severe problems for me. Needs to be fixed soon.

Siss Truss added a comment - 16/Feb/08 07:38 AM
Same with me. Working with particles is gambling. But iam really tired of that game.

Kii Lilliehook added a comment - 20/Feb/08 01:49 PM
I got the same problem. I just put something on sale that made a nice explosion. Now it looks ridiculous, only a few lonely fire textures appear

Fledhyris Proudhon added a comment - 24/Feb/08 06:57 AM
I'm afraid I'm no talented scripter but I have noticed this slow start to particle emission myself recently (latest windlight release 1.19.0 (80044)).

In addition to this, I would add that I have had to tweak DOWN several parameters in my previously scripted particle emitters - bonfire, waterfall, fountain etc. - using a mist/smoke cloud effect. on integer pattern = PSYS_SRC_PATTERN_EXPLODE. Windlight (for the past 3 releases) turned these emitters into huge particle clouds and I had to reduce vector endSize, vector push and integer count to get the emissions to look the way they did in main client.

Of course the corollary to this is that now they barely emit at all in main client, so you get a completely different effect depending which viewer you're using. This does not seem a good thing!

Do stop by my land (Songnisan 135,14,80 "Dragonsong") to compare these results. Note that I haven't rescripted the fountain on sale in my vendor so that's currently steaming like a cauldron in windlight!


WarKirby Magojiro added a comment - 29/Feb/08 02:33 AM - edited
Changing priority to critical at advice of Soft Linden. I understand this is marked fix pending, and I'd really hope to see the fix in another first look client before the 1.19.1 release

WarKirby Magojiro added a comment - 08/Mar/08 01:49 PM
Attached particle problem.png.

The lower image is the previous windlight client. As in, the previous incarnation of this bug.

The upper image is taken today in the new 1.19.1 RC with all the same settings and maxed out particle count.

Notice the horrendous lack of particles on the blue fan shaped part, and the reduced number of the grey needlelike bits.

This effect does not seem to get better with time either.


Catten Carter added a comment - 09/Mar/08 12:14 PM
Yep - Its almost a showstopper, since it breaks a lot of products. Bling particles are hardly visible, and particle weapons look awfull

WarKirby Magojiro added a comment - 09/Mar/08 08:28 PM
please disregard my previous comments about 1.19.1

I discovered today that it had set my max particle count WAAAY too low from autodetecting. And that the degradation in particles I saw was caused by this.

Particles are still not working right, but they have not gotten worse in this version, as I initially expected


Torley Linden added a comment - 10/Mar/08 10:45 AM
This issue was resolved as "Needs More Info" during our batch cleanup because it was set as affecting First Look: WindLight. On the Issue Tracker, we've noticed many duplicate issues and issues that lacked actionable info or were already fixed.

WindLight recently "graduated" from a "First Look" technology preview to Release Candidate status – nearing inclusion in the main viewer with your help! So, "First Look: WindLight" does not exist anymore.

More info and how to download the RC viewer: http://blog.secondlife.com/2008/03/06/new-release-candidate-viewer-1191-rc0-available/

If you've verified that this issue is still a problem in the newest Release Candidate, here's what to do next:

(1) Search the Issue Tracker to make sure it isn't a duplicate of an existing issue we know about. If it is, link it as a duplicate using the "Link this issue..." link on the left. You can learn more about searching by watching this video tutorial: http://www.youtube.com/watch?v=SAlXK5hSVMc

(2) Reopen the issue and BE SURE to update the "Affects Version/s" to the correct one, most likely ONLY "1.19.1 Release Candidate". However, if this bug affects the main viewer (1.19.0 as of this writing), then DO NOT set it to an RC version. Only set it to 1.19.0 instead. Be as specific with versions as possible – there's generally no need to set multiple versions, as it tends to dilute and confuse where a bug originated.

(3) Add any other relevant details that would help us fix it. We can't stress the importance of a "solid repro" enough – a reliable series of steps to make a bug happen reliably.

(4) Come and attend our inworld bug triages, where you can meet with Linden Lab employees to look at, verify, and expedite bugs for fixing. More info @ http://wiki.secondlife.com/wiki/Bug_triage

Thank-you for helping us improve Second Life!


Catten Carter added a comment - 10/Mar/08 01:02 PM - edited
Ty Torley, but this bug does exist and can easily be tested - Create a prim and add the following script in it:

fireParticleOn() {
llParticleSystem([ PSYS_SRC_TEXTURE, "168e6813-096e-07ea-97ae-fd416826f627",
PSYS_PART_START_SCALE, <.1,4.0, 0.1>,
PSYS_PART_END_SCALE, <.1,4.0, 0.1>,
PSYS_PART_START_COLOR, <1,0,0>,
PSYS_PART_END_COLOR, <1,0,0>,
PSYS_PART_START_ALPHA, 1.0,
PSYS_PART_END_ALPHA, 1.0,
PSYS_SRC_BURST_PART_COUNT, 20,
PSYS_SRC_BURST_RATE, 1.3,
PSYS_PART_MAX_AGE, 4.3,
PSYS_SRC_MAX_AGE, 0.0,
PSYS_SRC_PATTERN, 4,
PSYS_SRC_ACCEL, <0.0,0.0,0.0>,
PSYS_SRC_BURST_SPEED_MIN, 30.3,
PSYS_SRC_BURST_SPEED_MAX, 30.3,
PSYS_SRC_ANGLE_BEGIN, 0*DEG_TO_RAD,
PSYS_SRC_ANGLE_END, 0*DEG_TO_RAD,
PSYS_SRC_OMEGA, <0,0,0>,
PSYS_PART_FLAGS, ( 0

PSYS_PART_INTERP_COLOR_MASK
PSYS_PART_INTERP_SCALE_MASK
PSYS_PART_EMISSIVE_MASK
PSYS_PART_FOLLOW_VELOCITY_MASK )
]);
}

fireParticleOff() {
llParticleSystem([]);
}

default {
state_entry() { fireParticleOff(); }

touch_start(integer num_detected) { fireParticleOn(); llSleep(0.3); fireParticleOff(); }
}

Touch the script and see the difference between the Standard Viewer and the Release Candidate. Do the same with a bling script and you will notice similar behaivour, even though not as noticeble, since it appears that the problems gets better over time.

There have been so many bugs with particles in Windlight that its hard to say if this issue links to another, but test the script out and see for your self.


Kii Lilliehook added a comment - 11/Mar/08 11:56 AM
I can confirm it, the problem still exists in Second Life 1.19.1 (0) Mar 5 2008 17:51:19 (Second Life Release Candidate).

My System:
CPU: Intel Core 2 Series Processor (2666 MHz)
Memory: 3071 MB
OS Version: Microsoft Windows XP Service Pack 2 (Build 2600)
Graphics Card Vendor: NVIDIA Corporation
Graphics Card: GeForce 8600 GT/PCI/SSE2
OpenGL Version: 2.1.1
LLMozLib Version: [LLMediaImplLLMozLib] - 2.01.13604 (Mozilla GRE version 1.8.1.11_0000000000)


WarKirby Magojiro added a comment - 11/Mar/08 03:58 PM
I''m ory if my comment wasn't clear, torley. The bug IS still there, it just hasn't gotten any worse.

Kii Lilliehook added a comment - 12/Mar/08 04:26 PM
Yeah, it's gone in 1.19.1!!

WarKirby Magojiro added a comment - 12/Mar/08 08:33 PM
Yeps, this is (finally) fixed in 1.19.1 RC1