2009年07月15日

装着物の位置、回転をスクリプトで設定

アバターに装着するものを作っています。
現在ベータで作業しているのですが、通常版SL(?)で同じものを作ったとき、装着する位置、回転を調整していかなくてはなりません。
こういった装着ものをスクリプトで設定することはできるのでしょうか?
大量にあるので、1個ずつを調節していくのが大変です。
とりあえず回転だけでも…と試したものが、

default
{
touch_start(integer total_number)
{
rotation rot;
rot = llGetRot();
llSetRot(rot * llEuler2Rot(<342.40, 71.70, 198.0> * DEG_TO_RAD));
}
}


です。
元のオブジェクトの回転値をメモして、新たに作ったオブジェクトの回転値を全て0にし、このスクリプトで合わせてみました。
ところが装着するとZの値だけ変化してしまいました。
アバターの角度のせいかな?と思ってます。
(スクリプトを入れて、装着し、タッチしています)
装着場所は l uppe arm です。
手動でZ値を入れなおせばよいのですけど、他の装着場所もあるので可能であればスクリプトにまかせたいです。

位置に関しては、装着したオブジェクトに位置が表示されないのでより困っています。

ベータで作業しているのは、スカルプトを含んでいるので、確認のためのテクスチャアップの料金がバカにならないからです…。

装着の多い服など作られてる方、どうされてるのでしょうか?



同じカテゴリー(スクリプト関連)の記事画像
オブジェクトのリンクとタッチで開く扉
自動チャットを止めたい
テレポートするとアニメーションが解除される
同じカテゴリー(スクリプト関連)の記事
 テクスチェンジのHUDについて (2015-07-01 04:51)
 モール用のプリムカウンターを探しています (2014-11-29 20:09)
 連続するアニメーションの処理 (2014-08-24 03:23)
 オブジェクトの上にフローティングテキストを出す。 (2014-08-22 16:46)
 チャットログの盗聴について (2014-02-03 03:43)
 椅子に座った後で位置調整できるスクリプト (2013-03-24 16:37)

Posted by pikopino  at 16:44 │Comments(3)スクリプト関連

この記事へのコメント
参考URL
http://kogesugi.slmame.com/e424556.html

回転の詳しい説明があるのでご覧下さい^^
Posted by :)sora:)sora at 2009年07月16日 11:26
あ、わかって気がします!
アバターをEast方向に向けておいて、llGetRotのスクリプトを実行すれば数値がほぼ合いました。
誤差が出るっぽいことはどこかで読んだので、それは諦めます…。
あとは位置です。

位置、何かご存知の方いらっしゃいませんか~><


soraさん、ありがとうございます。
回転についてはホントいろいろ読んだのですけど、さんすう苦手のおつむではイマイチ理解しきれてません…。
教えていただいたところにサンプルスクリプトがあるので、実験勉強してみます!!
Posted by pikopinopikopino at 2009年07月16日 13:03
ささびさん、ありがとうございます!!
GetLocalPosで位置を取ってみます。
回転もllGetで取得すればよかったのですね。Setのことばかり考えて、うっかり思いつきませんでした…。

さっそく試してみます!ありがとうございました
Posted by pikopinopikopino at 2009年07月17日 18:59
<ご注意>
書き込まれた内容は公開され、ブログの持ち主だけが削除できます。