Skip to main content

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 には行ったことがありません) 何か iray のデモがあることでしょう.

これで shader conversion for iray 編は一区切りです.

Comments

Popular posts from this blog

iray blog unofficial translation: ノイズだらけの画像

以下は iray dev blog の個人的な翻訳です. この翻訳は iray 開発者あるいはNVIDIA とはまったく関係がありません. 原文:  http://blog.irayrender.com/post/12964041473/noisy-pictures 物理的に正しいレイトレーサあるいはパストレーサを用いるレンダラが直面する主な問題があります.それは完全にノイズのない画像を生成するには長いレンダリング時間がかかるというものです. 残念なことにこれは(準-)モンテカルロ法に基づくアルゴリズムが一般に持つ性質によるものです.これらの手法では数学的に期待値の持つエラーが線形に消えていくことはありません. irayにとってこれが意味することは,ノイズの総量は1フレームをレンダリングする際に使うサンプルの数(あるいは総時間)に直接に比例しないということです.このためにレンダリングの最初の頃のステップで減っていくノイズの量は,後で減っていくノイズの量に比べて少ないように見えます.つまり収束がだんだん遅くなっていくような印象を受けるのです. この事実を回避するために,多くのレンダラは通常ある仕事を省略しようとします.たとえば,レンダラの中にはいくつかの物理的な効果を無視したり,レンダリング結果の無偏向性(un-biasedness)をあきらめたりします.その他の技術としては特殊な発見的手法を用いてサンプルをフィルタし,ノイズをぼかしてしまうというものがあります.あるいは単純に様々な芸術的な方法に依存する方法,たとえば,根底にあるレンダリングのアルゴリズム/魔法に影響する沢山のスイッチを用意して,それをいじりまわすという方法です. しかし iray の一つの大きなデザインゴールは,インストールしたらそのままいつでも全てが正しく動作し,沢山のパラメータをいじりまわすことは必要ないというものです.私の正直な意見としては,パラメータの数は 0 であるべきです.そうであれば,アーティストやデザイナは実際のレンダリングされるコンテンツに完全に集中できるようになり,小難しい深い数学の詳細を知る必要はありません.また,一貫性のないアルゴリズムはまったく使うべきではないと思います.そういうアルゴリズムを使わなくてはいけないかわいそうなアーティストが見るのは,あ

mental ray/iray の camera の用語に関して気がついたこと.

もともと mental ray のカメラは pinhole camera であったので,通常のカメラと違う用語の利用があるため,ここに示しておく. aperture : これは film の width である.レンズの開口径とは関係がない.mental ray あるいは iray/neuray のカメラはもともと pinhole camera なので,レンズのサイズというものはなかった. focal : これはレンズの位置からセンサーの位置までの距離である.pinhole camera ではピントはどこにでも合うので focal length の意味はないが,aperture と focal から horizontal 方向の field of view が計算できるのでそのためにあるようだ. aspect ratio : これは film の aspect ratio である.解像度やカメラの形状とは関係がない.aspect ratio = film width/film height である.aperture, focal, そして aspect ratio を使うと鉛直方向の field of view が計算できることは注意しておいてよいだろう. mental ray/iray camera model (pinhole camera) without lens shader   今のカメラは depth of field などができるように拡張されているので,この用語は混乱しやすい.depth of field のために lens_radius や focus_plane_distance という parameter を持つ lens shader がある. カメラに関しての記述は Andy Kopra の Writing mentalray Shaders の 24 章がわかり易い. ところで今年の春に mental image は完全に NVidia の子会社に統合された http://www.mentalimages.com ようだ.会社は NVidia ARC (NVidia Advanced Rendering Center) という名前になった. SIGGRAPH では NVidia は今後も men