Language:
Page Info
Tags:
Skill Level:
Engine Version:

光沢のあるマテリアルの作成方法

日常的に接するすべての物質には、何らかの光沢があります。 UE4 内で、メタリック、スペキュラ (鏡面反射色)、ラフネス (粗さ) のマテリアル入力を使用してオブジェクトの光沢をシミュレーションすることができます。 以下の操作ガイドでは、マテリアルに光沢を適用する方法に関して知っておくべき内容を説明します。

光沢

光沢とはライトを反射するサーフェスの作用です。 サーフェスが反射できるライトが増えるほど、サーフェスの光沢は増します。 サーフェスが反射できるライトが減るほど、サーフェスの光沢は少なくなります。 ライトを反射するサーフェスの作用は、環境内のあらゆるものの影響を受けます。オブジェクトに付着した非常に小さな埃から、オブジェクトに触れたときに手でこすった脂分まで様々です。 こうしたものは、ライトを反射するサーフェスの作用に影響を及ぼす可能性があります。

ラフネスと光沢

ラフネスはサーフェスの光沢を決めるうえで大きな役割を果たします。 サーフェスのラフネスが増すほど、光沢は減ります。 これに対して、ラフネスが減るほど、光沢は強くなります。 以下は、ラフネスがどのように光沢に影響を及ぼすかの例です。

roughness_nonmetal.png

一番左の球体は、ラフネス値が 0 です。かなり反射しているのがわかります。 球体が右側に動くにつれて光沢が少なくなっていくのがわかります。 これは、1 に到達するまでラフネス値が少しづつ増えているからです。

メタリックと光沢

メタリック オブジェクトの光沢は、ラフネスによって制御されます。 マテリアルにより多くのラフネスが適用されると、メタリックの光沢は低下します。 ラフネスがないと、メタルは非常に光沢があるものになります。 以下は、メタリックがラフネスにどのように影響を受けるかを表したものです。

roughness_metal.png

一番左側の球体は、メタリック値 1 でラフネス値は 0 です。従って、非常に光沢があるものに見えます。 しかい、一番右にある球体は、メタリック値 1 でラフネス値は 1 です。 これで、メタルは使い込んだような、くすんだ外観になります。

スペキュラと光沢

99 パーセントのケースではスペキュラ入力を調整する必要はなく、ほとんどのマテリアルではデフォルト値の 0.5 で十分でしょう。

スペキュラは、マテリアルの光沢にも影響を及ぼします。 スペキュラ値を 1 に近づけると、マテリアルにおける反射とスペキュラのハイライトがより強くなり、明確になります。 この値を 0 に近づけると、反射とスペキュラのハイライトは、ほとんどなくなるまで弱まっていきます。 以下は、スペキュラ値が 0 から 1 に変更されるに従い反射の強度とスペキュラのハイライトがどのように影響を受けるかを表したものです。

Shiny_Specular.png

他の入力と同様に、スペキュラはラフネスの影響をかなり受けます。 スペキュラ入力を 1 に設定しても、スペキュラのエフェクトは、ラフネスを 1 に設定することで打ち消されてしまいます。 スペキュラを調整しても、メタリックが有効になっている場合には何の効果ももたらしません。 繰り返しますが、99 パーセント のケースではこの値を有効にする必要はなく、デフォルト値の 0.5 で最良の結果が得られるでしょう。

マテリアルで光沢を使用する

マテリアルを光沢のあるものにするには、以下の手順に従います。

このチュートリアルは、プロジェクトに スターター コンテンツ を含むと利用できるコンテンツに使用します。プロジェクトにスターター コンテンツを含まなかった場合は、 プロジェクト間のコンテンツの移動に関する情報は Migrating コンテンツ ページでご覧ください。こうすることで、スターター コンテンツを新規作成せずに追加することができます。

  1. まず コンテンツ ブラウザ右クリック し、ポップアップ メニューの [Create Basic Asset (基本アセットを作成)] セクションから [Material] を選択します。 選択すると新規マテリアルが作成されます。

    Create_New_Material.png

  2. マテリアルに Shiny_Material という名前を付けて、コンテンツ ブラウザ でマテリアルを マウスの左ボタンダブル クリック して開きます。

  3. マテリアルを開いた状態で、以下のテクスチャとマテリアル式ノードをマテリアルグラフに追加します。テクスチャは、スターター コンテンツのテクスチャ フォルダに入っていることに注意してください。

    • テクスチャ サンプル: T_Metal_Gold_D x 1

    • テクスチャ サンプル: T_Metal_Gold_N x 1

    • Scalar Parameter: x 3

    • Multiple x 1

    Shiny_Required_Nodes.png

  4. マテリアル式ノードを配置したら、スカラー パラメータに名前を付けてデフォルト値を入れます。以下は、使用すべき名前とデフォルト値です。

    • Metallic: 0

    • Specular: 0.5

    • Roughness: 0.5

    Shiny_Named_Nodes.png

  5. すべてのマテリアル式ノードをメイン マテリアル ノードの対応する入力に接続します。完了すると、マテリアル グラフは以下のようになります。

    Shiny_Connected_Nodes.png

  6. [Apply (適用)] ボタンと [Save (保存)] ボタンの両方を押して、マテリアル エディタを閉じます。
    R_Apply_&_Save.png

  7. コンテンツ ブラウザShiny_Material を探します。次にその上で 右クリック し、表示されたメニューから [Create Material Instance (マテリアル インスタンスを作成)] オプションを選択します。

  8. コンテンツ ブラウザ でマテリアル インスタンスを マウスの左ボタンダブルクリック して開きます。開いたら、 マウスの左ボタン でグレイアウトされているチェックマーク ボックスをクリックしてすべての [Scalar Parameter Values] を有効にします。 Shiny_Enabled_MI_Properties.png

[Scalar Parameter Values] が有効な状態で、それを異なる値に設定すると、どれくらい光沢のあるものにするかを設定することができます。 例えば、メタリックを 1 に設定し、ラフネスを 0 に設定すると、金のような非常に光沢のある金属になります。

Shiny_MI_Metal_Example.png

メタリックを 0 に設定し、スペキュラを 0.5 から 1.0 に設定すると、非常に光沢がある黄色のプラスティックのようなものが見えます。

Shiny_MI_Plastic_Example.png

ラフネスを 1 にスペキュラを 1 に設定すると、若干反射する黄色のペイントになります。

Shiny_MI_Paint_Example.png

上の例で、黄色のペイントの反射が強すぎる場合、見栄えが良くなるまでスペキュラを減らしてみてください。以下は、スペキュラを 0、0.5、および 1.0 に設定し、マテリアルの反射がどのようになるかを示した例です。

Shiny_Different_Spec_Amounts.png

まとめ

光沢のあるマテリアルを使用すると 3D プロジェクトが生き生きとしたものになります。 しかし、3D の他のすべてのものと同様に、光沢のあるマテリアルは負荷がかかります。 数多くの光沢のある物体が互いに反射しあうような場合は、パフォーマンスの観点から非常に負荷が高くなることに注意してください。 すべてのマテリアルはある程度の光沢を持っているため、マテリアルの光沢を完全には無効にしないでください。

Tags