arz Nitelyってシステム屋どうよ?

SecondLifeとWebとの融合を模索するセミプロWeb屋の挑戦

llSitTarget()にご用心!

2008年06月03日 – 16:47

友人のSIM開発に携わることになって
SIMのマネージャーの権限をもらいました

で、SIMを重くする原因が見られたりするんですけど…
意外や意外!!

default{
    state_entry(){
        llSitTarget(<0.1,0.0,0.2>, llEuler2Rot(<0,-30,0> * DEG_TO_RAD));
    }
}

よく使う、たったこれだけのスクリプト(と呼べるのか??)を組み込んだ「Test Chair」が
常時リスンが組み込まれたスクリプトより重いという事実が…

(マットを踏むと開くという自動ドアのテストをやってて「Slide Door L(とR)」にいま現在は常時リスンを使ってます)

んで、わざと負荷をかけようと思い、0.1秒ごとに近くで「HELLO」と言わせ
(Say HELLO every 0.1 secondというオブジェクトに同じチャンネルで言わせています)
それをず〜〜っとリスンさせてるんですけど、それでも椅子より軽い…

ちなみに「LB System :: Fountain-A(とB)」は
常時4000個ほどのパーティクルを表示させている噴水スクリですw

それよりも重いってどゆこと??

 

これは意外だったので、んじゃ〜こうしたらどうかな? と思って

default{
    state_entry(){
        llSitTarget(<0.1,0.0,0.2>, llEuler2Rot(<0,-30,0> * DEG_TO_RAD));
        llSetScriptState(llGetScriptName(),FALSE);
    }
}

と、セット直後にスクリプトを停止させてみたんですが
それでも変わりませんでしたw

椅子って重いのね…

シットポジションを設定した後はスクリを削除した方がいいみたいですよ〜

勉強になりましたw



角度の変換

2008年05月21日 – 19:34

DEG → ROT

// Deg2Rot :: 2008-05-21
rotation uuDeg2Rot(vector deg){
    return llEuler2Rot(deg * DEG_TO_RAD);
}

ROT → DEG

// Rot2Deg :: 2008-05-21
vector uuRot2Deg(rotation rot){
    return llRot2Euler(rot) * RAD_TO_DEG;
}