この平面オブジェクトの「コンテンツ」タブには、下図のようなスクリプトが入っている。このスクリプトにより、1枚のテクスチャが縦に4分割および横に4分割され、分割後の16分の1サイズの画像は左上から右下に向かって順番に再生される。

この再生を可能にしているのがどの部分かを理解するため、「llSetTextureAnim ( )」の定義について復習してみよう。LSL Portalでの「llSetTextureAnim ( )」の定義は下図のようになっていた。

この「llSetTextureAnim ( )」の定義と実際のスクリプトを比べると、次のように対応している。
項目 | 意味 | 実際のスクリプトでの指定 | |
---|---|---|---|
1 | mode | モード | アニメーションを実行し(ANIM_ON)、 ループ(LOOP)する |
2 | face | 面 | すべての面で実行(ALL_SIDES) |
3 | sizex | 水平方向の分割数 | 4(整数) |
4 | sizey | 垂直方向の分割数 | 4(整数) |
5 | start | スタートフレーム | 0(整数) |
6 | length | 再生フレーム数 | 0(小数) |
7 | rate | 再生レート(毎秒) | 1秒間に15フレーム再生(小数) |

この表から、項目3「sizex」が水平方向の分割数4、項目4「sizey」が垂直方向の分割数4を決定していることが分かる。分割後の16分の1サイズに描かれた各画像は左上から右下にむかって順番に再生されるのだが、項目7「rate」がその再生レート(1秒間に再生されるフレーム数)15を決定している。
通常、テレビは30フレーム/秒で画像が切り替わっている。映画では24フレーム/秒、アニメだと12フレーム/秒だ。今回のテクスチャアニメーションでは、15フレーム/秒となっているので、十分に火がメラメラと燃えているように見える。
さらに注目してほしいのが、今回、項目1「mode」では「SMOOTH」が指定されていない点だ。このため、テクスチャは、スムーズに再生される代わりに、パッパッと切り換わるように再生される。つまり、パラパラマンガのように、16分の1サイズに描かれた火の画像が次々と切り替わって再生される。

さらに分かりやすくするため、右図のようなテクスチャを例にとってみよう。このテクスチャをボックスオブジェクトに貼り、「llSetTextureAnim ( )」で縦3分割および横3分割を指定しておく。「mode」として「SMOOTH」を加えなければ、数字は、オブジェクトの各面でパッパッとその場で切り替わる。