- 0 ノート
-
スクリプターズカフェ/ログ/llKey2Nameで名前が取得できる条件
08/12/27
編集
LSL 関数の中には、llKey2Name など「パラメータで指定したアバターがスクリプトを実行している SIM と同一 SIM に存在すること」という条件がある場合があります。
このような関数は、本来セントラルデータベースにある情報の SIM 上のキャッシュを使用して結果を返していると推測されます。 (このような実装のため、同一 SIM に存在しなければならないという制限になる)
ただし、次のような同一 SIM にはいないアバターに対しても正しい値を取得可能です。
- 同一 SIM にいたアバターが他の SIM へテレポートしていなくなってしばらくの間(30 秒程度)
- 隣接 SIM にいる一部のアバター
この 2 つの条件は、どちらもスクリプトが実行されている SIM で「child agents」としてカウントされているアバターを指します。
main agents / child agents は、ビューアの統計バーで確認できます。
どういった条件で SIM の child agents に加算されるのかは厳密には調べ切れていませんが、簡単には「その SIM に接続して情報を取得しているが、アバターの物理演算は行っていない」状態のアバター(エージェント)が child agents になります。
ただし、隣接 SIM にいても child agents にカウントされていないアバターもいます。
これがそのアバターの操作者のビューアの設定に依存するものなのか、単純に SIM 上の位置関係によるものなのかは現時点では調べていません。
このページのTinyURL:http://tinyurl.com/SC-key2name-condition

by