LlCloud
From Second Life Wiki
| LSL Portal | Functions | Events | Types | Operators | Constants | Flow Control | Script Library | Categorized Library | Tutorials |
Contents |
Summary
Function: float llCloud( vector offset );| 43 | Function ID |
| 0.0 | Forced Delay |
| 10.0 | Energy |
Returns a float that is the cloud density at the prim position + offset
| • vector | offset | – | offset relative to the prim's position and expressed in local coordinates |
Only the x and y coordinates in offset are important, the z component is ignored. Returned values are in the range [0.0, 2.0]. Values above 1.0 indicate rain.
Specification
SL features a cellular automata-based weather system. There are 16x16 square cloud "cells" per region.
Caveats
- There are currently no SecondLife clients that render rain.
- The client attempts to render clouds from the cloud algorithm results sent from the server, which is why different clients can see different cloud formations and de-synchronizes cloud view from the server over time. The cloud density data is sent from the server to the client when the region is loaded by the client. This can happen when the region comes into view, during teleport or during login.
Examples
default { touch_start(integer num) { llSay(0,"Cloud density:" + (string)llCloud(ZERO_VECTOR)); } }
Notes
Clouds and wind are interrelated.
Client
Clouds are always rendered between about 180-200m absolute height.
Algorithm
The cloud seed/growth/dissipation algorithm uses a solenoidal vector field, which is a vector field with zero-divergence: ∇ · v = 0
This condition is satisfied whenever v has a vector potential A, because if v = ∇ ⨯ A then ∇ · v = ∇ · (∇ ⨯ A) = 0
This article wasn't helpful for you? Maybe the related article at the LSL Wiki is able to bring enlightenment.

