2018年9月

CG News

Houdini 17 Sneak Peek

相変わらずエフェクト関連が凄そうですね。

Houdini 17には、GPUアクセラレーションマルチソルバーを含む クロス、ヘアー、ソフトボディ、粒、新しいホワイトウォーターソルバー、マテリアルベースの破壊フレームワーク、フェイシャルオートリグ、フルボディIK、アニメーションとモデリングワークフローの強化、 UV自動設定、GLTF I / O、gamedevツールなどがあります。

CG News

Foundry製品が学生向けに1年間無料化

Foundry製品(Nuke Studio、Mari、Modo、Katana 、CaraVR、3Delight )が学生向けに1年間無料で提供されるようです。
https://www.foundry.com/industries/education?_ga=2.247933582.842438022.1537836244-113635308.1486795389

modoはゲームエンジンとのブリッジ機能を提供してるので、ゲーム向けのアセット作成にはいいかもしれません。Nuke、Mari、Katanaはハリウッド映画の定番ソフトです。

申請は専用のフォームを使用して、大学のメールアドレスを使用して割引コードのチェックボックスをONにしてくださいとのこと。既にアカウントを作ってる場合は対象外なのか?
https://community.foundry.com/discuss/topic/143073/foundry-s-1st-year-free-program-for-students

 

さらに学生版から70%オフで商用ライセンスにアップグレードできるようです。 たとえば、永続的なPRODUCTION COLLECTIVEのライセンスが$2,179で、$6,120の節約になります。学生さんが羨ましい!

CG News

リアルタイムモーショングラフィックソフト「Notch Builder」

リアルタイムでモーショングラフィックのような映像を作成するソフト「Notch Builder」。現在はベータ版として販売中。価格はベース£99とプロ向けライセンスの年間£2,100。ちょっと面白そう。
https://www.notch.one/products/notch-builder/

概要

Notch Builderはギグ、ステージイベント、インスタレーション用のライブビジュアルを生成するために設計されたツールです。過去の使用方法は、U2とFoo FightersのツアービジュアルからBroadwayミュージカルFrozenまでさまざまです。

プロフェッショナル版はライブ再生用にメディアサーバーと直接統合するように設計されていますが、Base Editionは他のDCCツールと同様に標準のビデオフッテージをレンダリングします。

0.9.21ではリジッドボディダイナミックス、フェイシャルトラッキング、アレンビックサポートなど、450以上の新機能が追加されてるとのこと。

ノッチ・ビルダーは完全にノードベースのアプリケーションであり、デモではCinema 4DとHoudiniのクロスといったようなものがあります。

モデリングツールはありません。複雑なジオメトリはOBJ、FBX、または最新のAlembic形式、Cinema 4DまたはLightWaveシーンとしてインポートする必要があります。

シーンは、MIDI、ビデオ、またはモーションキャプチャのデータ入力(ストリーミングライブまたはオフライン)によって動かされ、ソフトウェアはMicrosoftのKinectおよびIntel RealSense 3Dカメラと統合されます。

レンダリングのために、ソフトウェアは独自のDirectXベースのエンジンを使用します。

このソフトウェアは、Cinema 4DのMoGraphツールセットから、RealFlowの.binとBlenderのポイントキャッシュファイル、CSV、および「選択されたクローンシステム」をインポートできます。

スクリプティングはPythonやC#ではなくJavaScriptを使用して行われます。イメージやテキストを取り込むためのRSSフィードを読むことができるなど、いくつかの珍しいオプションがあります。

 

CG News

3ds Max 2019.2 リリース

3ds Max 2019.2 がリリースされたようです。
https://area.autodesk.com/blogs/the-3ds-max-blog/introducing-3ds-max-20192/

 

流体

キャッシュされたシミュレーション データを簡単にロードして操作できるようになりました。 完成したシミュレーションで、各オブジェクトを個別に変換したり、再生をオフセットしたり、マテリアルを割り当てて任意の数をレンダリングまたは非表示にしたりすることができます。

Arnold による流体チャネル データのレンダリングのサポート。

液体および[流体ローダ](Fluid Loader)オブジェクトの表示およびレンダリング設定をコピーし、選択したターゲット オブジェクトに適用できるようになりました。

3ds Max セキュリティ ツール

3ds Max セキュリティ ツールは、悪意のある CRP や ALC のサードパーティ スクリプトからユーザを保護します。

Autodesk Drive

3ds Max サブスクリプションにこのクラウド ストレージ アプリケーションが追加されて、60 種類以上のオートデスクおよびサードパーティのファイルを表示できるようになりました。

Arnold

テクスチャのベイク処理用の最初のサポート。

Alembic ファイルの読み込みと書き出し

バージョン 1.7 にアップデートされた Alembic はインスタンスをサポート。Inspector Window でのツリー ビューと検索機能が改善され、3ds Max と Maya で共有されているファイルが UV と互換性を持つようになりました。

OSL (Open Shading Language)

OSL ソース エディタの改善点は、行番号の表示、より直感的なキーボード ショートカット、および一致するブラケットのハイライト表示などです。また、「マップを使用するリアリスティックモード」の場合に、より多くの OSL シェーダがビューポートでサポートされるようになりました。

CG News

ORB リリース

VideoCoPilotのフリープラグイン「ORB」がリリースされました。究極の3Dスフィアプラグインとのことで、惑星や衛星のような球体の作成に適した物のようです。
https://www.videocopilot.net/orb/

物理ベースシェーダー
  • 環境リフレクションマップ
  • モーションブラー
  • 高度なUV設定
アドバンスドイルミネーション
シャドーマスキング
  • ビルトインイルミネーション
  • 高度なイルミネーション オプション
  • After Effectsライトとシームレスに対応!
360°環境レンダリング
CG News

After Effects CC 2018 秋

After Effects CC 2018 の秋バージョンが発表になったようです。3Dレイヤーの深度が使えるようになるのはよさそうですね。
https://theblog.adobe.com/design-with-more-control-and-performance-improvements-in-after-effects-cc/CC

 

メッシュスカルプティング

パペットツールをより詳細に制御できる新しいパペットエンジンを導入しました。2種類の新しいピンタイプを追加。Mesh Sculptingをまったく新しいレベルにする新しいAdvanced PinsBend Pinsを使用してレイヤーを曲げたり、ねじったり、スケーリングしたり、ワープしたりします。

 

深度パス

After Effectsで3Dレイヤーを作成することができましたが、3Dチャンネルエフェクトは他のアプリケーションで生成されたレンダリングでのみ機能しました。
3Dコンテンツがどこから来ても、3Dレイヤーの深度パスにアクセスすることができます。 Classic 3DまたはCINEMA 4Dレンダラーのいずれかを使用して、任意の3DコンポジションからZ深度データを読み込みます。3Dチャンネルエフェクト(深度マット、被写界深度、フォグ3D)を3Dプリコンポに直接適用するか、3Dチャンネル抽出を使用して深度にアクセスします 。 ボーナスとして、3D Channel Extractは32ビット対応になりました。

レスポンシブ デザイン

すべてのインスタンスでキーフレームを移動することを心配することなく、コンポジションを時間伸縮できます。マスタープロパティとの連携も優れています。コンポジションをMotion Graphicsテンプレートとして書き出して、Premiereエディタに同じコントロールを与えます。

 

データ駆動型インフォグラフィックス

スプレッドシート駆動のインフォグラフィックテンプレートを設計できるようになり、編集者はデータを更新してコンテンツを動的に更新することができます。

さらに新しいモーショングラフィックスのテンプレートオーサリングの改良により、編集可能なパラメータを持つ整然としたモーショングラフィックステンプレートを、カスタム見出しと巻き上げを含むグループにまとめ、それぞれのコントロールを表示したり非表示にしたりすることができます。また、編集者がさまざまなフォントプロパティを変更できるようにすることもできます。(これはAfter EffectsとPremiereのユーザーからの一般的なリクエストでした。)

 

CG 日記

MayaでBackburnerのジョブ作成

MayaでBackburner使ってレンダリング回すメモ。

 

追加オプション

コマンド ライン レンダラのフラグを入力できる。ただしバッチファイルと異なりディレクトリ指定に\を使用できないので / で記述する必要がある。melの制限なのかな?

-rd //RenderPC/Share/img

 

マネージャー名

マネージャーを起動してるPC名を入力する。入力必須。

 

レンダラ パス

サーバーPCのMayaインストールディレクトリを入力する。マニュアルには「Maya は各レンダー ノードで同じ場所にインストールしなければなりません。」と書かれてるので、サーバーは「C:\Program Files\Autodesk\Maya2018」のように全て同じパスにインストールする必要がる。パスが混在すると以下のエラーが出てレンダリングが実行できない。

Cmdjob adapter: Create Cmdjob process error: 2

ネットワークパスを設定してもレンダリングを実行することができたけど、プラグインやModuleで問題がでて上手くレンダリングが回らない場合があった。

 

シーンファイルはネットワーク共有など、全てのPCからアクセス可能なディレクトリに置く必要がある。ファイルにアクセスできない場合は以下のエラーが出る。

Error message: Cmdjob adapter: Process exit abnormally,Exit code is 211

Tips

modoのファー使用時のレンダリング設定

ファーを使用するときのレンダリング設定について書いてみたいと思います。
ファーマテリアルを使用するとノイズやチラツキが発生しやすくなります。メッシュが密集するのが原因ですが、以下の設定を変えることで改善します。

  • 「間接サンプル」「放射照度」「反射サンプル」などサンプル値を高くする
  • アンチエイリアシングを高くする

 

サンプル数

タイムラプスで使用した草を使って、どのサンプルがどの要素に影響しているか調べました。まずはmodoのデフォルト設定、「間接照明」の「跳ね返り」は 2 です。

デフォルト

アンチエイリアシング : 8サンプル/ピクセル
シェーディング率 : 0.5
間接サンプル : 64
放射照度 : 256


300%にズームした画像です。ファーの表面でノイズが多いのが確認できます。

 

シェーディング率

念のため「シェーディング率」を0に設定してレンダリングしてみた。

アンチエイリアシング : 8サンプル/ピクセル
シェーディング率 : 0.0
間接サンプル : 64
放射照度 : 256

シェーディング率の記事で書いた通り、「シェーディング率」を低く設定してもノイズへの影響は少ないです。

 

放射照度

GIノイズに影響する「放射照度」の値を上げてみます。

アンチエイリアシング : 8サンプル/ピクセル
シェーディング率 : 0.5
間接サンプル : 64
放射照度 : 512

 

「放射照度」は白い平面のノイズには影響がありましたが、ファーの表面のノイズに影響がないことがわかります。

 

 

間接サンプル

「間接サンプル」の値を上げてみます。

アンチエイリアシング : 8サンプル/ピクセル
シェーディング率 : 0.5
間接サンプル : 256
放射照度 : 256

ファーの表面のノイズが改善されました。ファーのノイズの原因は「放射照度」よりも「間接照明」の「間接サンプル」がより影響することがわかりました。

 

 

 アンチエイリアシング

ファーの形状は「円柱」と「ストリップ」が選択できます。草の場合は厚みのない「ストリップ」を使うんじゃないかと思います。

ですが「ストリップ」を使用するとカメラとポリゴンが垂直になるファーが、破線のようにとぎれてレンダリングされることがあります。板ポリゴンをカメラに垂直の位置でレンダリングすると、厚みがないのでレンダリングされないのと同じような問題です。ファーの場合は多少曲がった形状になることが多いので、アンチエイリアシングのサンプル数を上げることで改善します。

アンチエイリアシング : 8サンプル/ピクセル

 

アンチエイリアシング : 16サンプル/ピクセル

 

アンチエイリアシング : 32サンプル/ピクセル

アンチエイリアシングはファーが細い場合にも効果的です。厚みのないファーが V-Ray Fur で廃止されてるらしいのは、やはり途切れてレンダリングされてしまうからなのかな?

フレームパス

ファーを最も綺麗にレンダリングする最終手段として「フレームパス」があります。「フレームパス」は同じフレームを複数回レンダリングして合成することで、ファー、モーションブラー、被写界深度を柔らかくレンダリングする機能です。とても効果が高いですが、レンダリング時間が長くなります。

フレームパス : 2

ファーのランダムシードを変えてレンダリングして合成するような動作なので、ファーの量が多くなってる。

 

フレームパス : 4

 

ファーのレンダリングに何が影響しているのかがわかれば、効率的に設定を詰めることがでるようになると思います。
次回はファーのレンダリング設定をふまえてヘアーマテリアルをレンダリングしようと思いましたが、ガイドをダイナミックカーブで動かそうとすると、modo 10以降は計算が変な気がしますね。

Tips

modoのアンチエイリアシングとシェーディング率

modoのシェーディング率について書いてみたいと思います。ぼけてないシャープな反射、影、テクスチャを綺麗にレンダリングするには「シェーディング率」を0.1に設定してレンダリングした方がいいという話です。

一般的にレンダリングの綺麗さは以下のパラメータで決まります。ここでいう綺麗さはピクセルの品質のことです。GIの計算とかシェーディングアルゴリズムよりもCGの基礎の話です。

  • アンチエイリアシング
  • シェーディング率
  • サンプル数

 

アンチエイリアシングとは

アンチエイリアシングはレンダリング画像のジャギを滑らかにする処理です。アンチエイリアシングを使用するとチラツキがなくなり自然なアニメーションを作成することができます。
単純なアンチエイリアシング処理だとゲームで使われていたポストプロセス処理があります。周辺のピクセルの平均色を使用する方法でFXAAやTXAAというやつです。アンチエイリアシングの詳細はこちらの記事がわかりやすいです。

 

しかし3DCGは無限にズーム可能なので、ポストプロセスのようにピクセル単位で色を決めると情報が欠落してしまい正確なピクセル色になりません。アンチエイリアシングがポストプロセス処理のゲームを遊んだとき、オブジェクトの境界でチラツキ(クローリー)が発生するのを見かけたことがあると思います。

以下の画像はNvidia コントロールパネルを使用してmodoのビューポートにFXAAを適用したものです。

 

オブジェクトの境界を300%に拡大した画像です。FXAAはポストエフェクトなので静止してる場合はアンチエイリアシングが掛かって綺麗に見えますが、ビューが動くと階段状のチラツキ(クローリー)が発生しているのが確認できます。

 

ゲームは応答速度が重要なのでジャギやチラツキは許容されますが、映像目的のプリレンダリングではチラツキやノイズは好まれません。このため昔から3Dソフトのアンチエイリアシング処理は、1ピクセルを分割しサブピクセルをサンプリングしてピクセルの色を決定します。

例えば1ピクセルを4分割する場合、アンチエイリアシングがない状態で4倍の解像度でレンダリングするのと同じくらいの計算コストが掛かります。アンチエイリアシングのサンプル数を高くすることで、正確なピクセル色を得ることができますがレンダリング時間が長くなってしまいます。

 

全てのピクセルを分割するとレンダリング時間が長くなるので、レンダリング時間を短くする工夫として、3Dソフトのレンダラーはオブジェクトの境界を集中的にアンチエイリアシング処理するのが一般的です。

 

たとえば3dsMaxのスキャンラインレンダラーでレンダリングした画像です。Maxのスキャンラインレンダラーは2000年頃からほとんど変わってなくて、デフォルトでは鏡面部分のシェーディングでサブピクセルがほとんど考慮されない設定になってます。

 

同じ問題はmodoでも発生します。下の画像はmodoのデフォルト設定でレンダリングした画像です。球体の輪郭に比べて、シェーディング部分がジャギってるのがわかると思います。

 

ここまで前置きです。シェーディング部分のジャギを軽減するために使用するのが「シェーディング率」です。レダリングパフォーマンス上げるために、アンチエイリアシングからシェーディングを切り離すために考案されました。

 

シェーディング率

「シェーディング率」はシェーディング部分のサンプリングを増やすことでジャギを軽減します。反射、影、テクスチャのジャギが発生したら、シェーディング率を0.1や0のように小さな値を設定することで改善することができます。

シェーディング率はアンチエイリアシングと関係していて、シェーディング率 0.5は1ピクセルあたり4サンプル、0.25は16サンプリング、0.1は1ピクセルあたり100サンプリングのようにサンプルが増えるらしい。

 

下の画像は「シェーディング率」 の比較画像です。シェーディング部分のジャギが改善しているのを確認することができます。

 

リファインメントしきい値 と リファインメントシェーディング率

「シェーディング率」の下には「リファインメントシェーディング率」「リファインメントしきい値」というパラメータがあります。これはレンダリングを最適化するためのパラメータです。「リファインメントしきい値」で設定されたしきい値内のピクセルのみ「リファインメントシェーディング率」で設定された値でサンプリングします。

modoは「シェーディング率」と「リファインメントシェーディング率」で値が低い方の設定を採用するようです。デフォルトでは「シェーディング率」が0.5、「リファインメントシェーディング率」が1.0に設定されているため、「リファインメントシェーディング率」が使用されることはないようです。通常は「シェーディング率」だけ設定しておけば問題ないと思います。

「リファインメントしきい値」の動作が気になたのでアニメーションしてみました。
色の差が大きいピクセルから徐々に滑らかになるのが確認できます。有効に動作しそうなのは50%以下で、0%になると全てのピクセルがサンプリングされるためテクスチャがぼけたように見えます。

左はテクスチャのみ、右はテクスチャとバンプです。バンプを使用するとシェーディングでチラツキが発生しやすくなります。

 

UV確認用のテクスチャ、テクスチャの模様が滑らかに変化するのが確認できます。AEにいれてコマ送りでみると変化がよくわかると思います。

 

反射サンプル と シェーディング率

「ブラー反射」を使用した場合にノイズが軽減するかテストしてみました。シェーディング率を下げるとノイズが少しぼけますが、ノイズそのものへの影響が少ないことが確認できます。反射やGIのノイズを軽減したい場合は、サンプル数を増やした方がよいです。

反射サンプル:64、シェーディング率:0.5

 

反射サンプル:64、シェーディング率:0.1

 

反射サンプル:1024、シェーディング率:0.5

 

反射サンプル:1024、シェーディング率:0.1

 

「シェーディング率」はRender設定の他に、Shaderにもパラメータが存在します。

Renderのシェーディング率はシーン内の全てのマテリアルに影響しますが、Shaderは特定のマテリアルだけシェーディング率を上げることができます。
modoはRender設定とShaderのうち値が低い方のシェーディング率を採用するようです。またShaderはサンプリングのグループを結合する役目があるようです(後述)。アニメーションなどでレンダリング時間を最適化したい場合は、Shader単位で設定が変えられるのが便利ですね。

 

Shaded AA Samples Output

modoのレンダー出力には、アンチエイリアシングとシェーディング率のサンプリングを確認するための出力「Shaded AA Samples Output」があります。Shaded AA Samples Outputはピクセルのサンプリングの割合を視覚化した物で、1回のサンプリングで終了しているピクセルは青、設定の上限までサンプリングされたピクセルが赤で表示されます。適切なサンプリングが行われてるか確認するのに役立ちます。シェーディング率を0.1にすると全てのピクセルが赤になります。

以下の画像はシェーディング率0.5で、アンチエイリアシングの設定を上げた場合のShaded AA Samples Outputです。アンチエイリアシングを上げると青になるのはピクセルあたりのサンプリング数が増えるため、サンプリングの上限に達する前に計算が打ち切られてるってことかな?このことからアンチエイリアシングを上げた場合はシェーディング率を0.1で固定するよりは、シェーディング率を0.25とか適度に設定した方が効率的にレンダリングできるのかもしれない。

アンチエイリアシング : 8サンプル/ピクセル

アンチエイリアシング : 16サンプル/ピクセル

アンチエイリアシング : 32サンプル/ピクセル

アンチエイリアシング : 64サンプル/ピクセル

色がブロックのようにまとまってるのは、シェーディング部分の効率化による物です。サーフェース上のサンプリングが近い場合、グループとして結合することでシェディングの計算を効率化しているとのことです。

このサンプリングのグループ化は、Shaderのシェーディング率の値によって許容量が決定されるらしい。シェーディング率が1.0の場合、ピクセル内のすべてのサンプルが1つのグループとしてシェーディングけされる可能性がある。

 

 

modoのデフォルトのレンダリング設定は、速さを優先しているように思います。最終レンダリング時には「シェーディング率」は0.1のように低い値に設定するのがお勧めです。「シェーディング率」を下げてモアレやチラツキが酷いときに、はじめてアンチエイリアシングのサンプル数を上げるのがよいのではないでしょうか。

MentalRayやArnoldのようなプロダクション向けのレンダラーは、デフォルトでシェーディング部分をある程度サンプリングする設定になってます。そのため、はじめてレンダリングしたときはレンダリングの遅さが気になったりします。

ちなみにMaxでは「スーパーサンプリング」を使用するすことでシェーディング部分のジャギを消すことができます。

 

参考

https://community.foundry.com/discuss/post/339862
https://community.foundry.com/discuss/post/808199
https://www.linkedin.com/pulse/modo-renderer-gets-overhaul-shane-griffith/

Modoのレンダラは、2003年にグローバルイルミネーション技法と既存のプロダクションレンダラのパフォーマンスの問題点を改善するために設計されました。当時はグローバルイルミネーションがプロダクションで使用されることはほとんどありませんでした。高パフォーマンスレンダリングの鍵は、高品質のアンチエイリアシング(つまりアンチエイリアシングからシェーディングを切り離す)を維持しながら、直接表示されるサーフェスのシェーディング評価の回数を減らすことでした。PRManのREYESアルゴリズムは、各ピクセル内のより高い密度での視認性を評価する前に低密度でマイクロポリゴンのグリッドをシェーディングすることによってこれを達成した。

デフォルトmodoレンダラのパフォーマンス上の利点の秘密は、まず高密度での可視性のサンプリングとREYESの順序を逆にし、次に遅延シェーディングフェーズ(後にLuxology社が特許を取得したアイデア)の前に近くの類似したサンプルをマージすることです。すべてのサーフェスをさいの目に切ってマイクロポリゴンにする必要がないため、この方法はレイトレーシングに適していました。その後、物理ベースのレンダリングの人気が高まるにつれ、この方法が有益であることがわかりました。