“LlSetTextureAnim”的版本间的差异
第19行: | 第19行: | ||
− | |注意事项= | + | |注意事项= |
− | |||
|示例= | |示例= | ||
第70行: | 第69行: | ||
|相关事件= | |相关事件= | ||
}} | }} | ||
− | + | 详见:http://wiki.secondlife.com/wiki/LlSetTextureAnim | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− |
2020年9月9日 (三) 11:40的最新版本
首页 | 函数 | 事件 | 类型 | 操作符 | 常数 | 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 |
相关事件 |
---|