ロシア映画“Attraction”のVFXメイキング

むずかしいチュートリアルばかりでは楽しくないので、VFXが素晴らしい作品紹介も、このブログでやってきます。

今週はロシア映画「Attraction」です。2017年1/26公開だそうです。
http://www.artofvfx.com/attraction-prityazhenie/


ロシア語で内容が全然判りませんが(笑)、VFXのデザインと迫力が素晴らしいと思ったのでお伝えしようかと(日本で上映しないでしょう・・・)

コンセプトアートとBreakdownはこちら。
ほぼフルCGです。街の破壊とエイリアンのアニメーションが素晴らしい!
制作は「Main Road Post Vfx Studio」という会社で、モスクワにあるそうです。

文系デザイナーのためのmaya MEL/Python基礎の基礎②

先週の続きです。まずは今週の便利なMELツールの紹介です。



ダウンロードして解凍すると、このようなファイルがあります。「Help.png」があるので開いてみます。


どうやらマニュアルのようです。「1」はドキュメントのmaya→prefs→iconsに「icons」の中身を入れなさい、とあります。ここでMayaは起動してはいけません。
ここで注意なのですが、日本語版Mayaの場合は、ja_JP→prefs→iconsなのです。

「2」はmayaを起動して、スクリプトエディタでFile→LoadScriptでMELを選びなさい、とあります。

「3」でFile→Save Script toSelfを実行します。

名前を付けます。「Mesure」にしておきます。

わざとやったのですが、実は5文字しか表示できません。
右クリックから「編集」します。

前回と同じく「アイコン名」のフォルダアイコンをクリックすると、フォキュメンとの「icons」フォルダに行くので「4」にあるように「K_MeasureTool_SHELF_ICON.png」を選びます。起動アイコンができますからクリックしてみてください。

これで今日のMeasureToolsは起動できました。この手順がほぼ正しいMELの登録方法です。

このツールは頂点モードで2点を選ぶと長さを図ってくれたり、その値をオブジェクト上に配置できます。インチ、フィート、ヤードの換算もついてます。ゴミ箱で消せるのも嬉しいですね。

「スケール合ってるのかな?」という時、便利ですね。
ネットでダウンロードできるMELのツールは大体この方法で設定できますのでチャレンジしてみてください。

さて今日はプログラムを書いてみましょう。まず、今日の「MeasureTool_v1_1.mel」をテキストエディタで開いてみましょう。
MeasureToolをダウンロードして設定してない人はやらないで読み進めてOKです。

600行も意味不明な呪文が出て来ます・・・いえいえ、怖がらないでちょっとよく見ると、
proc ?????()
{
?????????
}
みたいな箇所がいくつかあります。

プログラムとはコンピュータ(この場合はmaya)へ命令します。
適当に言っても理解してくれません。ルールが必要なのです。

「命令」とは先週やりましたが、Mayaの操作はすべて命令なのでしたね?

前回もやりましたがスクリプトエディタを綺麗にしておきます。
では、プリミティブのポリゴン箱を出して、Xに3移動して、ハイパーシェードでBlinnで赤くしてください。

上のウインドウに、なんかたくさん書かれています。
最初にある「CreatePolygonCube;」の次の行以降をハイライトしてコピーします。
Mayaを「新規」にしてスクリプトエディタの下のウインドウにペーストしてCTRL+Enterしてください。

すると、箱が勝手に出て、X=3、でBlinnで赤くなってます。スクリプトエディタは上の段がMayaが何をしているか、されたか、を記録しているのです。それ自体がMELなのです。
新規作成して、そのMELを下のウインドウで実行すれば、どんなに長い手順でも一瞬で実行してしまいます。

// 結果: pCube1 polyCube1 //」の行はMayaが「やったよ」と報告しているのです。
そもそも「//」というのが最初にあるのは命令ではないのです。
それを全部削除して、先程話をした、proc test() { }を書き入れます。


これでMELの完成です。testはなんでも構いません。これを「test.mel」で保存します。

Mayaを再度新規作成し、できた「test.mel」をスクリプトエディタへドラッグして、CTRL+Enterします・・・何も起きないですが、下のウインドウが綺麗になったのでプログラムは正解です。

図のように「test;」(セミコロン)とキー入力してCTRL+Enterします。すると赤い箱がX=3で出ます。

プログラム自体の意味は良く解らなくても結構です。MayaはMELの命令を1つ1つ実行します。それを人間がやっても無駄です。なので命令を複数書いた行を以下のルールで書くのです。

proc 自分で作った新しい命令() {
MEL命令1;
MEL命令2;
MEL命令3;
 :
 :
}

するとMayaは設定された命令通りに手間のかかる作業を一気に実行するのです。
今日はここまでです。次回は1つ1つの命令の意味を説明します。

なぜRedshiftなの? & mayaでライト設定-その1

連載一週間ほど経ちましたが、何でRedshiftにこだわるのか?というと、単純に「コスト」です。
やはり、レンダリング設定と連番画像の生成、その後のやり直しなど実際に制作されている方であれば、時間の「コスト」は苦労の種であるのはご経験あるかと思います。
昨日、一昨日のHoudini、3dsmaxなどソフトを複数使う場合のライセンスの「コスト」も軽減できます。

レンダリング速度は、CGWorld様のこの記事で比較があります。残念ながら、この記事ではRedShiftがあまり計算速度が速くなく、GPUメモリ不足で計算できないなど、評判が良くないのです。

気になったのが、このテストに使っているGPUが「Quadro 4000」なのが原因ではないかと思われます。
こちらのRedshiftのオフィシャルのFAQでは、
「GTX750Ti, GTX970, GTX980, GTX980Ti, GTX1070, GTX1080, TITAN X, Quadro M6000などのCUDA計算能力が3.5以上、3GB VRAM以上のMaxwell,PascalベースNVIDIA GPU」
を推奨する、とあります。

Quadro 4000」は、2010年頃の発売で約10万円、メモリが2GBのOpenGL用でCUDAはコア475MHz、256プロセッサコアなのです。これはMayaには最適です。
現在、RedShiftが推奨する昨年発売の「GTX1080」は約6万円でメモリが10GBでCUDAはコア1607MHz、2560プロセッサコアなのです。

なので、あくまで個人的な意見ですが、RedShiftが本来の計算能力が発揮するにはGPUをあえて安いゲーム用にするほうが良いのではないか、と考えます。さらに複数枚使う「SLI」を使うことで1台のマシンで更に高速にすることが可能です。
「でも、QuadroでないとMayaのサポートが・・・」と思われるかもしれませんが、現在Autodeskのこちらのサポート情報でもGTXシリーズは認定されています。

では本当に速いのか?という情報ですがボーンデジタル様の昨年10月のブログでありました!GTX970を使ってArnoldでのレンダリングの約7倍でRedshiftの勝利です!
XgenでにヘアーやHoudiniでの対比もあります。ぜひ御覧ください。

また、ここの海外のブログで対比した内容があり、V-rayRTが45分に対し、RedShiftが8分を切るという結果があります。

とはいえ、先程のCGWorld様の記事の続きにもありますが、NURBS、Fluid 、Foamが使えない仕様であるなどRedShiftも問題あります。

計算速度も、このブロクでいずれ書いていきたいと思います。

 

さて、今日のお話はRedShiftの「ライト」のお話です。残念ながら事例はmayaに戻りますが、先日の通り、3dsmaxやHoudiniでも考え方やパラメーターは同じですので、応用してください。

モデルはロボットCに再登場してもらい、Domeライトは一旦削除しました。

Domeライトで既にやっているので、redshiftメニューからでも、「作成」→「ライト」でも結構です。ライトは種類が多いので今日はPhysical Lightをまず解説します。

これは「エリアライトでは?」と思う方、正解でもあり、間違いでもあります。


RedshiftのPhysical LightはアトリビュートでArea,Point,Spot,Directonalの4つに変更できるのです。


Pointライト


Spotライト


Directionalライト


ライトの種類はColorとTemperature(色温度)の選択ができます。


さらにUnit Typeを選べます。

これにDomeライトを組み合わせて「画作り」をしていきます。

今日はここまでです。次回はカメラのお話です。