2008年05月03日

太陽の方角

太陽の方角はSIM基準であるためか
アバターから見た太陽の方向とは異なります。
たとえばAtanで太陽の方角を出して、SIM基準では北東位置だとしても
アバターからは真東に見えます。
この補正をどうにかしようと、三角関数をいじってみましたがうまくいかずw
誰か、アバター位置から見た太陽の方角の求め方を教えてください



Posted by トシ  at 10:32 │Comments(7)

この記事へのコメント
>アバターから見た太陽の方角のベクトルが分かる
atanでは正確な方位はでません
Posted by トシトシ at 2008年05月03日 15:26
もっと言うと、日の出と日の入りのそれぞれの誤差は分かっています。
真南は当然誤差は0です。
なので、その式を解きたいのですが、私の頭では答えが出てきませんw
Posted by トシトシ at 2008年05月03日 15:34
トシさん、初めまして。

> たとえばAtanで太陽の方角を出して、SIM基準では北東位置だとしても
> アバターからは真東に見えます。

 これは daytime(昼間)時に真東にある大きな太陽の事ですか?

 現在の太陽は、日の出から一度真上まで一気に昇ってから
 昼間の太陽が表示される様です。
 ですので、真上=昼間ではない様な気がします。
 トシさんは、太陽の角度は算出されているので角度をみて
 昼間かどうかを判定してはいかがですか?

> もっと言うと、日の出と日の入りのそれぞれの誤差は分かっています。

 llGetSunDirectionでZの値はマイナス(夜)を返してきても
 まだ陽が沈んでないということですよね?
Posted by asuka at 2008年05月04日 00:24
>アバター位置から見た太陽の方角の求め方を教えてください

SIMのどこにいようと、デフォルトの場合は西か東しかないですよね・・?もしかしてアバターの向いている方向を北として、その時の太陽の方角を知りたいんでしょうか?(日の出の時に西を向いていたら南と表示する等)

なんにしても、もうちょっと詳しい説明をお願いします。数学は苦手ですけどw
Posted by DI at 2008年05月04日 02:54
>llGetSunDirectionでZの値はマイナス(夜)を返してきても
>まだ陽が沈んでないということですよね?
具体的には日の出位置は、アバターから見ると真東ですが、 llGetSunDirectionの値から算出すると北東です。

>しかしてアバターの向いている方向を北として、その時の太陽の方角を知りたいんでしょうか?
そうですw
アバターの向きを基準として、太陽の角度を知りたいのです。
Posted by hirohiro at 2008年05月04日 03:06
>現在の太陽は、日の出から一度真上まで一気に昇ってから
それは見かけ上の太陽ですか?
llGetSunDirectionで得られるz座標は、徐々に上がっていきます。
Posted by トシトシ at 2008年05月04日 03:30
llGetSunDirectionから返ってくるデータの角度変換が
終わっているのでしたら…

東西南北をX,Yの二次元にしてatanで角度を算出するのでは駄目ですか?

北~南を-1~1、東から西を1~-1としてatanに渡して
返値がマイナスなら360を加算すれば2次元の角度になりませんか?
東から時計回りで南が90度、西が180度、北が270度になると思います。
後は、アバターの方角と併せて算出すれば問題ないのでは??

ただ、X,Yともに0の場合は見失う事になりますけど…。
Posted by asuka at 2008年05月04日 04:20
<ご注意>
書き込まれた内容は公開され、ブログの持ち主だけが削除できます。