OpenSubdiv による GPU テッセレーションの WIP 動画

投稿日時 2014年05月14日 | カテゴリ: 技術・開発関連

5/16追記:テストビルドが公開されています。下記を参照してください。また、要約が一行抜けていました。お詫びします。

元記事:OpenSubdiv GPU Tessellation WIP | Blender Code

Sergey 氏による記事です。



Blender Git リポジトリの opensubdiv-modifier ブランチの現状を簡単にご紹介します。これは Blender での GPU によるテッセレーション(ポリゴンの細分化)の統合の初期段階で、まったく完成しておらず、master に入れるにはまだ多大な作業が必要です。
とはいえ、いくつかクールな成果があります。文章で説明するより、動画を観た方が早いです!

P.S. 現在、ドラゴンの飛行サイクルアニメが何の CPU のオーバーヘッドもなく、60FPS以上で動いています!

P.P.S. こちらにその.blend ファイルがあります。


なお、途中の要約部分の意味は以下のとおり。

  • アニメーションソフトウェアでのリアルタイム再生に使用されることが目的
  • メッシュ構造はそのまま
  • スカルプティングは OpenSubdiv の恩恵を受けることはありません
  • 複数のバックエンド(backend)を利用可能:CPU、OpenMP、OpenCL、CUDA、GLSL
  • GPUテッセレーションが有効なのはSubSurf(細分化曲面)モディファイアーがスタックの最後にある時のみ(5/16修正)


また、動画中では、従来の SubSurf(曲面再分割)モディファイアー(0.2FPS)、OpenSubdiv ブランチの(以降同じ)、CPUでの処理(4FPS)、OpenMPによる CPU マルチスレッド処理(7FPS)、OpenCL 使用による GPU処理(以降同じ)(30FPS)、CUDA使用(40FPS)、GLSL 使用(30FPS)による比較が行われています。

上記の60FPSというのは恐らく動画記録後の成果による物だと思われます。

Blenderでアニメーションを作成してみようとしたが、重さに心が折れてしまった人も、もちろん負けずに頑張って制作している人も、皆が幸せになれそうな機能です。


5/16追記テストビルドが公開されています(Windows 64ビット版)。

ただし、昨日の深夜に一度公開されていたもの(11199_opensubdiv-modifier_win7.x64-76bed92.7z)はOpensubdiv用のオプションがないため動作しません。(11202_opensubdiv-modifier_win7.x64-7743a56.7z)の方をダウンロードしてください。また、CUDA は現時点ではありません(OpenMP、GLSLの使用は可)。

当方の環境(i7、GTX660)で上記のドラゴンのblendファイルを試したところ、CPUで8FPS、OpenMPで6.5FPS、GLSLで30FPSになりました。

なお、この機能はまだまだ不安定であり、オブジェクトやプロパティが消えたり、アーマチュアのデータの破壊やクラッシュなどの報告もされていますので、blendファイルやユーザー設定を上書き保存したりしないでください。ちなみに自分のblendファイルを試したところ無残に変形した後クラッシュしました。



Blender.jpにて更に多くのニュース記事をよむことができます
https://blender.jp

このニュース記事が掲載されているURL:
https://blender.jp/modules/news/index.php?page=article&storyid=3711