Difference between revisions of "LlSetBuoyancy"
Jump to navigation
Jump to search
All Issues ~ Search JIRA for related Bugs
m (Noted the inability to set relative buoyancy levels in a linked object.) |
(adding caveat for comparison with llSetPhysicsMaterial) |
||
Line 11: | Line 11: | ||
*Unlike some other characteristics, this is cancelled if the script that set buoyancy is removed from the prim. | *Unlike some other characteristics, this is cancelled if the script that set buoyancy is removed from the prim. | ||
*This function cannot be used to set relative levels of buoyancy in parts of a linked object e.g. to simulate a helium balloon weighted by its string. The most recent call of <code>llSetBuoyancy</code> in any child prim appears to set the global buoyancy level for the object. | *This function cannot be used to set relative levels of buoyancy in parts of a linked object e.g. to simulate a helium balloon weighted by its string. The most recent call of <code>llSetBuoyancy</code> in any child prim appears to set the global buoyancy level for the object. | ||
*This function eats [[energy]] to keep the object floating. Large objects may not be able to supply enough energy to keep the object floating. | *This function eats [[energy]] to keep the object floating. Large objects may not be able to supply enough energy to keep the object floating. | ||
|constants | * For better performances , replace by [[llSetPhysicsMaterial]](GRAVITY_MULTIPLIER , gravity ,0.0,0.0,0.0) who doesn t eat energy | ||
|constants . For instance , replace llSetBuoyancy(1.5) by llSetPhysicsMaterial( GRAVITY_MULTIPLIER, -0.5 ,0.0, 0.0, 0.0 ) to raise an object ; llSetBuoyancy(1.0) by llSetPhysicsMaterial( GRAVITY_MULTIPLIER, 0.0 ,0.0, 0.0, 0.0 ) to float a object | |||
|examples=Makes an object float up slowly (e.g. a red balloon)<lsl>default | |examples=Makes an object float up slowly (e.g. a red balloon)<lsl>default | ||
{ | { |
Revision as of 00:08, 12 June 2013
LSL Portal | Functions | Events | Types | Operators | Constants | Flow Control | Script Library | Categorized Library | Tutorials |
Summary
Function: llSetBuoyancy( float buoyancy );122 | Function ID |
0.0 | Forced Delay |
10.0 | Energy |
Sets the buoyancy of the task or object. Requires physics to be enabled.
• float | buoyancy |
if (buoyancy == 0.0) disables
if (buoyancy < 1.0) sinks
if (buoyancy == 1.0) floats
if (buoyancy > 1.0) rises
Caveats
- Wind can cause the prim to drift. (server 1.38.4 this appears not to be true)
- Unlike some other characteristics, this is cancelled if the script that set buoyancy is removed from the prim.
- This function cannot be used to set relative levels of buoyancy in parts of a linked object e.g. to simulate a helium balloon weighted by its string. The most recent call of
llSetBuoyancy
in any child prim appears to set the global buoyancy level for the object. - This function eats energy to keep the object floating. Large objects may not be able to supply enough energy to keep the object floating.
- For better performances , replace by llSetPhysicsMaterial(GRAVITY_MULTIPLIER , gravity ,0.0,0.0,0.0) who doesn t eat energy
Examples
Makes an object float up slowly (e.g. a red balloon)<lsl>default {
state_entry() { llSetStatus(STATUS_PHYSICS, TRUE); llSetBuoyancy(1.05); }}</lsl>
Notes
Often used to make an object look like gravity does not affect it.