2010年4月28日水曜日

あぷせとねでぶw

おはようございますw
最近とゆうか、たまぁにとゆうか、
LSLの相談を受けることがあります・・・
基本的にLSL、得意でもないですし、効率良く書ける訳でもないので、
とりあえず、知ってる事をお伝えする程度なのですが・・
昨夜は、プリム間通信について聞かれましたww
文字通り、プリムとプリムの「通信」な訳ですが・・・
そんな必要あるの?!っていう方のために・・・少しだけw
プリム間通信ってゆうとなんか難しく聞こえますが、
例えば、
両開きドアの片方だけタッチしたら、両方開くようにするとか・・・
ホームセキュリティでリモコンタッチしたら全部のドアをロックしたりとか、
同じく照明を点けたり消したりとか・・・
HUDで乗り物とかのコントロールしたり・・・とか
いろんなところで活用されています
これを実現するのに、
プリム同士でメッセージの「やりとり」を
見えないように(場合によっては見えるようにw)行っていますw
例えば、先ほどの両開きドアでしたら、
片方のドアをタッチしたら、
もう片方のドアに「開けろ!」的なメッセージを送って
そのメッセージを受け取った側は素直にドアを開ける、とゆう
書き方をしますw
で、ややこしいことに、プリム間のメッセージのやりとりの方法は
いくつか用意されていまして、
①リンクされてるプリム同士でメッセージを送る方法
②リンクされてないプリム(HUDと乗り物などなど)でメッセージを送る方法
③E-mailを使う方法
などがあります
場合によってうまく使い分ける必要がありますw
①の方法は、LSLでゆう、llMessageLinked()が該当して、個人的には
もっとも負荷が少ない方法だと思います
②の場合だと、リンクしてない状態ですので、llMessageLinked()は使えません・・・
ですので、
llSayですとか、llWhisper、場合によってはllShoutなんかを使って「しゃべらせ」て
やりとりしたい相手側は、向こうが何を「しゃべる」か常に聞いておく必要が
あります。その分、負荷は大きくなります
③のE-mail方式は、アップデートサーバーとのやりとりなんかに使われたり
してる方法ですね^^
ただし、E-mailなので、100%相手方に到着する保証はありません(うろ覚えw)
どの場合でも、どんなメッセージをやりとりするかは、
「作り手」次第ですので、決まった方式はありませんw
両開きドアを開ける場合、
「開けろ!」っていうメッセージを送るのに、
ある人は"OPENDOOR"って書いたり、
別の人は単に"OPEN"っていうメッセージを送るだけかもしれません
いずれの場合もなるべく負荷が少なくなるように書くのが基本ですが
書き方は人それぞれ、ほんと、千差万別なので
正解っていうのがないと思いますww
1つの目標に対していくつものアプローチの仕方があるのです^^
これからLSL(に限らず)に挑戦してみようとゆう方は
是非、いろいろ試してみて下さい^^

ちなみに・・・タイトルの「あぷせとねでぶ」は
学生の時に習ったOSI7階層の覚え方・・・でしたw
記事内容にあまり関係ねーやwww




0 件のコメント:

コメントを投稿