MayaのBatの書き方。

9割方自分がいつも忘れるからというのが理由で、MayaのBatの書き方をメモ。

基本的な書き方

render <option> <ScenesPath>  

 <option>部分は、必要なければ書かなくてもOKで とりあえずRenderingしてみたいという場合は、 render <scenesPath> になります。
が、そうすると レンダリングしたいMayaのバージョンが指定できないため(↑のように render としか書いていない場合のRenderingVerってどうやって指定されてるんだろう?)普通は 
“C:/Program Files/Autodesk/Maya2012/bin/render”
のようにフルパスで指定します。Maya2012 の箇所はRenderingしたいMayaのバージョンを入れる。
注意点は フルパスをダブルクォートで囲ってやる事。
Batファイルの使用として半角スペースが混じっていたりする場合 <> などの文字列を含む場合は、 “”で囲ってやらないとErrorになってしまいます。

 続いて各種オプションについて。
Optionは、レンダリングの解像度の指定やレンダラの選択、名前の付け方など RenderGlobalで指定する内容をBatで指定することができます。
このOption指定は、RenderGlobalの内容を上書きするものなので RenderGlobalで指定している場合であっても、Batの内容が優先されます。
Option内容一覧はMayaのHelp内 ユーザ ガイド > レンダリングとレンダー セットアップ > レンダリング ユーティリティ > レンダリング ユーティリティ ツール >  コマンド ライン レンダラの共通フラグを参照のこと。
以下よく使うものだけ書いてみます。

-r sw/hw/mr
レンダラの指定 Mayaソフトウェアは sw ハードウェアは hw メンタルレイは mr
-x 数字
Width
y 数字
Height
-of <フォーマット>
レンダリングする画像フォーマット iff tif sgi のように、レンダリングしたい解像度を記入
-fnc <数字>
フレーム/アニメーション拡張子(Frame/Animation Ext)を指定 3は name.#.ext のこと。
数字ではなく、 name.#.ext のような書き方でもOK(たぶん)
-pad <数字>
Frame Padding(連番の数字部分の桁)を指定。
 -s <数字>
スタートフレーム
-e <数字>
エンドフレーム
-cam <カメラ名>
レンダリングしたいカメラの名前
-rfs <数字>
レンダリングの連番のスタートをいくつにするのかを指定。
(マイナスフレームから始まるときに、1にすることでAfterで読めるようにする・・・などで使用)
 -im <名前>
連番のファイル名のプリフィックスを指定。
RenderGlobalのFileNamePrefixと同じように、 <RenderPass> <RenderLayer> のような名前の置き換えも使うことができる。
その場合は “”で囲ってやる必要がある 例) -im “fileName_<RenderPass>”
また、ファイル名だけではなく、フォルダを掘るなどもここに記入する(出力先は -rd で指定可能だが、<RenderPass> <RenderLayer>を使用した場合、なにもしないとフォルダが掘られず全パス・レイヤーが -rdで指定したフォルダにでてしまう。
それを回避するためには -im “<RenderPass>/fileName_<RenderPass>” のようにしてやればOK。
 -rd <FIlePath>
連番の書き出し先(のルートフォルダ)を指定。
ここには置き換え用の文字列(<RenderPass>のようなもの)は使用できない。使用したい場合は、いちばんのRootを -rdで指定して <> を使いたいところから -im に記述する。
-imで<RenderPass> <RenderLayer>を使っていない かつ シーン内にRenderableなLayer・Passがある場合、このフォルダの下にLayer・Passのフォルダが作られImageはその中に保存される

ざっと書いてみましたが、よく使うのはこのへんかなと思います。
複数のオプションを使うときは、
“C:/Program Files/Autodesk/Maya2012/bin/render” -x 640 -y 480 -s 1 -e 50 -cam camera -im “<RenderPass>/fileName_<RenderPass>”  -rd D:/test/image D:/test/scenes/test.mb
のように 半角スペースで区切って並べて書き、一番最後にレンダリングしたいシーンを書きます。
一見すると、いちいちBatファイルを作るのメンドクセー となりがちですが Batで書けるようにしておくと、レンダリングしたいBatをまとめて選択→コマンドプロンプトに投げる や、
1行1バッチコマンドで複数のバッチコマンドが書かれているファイルを作ってコピペ→コマンドプロンプトでペースト
とか、 batファイルのパスが複数書かれたBatファイルを作って、それを実行して、BatをなげるBatを作ったり と、複数シーンをまとめてレンダリングしたい場合 いちいちシーンを開かなくてもBatを実行すればOK という状態を作ることができるので、非常に便利です。

コメントを残す

メールアドレスが公開されることはありません。

*