Skip to main content

iray を standalone mental ray で使いたい(1)

* 現時点では iray は NVidia のRealityServer でないと入手できない.次の 3dsmax/Maya/XSI でサポートされることを期待してこの blog を書きます.

GDC の Keynote や,SIGGRAPH ASIA 2009 の booth で NVidia の子会社のmental images が iray というレンダラのデモをしていた.

GDC NVidia iray demo (YouTube)
mental image's iray page

間接光をシミュレートするのは mental ray や,他のレンダラでもある程度できるが,final gather とか Photon map とかはちょっと物理的には怪しい近似手法であり,正しい解に収束するとは限らない.それに最適化のパラメータがいろいろあって難しい.

また,これらの手法は時間がかかるので,見えない光源を置いて間接光の影響を手でシミュレートするというようなことをしたりする.このirayは path tracing を brute force で実行する.しかしそれでは現在の計算機ではまだ力不足なので,GPU に実装して GPU クラスタで計算するという方法らしい.上記の YouTube での GDC のデモの画像は interactive でこの質と,かなりすごいと思うが,このデモでは Tesla を15 枚使っているというレベルのようだ.(いったいいくらするんだろう?) SIGGRAPHASIA 2009 では Quadro 5800 FX を 5 枚使っているという計算機でデモをしていた.そう言えば東工大にはテスラやフェルミのクラスタがあるというのだが,iray を走らせたらどうなるのか個人的に知りたい.

iray は物理シミュレーションをするので, SIGGRAPH ASIA のデモでは buildin の shader しか使えないという説明であった.特殊なことをしたい時やカスタマイズした時にはどうするのか,という質問には,

  1. iray でサポートする物理学はこの世界にあるものだけで,それ以外の物理学はサポートする予定がない.

  2. 物理学に沿わないことをしたい場合には,mental ray か,reality server の software renderer を使って欲しい.

ということであった.考えてみれば,物理シミュレーションをするわけで,物理学をカスタマイズするにはどうするのかという質問をしていた.iray はアーキテクチャや車のデザイン関係など物理的な結果が欲しい人をターゲットにしたレンダラということだ.ただ,プロダクションの人やアーティストは物理学よりも欲しい絵ができるかということで,その場合には,今後とも mentalray でのサポートをするということであった.つまり,

   1. 物理シミュレーションをしたい人: iray
   2. カスタマイズしたい人: software renderer(例: mental ray) + MetaSL

ということだ.

Comments

Popular posts from this blog

メンタルレイの構成

図 1 にメンタルレイの通常の構成を示します. 図 1 メンタルレイの構成 F1: Application scene file: アプリケーション固有のファイルで .max (3dsmax), .ma または .mb (Maya),.scn (XSI) などです. F2: .mi file: mental ray の scene description ファイルフォーマットです.多くの mental ray をサポートしている DCC ソフトウェアは .mi ファイルをエクスポート(export)する機能があります.(A2) 1. Application: DCC (Digital contents creation)ソフトウェア (Maya, 3DSMax, XSI, ...) や CAD プログラムです. 2. mental ray core: メンタルレイのコアプログラムです.メンタルレイにはライブラリ版とstand alone 版があります.ライブラリバージョンのメンタルレイは,アプリケーションからトランスレータ(translator) というモジュールを通じて命令やデータを受けとり,レンダリングを実行します.トランスレータというのは DCC アプリケーションの内部データを mental ray のデータに翻訳(translation)するプログラムです.スタンドアロンバージョンのメンタルレイは.mi ファイルを読み込み,レンダリングを実行します.メンタルレイはコア自体だけでは動作せず,シェーダが常に必要なことに注意して下さい.シェーダがプラグインであることを考えれば,理解しやすいと思います. 3. mental ray base shader: メンタルレイがデフォルトでサポートしているシェーダです.基本的な光源(lihgt),基本的なマテリアル(material),たとえば 最も簡単なシェーダとしては Lambert シェーダなどがあります. 4. Application shaders: 各 DCC ソフトウェアや,CAD ソフトが独自に持っているシェーダです.3DSMax は 3dsmaxshaders, Maya は mayabase などというシェーダパッケージを持っています. 5. Custom shaders: ユーザ独自のシェーダや,メン...

iray を standalone mental ray で使いたい(5)

これまでは standalone mental ray のための export の話でしたが,ようやくshader conversion の話になります. iray は mia_material のみのサポートなので,3dsmax シーン中のshader をできるだけ自動で mia_material (Arch&Design) に変換します.おそらく他の shader もサポートしてくるでしょうが,CUDA で動くことを考えれば,divergence の問題のために,いろんな shaderを使うだけでレンダラの性能が落ちることは自然です.それに新しいレンダラですから, mental images が native にサポートしているshader にした方が問題は少ないことも予想できます.ですから変換した方が良いと個人的に思いました. 3dsmax の shader を mia_material にコンバートする max script のコードをここ( https://code.google.com/p/shitohichi-tools/source/browse/#hg/mentalray/max2mia_material )に置きました.これは Zap の blog の VRay shader to mia_material converter ( http://mentalraytips.blogspot.com/ ) を元に作ったものです.Zap さんありがとうございます.2つのファイルを download し,max script として open して run とするとシーン中の shader を convert します.yh_max2mia_material.ms が main のファイルでこちらを評価します.(yh_material_object_map.ms は subroutine 集です.) もちろん,自動で全部コンバートすることは不可能です.とりえあえずレンダリングできるというレベルです.それでも一つのシーンには多数のshader があるので,以前作成したシーンを変換するスタート地点として使えると思います. 来週から SIGGRAPH です.(私は SIGGRAPH には行ったことがありません) 何か ira...

iray blog unofficial translation: はじめまして, iray ユーザの皆さん!

以下は iray dev blog の個人的な翻訳です. この翻訳は iray 開発者あるいはNVIDIA とはまったく関係がありません. 原文:  http://blog.irayrender.com/post/12196196279/welcome はじめまして, iray ユーザの皆さん! 私達はここで iray に関係するマテリアルの知識,新たな機能のデモ,そしてワークフローの例,などについて直接あなたがたに語りかける機会を得ることができ,とても嬉しく思っています.このブログではirayを使う上で役に立ちそうなヒントやトリック,そしてユーザの皆さんからの興味深い利用例をポストできればと思っています.そして,たぶん我々が iray を設計した際に考えたことからビジョンや哲学めいたものまでご覧に入れられるかもしれません.どうかご期待下さい. iray 開発チーム