とあるゲームプログラマの挑戦と敗北の歴史

UE4とプログラミングとmayaとpythonとhtmlとマラソンを中心に情報を発信する元「技術ブログを目指すブログ」から再始動した毎日の日々を発信するブログです。

UE4:オンラインラーニング(UnrealEditorの基本-マテリアル)

UE4オンラインラーニング
UnrealEditorの基本-マテリアル
を受講した際のおぼえ書きです。

https://learn.unrealengine.com/course/3740803



物理ベースレンダリングについてのドキュメント
わかりやすく記述されているのでこちらを読むべきです。(日本語)
https://docs.unrealengine.com/ja/RenderingAndGraphics/Materials/PhysicallyBased/index.html
f:id:toncrimentan_w:20210128114554p:plain


物理ベースに関しては以下の4つのピンを理解できれば大丈夫とのこと
・BaseColor(アルベド
・Roughness
・Metallic
・Specular


ベースカラー(BaseColor)
ベースカラーです。
その名の通り素材の基本色です。

素材例:
木炭 0.02
新しいアスファルト 0.02
摩耗したアスファルト 0.08
むきだしの土壌 0.13
草 0.21
砂漠の砂 0.36
新しいコンクリート 0.51
氷河 0.56
新雪 0.81
鉄 (0.560, 0.570, 0.580)
銀 (0.972, 0.960, 0.915)
アルミニウム (0.913, 0.921, 0.925)
金 (1.000, 0.766, 0.336)
銅 (0.955, 0.637, 0.538)
クロム (0.550, 0.556, 0.554)
ニッケル (0.660, 0.609, 0.526)
チタン (0.542, 0.497, 0.449)
コバルト (0.662, 0.655, 0.634)
プラチナ (0.672, 0.637, 0.585)


ラフネス(Roughness)
ざらざら感、反射しにくさ、さびていたりする感です。


メタリック(Metallic)
金属かどうかです。
基本的には 0 or 1 をいれるべきです。
中途半端な表現が必要な場合はラフネスで調整するべきとのこと


スペキュラー(Specular)
ライトを反射する能力です。

素材例:
デフォルト値は0.5
ガラス 0.5
プラスチック 0.5
石英 0.570
氷 0.224
水 0.255
牛乳 0.277
皮 0.35



スターターコンテンツの追加
コンテンツブラウザから
インポート>機能またはコンテンツパックを追加
表示されるウィンドウを利用して後からスターターコンテンツを追加することができます。
f:id:toncrimentan_w:20210128115345p:plain


マテリアルエディタの背景はepicの本社だった。
f:id:toncrimentan_w:20210128115536p:plain



コンテンツブラウザで選択したメッシュでのプレビュー
・コンテンツブラウザでメッシュを選択
・マテリアルエディタのプレビューボタンをクリック
で選択したモデルでプレビューできます。
f:id:toncrimentan_w:20210128115705p:plain



ファンクションはダブルクリックすると中身が見れます。
f:id:toncrimentan_w:20210128115912p:plain


マテリアルを作る際のヒント
すでに用意されている関数がたくさんあるため
自作する前に確認すること


シンプル表示
コネクタをOFFにすることで
各ノードごとの表示がシンプルになり確認しやすくなります。
f:id:toncrimentan_w:20210128120610p:plain



マテリアルインスタンス
周知のとおりマテリアルの作成方法は、
マテリアルを右クリック>マテリアルインスタンスを作成
f:id:toncrimentan_w:20210128120804p:plain



メタリックの違いによる反射と屈折表現

メタリック0、プラスティックのような場合は
反射は白くなり、屈折表現はなくなります。

メタリック1、金属のようなの場合は
反射はまわりの色が入り、屈折表現があります
f:id:toncrimentan_w:20210128121338p:plain



ノードの詳細表示
Ctr+Altでノードの詳細を表示することができます。(英語)
f:id:toncrimentan_w:20210128121456p:plain



ピンの変数へ昇格方法
ピンを右クリック>パラメータへ昇格
でパラメータノードを作ることができます
※BPエディタとは少し違います
f:id:toncrimentan_w:20210128121734p:plain



サンプラータイプ指定
TextureSampleParameterのSamplerTypeは
ベースカラー用テクスチャと、法線用テクスチャで指定方法を変える必要があります。
ベースカラー:   Color
ノーマル(法線用):Normal
f:id:toncrimentan_w:20210128121958p:plain



リフレクションキャプチャ
配置が完了したら、
ビルド>リフレクションキャプチャをビルド
をクリックでビルドする必要があります。
f:id:toncrimentan_w:20210128122107p:plain



実際にできたものはこちら
f:id:toncrimentan_w:20210128122252p:plain
f:id:toncrimentan_w:20210128122449p:plain



物理ベースレンダリングについて初めに読むべき重要なコースでした。
ベースカラー、ラフネス、メタリック、スペキュラー
この4つを覚えておくだけでも重要です。
ベースカラー用テクスチャ、ノーマル用テクスチャによってサンプラーの指定方法が違うので注意が必要です。