ソラマメブログ
プロフィール
ねこねこ
ねこねこ
QRコード
QRCODE
アクセスカウンタ
読者登録
メールアドレスを入力して登録する事で、このブログの新着エントリーをメールでお届けいたします。解除は→こちら
現在の読者数 1人
オーナーへメッセージ

2008年01月26日

llRezObject を使ってスカイボックス出現

llRezObject を使ってスカイボックス出現

  無料のスケールボードを置いているのですが、上空に持っていくにはどうするかと聞かれ、SLを始めた頃スカイボックスなる存在があり、座ると上空に行きスカイボックスを設置してくれるという一見便利そうに見えるものがあったのを思い出し、それを実現してみました。
  まず、いつものごとく llRezObject() の設置限界をさぐってみました。第一引数が、オブジェクトのインベントリに入っている出現させたいオブジェクトの名前であり、第2引数が絶対座標になります。llSetPos() の限界が10メートルなので、まず上空10メートルで試しました。


llRezObject を使ってスカイボックス出現

  無事10メートル上空に出現。

llRezObject を使ってスカイボックス出現

  次は、12メートルに挑戦。やはりだめでした。エラーはデバッグチャンネルに報告しているのでしょうが、表面上はなにもおこりません。llSetPos() と同じく10メートルまででした。こうしてみると以前書いた llSitTarget() の限界が300メートルというのはかなり大きなことだと思えます。

llRezObject を使ってスカイボックス出現

  いよいよ核心に迫ります。実は、これを書く前、普通REZするときなにもない空間には出せないので、出すオブジェクトと、座って上がるオブジェクトを別々に上空に上げて上空で合体させるプログラムを書いていました。それはそれで、別々に上がっていく様が見えておもしろかったのですが、実験してみると、上空でオブジェクトから直接スクリプトでREZできるのがわかり、図のようにしました。10メートルを10回上げています。
  ここで llSleep(0.1) を入れているのは、なぜかREZのタイミングをとるのに必要みたいです。こういったところは実際に動かしてみないとわからないところです。最後は、立ち上がったら椅子を消すようにしました。上空に上がって行く途中で立ち上がってしまうと椅子とボードだけあがって行きます。(そのときは、逆に座れば椅子は消えます。)


llRezObject を使ってスカイボックス出現

  こんな感じで、中心座標の同じ位置にボードが出現しています。

llRezObject を使ってスカイボックス出現

  立ち上がると、椅子は消えます。これは上空100メートルにしていますが、実際サンドボックスによって状況がことなるので、好きに変更してください。わたしが経験したところでは200メートルまでしかアバターが(いくらでもあがれるHUDをつけていても)あがれなかったところがありました。そのときは編集で、ボードを300メートルにあげていたので、どうにか上を見上げて消すことができました。また、サンドボックスによっては上になにがあるかわからなかったりするので、そのときどきの状況にあわせる必要があると思います。一応これもフリーの箱に詰める予定です。



同じカテゴリー(スクリプト)の記事画像
パーティクルの復習^^ ほたるの光^^ 
物理そしてビークル
ライブ見たよ&llSetPos()卒業制作
パーティクル-その2
パーティクル
くるくる回転しま~す
同じカテゴリー(スクリプト)の記事
 パーティクルの復習^^ ほたるの光^^  (2008-08-07 21:15)
 物理そしてビークル (2008-03-07 23:34)
 ライブ見たよ&llSetPos()卒業制作 (2008-02-22 01:05)
 パーティクル-その2 (2007-11-20 19:07)
 パーティクル (2007-11-17 10:44)
 くるくる回転しま~す (2007-11-09 19:15)
Posted by ねこねこ at 15:38│Comments(0)スクリプト
上の画像に書かれている文字を入力して下さい
 
<ご注意>
書き込まれた内容は公開され、ブログの持ち主だけが削除できます。