Rendering

参考資料

UE4.23で搭載予定の破壊システム「Chaos」

Unreal Engine 4.23で搭載予定の高性能物理破壊システム「Chaos」のリアルタイム技術デモ映像が公開されています。ブルブル震えてるところもありますが、レンダリング品質も相まって凄そうに見えます。
https://www.unrealengine.com/en-US/blog/epic-games-launches-epic-megagrants-new-unreal-engine-technology-and-epic-online-services-at-gdc-2019

アルタイムで計算される「ハリウッドクオリティ」フィジクスと説明されているChaosは、Unreal Engineの既存のツールセットを使用するよりも複雑なリアルタイム破壊効果を生み出すことを可能にするらしい 。

 

Unreal Engine 4.22の新しいリアルタイムレイトレーシング機能のプレビュー映像も公開されてます。「Troll」は王女、妖精、そして魅惑的な王冠のシーンで、レイトレーシングが複雑な柔らかい影と反射で映画品質のライティングを作り出す方法を示します。

 

「Rebirth」は3人のアーティストのチームによって作成され、スタジオ最先端のフォトグラメトリー、アセットライブラリ、そしてUnreal Engineで新しいレベルのフォトリアリスティックな美しさを実演しています。ムービーは完全にUnreal Engine 4.21で照らされ、合成、編集、レンダリングされました。カスタムプラグインやコードはありません。

参考資料

Project Sol Part 3

NVIDIA RTXを搭載したリアルタイムレイトレーシングシネマティックシーンのデモ映像。Unreal Engine 4.22とGeForce RTX 2080 Ti GPU 1枚で実行することができるそうです。反射がレイトレースで正確なのが見てわかりますね。

CG News

Studio Lighting Kit for Modo

modo用のスタジオライティングKitのようです。価格は$25、現在はスプリングセール中のためクーポンコードを使用すると26日まで25%OFFで購入できるようです。コンセプトとしては以前販売されていたSilkに近い物のように見えますね。
https://gumroad.com/l/studiokit
https://community.foundry.com/discuss/topic/146235/new-studio-lighting-kit-for-modo

概要

Studio Lighting Kit for Modoを使用すると、リアルなスタジオライトをシーンに素早く効率的に追加できます。

このキットは2セットのアセンブリで構成されています。軽量で高速レンダリング用に最適化されたイメージベースのカードと、完全な3D照明器具です。

カードを使用すると、ソフトボックスからスポットライト、傘まで、16種類のスタジオライトを切り替えることができ、いつでもインタラクティブに変更できます。このリグを使用すると、反射の品質を大幅に制御でき、エリアライトやModoに付属の照明アセンブリでは不可能な結果を​​得ることができます。

イメージベースのアプローチを使用する主な利点は、ライトが非常に効率的かつクリーンにレンダリングされるため、ノイズや過度に長いレンダリング時間を気にせずにより速い結果を得ることができることです。

このキットは、Modo内のVrayおよびOctaneのサードパーティ製レンダリングエンジンと互換性があります(Octaneのマイナーな制限付き)。

付属のスタジオ照明用HDRは(リグなし)あらゆる3Dアプリケーションで使用することもできます。そのため、このキットは、自分の3DアプリケーションとしてModoを使用しないユーザーにとっても便利です。

CG News

Arnold GPU パブリックベータ版

Arnold GPUのパブリックベータ版を含むArnold 5.3が発表されました。2019年3月20日にダウンロード可能になるとのこと。Arnold GPUはMaya、3ds Max、Houdini、Cinema 4D、Katanaなどサポートされているすべてのプラグインで利用可能とのことです。

 

FXGuideに少し詳しい記事が掲載されています。
https://www.fxguide.com/quicktakes/arnold-gpu/

新機能

  • アダプティブサンプリングの品質とパフォーマンスが大幅に向上し、最終的な画質を損なうことなくレンダリング時間を短縮できます。
  • より現実的なシェーディングのためのRandomwalk SSSモードの改良。
  • Standard Surfaceの使いやすさが向上し、ユーザーはより細かく制御できます。
  • Operatorフレームワークの改善。これには、新しいIncludeオペレータと、それらを適用するためのよりアーティスト向けの方法が含まれます。
  • スカイドームライトのより良いサンプリング、直接照明ノイズの低減。
  • MaterialXのサポートを更新し、ユーザがシェーディングネットワークをMaterialXの外観として保存できるようにします。

GPUバージョンはNVIDIA用に最適化されています。Arnold GPUはNVIDIA OptiXフレームワークに基づいており、NVIDIA RTXテクノロジを活用するように最適化されています。

NVIDIA RTXはRTコア(レイトレーシング用に特別に設計されたGPUハードウェア)とAIアクセラレーション用のTensorコアを特徴とするNVIDIA Turing GPUアーキテクチャ上に構築されています。

 

重要なことの1つ、GPUとCPUからのレンダリング間の一致。

 

Arnold GPU in Maya

 

Arnold GPU rendering in 3ds Max

 

Arnold GPU interaction in C4D

 

NVIDIA RTXレイトレーシング高速化アプリケーション

  • Adobe Dimension & Substance Designer
  • Chaos Group V-Ray
  • Dassault Systèmes CATIALive Rendering & SOLIDWORKS Visualize 2019
  • Daz 3D Daz Studio
  • Enscape Enscape3D
  • Epic Games Unreal Engine 4.22
  • ESI Group IC.IDO 13.0
  • Foundry Modo
  • Isotropix Clarisse 4.0
  • Luxion KeyShot 9
  • OTOY Octane 2019.2
  • Pixar Renderman XPU
  • Redshift Renderer 3.0
  • Siemens NX Ray Traced Studio
  • MPCやGenesis Virtual Production System、Weta DigitalやGazeboRT など、主要なVFXスタジオでもNVDIA RTXを活用しています。
Tips

modoのアイテムインフルエンス

modoのアイテムインフルエンスについて書いてみます。アイテムインフルエンスはアイテムのトランスフォームを変形する機能です。アイテムインフルエンスとフォールオフを組み合わせると、複数のアイテムをデフォーマを使用してアニメーションすることができます。

 

インフルエンスを説明するために、少し回り道になりますがmodoのデフォーマ構成について書いてみます。

 

modoのデフォーマ

modoのデフォーマはプロシージャルモデリングやパーティクルシステムと同じようにノードベースの設計になっています。modoのデフォーマは主に以下のノードで構成されます。

  • アイテム
  • インフルエンス
  • エフェクタ

「アイテム」は変形対象になるアイテムです。「エフェクタ」はベンドやマグネットのように、どんな風に変形するか指定します。「インフルエンス」はどこを変形するか指定します(ウェイトマップやモーフマップなど)。

Soft Lag、Push Influence、MDD Influenceのようにインフルエンスとエフェクタ両方の機能を持った特殊なデフォーマも存在しますが、modoではこれらのノードを組み合わせることで、様々な変形アニメーションに対応しています。

 

アイテムインフルエンスを説明するために、ジェネラルインフルエンスについて書いてみます。

ジェネラルインフルエンス

ジェネラルインフルエンスはメッシュを変形する最も利用頻度の高いインフルエンスです。ベンドやスケルトン変形など一般的に「デフォーマ」でイメージされるメッシュ変形には「ジェネラルインフルエンス」が使用されます。

下の画像はベンド エフェクタを使用してメッシュを変形した例です。ベンドによってメッシュが変形しているのがわかると思います。

 

アイテムインフルエンス

アイテムインフルエンスはアイテムのトランスフォーム(移動/回転/スケール)を変形する機能です。ジェネラルインフルエンスと違いメッシュは変形しません。計算量が少ないので動作が軽いという特徴があります。

下の画像はベンドエフェクタを使用してトランスフォームを変形したものです。ベンドによってアイテムのトランスフォームが変形していますが、メッシュは変形していないことがわかると思います。

 

アイテムインフルエンスの使用方法

アイテムインフルエンスを使用するにはスケマティックを使用して、アイテムをアイテムインフルエンスにリンクします。

 

アイテムインフルエンスは「移動」「回転」「スケール」を個別に制御可能です。フォールオフを使用するとアイテムを連続的にアニメーションすることができます。

サンプルファイル

 

球体を「シャッター & グルー」でバラバラに粉砕したもの。アドバンスドビューポートなのでフレームレートが少し低いですが、アイテム数が380個くらいならリアルタイムで動きます。

 

modoのサンプルファイルにある車をアニメーションしてみた。アイテムの移動はアイテムインフルエンスの「スケールの影響」をOFFにして、スケールをアニメーションしています。元の組み上がってる状態がスケール100%。

 

アイテムインフルエンスを使用するとブレイクダウン映像のように画面の上からオブジェクトが降ってくるようなアニメーションや、オブジェクトが組み上がるようなアニメーションが手軽に作ることができて便利ですね。同じアイテムを大量にアニメーションする場合には、フォールオフプローブを使用したアニメーション制御がお勧めです。

 

modo 601ではじめてデフォーマを使ったとき、エフェクタとインフルエンスとが分かれてる理由がよくわかりませんでした。他のソフトではエフェクタとインフルエンスがセットで「デフォーマ」として扱われている場合が多かったため、modoのノード構成が複雑に思えました。601の頃はノードベースというのがよくわからなかったというのもあります。

今となってはエフェクタとインフルエンスが分かれてることで、エフェクタが違っても同じようにウェイトマップ等のインフルエンス機能を使用ことができることや、新しいインフルエンスが追加された場合でも既存のエフェクタを組み合わせて使用できるように現在のノード構成になっているのかなと思います。

CG News

finalRender for Maya オープンベータ開始

finalRender for Maya のオープンベータが開始されています。現在ライセンスが無料で公開されており、商用プロジェクトでの使用が許可されているとのことです。Max版にあるGPUレンダリングアーキテクチャ搭載前にフィードバックを収集するのが目的だそうです。

finalRenderはVray登場前にGIで存在感のあったレンダラーでした。頑張って欲しいですね。
https://www.cebas.com/?pid=productinfo&prd_id=203

finalRender for Mayaの機能

サポート
  • Windows 64 Bit/マルチコア
  • フォトメトリック、リアルエリアライト
ネットワークレンダリング
  • 真の分散ネットワークレンダリング
  • 標準ネットワークファームレンダリング、バッチレンダリングをサポート
カメラ
  • 実世界物理カメラ露光モデル
  • 複数の現実世界のカメラから選択できる
ライト&シェーダーから選択するリアルワールドカメラ
  • 高度なコースティックレンダリングエフェクト
  • 高度に最適化されたマルチレイヤースキンシェーダー
  • Mayaシェーディングネットワークのサポート

 

Depth Of Field

Caustics

Displacement Rendering

Render Elements

Hyper Shade

Photometric Lights

Network Rendering

Texture Baking

Keep Rendering

CG News

CHAOS CLOUDサービス開始

V-Rayのクラウドレンダリングサービス「CHAOS CLOUD」が利用可能になったようです。20クレジットを無料配布中のようです。
https://www.chaosgroup.com/cloud

 

概要

新しいクラウドレンダリングサービス、Chaos Cloudを開始しました。Chaos Cloudは5年間のR&Dと6か月間で600万フレームと50万以上の仕事をレンダリングした広範なベータプログラムによって支えられています。これらのテストのおかげで、アセットを追跡したり、ライセンスを管理したり、仮想マシンを設定したりすることなく、1フレームをレンダリングする時間でアニメーション全体をレンダリングできます。

 

Chaos Cloudを試すと20個の無料クレジットがもらえます

V-Ray for 3ds Max, Maya, Rhino, Cinema 4D, Revit, Modo, Houdini , SketchUp (Next and 3.6 editions)は、Chaos Cloud内のボタンを介してアクセス利用可能です。

Chaos Cloudの機能は次のとおりです。

SmartSync

SmartSyncテクノロジを使用すると、データをChaos Cloudに一度アップロードするだけで済みます。その後はシーンの変更された部分だけを再同期します。アップロード時間を最小限に抑え、作業中の迅速な繰り返しを保証します。

SmartVault

Chaos Cloudを介してアップロードされたすべてのデータは安全なSmartVaultデータベースに保存され、簡単に呼び戻したり追加のレンダリングを行うことができます。SmartVaultはアセットの「指紋」を追跡しているため、名前の付け方、使用されているシーン、またはローカルの場所に関係なく、それらを再度アップロードする必要はありません。

ライブビューとリモートコントロール

Chaos Cloudインターフェースは完全にブラウザベースであるため、スマートフォンを含むほぼすべてのデバイスからそれを制御できます。ライブビューとリモートコントロールを使用すると、ユーザーは進行状況を監視したり、画像をプレビューしたり、インターネットを使用してどこからでもレンダリングを一時停止したりキャンセルしたりできます。

 

価格設定

一部のクラウドレンダリングサービスとは異なり、Chaos Cloudの価格はすべて込みです。ライセンス、アップロード、ダウンロード、保存、またはすぐにレンダリングジョブを開始するための隠れた料金や追加料金はありません。

Chaos Cloudクレジットのパッケージを購入することができます。これは数量割引で利用できます。今のところパッケージは100クレジット$100から始まり、価格はより大きなパッケージでは1クレジットあたり55セントにまで下がります。

参考資料

アニマのインハウスツール「AnimaToonShader」「Animaline」

アニマさんのインハウスツール「AnimaToonShader」「Animaline」の紹介記事が公開されています。ラインがジオメトリベースなので「FoV補正」のようなパース的なゆがみを補正する機能が面白いですね。

このツールはアニメ「モンスターストライク」でも使用されてるそうです。アニマさんはLWのイメージがありましたが3dsMaxを経て、2018年からMAYAに移行されてるんですね。パイプラインやmGearを含め内製のツール開発されてるのは素晴らしい。

AnimalineとAnimaToonShaderのご紹介

 

続きを読む

Tips

modoでオーバースキャンレンダリング

画像を外側に広げた大きさでレンダリングしたい時に便利な、オーバースキャン レンダリングについて書いてみたいと思います。

 

オーバースキャンとは

もともとはブラウン管テレビの外周にある黒縁のように、データは存在するけど映像が見えない目隠しされている領域を「オーバースキャン」と言います。3DCGでもカメラフレーム外側の領域をレンダリングすることを「オーバースキャン レンダリング」と呼んだりします。

CGではコンポジットで被写界深度やレンズのゆがみを追加したとき画像の端が綺麗に処理されるように、または画面揺れを追加できるように、一般的な映像フォーマット(720p、1080p)より少し大きめのサイズでレンダリングすることが多いと思います。静止画でも印刷用途だと「裁ち落とし」部分まで画像を用意すると思います。

 

オーバースキャン スクリプト

オーバースキャン レンダリングしたいときは「bd_overscan.py」を使うと便利です。

 

オーバースキャン レンダリングの計算方法

大抵は3Dソフトごとにオーバースキャン レンダリング用のスクリプトや機能があるのですが、カメラのフィルムバックを使用すると簡単に計算することができます。

元となるカメラの設定です。

レンダー解像度
  • 幅 1280
  • 高さ 720
フィルムバック
  • フィルム幅 36 mm
  • 高さ 24 mm

カメラのフレームはこんな感じです。

デフォルト設定1280×720ピクセルのレンダリング結果です。オブジェクトを左右ギリギリに配置して、球体の影はフレームにかかるよう配置してます。このデータを使ってオーバースキャンを計算してみます。

 

パーセント指定する方法

「フィルムバック」を使用する方法

例えば120%に拡大したい場合は、現在の「レンダー解像度」と「フィルムバック」に1.2を掛けます。フィルムバックを使用するとカメラの「焦点長」を変更せずに済むので便利です。

レンダー解像度
  • 1280 * 1.2 = 1536
  • 720 * 1.2 = 864
フィルムバック
  • 36 mm * 1.2 = 43.2 mm
  • 24 mm * 1.2 = 28.8 mm

120%したプロパティです。

120%でレンダリングした画像です。

 

「焦点長」を使用する方法

フィルムバックの設定がないソフトの場合は「焦点長」を1.2で割る方法が使えます。3dsMaxの「レンズ」でも同じ計算方法が使えます。

レンダー解像度
  • 1280 * 1.2 = 1536
  • 720 * 1.2 = 864
焦点長
  • 50 mm/1.2 = 41.666 mm

120%したプロパティです。

120%でレンダリングした画像です。

ピクセル数を指定する方法

1280pixを1600pixのようにピクセル数を指定する場合は「変更したいサイズ÷現在のサイズ*フィルムバックサイズ」で計算できます。

レンダー解像度
  • 1280 → 1600
  • 720 → 900
フィルムバック
  • 1600 / 1280 * 36 mm = 45 mm
  • 900 / 720 * 24 mm = 30 mm

1280×720を1600×900に変更したプロパティです。

1280×720を1600×900でレンダリングした画像です。

 

ピクセル数を指定して「焦点長」を求めるにはアークタンジェントとかいう計算が必要っぽいので、今回はスルーします。どうして計算方法を書いたかというと、他のソフトでも使うことができるんじゃないかなと思いました。

modoでオーバースキャン レンダリングするときは、シーンを別名で保存/管理する方法もありますが、カメラの動きを修正した場合を考えてレンダーパス使う方法や、バッチレンダリング時にコマンドでオーバースキャンの値を設定する方法が柔軟性があって便利な気がしますね。

 

参考

https://www.pixelfondue.com/blog/2016/12/9/overscan-rendering

参考資料

インテルがオープンソースのイメージ デノイズ ライブラリを公開

IntelがApache 2.0ライセンスの下でOpen Image Denoiseと呼ばれる新しいオープンソースのイメージ デノイズライブラリを公開しました。
https://openimagedenoise.github.io/
https://github.com/OpenImageDenoise

 

オープンイメージDenoiseの概要

インテル Open Image Denoiseは、レイトレーシングでレンダリングされたイメージ用の高性能・高品質のデノイズ フィルターのコレクションです。Open Image DenoiseはIntel Rendering Frameworkの一部であり、Apache 2.0ライセンスの下でリリースされています。

Open Image Denoiseの目的は、レイトレーシングベースのレンダリングアプリケーションでレンダリング時間を大幅に短縮できる、オープンで高品質、効率的で使いやすいデノイズ ライブラリを提供することです。パストレーシングなどの確率論的レイトレーシング法に固有のモンテカルロノイズを除去し、1ピクセルあたりの必要なサンプル数を数桁(グランドトゥルースへの望ましい近さに応じて)減少させます。

Open Image Denoiseは、インテル64アーキテクチャー・ベースのCPUと互換アーキテクチャーをサポートしており、ラップトップからワークステーション、HPCシステムの計算ノードまで、あらゆるもので動作します。オフラインレンダリングだけでなく、使用するハードウェアによっては、インタラクティブレイトレーシングにも十分効率的です。

Open Image Denoiseは、ディープニューラルネットワーク用インテルマス・カーネル・ライブラリー(MKL-DNN)の上に構築され、インテルSSE4、AVX2、AVX-512などの最新の命令セットを最大限に活用して、高いノイズ除去性能を実現します。Open Image Denoiseを実行するには、少なくともSSE4.2をサポートするCPUが必要です。

CG News

Quixel Mixerベータ版を無料公開

QuixelはPBRテクスチャ編集ソフト「Mixer」のベータ版を無料公開すると発表しました。
https://quixel.com/blog/2019/1/30/the-year-of-mixer

ベータ期間は1年以上あるようです。Mixerの開発にはPhotoshopプラグインだったNDOとDDOのホームを作成する意図があると説明しています。MixerはMegascansの一部としてのみ利用可能でしたが、Quixelは無料ベータ期間が終了すると$99の永久ライセンス方式で利用可能になることも発表されました。

https://quixel.com/mixer

DDOは購入してましたが、新規に作り直すと発表され初期バージョンは無料公開されてました。現在はDDO自体がダウンロード出来ない状態で不安に思ってましたが、開発が続いてたということかな?

Tips

modoのレンダリングウィンドウで進行状況を表示しない方法

modoのレンダリングウィンドウで、レンダリングの進行状況を表示しない方法について書いてみます。

modoはレンダリング実行時に、オレンジ色のバケット単位でレンダリングの進行状況が表示されます。レンダリングの進捗が見れるのでミスがあった場合に気がつきやすくて便利なのですが、進捗表示はレンダリング速度に影響します。

進捗を100%サイズで表示していると画像のアップデートの処理ぶんレンダリングが遅くなり、3.313%のように表示サイズを小さくすると少し早くなります。これはレンダリングウィンドウのサイズを変えてレンダリングしてみると、速度に差が出るのを簡単に確認できると思います。
静止画であれば問題になることは少ないと思いますが、アニメーションの場合は少しでもレンダリングが速いほうが嬉しいと思います。

 

レンダリングコマンド

進行状況を表示しないようにするには、render.animation コマンドのオプションを使用します。

render.animation {C:\Output\FileName_} png16 2

コマンドフィールドに入力してEnterを押すと、進行状況を表示せずアニメーションのレンダリングが実行されます。レンダリングが完了すると最後のフレームがレンダーウィンドウに表示されます。

コマンドリストを検索すると、render.animation の引数について書かれているのがわかると思います。

render.animation <filename:string> <format:string> <options:integer> <group:&item>

<filename:string>は出力先のファイルパスとファイル名を設定します。ファイルパスのような引数は{}で囲んで指定します。<format:string>は出力形式、<options:integer> がレンダリングオプションです。<group:&item>はレンダーパスの設定です。今回レンダーパスは使用してないので省きました。引数がない場合はシーンの設定でレンダリングされます。

コマンドリストにはオプションに関する説明がありませんが、以下のようになってるらしいです。

  • 1 : NOT_WAITING // 次のフレームをレンダリングするまで待機しません
  • 2 : NO_IMAGE // 進捗画像を表示しない
  • 4 : IC_ONLY // ICのみレンダリング
  • 8 : NO_CLEANUP // レンダリング終了後にクリーンナップしない
  • 0 : RENDER_ANIIM // アニメーションをレンダリングしていることを示すためにrender.animationによって使用される。

今回は進捗を表示したくないので「2」を使用しました。このオプションはデバッグ用に用意された物で、現在でも上記のオプション通りに動作するかはわかりません。

アニメーションをレンダリングするときに使うと、時間の節約になって便利かもしれません。ちなみに進捗状況の表示サイズが大きいとレンダリングが遅くなる問題はAfter Effectsでも発生するし、modo同様にビューを縮小するとレンダリング速度が速くなります。

 

参考

https://community.foundry.com/discuss/post/721479

Tips

Mayaのコマンド ライン レンダラを使用したバッチレンダリング

Maya のコマンド ライン レンダラ Render.exe (mayabatch.exe)を使用したバッチレンダリングの方法について書いてみます。複数のシーンファイルを連続してレンダリングしたい場合に便利です。

 

バッチファイル作成

例えばCut_001.ma、Cut_002.ma、Cut_003.maのように複数のシーンファイルがあって、全てのシーンをレンダリングする場合について書いてみます。

テキストエディタを使用してRender.exeと.maファイルへのパスを記述し、拡張子を.batにして保存します。バッチファイルは行ごとにコマンドが実行されるので改行には注意してください。

“C:\Program Files\Autodesk\Maya2017\bin\Render.exe” -rd “C:\BatchFolder\Output” “C:\BatchFolder\Cut_001.ma”
“C:\Program Files\Autodesk\Maya2017\bin\Render.exe” -r sw -s 1 -e 5 -of tga -rd “C:\BatchFolder\Output” “C:\BatchFolder\Cut_002.ma”
“C:\Program Files\Autodesk\Maya2017\bin\Render.exe” -r sw -s 1 -e 12 -of png -im “Cut_003_” -fnc “name#.ext” -rd “C:\BatchFolder\Output” “C:\BatchFolder\Cut_003.ma”
cmd /k

コマンド ライン レンダラはフラグを設定して、シーンファイルの設定を変えてレンダリングすることができます。

1行目が最も単純な記述方法です。フラグ -rd はレンダリングした画像の出力先を指定するものです。

2行目 -r はレンダラの指定で sw はMayaソフトウェアです。mr はメンタルレイです。
-s 1 -e 5 はフレームレンジで、開始フレーム数と終了フレーム数です。
-of tgaはイメージフォーマット。
-rd “C:\BatchFolder\Output”はレンダリングした画像の出力先のディレクトリ指定です。

3行目 -im “Cut_003_” は出力ファイル名です。-im “<Camera>/<RenderLayer>/Cut_003_<Scene>_<RenderPass>” のように「ファイル名プリフィックス」を使用してフォルダを作成したりレンダーレイヤーの名前を使用することできます。
-fnc “name#.ext”は連番番号と拡張子のフォーマットの指定です。

基本的には「レンダー設定」のフラグを覚えると便利に使えます。

.batをダブルクリックするとコマンドプロンプトが起動してレンダリングが実行されます。レンダリングが終了したらコマンドプロンプトを閉じて完了です。

 

環境変数

Mayaはシステムの環境変数によってUIの言語やプラグインパスが定義されていますが、バッチファイルを使用すると環境変数を指定してMayaを起動することができます。

例えばMayaを英語で起動したい場合は、以下のようなバッチファイルを作成します。

SET MAYA_UI_LANGUAGE=en_EN
“C:\Program Files\Autodesk\Maya2017\bin\maya.exe”

バッチレンダリングでも同様のことができます。例えば以下のようにプラグイン(モジュール)のバージョンを指定してレンダリングすることができます。

SET MAYA_MODULE_PATH=C:\Modules\PluginVersion_100\
“C:\Program Files\Autodesk\Maya2017\bin\Render.exe” -r sw -s 1 -e 5 -of png -im “AAA_” -rd “C:\BatchFolder\Output” “C:\BatchFolder\Cut_001.ma”
SET MAYA_MODULE_PATH=C:\Modules\PluginVersion_130\
“C:\Program Files\Autodesk\Maya2017\bin\Render.exe” -r sw -s 1 -e 5 -of png -im “BBB_” -rd “C:\BatchFolder\Output” “C:\BatchFolder\Cut_001.ma”
SET MAYA_MODULE_PATH=C:\Modules\PluginVersion_151\
“C:\Program Files\Autodesk\Maya2017\bin\Render.exe” -r sw -s 1 -e 5 -of png -im “CCC_” -rd “C:\BatchFolder\Output” “C:\BatchFolder\Cut_001.ma”
cmd /k

Mayaはマイナーバージョンでも細かくバグが増えて動作がおかしくなることが多いので、Mayaに問題があるのかプラグインが問題かテストするときに、複数のプラグインバージョンでレンダリングをテストするときに便利です。

 

参考

コマンド ライン レンダラの共通フラグ

https://knowledge.autodesk.com/ja/support/maya/learn-explore/caas/CloudHelp/cloudhelp/2016/JPN/Maya/files/GUID-0280AB86-8ABE-4F75-B1B9-D5B7DBB7E25A-htm.html

環境変数

http://help.autodesk.com/view/MAYAUL/2016/JPN/?guid=GUID-925EB3B5-1839-45ED-AA2E-3184E3A45AC7

Tips

AfterEffectsでaerenderを使用したバッチレンダリング

After Effects のaerender.exeを使用したバッチレンダリング方法について書いてみます。複数のプロジェクトを連続してレンダリングしたい場合に便利です。

 

バッチファイル作成

例えばCut_001.aep、Cut_002.aep、Cut_003.aepのように複数のプロジェクトファイルがあって、全てのプロジェクトをレンダリングする場合について書いてみます。

テキストエディタを使用してaerender.exeと.aepファイルへのパスを記述し、拡張子を.batにして保存します。バッチファイルは行ごとにコマンドが実行されるので改行には注意してください。

“C:\Program Files\Adobe\Adobe After Effects CS6\Support Files\aerender.exe” -project C:\BatchFolder\Cut_001.aep
“C:\Program Files\Adobe\Adobe After Effects CS6\Support Files\aerender.exe” -project C:\BatchFolder\Cut_002.aep
“C:\Program Files\Adobe\Adobe After Effects CS6\Support Files\aerender.exe” -project C:\BatchFolder\Cut_003.aep
cmd /k

.batをダブルクリックするとコマンドプロンプトが起動してレンダリングが実行されます。レンダリングが終了したらコマンドプロンプトを閉じて完了です。

プロジェクトファイルは、あらかじめレンダーキューを追加してファイルの出力先を設定して「レンダリング」ボタンを押すだけの状態にしておく必要があります。

 

引数

aerenderは引数を使用してレンダリングするフレームやコンポジッションを指定することが出来ます。個人的には全く使わないけど、テストしたのでメモっておきます。

以下は「CompositionA」というコンポジッションをレンダリングして、任意のディレクトリにファイル出力する例です。

“C:\Program Files\Adobe\Adobe After Effects CS6\Support Files\aerender.exe” -project C:\BatchFolder\Cut_001.aep -comp “CompositionA” -output C:\BatchFolder\Output\Cut001_[####].psd
cmd /k

ちなみに -comp がないと -output を使用してファイルパスを変えられません。マニュアルには「引数を指定しない場合は、レンダーキュー内のコンポジションすべてがレンダリングされます。この場合は、–project、–log、–output、–v、–mem_usage および -close 引数のみが使用され、その他の引数は無視されます。」と記載されてますがCS6では動作しません。-comp がない場合は「-comp がないので-output引数は無視されます。」という警告がでます。

–output を使用すると出力パスと出力ファイル名を指定することができますが、拡張子を変えててもファイルフォーマットは変わらないようです。

 

監視フォルダーモード

バッチファイルを使用して監視フォルダーモードを実行することもできます。「監視フォルダーモード」は複数のPCがフォルダを監視し、レンダリング可能なプロジェクトがあればフレーム単位で分散レンダリングしてくれる機能です。

テキストエディタを使用してAfterFX.exeと、 -wf を使用して監視するディレクトリを記述し、拡張子を.batにして保存します。

“C:\Program Files\Adobe\Adobe After Effects CS6\Support Files\AfterFX.exe” -wf C:\BatchFolder\

「監視フォルダーモード」でレンダリングするには「レンダリング制御ファイル」 が必要です。ファイルメニューの「フォルダを収集」実行時に作成されます。

 

レンダリング制御ファイル

レンダリング制御ファイルは「フォルダを収集」を実行すると.aepと同じディレクトリに「プロジェクト名_RCF.txt」という形で作成されます。

テキストファイルの中身はこんな感じで、使用するPCの上限などが書かれてます。

After Effects 11.0v1 Render Control File
max_machines=5
num_machines=0
init=0
html_init=0
html_name=””

レンダリング完了後は以下のようになる。

After Effects 11.0v1 Render Control File
max_machines=5
num_machines=1
init=1
html_init=1
html_name=”Cut001_00.htm”

item1=(Finished,1,1,0)

レンダリングが完了するとレンダリング制御ファイルにレンダリング済みのフラグが書きこまれ、「監視フォルダーモード」のレンダリング対象から除外されます。「init=1」を「init=0」に変えると再度レンダリング対象になります。

 

参考

aerenderの引数はマニュアルに記載されています。
https://helpx.adobe.com/jp/after-effects/using/automated-rendering-network-rendering.html