こんにちは最近キャンピングにはまってるペンです。
セカンドライフをはじめたときはキャンピングなんてって
思ってましたが、寝てる間放置すると意外とたまることが
わかってまいりました。ばかになりません。
これでちょこちょこためて1ヵ月後くらいに
DEMOじゃないスキンをかうぞ!!
さて突然ですが、今回のスクリプト講座はこれ。
そうイスです。なんとタイニーもちゃんと座れてしまいますw
って普通かな?
でも、今回使うイスはスクリプトを使うことによって
キャラクターが着席する位置を正確にしていすることができます。
もちろん、方向もです。
もし、このスクリプトを使わずに座ると若干ずれていたり、
イスに埋まってしまったりしてしまいます。
さて、それでは作っていきましょうかw
まずどんな形のものでもいいので、背もたれつきのイスを
作ってください。ここでは簡単のために上記のような立方体だけを
つかってイスを利用します。
作ったイスは、上記のように座る部分が親プリムになるようにリンクさせます。
(親プリムに関しては前回のスクリプト講座を参考にしてください。)
また、この座る部分はオブジェクトとして生成してから、リンクするまで
回転させないことをお勧めします。回転させてしまうと
スクリプトから位置や回転させるための軸(x軸,y軸,z軸)がずれてしまいます。
それでは、出来上がったら以下のスクリプトを組み込んでください。
ただし、このスクリプトを組み込んだからといって
着席位置が正しくなるわけではありません。というのも、これは
あくまで私が作ったいす用のスクリプトだからです。
default{
state_entry(){
llSitTarget(, llEuler2Rot( * DEG_TO_RAD));
}
}
スクリプトの外側は前回に利用したものと同じですねw
違うのは中身。
llSitTarget(, llEuler2Rot( * DEG_TO_RAD));
これが今回の肝です。着席位置を指定するコマンドです。
の部分はリンクしたオブジェクトの中心からの位置を表します。もし、うまく作れているのであれば、前からx方向,y方向,z方向に
なります。
次に
llEuler2Rot( * DEG_TO_RAD)
の部分ですが、これもコマンドの一種です。ただ今は気にせずに
の部分に回転させたい角度を指定するだけでいいです。
これも、うまくイスが作れているのであれば、前からx軸,y軸,z軸に
なります。
これらの値を調整することによって、イスの着席位置を調整していきます。
もし、軸がずれていたとしてもどれがx軸で、どれがy軸で、どれがz軸
なのかを見極めれば、調整はできます。
ちょっと大変ですけどねw
さて、蛇足ですが
位置の指定でz方向を300くらいにしてみてください。
ちょっとした悪戯イスができあがりますw
それでは、また次回w