私のレイトレーサーは多種多様なオブジェクトをサポートしています。それらを交差させるには、光線をオブジェクト空間に変換する標準的な手法を使用します。モーションブラーを追加するまで、これは素晴らしく機能します。
モーションブラーは、1つではなく一連の変換として説明します(説明を簡単にするために、2つだけとしましょう)。私のアプローチは、両方のキーフレームでレイの逆変換を行い、位置/方向を変更することです。
これは翻訳ではうまくいくように見えますが、回転では壊れます。たとえば、30度と90度回転する2つの三角形があります。
(4つのサンプル、MN再構成、赤いサンプルは2つのキーフレームの近くから来ました)
コーナーでは、重複したサンプルが2つの頂点間の直線上にあると予想されます。代わりに、外側に膨らみます。これは間違っています。より興味深い変換を持つより興味深いシーンでは、さまざまな障害モードが発生します。たとえば、45回転するプロペラがあります。
いくつかの問題は、BVHの破損によるものです(オブジェクトの極値がキーフレームにあると想定しています)が、ブルートフォースレンダリングでさえ正しくありません。
フォワードトランスフォーム(レイではなくオブジェクトを変換する)のみを行うことでこれをすべて修正できますが、これは可能な場合にのみ機能します(実際には三角形のみ)。
レイトレーサーに、オブジェクトではなくレイを変換することで、変換(特に回転)の線形近似を作成させるにはどうすればよいですか?