2

ソフトウェアのピクセル単位のリアルタイム レイキャスターでレイ コヒーレンスを利用することを検討しています。

AFAICT、均一なグリッドを使用して、たとえば 4x4 ピクセルのパッチにレイ コヒーレンスを割り当てた場合 (現在、ピクセルごとに 1 つのレイキャストがあります)、開始点 (および終了点) が異なる 16 個の平行光線が与えられた場合、これはどのように機能しますか?一貫したシーン?私が予測することは次のとおりです。

  1. 隣接する/類似する光線の光線の進行がまったく同じになる距離があります。その距離内で、処理を節約しています。(その距離はどのように知ることができますか?)
  2. 一部の光線が適切なタイミングで発散しなかったという事実により、最終的にはわずかに、または非常に不正確な画像になります。

光線が平面ではなく単一の点から投射されることを考えると、すべての光線のセットが外側に移動するときにツリーを形成するように、移動距離に応じてある種の分割関数が必要になると思います。ここでの私の懸念は、視聴者に近づくと細かいディテールが失われることです。

これがどのように使用されることを意図しているかを理解していないだけだと思います。

4

1 に答える 1

2

正しく行われた場合、レイ コヒーレンスは最終的な画像に影響を与えません。光線は互いに非常に接近しているため、加速構造 (kd ツリー、aabb ツリーなど) を通過するときにすべての光線が同様の​​パスをたどるという良い変更があります。光線のいずれかが当たる可能性のある各ブランチを下る必要がありますが、うまくいけば、これによりブランチの数があまり増加せず、メモリ アクセスが節約されます。

もう 1 つの利点は、SIMD (SSE など) を使用して、加速構造と三角形の両方でテストの一部を加速できることです。

于 2011-11-09T17:31:32.573 に答える