オープンソースのグローバルイルミネーションレンダラのMitsuba↓
Mitsuba – physically based renderer
Mitsubaは、PBRTのスタイルに則った研究指向のレンダリングシステムで、多くのインスピレーションを得ています。
Mitsubaは移植性の高いC++で記述されており、偏りのない手法と偏りのない手法を実装し、現在のCPUアーキテクチャを対象とした高度な最適化が含まれています。
Mitsubaは非常にモジュール式です:コアライブラリの小さなセットと、マテリアルや光源から完全なレンダリングアルゴリズムに至るまでの機能を実装する100種類を超えるプラグインで構成されています。
他のオープンソースレンダラーと比較して、MitsubaはMetropolis Light Transportのパスベースの定式化やボリュメトリックモデリングアプローチなどの実験的レンダリング技術に重点を置いています。
そのため、まだ主流のレンダラーへの道を見つけていないようなテクニックを試してみたい人にとっては本当に興味があるかもしれませんし、この領域での研究のための強固な基盤も提供します。
このレンダラーは現在Linux, MacOS X, Microsoft Windowsに対応し、x86, x86_64プラットフォームでのSSE2最適化を利用しています。
これまでのところ、その主な用途はコンピューターグラフィックスのアルゴリズム開発のテストベッドとしてでしたが、他にも多くの興味深いアプリケーションがあります。
Mitsubaには、シーンをインタラクティブに探索するためのコマンドラインインターフェイスとグラフィカルフロントエンドが付属しています。
ナビゲート中、大まかなプレビューが表示され、すべての動きが停止するとすぐに精度が向上します。
視点が選択されると、幅広いレンダリング技術を使用して画像を生成し、それらのパラメーターをプログラム内から調整できます。
ソースコードはGitHubにある↓
https://github.com/mitsuba-renderer/mitsuba
いつか試そうと思ってだいぶ時間が経ってしまったんだけど、MitsubaにはMayaと連携するためのプラグインもあるので試してみた。
https://github.com/mitsuba-renderer/mitsuba
ところが、このプラグイン、想像してたのと違って、あんまり連携感がない。Maya上のオブジェクトを描画できるわけだけど、もろもろの設定はMayaのGUIではなく、結局xmlの設定ファイルを直接いじるタイプだった。(MayaのGUI上でxmlを編集するエディタが立ち上がる。)
そんで、もうちょっと調べてみたら、有志(?)でMitsubaをPythonでラップしてプラグインっぽくした人がいた。→Installing MitsubaForMaya
プラグインコード(Python)とサンプルプロジェクトがGitHubに上がっている。→MitsubaForMaya
で、やってみた。このプラグインは外部のMitsubaのexeを呼び出す操作をラップしてMayaのGUI操作ライクにしてくれてるんだけど、コードの中に絶対パスを書いていて、エラーまみれになった。GUIはよくできてたんだけどね。もうちょっと中身読めば修正できそうな気もする。
で、いったんMayaで動かすのはあきらめて、MitsubaのスタンドアローンのGUIアプリを実行してみた。レンダリングするシーンファイルのサンプルが公式のダウンロードページに置いてある。試したのは毛糸のマフラーみたいなやつ。Siggraph2010で発表されたこの論文のデータね。
まるで実写みたい。
Pythonのインターフェイスがあるみたいだから、上手く使えばAPIっぽく自前のプログラムから使えると思うんだけど、なかなかサンプルが見当たらない。
http://rgl.epfl.ch/publications/NimierDavidVicini2019Mitsuba2
2019年 追記:Siggraph Asia 2019でMitsuba 2が発表された↓

関連記事
Point Cloud Libraryに動画フォーマットが追...
書籍『The Art of Mystical Beasts』...
ZBrushでアヴァン・ガメラを作ってみる 頭頂部と首周りを...
OpenCV 3.1のsfmモジュールを試す
Mitsuba 2:オープンソースの物理ベースレンダラ
UnityでPoint Cloudを表示する方法
BSDF: (Bidirectional scatterin...
OpenVDB:3Dボリュームデータ処理ライブラリ
ROSでガンダムを動かす
ZBrushのZmodelerとDynamic Subdiv...
ZBrushでアヴァン・ガメラを作ってみる 甲羅の修正・脚の...
C#で使える遺伝的アルゴリズムライブラリ『GeneticSh...
組み込み向けのWindows OS 『Windows Emb...
『ゴジラ キング・オブ・モンスターズ』のVFXブレイクダウン
Unreal Engine 5の情報が公開された!
ZBrushでアヴァン・ガメラを作ってみる パーツ分割
Maya LTでFBIK(Full Body IK)
AMIMOTO(PVM版)で作成したインスタンスをAMIMO...
Faceshiftで表情をキャプチャしてBlender上でM...
機械学習手法『Random Forest』
Pythonのソースコードに特化した検索エンジン『Nulle...
CLO:服飾デザインツール
Unite 2014の動画
GAN (Generative Adversarial Ne...
ZBrushで仮面ライダー3号を造る 仮面編 PolyGro...
網元AMIで作ったWordpressサイトのインスタンスをt...
Verilog HDL
MetaHumanの頭部をBlenderで編集できるアドオン
Adobe Photoshop CS5の新機能
WordPress on Windows Azure
機械学習のオープンソースソフトウェアフォーラム『mloss(...
UnityでShaderの入力パラメータとして行列を渡す
色んな三面図があるサイト
ZBrushでアヴァン・ガメラを作ってみる 全体のバランス調...
Unityで360度ステレオVR動画を作る
オープンソースのテクスチャマッピングシステム『Ptex』
『手を動かしながら学ぶエンジニアのためのデータサイエンス』ハ...
BlenderのPython環境にPyTorchをインストー...
3分の動画でプログラミングを学習できるサイト『ドットインスト...
ドットインストールのWordPress入門レッスン
Unity Scriptコーディング→Unreal Engi...
『ローグ・ワン/スター・ウォーズ・ストーリー』のVFXブレイ...



コメント