LlSetBuoyancy

来自人工智能助力教育知识百科
Mkx讨论 | 贡献2020年8月21日 (五) 13:18的版本 (创建页面,内容为“{{LSL Header|ml=*}}{{LSLC|Keywords}}{{LSLC|Flow Control}}{{LSLC|}} {{函数详情 |函数名 = Function: llSetBuoyancy( float buoyancy ); |参数= 参数:• flo…”)
(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)
跳转至: 导航搜索

Template:Needs Translation/


{{函数详情 |函数名 = Function: llSetBuoyancy( float buoyancy ); |参数= 参数:• float buoyancy |返回值= 返回值:设置任务或对象的浮力。需要启用物理。

浮力值0.0将禁用此效果

当浮力< 1.0时,对象下沉

当浮力等于1.0时,它会浮起来

当浮力为> 1.0时,物体上升

|注意事项=与其他一些特性不同,如果设置浮力的脚本从prim中删除,浮力效果将被取消。

此功能不能用于设置连接物体部分的相对浮力水平,例如模拟用绳子称重的氦气球。

在任何子prim中调用llset浮力的最新结果似乎是为对象设置全局浮力水平。

这个函数消耗能量以使对象保持浮动。大的物体可能不能提供足够的能量使其保持漂浮状态。

为了更好的性能,用llSetPhysicsMaterial(重力倍增器,重力,0.0,0.0,0.0)代替它不消耗能量

例如,将llset浮力(1.5)替换为llSetPhysicsMaterial(GRAVITY_MULTIPLIER, -0.5,0.0, 0.0, 0.0)来提升一个物体;将llset浮力(1.0)替换为llSetPhysicsMaterial(GRAVITY_MULTIPLIER, 0.0, 0.0, 0.0, 0.0)来浮动一个对象

当浮力改变时,该对象暂时继续受最后一个值的影响。例如,如果浮力被设置为1.5来提升一个物体,而在移动的同时,浮力被改变为0.0,那么这个物体将继续上升一段时间,因为力不是反向的,只是抵消了。使用llSetPhysicsMaterial(GRAVITY_MULTIPLIER, -0.5,0.0, 0.0, 0.0)和llSetPhysicsMaterial(GRAVITY_MULTIPLIER, 1.0,0.0, 0.0),运动的变化是即时的,并且在第二次调用完成的瞬间,对象开始下落。

|示例= 使物体慢慢浮起来(如红色气球)

default
{
    state_entry()
    {
        llSetStatus(STATUS_PHYSICS, TRUE);
        llSetBuoyancy(1.05);
    }
}

}]