セカンドライフでプログラム6(臨時プリム編)

セカンドライフ制作
スポンサーリンク

臨時プリムの動きについて、ここでおさらいしたいと思います。

臨時プリムは、オブジェクトの種類の1つで、
これにチェックしておくと、いつのまにか削除されるという性質になっておりますが、
プリム数の扱いや、どのぐらいで削除されるのか、分からないとスクリプト上で使いづらいと思います。

臨時プリムについては、ヘルプの「ホーム / 建造物 / プリムの使用と誤用」では次のように紹介されています。

「臨時」
Second Life 内で永久ではなく一時的とマークされたオブジェクトです。 一時的であるとマークされたオブジェクトは、使用後数分たつと削除されます。 これは銃の弾やドミノ、ビーチ ボールのように、あなたから去っていくものやどこかへ消えるもの、スクリプトのない土地 (スクリプトがあるとそれ自身を削除できない) に行き着くものなどにとても便利です。

数分とか曖昧な数字となっていますが、各種制限には約1分だと記述があります。
各種制限には、さらに使用可能な臨時プリム数について詳細に載っています。

一時的なプリムの生存時間 – 約 60 秒
一時的なプリムのの最大数 – 通常のプリムの最大数 – 現在の通常プリムの数 + (0.5 * 通常のプリムの最大数 + 400 と 1000 のうちの小さいほう)

臨時プリムの計算式は元の出展を見たほうがいいです。

temp_prim_limit
= (regular_prim_limit – current_regular_prims)
+ minimum(0.5 * regular_prim_limit + 400, 1000)

分かりやすいように具体的に計算してみました。

ss1
512平方メートル、制限117プリムの場合に、使用済プリムに応じての利用できる使用臨時プリム数

ss2
それ以上の土地での使用済プリムに応じての利用できる使用臨時プリム数

エクセルファイルに「=$D3-C$3+MIN(0.5*$D3+400,1000)」みたいな感じで計算できます。

これを見ると分かるように、117の制限しかない土地で最大までプリムを使用していたとしても、
臨時プリムは459も設置できることが分かります。

臨時プリムは、llRezObject などで設置すると表現の幅が広がる思うので、
これを機会にいろいろ臨時プリムを使用したプログラムを作ってみると面白いかもしれません。

なお、臨時プリムは座っている間は通常プリムになるため、削除されなくなるようです。
従って、乗り物とかにも利用するといいかもしれません。
通常プリムだと、どこかで乗り下りた時にそのまま放置してしまうと残り続けてしまうからです。

コメント

タイトルとURLをコピーしました