Jump to content

mega snow fall


jhanajian
 Share

You are about to reply to a thread that has been inactive for 4347 days.

Please take a moment to consider if this thread is worth bumping.

Recommended Posts

Hi. I'm trying to create a 32m x 32m (prim) snowfall particle system. The biggest problem with it is that it looks so weak. No matter what I do, I can't seem to get any velocity to the particles. I want a snowfall that has some oomph to it. Perhaps it's difficult to have oomph in such a large area? I don't know. Any suggestions for this noob would be much appreciated. Here's my snow script: default { state_entry() { particle_parameters = [ // start of particle settings // Texture Parameters: PSYS_SRC_TEXTURE,"Glitter Snowflakes4", PSYS_PART_START_SCALE, <0.2,0.2, FALSE>, PSYS_PART_END_SCALE, <0.1,0.1, FALSE>, PSYS_PART_START_COLOR, <1,1,1>, PSYS_PART_END_COLOR, <1,1,1>, PSYS_PART_START_ALPHA, (float)1.0, PSYS_PART_END_ALPHA, (float)0.03, // Production Parameters: PSYS_SRC_BURST_PART_COUNT, (integer)1, PSYS_SRC_BURST_RATE, (float) 0.05, PSYS_PART_MAX_AGE, (float)5.0, PSYS_SRC_MAX_AGE,(float) 0.0, // Placement Parameters: PSYS_SRC_PATTERN, (integer)8, // 1=DROP, 2=EXPLODE, 4=ANGLE, 8=ANGLE_CONE, // Placement Parameters (for any non-DROP pattern): PSYS_SRC_BURST_SPEED_MIN, (float)3.2, PSYS_SRC_BURST_SPEED_MAX, (float)11.6, PSYS_SRC_BURST_RADIUS, 5.0, // Placement Parameters (only for ANGLE & CONE patterns): PSYS_SRC_ANGLE_BEGIN, (float) PI/2, PSYS_SRC_ANGLE_END, (float) 0.0*PI, // PSYS_SRC_OMEGA, <0,0,0>, // After-Effect & Influence Parameters: PSYS_SRC_ACCEL, <0.0,0.0,-0.2>, // PSYS_SRC_TARGET_KEY, llGetLinkKey(llGetLinkNumber() + 1), PSYS_PART_FLAGS, (integer)( 0 // Texture Options: | PSYS_PART_INTERP_COLOR_MASK | PSYS_PART_INTERP_SCALE_MASK | PSYS_PART_EMISSIVE_MASK // | PSYS_PART_FOLLOW_VELOCITY_MASK // After-effect & Influence Options: | PSYS_PART_WIND_MASK // | PSYS_PART_BOUNCE_MASK // | PSYS_PART_FOLLOW_SRC_MASK // | PSYS_PART_TARGET_POS_MASK // | PSYS_PART_TARGET_LINEAR_MASK ) //end of particle settings ]; if ( AUTO_START ) llParticleSystem( particle_parameters ); }
Link to comment
Share on other sites

All you have to do is click the tiny icon above your EDIT window that has a "C" in it.  That opens the Code Edit window, where you can either write or paste the code you want to display, so it comes out like this .......

default{    state_entry()    {        llSay(0,"Hello,Avatar!");    }    touch_start (integer number_detected)    {        llSay(0,"Hello,Avatar!");    }}

 Now, for your mega snowfall..... You control the rate of movement of individual particles with PSYS_SRC_ACCEL .  You have it set for a Z acceleration of -0.2 .  Try a larger negative number.  If you want MORE snowflakes, you'll need to increase PSYS_SRC_BURST_PART_COUNT or decrease PSYS_SRC_BURST_RATE.  Of course, you can also make really BIG snowflakes by adjusting PSYS_PART_START_SCALE and PSYS_PART_END_SCALE.

 ETA:  BTW, I should have mentioned that most people have Preferences >> Graphics >> Max Particle Count set to its default of 4096, which places an upper limit on the number of snowflakes that they can see at once.  Also, particles operate the same way that other objects do in SL: the smaller they are, the closer you have to be before you can see them.  That, also, places a practical limit on how dense your mega-snowstorm can appear, because it won't have any visual depth to it.  Youre best bet may be to make a snowflake texture that fades to alpha = 0.0 at the edges, and then generate larger than normal snowflakes with it. 

Link to comment
Share on other sites

Thanks so much for your suggestions, Rolig.  I'll keep tinkering with it.  I suspect that the large size of the prim does have something to do with the problem as well.  I put a smaller (10m) prim in the center of the mega prim to fill up the empty space in the center of the angle cone, and the same script in the smaller prim is behaving quite differently.  So, the size of the prim does have some effect.  How to compensate is the question. Trial and error all the way!  Thanks again.

Link to comment
Share on other sites

I don't understand.  What are you using a megaprim for?  Particles are always generated from the center of whatever prim the script is in.  The size of the prim shouldn't make any difference at all to the particles, but it may interfere with other things like people's camera movement.  Just put your script in a 0.5m diameter sphere, give it a full transparent texture, and you're done.

Link to comment
Share on other sites

I put the script into a megaprim because I wanted the snowfall to cover the whole 32m x 32m area.  I didn't know that you don't have to do it that way.  Now i know, and I thank you very much!  The .5m diameter sphere is all I need, and it covers that large an area quite well.  Gee....  You're a good person to know, Rolig.  :matte-motes-smile:

Link to comment
Share on other sites

Also, to increase density and still keep particle count low, create a single texture that has more than one snowflake... i.e. create a 1024x1024 texture and splatter a few (dozen) snowflakes randomly onto it. Then set the particle size to the max 4x4m and you're set to have a fairly impressive snowstorm with relatively few particles.

There's one disadvantage to that approach: People TPing in will first see grey goo. Usually not for long though.

Link to comment
Share on other sites


Jenni Darkwatch wrote:

Also, to increase density and still keep particle count low, create a single texture that has more than one snowflake... i.e. create a 1024x1024 texture and splatter a few (dozen) snowflakes randomly onto it. Then set the particle size to the max 4x4m and you're set to have a fairly impressive snowstorm with relatively few particles.

There's one disadvantage to that approach: People TPing in will first see grey goo. Usually not for long though.

I recommend this approach as well. It has the added advantage of making the snow visible from a greater distance. Small particles, like individual snowflakes, are culled from the scene if they are considered too small to view. Placing many snowflakes in a larger texture is also more efficient for rendering and, as Jenni notes, places more snowflakes in view for a given particle count.

Link to comment
Share on other sites


The .5m diameter sphere is all I need, and it covers that large an area quite well. 

A note about that:  You may find that the particles disappear altogether when you (and your cam) are some distance from the emitter because the emitter itself is no longer drawn by the viewer.  The larger the prim, the further away you can be before that happens.

Link to comment
Share on other sites

Jenni, I can't thank you enough for this suggestion.  I had to try it several times before I finally got it right, but IT IS WORTH IT!!!  I made picture tube (if you know what that is) of 12 different snowflake patterns, and stamped them -- at a size of 20 x 20 pixels each onto a 1024 transparent image, and tinkered with the script until I got it right.  I'm sure I now have the most magnificent snowfall in all of second life.  Many, many thanks to you!  

Link to comment
Share on other sites

You are about to reply to a thread that has been inactive for 4347 days.

Please take a moment to consider if this thread is worth bumping.

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
 Share

×
×
  • Create New...