Difference between revisions of "LlSetTextureAnim/zh-Hans"
Jump to navigation
Jump to search
Fyf Ansome (talk | contribs) |
m |
||
(5 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
{{LSL_Function/negative index/zh-Hans|true|start}} {{#vardefine:spec|}}{{LSL_Function/face/zh-Hans|face}} | |||
{{LSL_Function/zh-Hans | |||
{{LSL_Function/negative index|true|start}}{{#vardefine:spec|}}{{LSL_Function/face|face}}{{LSL_Function | |||
|func_id=211 | |func_id=211 | ||
|func_sleep=0.0 | |func_sleep=0.0 | ||
Line 9: | Line 8: | ||
|p1_type=integer|p1_name=mode|p1_desc=模式标志的掩码 | |p1_type=integer|p1_name=mode|p1_desc=模式标志的掩码 | ||
|p2_type=integer|p2_name=face | |p2_type=integer|p2_name=face | ||
|p3_type=integer|p3_name=sizex|p3_desc=水平帧数 ( | |p3_type=integer|p3_name=sizex|p3_desc=水平帧数 (在 [[ROTATE]] 和 [[SCALE]] 模式中忽略该参数) | ||
|p4_type=integer|p4_name=sizey|p4_desc= | |p4_type=integer|p4_name=sizey|p4_desc=垂直帧数 (在 [[ROTATE]] 和 [[SCALE]] 模式中忽略该参数) | ||
|p5_type=float|p5_name=start|p5_desc=开始的位置/帧的编号 (在 [[ROTATE]] 模式中是弧度) | |p5_type=float|p5_name=start|p5_desc=开始的位置/帧的编号 (在 [[ROTATE]] 模式中是弧度) | ||
|p6_type=float|p6_name=length|p6_desc=显示的帧数目 (在 [[ROTATE]] 模式中是弧度) | |p6_type=float|p6_name=length|p6_desc=显示的帧数目 (在 [[ROTATE]] 模式中是弧度) | ||
Line 18: | Line 17: | ||
|return_text | |return_text | ||
|spec | |spec | ||
|caveats=* | |caveats=*在一个 prim 上只能播放一个贴图动画。 | ||
** | **如果在一个 prim 播放多个动画,就会重置它。 | ||
* | *不能同时使用 ROTATE 和 SCALE 模式。 | ||
*'''sizex''' & '''sizey''' | *'''sizex''' & '''sizey''' 被限制在 0 到 255 的范围内。 | ||
|constants={{{!}} class="sortable collapsible" {{Prettytable}} | |constants={{{!}} class="sortable collapsible" {{Prettytable}} | ||
{{!}}-{{Hl2}} | {{!}}-{{Hl2}} | ||
! | ! 模式 | ||
! title=" | ! title="数值" {{!}} | ||
! class="unsortable" {{!}} | ! class="unsortable" {{!}} 描述 | ||
{{!}}- | {{!}}- | ||
{{!}}[[ANIM_ON]] | {{!}}[[ANIM_ON]] | ||
Line 67: | Line 66: | ||
</pre> | </pre> | ||
把一个贴图分隔成 64 "单元格", 横 8 格,竖 8 格,然后按照从左到右,从上到下的顺序交换,这个就是单元格动画。 | |||
<pre> | <pre> | ||
llSetTextureAnim( ANIM_ON | LOOP, ALL_SIDES, 8, 8, 0, 64, 6.4 ); | llSetTextureAnim( ANIM_ON | LOOP, ALL_SIDES, 8, 8, 0, 64, 6.4 ); | ||
Line 88: | Line 87: | ||
|permission | |permission | ||
|negative_index | |negative_index | ||
|cat1=Media | |cat1=Media/zh-Hans | ||
|cat2=Effects | |cat2=Effects/zh-Hans | ||
|cat3=Texture | |cat3=Texture/zh-Hans | ||
|cat4=Video | |cat4=Video/zh-Hans | ||
}} | }} |
Latest revision as of 14:04, 26 July 2008
Template:LSL Function/negative index/zh-Hans Template:LSL Function/face/zh-Hans
描述
函数: llSetTextureAnim( integer mode, integer face, integer sizex, integer sizey, float start, float length, float rate );在指定的面上播放贴图动画(缩放,移动贴图)
• integer | mode | – | 模式标志的掩码 | |
• integer | face | |||
• integer | sizex | – | 水平帧数 (在 ROTATE 和 SCALE 模式中忽略该参数) | |
• integer | sizey | – | 垂直帧数 (在 ROTATE 和 SCALE 模式中忽略该参数) | |
• float | start | – | 开始的位置/帧的编号 (在 ROTATE 模式中是弧度) | |
• float | length | – | 显示的帧数目 (在 ROTATE 模式中是弧度) | |
• float | rate | – | 每秒的帧数 (不能为 0) |
帧是按照从左到右,从上到下,从0开始的顺序来编号的。
如果 rate 是负数,和使用了 REVERSE 标志的效果是一样的。
模式 | 描述 | |
---|---|---|
ANIM_ON | 0x01 | 启用贴图动画。 |
LOOP | 0x02 | 循环贴图动画。 |
REVERSE | 0x04 | 反向播放动画。 |
PING_PONG | 0x08 | 先播放动画,然后再倒放。 |
SMOOTH | 0x10 | 在 X 轴方向上平滑移动,代替播放单独的帧。 在 SCALE 和 ROTATE 模式中,都会平滑移动。 |
ROTATE | 0x20 | 旋转贴图动画, 不要和 SCALE 一起使用。 |
SCALE | 0x40 | 缩放贴图动画, 不要和 ROTATE 一起使用。 |
注意事项
- 在一个 prim 上只能播放一个贴图动画。
- 如果在一个 prim 播放多个动画,就会重置它。
- 不能同时使用 ROTATE 和 SCALE 模式。
- sizex & sizey 被限制在 0 到 255 的范围内。
示例
平滑移动一个贴图并且循环播放动画。
llSetTextureAnim(ANIM_ON | SMOOTH | LOOP , ALL_SIDES, 1, 1, 1, 1, 1);
反向平滑移动一个贴图。
llSetTextureAnim(ANIM_ON | SMOOTH | LOOP , ALL_SIDES, 1, 1, 1, 1, -1);
把一个贴图分隔成 64 "单元格", 横 8 格,竖 8 格,然后按照从左到右,从上到下的顺序交换,这个就是单元格动画。
llSetTextureAnim( ANIM_ON | LOOP, ALL_SIDES, 8, 8, 0, 64, 6.4 );
This rotates a texture counter-clockwise at 2 revolutions per second. Change the last value to -2*TWO_PI to rotate clockwise.
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, 3, 2);