レイマーチングなどに用いられる SDF を利用したウェブブラウザ上で動作する 3D モデリングツール Xiamo
アカウントを作れば無料で使えます
今回ご紹介するのは、おそらくですが中国で開発されていると思われる、ブラウザ上で動作するツールなどを提供するウェブサービス、Xiamo です。
過去にも、ブラウザ上でモデリングを行うツールというのは前例が無いわけではありませんが、今回のケースは距離関数、いわゆる SDF(Signed distance function)を使って形状を表現しているというのがかなり特異な点であると言えると思います。
現状、特にベータ版といったような記載はなく普通に使うことができますが、まだまだできたばかりという感じのようでドキュメントなどは空白のページもあったりします。
無料でアカウントを作ればすぐにでも試すことができる状態になっていますが、ご利用は各自適切にご判断ください。
リンク:
有料アカウントなら glTF のダウンロードも
今回紹介する Xiamo のトップページには、いくつかのスクリーンショットや動画などが置かれており、これがどういったサービスなのかある程度把握することができます。
いわゆる 3D モデリングやデザインのためのツールであり、自由自在にアイデアを形にすることができ、それらをシェアすることも簡単にできるといったことが謳われています。
SDF を利用することでポリゴンを用いたジオメトリ構造に依存していない、ということも結構しっかりと語られていますね。
SDF とか言われてもなんのことだかさっぱりわからん! という方もいらっしゃるかもしれませんが……
ウェブの文脈で言うなら、画素の集合である画像データ(JPEG など)ではなくベクターデータ(SVG)ですよ、というのと意味合いは似ています。
頂点を組み合わせて形状を表現するジオメトリ構造とは異なり、すべての形状を数学的・幾何学的に定義することで、データ量を削減したり、独特な形状の表現を可能にしたり、といったことが SDF によって実現できます。
デザイン用のビュー上でも SDF によって形状が表現されているようで、smoothmin 関数を利用したブレンド表現、ブーリアンによる形状変化なども普通にできます。
また、いわゆるレイマーチの要領で軽量に動作するエディットモードの他に、美麗な CG をレンダリングするトレーサーモードを備えているのも特徴だと思います。
エディット画面の上手にある「Render」と書かれたボタンを押すなどすることでモードを切り替えることができ、ビューがそのままレイトレーシングのフォトリアルな質感に切り替わります。
私はあまりレイトレーシングには詳しくないので、どういったアルゴリズムやアーキテクチャが用いられているのかまではわからないですが、時間の経過と共にサンプリング数が増えていき、少しずつフォトリアルな絵ができあがっていきます。
あまり内部的な動きまで追いかけていないので、レンダリングをどのように行っているのか確証はありませんが SDF を活用しているとすれば一種のレイマーチングのようなことをやっているのだと想像します。
その割には妙に動作が軽いので、なにか軽量化のための施策もいろいろと行われているのかもしれません。
有料のアカウントなら glb などのファイル形式でデータをエクスポートできるようなので、SDF から頂点構造を自動生成するようなアルゴリズムも内部的には持っていると思われます。
中国製品ではよく見られる現象なのかもしれませんが、トップページなどに掲載されている 3D データの例には、著作権的に明らかにアウト寄りのグレーみたいな作例も掲載されていて、そういうところの危うさが非常にもったいないですね。
アイデアは非常に面白いうえ、動作も軽快でプロダクトとしては夢があると思います。
気になる方はチェックしてみてください。