ソラマメブログ

2008年07月10日

太陽系の作り方

太陽系を作るにはいくつかの方法があって... 一つの方法は
-----
Walking Jun:お店訪問 Rendervisions Isle
-----
のような方法で この場合
-----
Walking Jun:リンクされたものの回転軸は?
-----
に書いたように 別にリンクされたものの中心が回転するわけではなく
-----
ルートのプリムの回転軸を回転軸とすることができ
-----
LlTargetOmega - lslWiki
-----

-----
This function can be used in a child link (in which case the child will rotate locally around its own center) or in a root link, in which case the entire linkset will rotate around the root's origin.
-----
とあるように 子プリムは リンクされていても 子プリムの回転軸の周りを回転させることができる ので それなりにできるわけですが
-----
別の方法に 刻々 惑星に位置を与えてやってそこに動かす という方法があり
-----
この方法 前に一度試してみたのですが その時は かくかくしてだめだなあ~ と思っていたわけです... が
-----
SL Forums - Orbitting an object around a single point using cos and sin
-----
にそのようなコードがあり 試してみました
-----

-----

-----

-----
それなりにスムーズに動いているようです... なるほど
-----
リストもあげておきます
//
// File: earth.lsl
// Date Author number of nodes
// 2008/7/10 walkinglint 17
//
float d = 6; // radius
vector pos;
float x = 0;
vector thrust;
integer n;
default {
state_entry() {
llSetBuoyancy(1.0);
llSetTimerEvent(0.1);
pos = llGetPos();
llSetStatus(STATUS_PHANTOM, TRUE);
llSetStatus(STATUS_PHYSICS, TRUE);
llTargetOmega(<1.0, 0.0, 0.0>, -PI/2, 1.0);
}
timer() {
x += 0.01;
thrust = <llCos(x) * d, llSin(x) * d, 0>;
llMoveToTarget(pos + thrust, 0.2);
}
}

同じカテゴリー(walking のスクリプティング講座)の記事
 プロフィール写真の表示に問題 (2009-11-30 20:55)
 ミニ太陽系 (2009-03-21 06:03)
 関数から文字列を返したら何か問題になる? (2009-03-18 18:02)
 llListFindList って型って関係ないんだったっけ (2009-03-18 14:02)
 夏時間(PDT)の実験 (2009-03-08 22:04)
 15パズルの作り方(その3) (2009-03-08 06:03)
上の画像に書かれている文字を入力して下さい
 
<ご注意>
書き込まれた内容は公開され、ブログの持ち主だけが削除できます。