LlTargetOmega
首页 | 函数 | 事件 | 类型 | 操作符 | 常数 | Flow Control | Script Library | Categorized Library | Tutorials |
函数名 |
---|
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轴相对于地球的方向 |
相关事件 |
---|