Snow Generator Using Textures

Post requests for goods or services
Post Reply
User avatar
Deuce Halsey
Posts: 322
Joined: Mon Oct 14, 2013 9:30 pm
Has thanked: 391 times
Been thanked: 262 times

Snow Generator Using Textures

Post by Deuce Halsey »

Does anyone have a good snow generator that actually generates snow using snowflake textures? I have a freebie Snow Generator of that type over in SL that I got from Moopf Murphy years ago and have been using ever since.

I found a free OpenSim snow generator script, but it only generates white shiny particles that look more like white sparks than actual snowflakes.

I'm not asking for a freebie here - though of course I will take one if offered. :)

But if someone has a generator of this type and lists it on the Kitely MP for a reasonable price I bet it would sell well. I can definitely guarantee at least one quick sale. ;)
Deuce Halsey
Just4yucks in Kitely Marketplace
http://www.kitely.com/market?store=2704782
User avatar
Constance Peregrine
Posts: 2349
Joined: Sun Dec 23, 2012 11:35 am
Has thanked: 2778 times
Been thanked: 1482 times

Re: Snow Generator Using Textures

Post by Constance Peregrine »

try this one...I don't recall how it looks tho.

snowflakes.png

https://drive.google.com/file/d/0B6pQoe ... sp=sharing

Code: Select all

//// "Rain" PARTICLE TEMPLATE v1 - by Jopsy Pendragon - 4/8/2008

//// -> TEMPLATE CHANGED FOR FALLING LEAVES - by Haplo Voss - 11/2/2010 <-
//// -> TEMPLATE CHANGED FOR SNOW (LOW LAG) - by Oddball Otoole 11/20/2011 <-

//// You are free to use this script as you please, so long as you include this line:
//** The original 'free' version of this script came from THE PARTICLE LABORATORY. **//

// SETUP:  Drop one optional particle texture and this script into a prim.
// Particles should start automatically. (Reset) the script if you insert a
// particle texture later on.  Add one or more CONTROLLER TEMPLATES to any
// prims in the linked object to control when particles turn ON and OFF.

// Customize the particle_parameter values below to create your unique 
// particle effect and click SAVE.  Values are explained along with their
// min/max and default values further down in this script.


string  CONTROLLER_ID = "A"; // See comments at end regarding CONTROLLERS.
integer AUTO_START = TRUE;   // Optionally FALSE only if using CONTROLLERS.

list particle_parameters=[]; // stores your custom particle effect, defined below.
list target_parameters=[]; // remembers targets found using TARGET TEMPLATE scripts.

default {
    state_entry() {
        particle_parameters = [  // start of particle settings
           // Texture Parameters:
           PSYS_SRC_TEXTURE, "Snowflakes", 
           PSYS_PART_START_SCALE, <4,4, FALSE>,  PSYS_PART_END_SCALE, <5,5, FALSE>,  
           PSYS_PART_START_COLOR, <1,1,1>,      PSYS_PART_END_COLOR, <1,1,1>, 
           PSYS_PART_START_ALPHA, (float)0.1,       PSYS_PART_END_ALPHA, (float)1.0,     
         
           // Production Parameters:
           PSYS_SRC_BURST_PART_COUNT, (integer)2, 
           PSYS_SRC_BURST_RATE, (float) 0.025,  
           PSYS_PART_MAX_AGE, (float)15.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)0.5,   PSYS_SRC_BURST_SPEED_MAX, (float)0.0, 
           PSYS_SRC_BURST_RADIUS, 10.0,
        
           // Placement Parameters (only for ANGLE & CONE patterns):
           PSYS_SRC_ANGLE_BEGIN, (float) PI,   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,-.8>,  
        // PSYS_SRC_TARGET_KEY,      llGetLinkKey(llGetLinkNum() + 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_message( integer sibling, integer num, string mesg, key target_key ) {
        if ( mesg != CONTROLLER_ID ) { // this message isn't for me.  Bail out.
            return;
        } else if ( num == 0 ) { // Message says to turn particles OFF:
            llParticleSystem( [ ] );
        } else if ( num == 1 ) { // Message says to turn particles ON:
            llParticleSystem( particle_parameters + target_parameters );
        } else if ( num == 2 ) { // Turn on, and remember and use the key sent us as a target:
            target_parameters = [ PSYS_SRC_TARGET_KEY, target_key ];
            llParticleSystem( particle_parameters + target_parameters );
        } else { // bad instruction number
            // do nothing.
        }            
    }
        
}


//============================= About Parameters =============================
// There are 22-ish NAMED attributes that affect a particle display.
// To customize a display you give each a VALUE.
// For example: PSYS_PART_START_COLOR is a named attribute,
// and <1.0, 0.5, 0.0> is a color VALUE (orange, in this case).
// 
// As long as your 'names' and 'values' are paired up properly, they can
// be in any order!  Any you omit a pair, it reverts to a default value.

//============================= Texture Parameters =============================
//
// TEXTURE, can be an "Asset UUID" key copied from a texture 
//          that you have full permissions to, or the name of
//          a texture in the prim's inventory.
//
// SCALE, (size) 0.0 to 4.0 meters wide, by 0.0 to 4.0 meters tall. (default 1x1)
//          Textures are FLAT, so the 'z' part of the vector is ignored.
//          Values smaller than 0.04x0.04 may not get rendered at all.
//          Tiny particles vanish if the viewer is not near them.
//
// BEGIN_SCALE sets particle start size.  
// END_SCALE (end size) is ignored, if the INTERP_SCALE_MASK option is disabled.
//
// COLOR, < RED, GREEN, BLUE > from <0.00,0.00,0.00> (black) to <1.00,1.00,1.00> (white/default)
// ALPHA, 1.0 = 100% visible(default), 0.0 = invisible.  Less than 0.1 might not get seen.
// START_COLOR and START_ALPHA set the color and transparency of newly created particles. 
// END_COLOR and END_ALPHA are ignored, if the INTERP_COLOR_MASK option is disabled.
         
         
//============================= Production Parameters =============================
//
// BURST_PART_COUNT: quantity of particles per burst, 1 to 4096 (default 1), 
//
// BURST_RATE: seconds to delay between particle bursts. 0.0 to 30.0 (default 0.1)
//
// PART_MAX_AGE: particle lifespan in seconds, 0.00 to 30.0 (default=10.0)
//               PART_MAX_AGE less than 0.5 might not be visible.
//
// The default total number of particles that can be seen is 4096, if one or more 
// emitters try to create more than that, many will not be seen, and it may cause
// viewer lag.  Use as few particles as you can for your effect:
// AGE/RATE * COUNT will tell you approximately how many particles your emitter creates.
//
// SRC_MAX_AGE: emitter auto shut-off timer. 1.0 to 60.0 seconds. 0.0 = never stop. (default)


//============================= Placement Parameters =============================
//                
// PATTERN:   
//      DROP, ignores all other placement settings.
//      EXPLODE, spray particles in all directions
//      ANGLE, sprays a flat "fan" shape defined by ANGLE_BEGIN and END values
//      CONE, sprays "ring" or "cone" shapes defined by ANGLE_BEGIN and END values
//
// RADIUS:  0.0 to 50.0?  distance from emitter to create new particles
//      (RADIUS is disabled with DROP pattern and the FOLLOW_SRC & TARGET_LINEAR options)
//        
// SPEED: 0.00 to 50.0?  Sets min/max starting velocities for non-drop patterns. (default: 1.0)
//        
// ANGLE_BEGIN & END:  0.00*PI (up) to 1.00*PI (down),  (Only for ANGLE & CONE patterns)
//       (Values work much like the Sphere-prim's DIMPLE attributes.) (defaults: 0.0)
//
// OMEGA: <x,y,z> Sets how much to rotate angle/cone spray direction after
//                every burst. 0.0 to PI?  (default: <0,0,0>)

//======================== After-Effects & Influence Parameters ================
//
// ACCEL, x,y,z 0.0 to 50.0?  sets a constant force, (affects all patterns)
//          Causes particles to drift up/down or in a compass direction.
//          Use ACCEL to create the illusion of (anti-)gravity or a directional wind.
//          (ineffective with TARGET_LINEAR option)
//       
// TARGET_KEY,  "key", (requires the TARGET option be enabled).  
//       "key" can be a variety of many different things:
         // llGetOwner()
         // llGetKey() target self 
         // llGetLinkKey(1) target parent prim
         // llGetLinkKey(llGetLinkNum() + 1) target next prim in link set 
         //
         // WARNING: New copies of objects get new keys, you can't simply paste
         // a prim's key into your script and expect it to always work.  Visit
         // the Particle Laboratory's section on TARGETS for a variety of ways
         // to dynamically find your target's key. There are different 'best ways'
         // depending on if your target is linked to your emitter or not.


//============================= About Options =============================
//    
// Each option may be ON/ENABLED (no leading // )
// or OFF/DISABLED (by putting a // in front of it.)
// Options are combined together in a special way, (using the | symbol).
// This creates one single Parameter for PSYS_PART_FLAGS.

              
//============================= Texture Options =============================
//
// EMISSIVE: identical to "full bright" setting on prims     
//   
// FOLLOW_VELOCITY: particle texture 'tilts' towards the direction it's moving
//
// INTERP_COLOR: causes particle COLOR and ALPHA(transparency) to change over it's lifespan
//
// INTERP_SCALE: causes particle SCALE(size) to change over it's lifespan


//======================== After-Effects & Influences Options ================
//
// BOUNCE:  particles bounce up from the z-altitude of emitter, and cannot fall below it.
//
// WIND: the sim's wind will push particles around
//
// FOLLOW_SRC: makes particles move (but not rotate) if their emitter moves, (disables RADIUS)
//
// TARGET_POS: causes particles to arrive at a some target at end of of their lifespan.
//
// TARGET_LINEAR: forces particles to form into an even line from emitter to target
//                and forces a DROP-like pattern and disables effects of WIND and ACCEL



//========================================================================
//======================== USING CONTROL TEMPLATES =======================
//
// Want to control when your particles turn ON and OFF?   You can!
// 
// Drop one (or more) of the CONTROL TEMPLATES from the particle laboratory
// into your object containing this script.  That's it!

// Your controls should be effective immediately.  (Some controllers can be
// adjusted and tuned, open them and read the USAGE notes to see.)
//
// One control template can control several particle templates in the
// same object.   (keep in mind that each prim can only have ONE
// particle effect active at a time).
//
// The 'particle_effect_name' value must be the same in both the control
// and particle template to work.  You can change that value and have
// a controller for one effect, and a different controller for a different
// effect in the same object.
//


//======================================== END ===============================
These users thanked the author Constance Peregrine for the post:
Deuce Halsey
Laissez faire et laissez passer, le monde va de lui même!
My little sounds store https://www.kitely.com/market?store=2040306

Ephemeral wanderer...
User avatar
Deuce Halsey
Posts: 322
Joined: Mon Oct 14, 2013 9:30 pm
Has thanked: 391 times
Been thanked: 262 times

Re: Snow Generator Using Textures

Post by Deuce Halsey »

Thanks so much, Miney!

It looks even better than the freebie one I had on SL, though the snow is coming down a bit heavy. That's okay since it will give me a chance to experiment with particle scripting to get it running at the speed I'd prefer.

Once I get it running properly I'll use it in my holiday display in world, and also package it as a freebie gift for my in-world visitors.

Thanks again for the quick response and elegant solution!
Deuce Halsey
Just4yucks in Kitely Marketplace
http://www.kitely.com/market?store=2704782
User avatar
Constance Peregrine
Posts: 2349
Joined: Sun Dec 23, 2012 11:35 am
Has thanked: 2778 times
Been thanked: 1482 times

Re: Snow Generator Using Textures

Post by Constance Peregrine »

I am happy that it works well and that you like it-))

Yes, it should be freely given out, that's a good thing...

Happy Holidays!
These users thanked the author Constance Peregrine for the post:
Deuce Halsey
Laissez faire et laissez passer, le monde va de lui même!
My little sounds store https://www.kitely.com/market?store=2040306

Ephemeral wanderer...
User avatar
Amiryu Hosoi
Posts: 277
Joined: Fri Sep 20, 2013 10:30 am
Location: Netherlands
Has thanked: 23 times
Been thanked: 258 times
Contact:

Re: Snow Generator Using Textures

Post by Amiryu Hosoi »

Dashing through the snow
In a one horse open sleigh
O'er the fields we go
Laughing all the way
Bells on bob tails ring
Making spirits bright
What fun it is to laugh and sing
A sleighing song tonight

Oh, jingle bells, jingle bells
Jingle all the way
Oh, what fun it is to ride
In a one horse open sleigh
Jingle bells, jingle bells
Jingle all the way
Oh, what fun it is to ride
In a one horse open sleigh

A day or two ago
I thought I'd take a ride
And soon Miss Fanny Bright
Was seated by my side
The horse was lean and lank
Misfortune seemed his lot
We got into a drifted bank
And then we got upsot

Oh, jingle bells, jingle bells
Jingle all the way
Oh, what fun it is to ride
In a one horse open sleigh
Jingle bells, jingle bells
Jingle all the way
Oh, what fun it is to ride
In a one horse open sleigh yeah

Jingle bells, jingle bells
Jingle all the way
Oh, what fun it is to ride
In a one horse open sleigh
Jingle bells, jingle bells
Jingle all the way
Oh, what fun it is to ride
In a one horse open sleigh

Tralalala, lalatralala;-)

Ami
These users thanked the author Amiryu Hosoi for the post (total 2):
Constance PeregrineDeuce Halsey
Now delivering to hypergrid http://www.kitely.com/market?store=2570982
User avatar
Constance Peregrine
Posts: 2349
Joined: Sun Dec 23, 2012 11:35 am
Has thanked: 2778 times
Been thanked: 1482 times

Re: Snow Generator Using Textures

Post by Constance Peregrine »

On the first day of Christmas,
my true love sent to me
A partridge in a pear tree.

On the second day of Christmas,
my true love sent to me
Two turtle doves,
And a partridge in a pear tree.

On the third day of Christmas,
my true love sent to me
Three French hens,
Two turtle doves,
And a partridge in a pear tree.

On the fourth day of Christmas,
my true love sent to me
Four calling birds,
Three French hens,
Two turtle doves,
And a partridge in a pear tree.

On the fifth day of Christmas,
my true love sent to me
Five golden rings,
Four calling birds,
Three French hens,
Two turtle doves,
And a partridge in a pear tree.

On the sixth day of Christmas,
my true love sent to me
Six geese a-laying,
Five golden rings,
Four calling birds,
Three French hens,
Two turtle doves,
And a partridge in a pear tree.

On the seventh day of Christmas,
my true love sent to me
Seven swans a-swimming,
Six geese a-laying,
Five golden rings,
Four calling birds,
Three French hens,
Two turtle doves,
And a partridge in a pear tree.

On the eighth day of Christmas,
my true love sent to me
Eight maids a-milking,
Seven swans a-swimming,
Six geese a-laying,
Five golden rings,
Four calling birds,
Three French hens,
Two turtle doves,
And a partridge in a pear tree.

On the ninth day of Christmas,
my true love sent to me
Nine ladies dancing,
Eight maids a-milking,
Seven swans a-swimming,
Six geese a-laying,
Five golden rings,
Four calling birds,
Three French hens,
Two turtle doves,
And a partridge in a pear tree.

On the tenth day of Christmas,
my true love sent to me
Ten lords a-leaping,
Nine ladies dancing,
Eight maids a-milking,
Seven swans a-swimming,
Six geese a-laying,
Five golden rings,
Four calling birds,
Three French hens,
Two turtle doves,
And a partridge in a pear tree.

On the eleventh day of Christmas,
my true love sent to me
Eleven pipers piping,
Ten lords a-leaping,
Nine ladies dancing,
Eight maids a-milking,
Seven swans a-swimming,
Six geese a-laying,
Five golden rings,
Four calling birds,
Three French hens,
Two turtle doves,
And a partridge in a pear tree.

On the twelfth day of Christmas,
my true love sent to me
Twelve drummers drumming,
Eleven pipers piping,
Ten lords a-leaping,
Nine ladies dancing,
Eight maids a-milking,
Seven swans a-swimming,
Six geese a-laying,
Five golden rings,
Four calling birds,
Three French hens,
Two turtle doves,
And a partridge in a pear tree!
These users thanked the author Constance Peregrine for the post:
Deuce Halsey
Laissez faire et laissez passer, le monde va de lui même!
My little sounds store https://www.kitely.com/market?store=2040306

Ephemeral wanderer...
User avatar
Amiryu Hosoi
Posts: 277
Joined: Fri Sep 20, 2013 10:30 am
Location: Netherlands
Has thanked: 23 times
Been thanked: 258 times
Contact:

Re: Snow Generator Using Textures

Post by Amiryu Hosoi »

Whoohooo;-)

Now we are in the mood;-) Maybe a bit early but I like it;-)

Ami
These users thanked the author Amiryu Hosoi for the post (total 2):
Constance PeregrineDeuce Halsey
Now delivering to hypergrid http://www.kitely.com/market?store=2570982
User avatar
Constance Peregrine
Posts: 2349
Joined: Sun Dec 23, 2012 11:35 am
Has thanked: 2778 times
Been thanked: 1482 times

Re: Snow Generator Using Textures

Post by Constance Peregrine »

-)))
Laissez faire et laissez passer, le monde va de lui même!
My little sounds store https://www.kitely.com/market?store=2040306

Ephemeral wanderer...
User avatar
Deuce Halsey
Posts: 322
Joined: Mon Oct 14, 2013 9:30 pm
Has thanked: 391 times
Been thanked: 262 times

Re: Snow Generator Using Textures

Post by Deuce Halsey »

It's nice to see everyone getting into the holiday season. :D

Now then - *Blatant Commercial Plug Alert*

Just4yucks actually has a line of "Twelve Days of Christmas" parody designs. The collection is not complete as yet, but we have "Five Golden Blings" down to "A Cartridge in a Bare Tree". All five are available as posters inworld and in the Kitely MP. Two of the designs aren't available on virtual t-shirts. (Some designs that work just fine on real human-sized t-shirts are too complicated or have colors that don't show up well in tiny virtual t-shirts.) The other three designs are also available on t-shirts.

Cartridge in a Bare Tree is a freebie inworld, and costs 10 KC on the Kitely Market.

My cartoonist partner is currently mulling over how to present "Six Geese A-Laying" on a t-shirt. I have no idea if it will be ready for the holidays this year.

* End blatant commercial plug*

In any event, it will be interesting to see what kind of holiday decorating happens in the various Kitely worlds this year. That was always one of my favorite things to do in SL - cruise around looking at various holiday displays.
These users thanked the author Deuce Halsey for the post:
Constance Peregrine
Deuce Halsey
Just4yucks in Kitely Marketplace
http://www.kitely.com/market?store=2704782
Post Reply