Introduction
はじめに
サーフェス計算を行うオープンソースのライブラリです。静的なトポロジ上で変形する サーフェスをインタラクティブなフレームレートで描画できるように最適化されています。 得られる極限サーフェスはピクサーの RenderMan 仕様と数値計算精度の範囲内で一致します。
OpenSubdiv はサードパーティのDCCツールに組み込まれることを想定した API ですが、 これ自体で直接アセットを作るためのアプリケーションやツールではありません。
なぜ高速なサブディビジョンが必要なのか
サブディビジョンサーフェスは滑らかで制御しやすい極限サーフェスを持ったキャラクター形状 の最終レンダリングのために一般的に用いられています。ただし、インタラクティブな アプリケーション内ではパフォーマンスの事情によりポリゴンでのコントロールメッシュとして 近似的に描画されるのが一般的でした。インタラクティブアプリケーションで近似形状を 操作するため、例えば頬を触る手やボトルをつかむ指などの精密な接触を見るのが難しいという 問題があります。また、肌と衣服がどちらも近似だとクロスシミュレーションの突き抜けをチェック するのも難しくなります。特に、接触する片方のフェイスのサイズが相手より著しく大きい場合 などでは近似誤差が大きくなり、顕著な問題となって現れます。
Maya、およびピクサーのインハウスツール Presto アニメーションシステムでは 3万ポリゴンの キャラクターを2レベルサブディビジョンして50万ポリゴンにするのに100ミリ秒かかります。 もしこれを3ミリ秒以下にすることができれば、ユーザが滑らかで正確な極限サーフェスを常に 操作することができるようになります。
理論研究
OpenSubdiv を支える新しい GPU 技術はピクサーとマイクロソフトの共同研究の成果として得られました。
Feature Adaptive GPU Rendering of Catmull-Clark Subdivision SurfacesMatthias Niessner, Charles Loop, Mark Meyer, and Tony DeRoseACM Transactions on Graphics, Vol. 31 No. 1 Article 6 January 2012Efficient Evaluation of Semi-Smooth Creases in Catmull-Clark Subdivision SurfacesMatthias Niessner, Charles Loop, and Guenter Greiner.Eurographics Proceedings, Cagliari, 2012Analytic Displacement Mapping using Hardware TessellationMatthias Niessner, Charles LoopACM Transactions on Graphics, To appear 2013
歴史
これはピクサーのインハウスアニメーションシステムでは5世代目のサブディビジョンサーフェス ライブラリですが、そのオリジナルは 1996 年、ゲーリーじいさんのチェスの制作に際して Tony DeRose, Tien Truong らによって初めて書かれたものです。ピクサーのアニメーション制作の経験を 活かしながら、世代を重ねる度に毎回完全に書きなおされて来ました。このコードは今現在で 実際に使われているものであり、今および未来の映画のためにピクサーが OpenSubdiv に対して 行う変更は、ピクサーのアニメーション制作に投入されるのと同時にオープンソースとして リリースしていきます。
Subdivision for Modeling and AnimationDenis Zorin, Peter SchroderCourse Notes of SIGGRAPH 1999Subdivision Surfaces in Character AnimationTony DeRose, Michael Kass, Tien TruongProceedings of SIGGRAPH 1998Recursively generated B-spline surfaces on arbitrary topological meshesCatmull, E.; Clark, J. Computer-Aided Design 10 (6) (1978)
ライセンス
OpenSubdiv は Apache License で提供されており、商用・非商用ともに無料で使用可能です。 これはピクサーが社内で使っているアニメーション映画制作用のソフトウェアと同一のコードです。 私達のねらいは統一されたアルゴリズムで同一の極限サーフェスを得られ、かつ様々なプラットフォームで 高パフォーマンスが得られるライブラリを提供することにより、サブディビジョンサーフェスを 形状表現のスタンダードとしてすすめていくことです。
Apache ライセンスの理由:私達は商用に適用しやすく、かつ関連特許も扱えるライセンスを 選び、Microsoft Public License と Apache ライセンスが候補になりました。当初は知的所有権 の取り扱いが良かった MSPL を採用していましたが、その後様々な要望を頂いた上で Apache ライセンスを再検討し、商標に関するわずかな変更を加えて Apache ライセンスとすることに しました。例えば、OpenSubdiv を製品に使うことはできますが、Luxo やピクサーのキャラクターを その製品のマーケティングのためなどに用いることはできません。
開発への参加
詳細は Contributing のページを御覧ください。
External Resources
- Microsoft Research:
- Charles Loop Matthias Niessner
- Pixar Research:
- Pixar R&D Portal