![見出し画像](https://assets.st-note.com/production/uploads/images/19518115/rectangle_large_type_2_546cdd96c105ee3e19f4cb4f722adf07.png?width=1200)
Amplify Shader Editor の使い方 3
ノーマルマップ
単純なShaderを作る流れがわかるようになってきましたね。
この調子でノーマルマップを貼るためのノードもどんどん繋げていきましょう。
①Texture Sample ノードを用意
②パラメータの設定で、ノーマルマップが正確に適応されるようにチェック
ノーマルマップ専用のノードがあるかと思っていましたがこちらもTexture Sampleを利用するようです。テクスチャを割り当てる場合は基本的にTexture Sampleでカバーできてしまうのでしょう。
③ノーマル用のテクスチャを割り当てマスターノードのNormalに接続
④ブレンドしたい色をAlbedoに接続
ごつごつしたような岩のノーマルがうまく割り当たりました。
そしてノーマルもブレンドすることが可能です。
①二つ目のノーマルマップを用意
②Blend Normals ノードを用意し、二つのノーマルをブレンド
せっかくなので片方はタイリングさせてみましょう。
③Tiling_UVノードを追加し、任意の数値を入力
④新しく追加したノーマルにMultiplyノードをかませ接続
ごちゃごちゃした見た目にはなりましたがブレンドできました。
カラーとマスクの反転
次は反転させるノードOne Minusを利用してみましょう
One Minusノードを使用すればあらゆるものをマイナス(反転)させることが可能です。
まずはカラー。Editor上では青を選択しているのにOne Minusを通すことで捕色の位置にあたる黄色系の色が描画されました。
キャラクターのテクスチャに反映するとすべての色が反転するので
ネガポジ反転のような描画になりますね。
白黒のマスクも反転させることが可能です。
UVのタイリング
UVのタイリングでは主にFloat、Vectorノードを使用します。
Floatを使用する場合はUとVどちらの座標にも同様の変化を与えますが
Vectorの場合は座標ごとに設定を変えることができます。
また繋げ方も様々で一つはMultiplyノードを経由するものや、
Texture Coordinatesに直接繋ぐことでも適応可能です。
Texture Coordinatesに直接繋いだ場合
スケールの変更
上の例では整数を入力しましたが、少数値を入れることで拡大することも可能となります。
UVの反転
マイナス値を入れることで反転することも可能となります。
オフセット
Texture Coordinatesノードの接続をTilingからOffsetに変更することで
オフセット機能も使うことができます。
addノードを噛ませることでも同様の結果が得られます。
UVスクロール
Time Parameters を使用することでUVスクロールを実現させることが可能です。それぞれの端子の設定は
t/20 20秒で1タイリング分スクロール
t 1秒で1タイリング分
t*2 1秒で2タイリング分
t*3 1秒で3タイリング分
となり、スピードを調整することが可能です。
— レッキー@バーチャルレッサーパンダ (@VR_Red_Panda) February 18, 2020
またTime ParametersとVectorをMultiplyノードを使用し掛け合わせることで速度、スクロールの方向を調整することができます。
— レッキー@バーチャルレッサーパンダ (@VR_Red_Panda) February 18, 2020
これで初歩的なノードを学べたかと思います。
次回は実践的なshaderの作成に挑戦しましょう。
この記事が気に入ったらサポートをしてみませんか?