2009年7月27日月曜日

セカンドライフ内の最高速度

腰痛で死んでます。

昨日の夕方から、腰を動かすと猛烈に痛くなり、今日は休んで整体に行ってきました。整体の先生曰く「来てますねぇ」と(笑。という訳で今日と明日は休んで、腰の治療に励みますといっても、温和しくしているしているだけなのですが。

最近セカンドライフ内の物理エンジンについて、ちょっと疑問なところがあって調べていたのですが、セカンドライフ内では、物理オブジェクトには、ちゃんと重力加速度が働いている様です。

上空4,000mから、以下のスクリプトを入れたオブジェクトを落として、その速度を1秒ごとに測定してみました。

   1: default
2: {
3: touch_start(integer total_number) {
4: llSetPrimitiveParams([
5: PRIM_PHYSICS, TRUE,
6: PRIM_TEMP_ON_REZ, TRUE,
7: PRIM_PHANTOM, TRUE
8: ]);
9: llSetTimerEvent(1.0);
10: }
11: timer() {
12: llOwnerSay((string) llGetVel());
13: }
14: }


典型的なデータを以下に示します

[21:25] FreeFall: <0.00000, 0.00000, -11.29792>
[21:26] FreeFall: <0.00000, 0.00000, -21.53347>
[21:26] FreeFall: <0.00000, 0.00000, -31.33345>
[21:26] FreeFall: <0.00000, 0.00000, -40.91565>
[21:26] FreeFall: <0.00000, 0.00000, -50.71563>
[21:26] FreeFall: <0.00000, 0.00000, -60.29782>
[21:26] FreeFall: <0.00000, 0.00000, -70.53347>
[21:26] FreeFall: <0.00000, 0.00000, -80.33360>
[21:26] FreeFall: <0.00000, 0.00000, -90.35152>
[21:26] FreeFall: <0.00000, 0.00000, -99.49833>
[21:26] FreeFall: <0.00000, 0.00000, -109.29850>
[21:26] FreeFall: <0.00000, 0.00000, -119.53420>
[21:26] FreeFall: <0.00000, 0.00000, -129.11650>
[21:26] FreeFall: <0.00000, 0.00000, -138.91630>
[21:26] FreeFall: <0.00000, 0.00000, -148.49840>
[21:26] FreeFall: <0.00000, 0.00000, -158.08040>
[21:26] FreeFall: <0.00000, 0.00000, -168.31570>
[21:26] FreeFall: <0.00000, 0.00000, -178.11550>
[21:26] FreeFall: <0.00000, 0.00000, -187.69760>
[21:26] FreeFall: <0.00000, 0.00000, -197.49740>
[21:26] FreeFall: <0.00000, 0.00000, -200.00000> ← ここで速度がサチってます
[21:26] FreeFall: <0.00000, 0.00000, -200.00000>
[21:26] FreeFall: <0.00000, 0.00000, -200.00000>
[21:26] FreeFall: <0.00000, 0.00000, -200.00000>
[21:26] FreeFall: <0.00000, 0.00000, -200.00000>
[21:26] FreeFall: <0.00000, 0.00000, -200.00000>
[21:26] FreeFall: <0.00000, 0.00000, -200.00000>
[21:26] FreeFall: <0.00000, 0.00000, -200.00000>
[21:26] FreeFall: <0.00000, 0.00000, -200.00000>
[21:26] FreeFall: <0.00000, 0.00000, 14.96331> ← ここで地面と衝突した?
[21:26] FreeFall: <0.00000, 0.00000, 4.72773>
[21:26] FreeFall: <0.00000, 0.00000, -5.07227>
[21:26] FreeFall: <0.00000, 0.00000, 1.47556>
[21:26] FreeFall: <0.00000, 0.00000, 0.00452>
[21:26] FreeFall: <0.00000, 0.00000, 0.00000>
[21:26] FreeFall: <0.00000, 0.00000, 0.00000>

何度か試してみましたが、このデータから重力加速度を計算すると、9.8になります。
ふむ、割とまじめに作ってあるんですね。これならいろいろ物理シミュレーションを視覚的に作れそうな感じです。夏休みにはがんばってみるか。

0 件のコメント:

コメントを投稿