Name: Magnus Effect

Image:

Description: Astream of particles flows upward passed a rotating basbeball. The particles are deflected to the side by the rotation of the baseball.
The baseball is deflected in a direction opposite the deflection of the particles by Newton's law of action and reaction.

Creator: Patio Plasma

Location: http://slurl.com/secondlife/Sploland/115/117/28/
This is a temporary location, it will be a part of the new baseball exhibition.

Graphics: There is a pattern of seams on the baseball. It is a lower resolution pattern to help it rez faster when it is applied to the baseball.

Lessons:

Rotation

The baseball rotates using llTargetOmega(<0,1,0>,4.0,1);

Particles

To learn how to use particles go to The particle laboratory, Teal (212,46,300)

This exhibit uses two particle efects generators, one on the ground which sends a stream of particles straight up into the second particle generator which is transparent.

The transparent one, at the height of thecenter of the baseball, creates a stream of particles that  accelerates to the side.

Particles

These particle effects are the same for both particle generators.

//// eltee Statosky's Particle Creation Engine 1.0

// Interpolate between startColor and endColor
integer colorInterpolation = TRUE;
// Starting color for each particle
vector startColor = <1.0, 0, 0>;
// Ending color for each particle
vector endColor = <1.0, 0., 0.0>;
// Starting Transparency for each particle (1.0 is solid)
float startAlpha = 1.0;
// Ending Transparency for each particle (0.0 is invisible)
float endAlpha = 1.0;
// Enables Absolute color (true) ambient lighting (false)
integer glowEffect = TRUE;

// Interpolate between startSize and endSize
integer sizeInterpolation = TRUE;
// Starting size of each particle
vector startSize = <0.5, 0.5, 0.0>;
// Ending size of each particle
vector endSize = <0.5, 0.5, 0.0>;
// Turns particles to face their movement direction
integer followVelocity = TRUE;
// Texture the particles will use ("" for default)
string texture = "";

///////////////////////////////////////////////////////
// Lifetime of one particle (seconds)
float particleLife = 2.0;
// Lifetime of the system 0.0 for no time out (seconds)
float SystemLife = 0.0;
// Number of seconds between particle emissions
float emissionRate = 0.02;
// Number of particles to releast on each emission
integer partPerEmission = 10;

// The radius used to spawn angular particle patterns
// Inside angle for angular particle patterns
float innerAngle = 1;
// Outside angle for angular particle patterns
float outerAngle = 0;
// Rotational potential of the inner/outer angle
vector omega = <0.0, 0.0, 0.2>;

// The minimum speed a particle will be moving on creation
float minSpeed = 0.1;
// The maximum speed a particle will be moving on creation
float maxSpeed = 0.1;
// Global acceleration applied to all particles
vector acceleration = <0.0, 0.0, 0.5>;
// If true, particles will be blown by the current wind
integer windEffect = FALSE;
// if true, particles 'bounce' off of the object's Z height
integer bounceEffect = FALSE;
// If true, particles spawn at the container object center
integer followSource = TRUE;
// If true, particles will move to expire at the target
//integer followTarget = TRUE;
// Desired target for the particles (any valid object/av key)
// target Needs to be set at runtime
key target = "";

upper particle generator

// Lifetime of one particle (seconds)
float particleLife = 2.5;

// Global acceleration applied to all particles
vector acceleration = <0.2, 0.0, 0.5>;