SDF(符号付き距離関数)(しごうつききょりかんすう)
最終更新:2026/4/27
SDFは、空間内の点から最も近い曲面までの距離を、曲面の内部では負の値、外部では正の値で表す関数のこと。
別名・同義語 距離関数符号付き距離場
ポイント
SDFは、3Dモデリング、衝突検出、レイトレーシングなどの分野で広く利用されており、複雑な形状を効率的に表現できる。
SDF(符号付き距離関数)とは
SDF(Signed Distance Function:符号付き距離関数)は、3次元空間(または2次元空間)内の任意の点に対して、その点から最も近い曲面までの距離を返す関数です。距離は、曲面の内部にある場合は負の値、外部にある場合は正の値をとります。曲面上の点では、SDFの値は0になります。
SDFの利点
SDFは、従来の3Dモデル表現方法(ポリゴンメッシュなど)と比較して、いくつかの利点があります。
- 滑らかな形状表現: SDFは関数で形状を定義するため、ポリゴンメッシュのような離散的な表現に比べて、滑らかな形状を正確に表現できます。
- 複雑な形状の表現: 複雑な形状やトポロジー変化のある形状も、SDFを用いることで容易に表現できます。
- 効率的な演算: SDFを用いることで、衝突検出やレイトレーシングなどの演算を効率的に行うことができます。
- 形状の合成: 複数のSDFを組み合わせることで、複雑な形状を簡単に合成できます。
SDFの応用分野
SDFは、様々な分野で応用されています。
- 3Dモデリング: SDFは、3Dモデリングソフトウェアで形状を作成・編集するために使用されます。
- 衝突検出: SDFは、ロボット工学やゲーム開発において、物体間の衝突を検出するために使用されます。
- レイトレーシング: SDFは、レイトレーシングによる高品質なレンダリングを実現するために使用されます。
- 医療画像処理: SDFは、医療画像から臓器や腫瘍などの形状を抽出するために使用されます。
- コンピュータグラフィックス: SDFは、様々な視覚効果やアニメーションを作成するために使用されます。
SDFの生成方法
SDFは、様々な方法で生成できます。
- 解析的な定義: 形状を数学的な関数で定義し、その関数からSDFを導出します。
- メッシュからの変換: ポリゴンメッシュなどの既存の形状から、SDFを近似的に生成します。
- ニューラルネットワーク: ニューラルネットワークを用いて、形状からSDFを学習します。