私はレイトレーサーを書いています(それが違いを生む場合は左手座標を使用します)。原則を独学するためなので、OpenGL や被写界深度などの複雑な機能は (まだ) 使用していません。カメラの位置と向きは任意です。location
、 、look_at
、およびの 3 つのベクトルでそれらを示します。これらは同等の POV-Ray ベクトルsky
のように動作します。その「フィルム」にも と があります。(長さは からまでの距離によって暗示されます。)width
height
focal
position
look_at
私の問題は、光線をキャストする方法がわからないことです。光線がどこに到達するかを示すvx
との2 つの量があります。vy
どちらも -1 から 1 まで変化します。どちらも -1 の場合、カメラの位置から「フィルム」の左上隅に光線をキャストしています。両方とも 1 の場合、右下。どちらも 0 の場合は中央。そして残りは明らかです。
私は光線の方程式を導出するためのベクトル演算に精通していません。その方法の説明をいただければ幸いです。