Unityをレンダラとして活用する

社会人になって以降、CGレンダリングのテクニカルな話から遠ざかって久しい。
最近のレンダリング技術のトレンドをまるで知らない。最新のMaya2018ではもうmentalrayがバンドルされなくなったと聞く。(でもお値段据え置き)
今のオフラインレンダリングでデファクトスタンダードなレンダラって何なんだろうか。

一方、ここ数年でUnrealEngineやUnityなど、無料で利用できるゲームエンジンのレンダラ品質がリアルタイムとは思えないほど向上している。映画「ローグ・ワン/スター・ウォーズ・ストーリー」では一部のCGカットにUnrealEngine4が使われているらしい。

無料で使えて品質も良いなら、活用しない手は無いな。と思ってUnityへこのモデルをインポートしてみた。↓



特にMeshのリダクションなどはせず、ZBrushそのままのメッシュをOBJでインポートしてレンダリング。

Post Processing Stackも併用してみた



偏光塗料みたいな質感はちゃんとShader作らないと無理だろうな。
CGから3Dプリント (クリミア・エンゲルス)
近年流行りの3Dプリントサービスを利用して、ZBrushでモデリングした怪人っぽいキャラクターを3Dプリントしてみた。このページは3D出力物を模型として仕上げるまでの記録。DMM.Makeの3Dプリントサービスを利用し、この3パーツの出力費...


Unityはデフォルトだと処理負荷軽減のため、カメラからの距離に応じて影の描画を省略しちゃうのね。QualitySettingsShadow Distanceで設定されている距離より遠くは影が描画されないらしい。
https://docs.unity3d.com/ja/520/Manual/class-QualitySettings.html

Post-processing StackでScreen Space Ambient Occlusionもかかる。



Specularのある質感は、自由視点でこそ効果を発揮するので、ぜひ動画にしたいところ。
MayaでもZBrushでも、作業画面上だとどれぐらい影が落ちるのかよくわからなくて、オイラはいつもモデリング作業の終わりが見えなくなりがち。気分転換も兼ねてモデルをちゃんとレンダリングしてみるのも大事な気がする。

Physically Based Rendering

UnrealEngineに後れを取ったけど、Unityもバージョン5からPBR(Physically Based Rendering)に則ったShaderを用意するようになったので質感設定がとても直感的。

Unity公式ブログの2年前の記事にStandard Shaderのパラメータチャートが掲載されている。
https://blogs.unity3d.com/jp/2015/02/18/working-with-physically-based-shading-a-practical-approach/





そしてShaderパラメータのキャリブレーション用Assetが配布されている。
https://www.assetstore.unity3d.com/jp/#!/content/25422

Unityエヴァンジェリストの小林信行氏がAllegorithmic社の教材「THE COMPREHENSIVE PBR GUIDE」の翻訳版を公開している。





https://learnopengl.com/#!PBR/Theory

UnityのGI系の機能の使い方はまだあんまりよく知らない。。。

Post Processing Stack

以前はImageEffectsとしてバラバラだったポスト処理が1つのパイプラインにまとまったAssetが配布されている。
https://www.assetstore.unity3d.com/jp/#!/content/83912

で、さらにこのPost Processing Stackのパラメータを動的に制御するScriptをUnityエヴァンジェリスト高橋啓治郎氏が公開している。
https://github.com/keijiro/PostProcessingUtilities

リアルタイムレンダリングを想定すると、リトポロジーとかノーマルマップ焼き付けとかが割と重要になってくるな。

関連記事

ZBrushでアヴァン・ガメラを作ってみる 爪とトゲを追加

JavaによるCGプログラミング入門サイト (日本語)

Mayaのシェーディングノードの区分

Deep Fluids:流体シミュレーションをディープラーニ...

ポリゴン用各種イテレータと関数セット

ZBrushからBlenderへモデルをインポート

ラクガキの立体化 胴体の追加

UnityのGameObjectの向きをScriptで制御す...

DUSt3R:3Dコンピュータービジョンの基盤モデル

Iridescence:プロトタイピング向け軽量3D可視化ラ...

OpenVDB:3Dボリュームデータ処理ライブラリ

BlenderのPython環境にPyTorchをインストー...

ZBrushでゴジラ2001を作ってみる 身体のシルエット出...

映画『ジュラシック・ワールド/炎の王国』のVFXブレイクダウ...

ラクガキの立体化 モールドの追加

ZBrushでアヴァン・ガメラを作ってみる パーツ分割

ほとんど反射的な行動

3Dモデルを立体視で確認できるVRアプリを作っている

Alice Vision:オープンソースのPhotogram...

ZBrushの練習 手のモデリング

CycleGAN:ドメイン関係を学習した画像変換

ラクガキの立体化 分割ラインの変更・バランス調整

Vancouver Film Schoolのデモリール

ゴジラ(2014)のディティール制作の舞台裏

Mitsuba 2:オープンソースの物理ベースレンダラ

なりたい自分?

画像生成AI Stable Diffusionで遊ぶ

UnityプロジェクトをGitHubで管理する

Shader.jp:リアルタイム3DCG技術をあつかうサイト

Phongの表現力パネェ 材質別のPhong Shader用...

SIGGRAPH ASIAのマスコット

SIGGRAPH Asia

布地のシワの法則性

サンプルコードにも間違いはある?

ZBrushで仮面ライダー3号を造る 仮面編 リファレンス画...

Autodesk CompositeとAutodesk Ma...

UnityでLight Shaftを表現する

UnityユーザーがUnreal Engineの使い方を学ぶ...

PyTorch3D:3Dコンピュータービジョンライブラリ

Kaolin:3Dディープラーニング用のPyTorchライブ...

Python for Unity:UnityEditorでP...

ZBrushのUV MasterでUV展開

コメント