LlSetTextureAnim
首页 | 函数 | 事件 | 类型 | 操作符 | 常数 | Flow Control | Script Library | Categorized Library | Tutorials |
函数名 |
---|
Function: llSetTextureAnim( integer mode, integer face, integer sizex, integer sizey, float start, float length, float rate ); |
参数:
•整数模式–模式标志掩码 •整数面–面数或所有面 •整数sizex–水平框架(旋转和缩放时忽略) •整数尺寸-垂直框架(旋转和缩放时忽略) •浮动开始–开始位置/帧编号(或旋转的弧度) •浮动长度–要显示的帧数(或旋转的弧度) •浮动速率-每秒帧数(不得为零) 如果面是所有面,则函数在所有面都有效。 start支持负索引。 帧从左到右、从上到下从0开始编号。 如果rate为负,则其效果与使用REVERSE标志相同。 |
返回值:通过设置纹理比例和偏移,在指定的面上设置纹理动画。 |
注意事项 |
---|
无(如果遇到表格情况在文段末尾加一句表格参见附录) |
示例 |
---|
这将沿水平U轴平滑地滑动纹理,并在纹理结束时循环纹理。注意-纹理每边的旋转会影响外观运动。因此,如果使用编辑框将纹理旋转90度,则纹理可能不会按预期方向流动。
llSetTextureAnim(ANIM_ON | SMOOTH | LOOP , ALL_SIDES, 1, 1, 1.0, 1.0, 1.0); 这将沿水平U轴以相反的方向平滑地滑动纹理 llSetTextureAnim(ANIM_ON | SMOOTH | LOOP , ALL_SIDES, 1, 1, 1.0, 1.0, -1.0); 这将纹理分为64个“单元”,8个横截面,8个向下,然后从左到右,从上到下翻转这些单元。这对于单元动画非常有用。 llSetTextureAnim( ANIM_ON | LOOP, ALL_SIDES, 8, 8, 0.0, 64.0, 6.4 ); 这将以每秒2圈的速度逆时针旋转纹理。将最后一个值更改为-2*TWO-PI以顺时针旋转。 llSetTextureAnim(ANIM_ON | SMOOTH | ROTATE | LOOP, ALL_SIDES,1,1,0, TWO_PI, 2*TWO_PI); 这会使纹理变大变小。 llSetTextureAnim(ANIM_ON | SMOOTH | SCALE | PING_PONG | LOOP, ALL_SIDES, 1, 1, 1.0, 3.0, 2.0); 这将关闭所有纹理动画 llSetTextureAnim(FALSE, ALL_SIDES, 0, 0, 0.0, 0.0, 1.0); 这将切换循环动画以使其在特定帧处停止。 integer textureIsBeingAnimated; default { touch_start(integer num_detected) { if (textureIsBeingAnimated) llSetTextureAnim(ANIM_ON | LOOP, ALL_SIDES, 1, 5, 0.0, 0.0, 1.0); else llSetTextureAnim(ANIM_ON | SMOOTH, ALL_SIDES, 1, 5, 5.0, 1.0, 1.0); // toggle back and forth between TRUE (1) and FALSE (0) textureIsBeingAnimated = !textureIsBeingAnimated; } } |
相关函数 |
---|
llSetLinkTextureAnim |
相关事件 |
---|
附录:(表格)
header 1 | header 2 | header 3 |
---|---|---|
row 1, cell 1 | row 1, cell 2 | row 1, cell 3 |
row 2, cell 1 | row 2, cell 2 | row 2, cell 3 |