回答:
それらは同じファミリーのソルバーに属し、球体追跡はレイマーチングの1つの方法であり、これはファミリー名です。
レイマーチングは、サーフェス関数を簡単に解決できない(または数値の反復法がなければ不可能な)従来のレイトレーシングに少し似た手法です。レイトレーシングでは、レイの交差点を調べるだけですが、レイマーチングでは、交差点が見つかるまで、または十分なサンプルが得られるまで、または解決しようとするものが何であれ、前進(または前後)します。表面を見つけるためのニュートンラプソン法、またはさまざまな関数を統合するための加算のように考えてみてください。
これは次の場合に便利です。
画像1:表面発見のための伝統的なレイマーチング
関連記事:
球追跡は、レイマーチングアルゴリズムの1つです。すべてのレイマーチングがこの種の方式に変換できないため、すべてのレイマーチングがこの方法の恩恵を受けるわけではありません。
球のトレースは、暗黙的なサーフェスのレンダリングに使用されます。陰関数表面は、連続関数のあるレベルで形成されます。本質的に方程式を解く
F(X,Y,Z) = 0
この関数が各ポイントでどのように解決されるかにより、現在の行進ステップに適合することができる最大の球体を推定することができます(正確に合理的に安全でない場合)。そうすれば、次の行進距離が少なくともこれほど大きいことがわかります。これにより、プロセスを高速化する適応型レイマーチングステップを使用できます。
画像2:動作中のスフィアトレース*は、ステップサイズがどのように適応できるかを示しています
詳細については、以下を参照してください。
*おそらく2dでは、サークルトレーシングと呼ばれるべきです:)
レイマーチングは、レイに沿って歩き交点をテストする反復レイ交差テストです。通常、ソリッドジオメトリとの交点を見つけるために使用され、内側/外側のテストは高速です。
レリーフテクスチャを使用したレンダリングジオメトリからの画像
交差点がどこで発生するかわからない場合は、固定ステップサイズが一般的ですが、代わりにバイナリ検索やセカント検索などのルート検索方法が使用される場合があります。多くの場合、最初の交差点を見つけるために固定ステップサイズが使用され、その後にバイナリ検索が行われます。最初に、ピクセル単位の変位マッピング手法でレイマーチングに遭遇しました。高さフィールド以外の表面の詳細のリリーフマッピングは、良い読み物です!
これは一般的にスペースリーピングで使用されます。加速技術では、いくつかの前処理が安全な距離を与え、ジオメトリに交差することなくレイに沿って移動できます。たとえば、コーンステップマッピング、リラックスコーンステップマッピングなどです。
球の追跡は暗黙的な光線と球の交差テストを参照する場合がありますが、 @ joojaaが言及し、ウィリアムドネリー(距離関数を使用したピクセルごとの変位マッピング)で使用される、ジョンハートによる空間跳躍技術の名前でもあります。3Dテクスチャは、ジオメトリが存在しない球体半径をエンコードします。