コメント-2020-0dsdsdsds2-sdsddsdsd03-015719

Amplify Shader Editor の使い方 2

では早速作っていきましょう。

ノードを出してみよう

①まずはprojectのcreate/Shader/Amplify Surface Shader をクリック。
②すると画像右のように1つのボックスが表示されます。
③Output NodeのGeneral/ShaderNameで名称をShader_01に変更しました。

画像1

このボックスのことをマスターノードと言います。
ノードの左側にはimput用の端子が付いています。
最終的に、このマスターノードに接続された結果が画面に表示されます。

因みに現状でオブジェクトに割り当てると…

画像2

真っ黒ですね…。
そこで色を描画するように設定してみましょう。

色を付ける

①Shader Editor上で右クリック→検索で"color"を探しクリック。
 この時数字の5を押しながら左クリックをすることで、colorノードを出すことも可能です。使用頻度が高いノードについてはそれぞれショートカットキーが設定されているので覚えておくと良いかもしれません。
②colorノードの右側にある端子からマスターノードのinput側へ線を繋げます。
右側にある端子はoutput側となり、そこから線を伸ばし、input側へ接続するのが基本となります。ノードによっては左右両方の端子を持つノードも存在します。

画像3

更新をかけると、赤い色が描写されましたね。次はテクスチャを貼ってみましょう。

テクスチャを割り当てる

①Texture Coordinatesノードを作成。
 Texture CoordinatesはUV情報を編集・調整する際に利用します。
②Texture Sample ノードを作成。
③それぞれを接続し、マスターノードのAlbedoに繋ぎます。

5atexなし

上画像右側のInspecterに注目するとテクスチャを割り当てるための項目が追加されました。
④用意した画像のデータをediter内のTexture Sampleにドラックします。
すると…

画像5

画像のようにテクスチャを反映させることができました。
因みにマスターノードの接続先をEmissionに変えると光の影響を受けないUnlit状態で描画されました。

画像6

テクスチャに色を重ねる

次に用意したテクスチャに色を重ねてみます。
使うのはadd(加算)とMultiply(乗算)の2つです。

まずはaddから。addノードを作成したのちinput端子が2つついているので、そこにtexture Sample と Color を接続するだけです。

画像7

次はMultiply。同様の手順でMultiplyノードを追加し接続します。

画像8

大分簡単にできました。
次は2つのテクスチャをブレンドしてみましょう。

2つのテクスチャをブレンド

今回は新しく3つのノードを使用します。

画像9

◇Lerp 2つの要素をAlphaに接続された値に従い補間し混ぜる                  
◇Float 小数を代入するために使用される型(1を最大とし、それまでの割合を少数で表すことが多い)
◇Blend Operations 2つの要素をレイヤー合成により混ぜる(photshopのレイヤーのような関係性)

上記3つを利用し早速ブレンドしてみましょう。

Lerpの場合
①Texture Sample により、ブレンドするテクスチャを2つ用意。
②Lerpノードを作成しA、Bの端子へ任意の画像を繋ぎます。
③Floatノードを作成し、0.0~1までの好きな数字を入力(今回は0.3)。LerpのAlpha端子へと接続します。これによりAが7割、Bが3割繁栄されることになります。

画像10

Blend Operationsの場合
①Texture Sample により、ブレンドするテクスチャを2つ用意。
②Blend Operationsノードを作成し、Source端子にベースとなるテクスチャ、Destiny端子にレイヤー効果を与えたいテクスチャを割り当てます。
③Blend Operationsノードを選択し、Blend Operations内のParameters/Blend Op を任意の効果に設定します(今回はハードライト)。イメージとしてはphotoshopのレイヤー効果に近いです。

画像11

目にはキツイですが、うまく調整すればビックリマンチョコのシールのような効果も作れそうですね。Blend Opには他にも多くの効果があり、このタグを切り替えることで、様々な表現が可能となります。

次回はノーマルマップを利用したShaderを作成してみようかと思います。


この記事が気に入ったらサポートをしてみませんか?