JoeTechによる、視覚的なエディタで SDF(SignedDistanceFunction(符号付距離関数))のコード生成が可能なツール「SDF Editor」が公開されています。Godotエンジンで開発されたそうですよ。
SDF Editor
手続き型SDFは、最初にシーンツリーで指定されたポイントを変換することにより、空間内の任意のポイントについて評価されます。これには、平行移動、回転、ミラーリングだけでなく、繰り返しまたは延長も含まれます。これは、プリミティブに到達するまで上から下に実行されるため、そのプリミティブまでの距離は、変換されたポイントで評価できます。変換されたすべてのプリミティブまでの距離が計算された後、シーンツリーで指定されたとおりに組み合わせることができます。これは、たとえば減算やシックニングなどの演算子が適用される場所です。
これにより、レイマーチできる符号付き距離フィールドが生成されます。SDFに対して発行されたシェーダーコードは、エディターに表示されます。
「SDF Editor」はプロトタイプです
このようなエディターが本当に役立つかどうかわからないので、これは概念実証です。
SDFの編集と保存/ロードに必要な機能があります。
不足している機能は次のとおりです。
・オブジェクトのコピー/貼り付けと複製
・元に戻す/やり直し
・マテリアル(少なくともオブジェクトの単色)
・他のプログラムでエクスポートおよび編集するためのボクセル化
・その他のレンダリング/カメラオプション+シェーダーエクスポート
・このエディターでの作業に費やす時間はあなたの興味によって異なりますので、このエディターが継続的な開発に値すると思われる場合はコメントを残してください(追加機能の提案を歓迎します)。
このツールのアプローチ、とても良いと思います。今後の発展が楽しみですね。
「SDF Editor」はWindowsのみに対応し、itch.ioのサイトから無料ダウンロードする事が出来ます。是非チェックしてみてください。
コメント