Skip to main content

Posts

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...

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 を standalone mental ray で使いたい(4)

今回は例として 1 つだけ teapot を作成し,それに mia_material (Arch&Design) material を割り当てる. Export したファイルそのままでは 3dsmax の shader への依存があるので,mental ray standalone で rendering するのには多少都合が悪い.standalone を使う理由は,複数のマシンで一斉にレンダリングをすることができるためである.3dsmax の shader だけ render farm マシンにコピーしてもいいのかというライセンスの関係がよくわからないことと,ここでの目的はiray を使いたいということなので,3dsmax の shader の依存を除く方法をここに書いておく.あるいは,全ての render farm のマシンに 3dsmax をinstall することができれば問題はないが,3dsmax を走らせないマシンに3dsmax を install する意味はあまりない. 3dsdmax から Export した mi file をそのまま ray に渡すと, --- > ray -x on -v 5 00teapot_ex00.mi ... LINK 0.0  error  191007: cannot load 3dsmaxhair.dll, The specified module could not be found. ... LINK 0.0  error  191007: cannot load mayabase.dll, The specified module could not be found. ... LINK 0.0  error  191007: cannot load adskshaders.dll, The specified module could not be found. ... --- というエラーが発生する.これが 3dsmax 固有の shader である.利用しているマシンに3dsmax が install されている場合には,rayrc ファイルに以下の3dsmax への shader path を書く...

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

3dsmax のシーンを mi file に export する方法 1. mental ray rederer を選択する. Figure export_mi_1 にあるように,Render Set Up の Assign Renderer ロールアウトを開いて Production に mental ray Rendere を選択する. Figure export_mi_1 2. 3dmax から mi file を export する. Figure export_mi_2 にあるように,Render Set Up の Processing Tab を選択する.Export on Render を選択する前にまずはファイル名を選択する.ファイル名がないと,Export on Render のチェックが enable にならない.これは正直言って最初とまどった.Export したいのに,Export を選択できないのだ.選択してファイル名がないと warning を出してくれるとありがたいのだが. 次に Renderボタンを押すと mi file が export される. Figure export_mi_2 ところで,    「 Export するには Render ボタンを押す.」 というのも私にはなかなか難しい.    「 Export するには, Export ボタンを押す.」 ならばわかりやすいと思う.

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

iray では Shader をカスタマイスはできないと言っても iray には shaderはある.アーキテクチャ(mia_material, 3dsmax では Arch & Design) のinterface を持った shader が一つサポートされているのみということであった.ただ,実装はArch&Design ではなく,完全に新しい iray shader という.これは,ユーザが勉強しなおす必要がないようにとの配慮らしい.そのため,物理的に意味のないパラメータは無効になっている.今後,物理的に意味のある BRDF 系の shader はサポートされていく予定ということである.あと,volume のサポートは予定であって,iray の version 1 ではサポートされていないというのは残念だった. ユーザとしての問題は,iray が次の 3dsmax/Maya でサポートされるのかということである.iray を Maya から使えるかどうかは,Autodesk の決定であって,mental images としてはなんとも言えないという説明であった.ただ,mental ray の 3.8+ の standalone か,NVidia の RealityServer という製品では support される.(mental images のweb www.mentalimages.com を参照) しかし,どうやら Bunkspeed という選択肢もあるようだ. Bunkspeed iray demo: http://www.youtube.com/watch?v=t5cn4UNqBfY 私の場合,mental ray の standalone を使うことはできるので,次のバージョンがリリースされたら使ってみたい.ここでは,3dsmax から mi file をexport して,それを mental ray の standalone でレンダリングする方法を説明しよう. この方法はこれまで render farm を使う人だけに有用だったが,もし,irayが次の 3dsmax/Maya/XSI ではサポートされない場合には有用かもしれない.