プログラミング

プログラミング

Unity で Raymarching で描画したオブジェクトとのコリジョンを作ってみた

388 views

参考元: 凹みTips

はじめに

前回の記事では G-Buffer を利用して Raymarching で数式から図形を描画する方法を紹介しました。

G-Buffer を利用して Raymarching して描画した図形はコライダが無いため、ポリゴンベースのオブジェクトと見た目の上での干渉はあるものの、そのままでは通り抜けられてしまいます。これを解決するためには、空のゲームオブジェクトを生成してコライダの形状だけポリゴンで近似して作成したコライダのコンポーネントをアタッチしたり、id:i-saint さんの記事のようにオブジェクトスペースで行い、オブジェクト自体は通常のコリジョンを持っている形式にしたりと幾つかアイディアが考えられます。

本エントリでは、別のアイディアとして、CPU 側でも Raymarching を行い、その結果を Rigidbody に反映する手法を試してみたので、その方法をご紹介します。

関連記事

おすすめ記事