LlTargetOmega

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

Template:Needs Translation/


函数名
Function: llTargetOmega( vector axis, float spinrate, float gain );
参数:以“spinrate*llVecMag(轴)”的速率绕轴旋转对象/prim,单位为弧度/秒,强度增加。

•矢量轴(vector axis)–旋转对象的任意轴 •浮动转速(float spinrate)–以弧度/秒为单位的旋转速率 •浮动增益(float gain )–还调节最终转速,如果为零,则禁用旋转行为

返回值:无
注意事项
物理

如果对象是物理对象,并且脚本附加到根prim,则物理表示将定期更新。用户所经历的旋转可以通过脚本检测或查询。 如果对象是物理对象且脚本附加到根prim,则旋转轴由参数axis给定,并包含质心llGetCenterOfMass。轴参数给出旋转轴的方向。如果物体的中心不是质心,那么物体的中心就绕着质心“轨道运行”。 如果对象是物理对象,并且脚本附加到子prim:相同,但是使用的是子prim的质心。 如果对象不是物理对象或脚本附加到子prim,则效果完全是客户端。只有对象本身中的脚本可以通过读取PRIM_OMEGA参数来检测到这一点。 如果对象不是物理对象,并且脚本附加到根prim,则旋转轴由参数axis给定,并包含对象的中心(根prim的中心)。 如果对象不是物理对象并且脚本附加到子prim:相同,但它是使用prim的中心 链接集 如果脚本附加到根prim,则整个对象围绕区域轴旋转。 如果对象已附加,则它将围绕附着轴旋转。 如果脚本附加到子prim,则prim将围绕局部轴旋转。 子基本体可以围绕自己的轴旋转,而整个对象围绕另一个轴旋转。 注意事项:如果对象不是物理对象,则旋转只是客户端的一种效果,它将作为非移动几何体碰撞。 如果该功能似乎不起作用,请确保“高级”>“网络”>“Velocity Interpolate Objects”(查看器1.x)或“Develop”>“Network”>“Velocity Interpolate Objects”(查看器2.x)处于启用状态。

示例
示例1
//rotates the x axis once per second,
//  rotates the y axis 3 times per second, 
//  rotates the z axis once every two seconds.
//  combined the rate is about 3.20156 revolutions per second
 
llTargetOmega(<1.0,3.0,0.5>,TWO_PI,1.0);
//Rotates very slowly around a sphere's local X axis .... Good for making a globe that rotates around a tilted axis
 
default
{
    state_entry()
    {
       llTargetOmega(<1.0,0.0,0.0>*llGetRot(),0.1,0.01);
    }
}
//Rotates very slowly around a cylinder's local or global Z axis
 // .... Good for making a propeller that rotates regardless of initial orientation.
 
default
{
    state_entry()
    {
       llTargetOmega(llRot2Up(llGetLocalRot()), PI, 1.0);
    }
}
相关函数
llRot2Fwd –获取局部x轴相对于地球的方向

llRot2Left –获取局部y轴相对于地球的方向

llRot2Up–获取局部z轴相对于地球的方向

相关事件