LlWind: Difference between revisions

From Second Life Wiki
Jump to navigation Jump to search
Gwyneth Llewelyn (talk | contribs)
m Replaced <source> with <syntaxhighlight> and added haiku generated by https://tasklab.ai/haiku
Wulfie Reanimator (talk | contribs)
Added notes from testing.
Line 13: Line 13:
|spec
|spec
|caveats
|caveats
|notes=
* Each region simulates its own wind with a random seed value, and chaos is scaled by the region's sun position.
** While the simulation is performed on a 16x16 grid, the wind has perfect resolution anywhere between those cells. (interpolated)
* Neighboring regions influence each other at the connecting border, which may lead to cascading changes for either region.
* Regions without neighbors exhibit very uniform wind across the whole region.
** Wind will occasionally change direction over time, but eventually stabilizes toward the new direction.
|examples=
|examples=
<syntaxhighlight lang="lsl2">
<syntaxhighlight lang="lsl2">

Revision as of 06:50, 23 October 2025

Summary

Function: vector llWind( vector offset );
0.0 Forced Delay
10.0 Energy

Returns a vector that is the wind velocity at the prim's position + offset

• vector offset offset relative to the prim's position and expressed in local coordinates

The requested position needs to be in the same region. Only the x and y coordinates in offset are important, the z component is ignored.

Examples

default
{
    touch_start(integer num)
    {
        llSay(0, "Wind velocity: " + (string)llWind(ZERO_VECTOR));
    }
}
// wind interpretation as angle and speed
default
{
    state_entry()
    {
        vector windVector = llWind( ZERO_VECTOR);
        float windSpeed = llVecMag( windVector);
        float windDirection = llAtan2( windVector.y, windVector.x);
        integer compassWind = ( 450 - (integer)( RAD_TO_DEG*windDirection))%360;
        llOwnerSay( "\nWind direction: "+(string)compassWind+\nWind speed: "+(string)windSpeed+" m/S");
    }
}

Notes

  • Each region simulates its own wind with a random seed value, and chaos is scaled by the region's sun position.
    • While the simulation is performed on a 16x16 grid, the wind has perfect resolution anywhere between those cells. (interpolated)
  • Neighboring regions influence each other at the connecting border, which may lead to cascading changes for either region.
  • Regions without neighbors exhibit very uniform wind across the whole region.
    • Wind will occasionally change direction over time, but eventually stabilizes toward the new direction.

See Also

Functions

•  llCloud

Articles

•  Weather SL Weather information
•  Moderated in-world wind

Deep Notes

Signature

function vector llWind( vector offset );

Haiku

Softly blowing breeze
Calmly rustling through the tree
A gentle whisper