2012-01-30 7 views
1

私は原点(0 0 0)に数字を持っています。だから私の視点カメラのようにセットアップCamera.LookDirectionはどの座標系にありますか?

<PerspectiveCamera Position="0 0 10" LookDirection="0 0 0" UpDirection="0 1 0" /> 

しかし、見えることはありません。どのようにすることができますか?私は自分のポジションポイントから原点をまっすぐに見ます!

唯一のものは、これを説明することができる:LookDirectionはすなわち位置LookDirectionが存在するローカルCSの原点であり、位置の座標系(CS)に位置しています。したがって、位置はグローバルCSにあり、LookDirectionはグローバルCSにありません。しかし、私はMSDNのその説明を満たしていません。なぜ彼らはそれについて話しませんか?

私は正しいですか?

答えて

3

あなたはLookDirection="0 0 -1"

チェックdocumentationLookDirection="0 0 0"を変更する必要があり、LookDirectionは、ベクター、ではない場所です。

+0

「を取得またはカメラが世界座標で見ている方向を定義するのVector3Dを設定します」。したがって、LookDirectionがベクトルの場合、その原点はカメラのPositionであり、その方向はLookDirectionです。私はこの場所にいるのですか?そうでない場合、LookDirectionの起点はどこにありますか? – user808128

+0

さらに、私は、LookDirectionが.NET Frameworkという言葉で意味することを理解しています。しかし、彼らの論理はただの私の心を壊すだけです。私にとって2つの点を持つベクトルを理解する方が簡単です。さもなければ、ベクターの起源がどこにあるのかは明らかではない。カメラの場合、私は原点が直観的にポジションであることを理解していますが、他のケースはどうですか? – user808128

2

あなたはZ軸上に10単位あり、にしたいとします。

は、そのため、Z軸に沿って後方を見てみたい:LookDirection="0 0 -1"

パーブノワの答えは、このフィールドはベクトル、ない位置です。

より一般的には、

LookDirection = (LookPosition - CameraPosition).normalize() 

[NB:それは擬似コードではなく、実際のコード'S]

+0

私はこの公式についてC.Petzoldの本を読んでいますが、その場合、LookDirectionはLookPositionの起点を持つローカル座標系の見え方のように見えます。ではない?そして、外観の表示については、どのように点があるように見えますか - それはベクトルの唯一の矢印の終わりですか? – user808128

+0

@ user808128はい、どちらの質問にも。 – Alnitak

関連する問題