ジャンル雑多なゲーム・ゲーム制作関連の色々な情報を取り扱っているブログ。最近はBlenderについてが中心。
[UE4] 学習ノート5日目 -Unreal Engine 4 動きのあるマテリアル作成[C, C++]

[UE4] 学習ノート5日目 -Unreal Engine 4 動きのあるマテリアル作成[C, C++]

Unreal Engine 4で動きのあるマテリアル作ってみた話 —UE4活動と時々C, C++学習ノート-5日目-

Unreal Engin4すごい!(語彙力)ってなったので、少しいじりつつ、むかーしかじった事あるC,C++の基礎学びなおしを終え、UE4で色々やってる学習ノート。C, C++再学習編もあります。よろしければどうぞご覧ください

※注意:この記事で扱っているUE4のバージョンは少し古い(4.17.2)ものとなっています。ご了承ください。m(_ _)m

例のごとく、↓の本でマテリアルについて学習させていただいているのですが、

[商品価格に関しましては、リンクが作成された時点と現時点で情報が変更されている場合がございます。]

Unreal Engine 4 マテリアルデザイン入門 第2版 [ 茄子 ]
価格:4320円(税込、送料無料) (2019/6/21時点)


その学習の合間に「あ、なんかいけそうかも!」と思ったので作ってみたものをご紹介させていただきます。

ライトファンクションで点滅するライト作ってみた

UnrealEngine4 マテリアル ライトファンクション スクリーンショット gif

↑のgifのように、点滅するライトを作れたので、方法を書いておきます。

「Time」ノードというので経過時間を取得できるのを知って、学習の片手間に作ってみたものになります。

まず、ライトを設置しなければいけないのは当然なのですが、そのライトを点滅させるためには、詳細パネルの[Light Function]↓という項があるので、その場所の”ライトファンクション”という所に入れるための専用のマテリアルを作成する必要があります。

UnrealEngine4 ポイントライト 詳細パネル ライトファンクション スクリーンショット

というのは、その新規作成したマテリアルをマテリアルエディタで開いて、少しマテリアル自体に設定を加えなければならないのです。

↓のマテリアルエディタの詳細パネルで、[Material]という項があります。その中の”マテリアル属性”という所の横のプルダウンメニュー から”Light Function“を選んで指定しておく必要があります。

UnrealEngine4 ライトファンクション マテリアル マテリアルエディタ 詳細パネル スクリーンショット

肝心の中身は、「”Light Function”だから」というような特殊な設定やノードは必要ないですが、「メインマテリアルノード」でつなげられる場所が”エミッシブカラー”(発光色)しかなくなります。(少し考えれば当たり前な気がしますが一応書いておきます)

別バージョンで、点滅の仕方が違うライトも作成してみました。

UnrealEngine4 マテリアル ライトファンクション 点滅 gif

ちなみにエディタの内容晒してみます。

UnrealEngine4 ライトファンクション  点滅するライト マテリアルエディタ スクリーンショット

「緩やかな明滅」っていうのが1つ目に紹介したもので、2つ目に紹介したものは一番下のやたらめったら”Multiply”ノード使いまくっている「徐々に明度を落としながら明滅」っていうものです。

ライトじゃないけど点滅するアイテム作ってみた

ワールド座標からのノーマル情報の取得を応用した「輪郭強調」の方法を学んだので、それを前項での「Time」ノード使った点滅表現を転用して、作ってみたものになります。

UnrealEngine4 マテリアル キーアイテム 点滅 輪郭強調 gif

↑は、前項のようにライトファンクションと言うわけではないのですが、点滅っぽい感じの、キーアイテム向きな表現のマテリアルだと思います。

おまけ(?):模様が動く球体作ってみた

それと、他にもテクスチャを経過時間でX・Y方向へ動かす方法も学んだので、それと組み合わせれば、前回の記事↓でも紹介させていただいたオパールっぽい球体に使ったマテリアルを加工できそうだと思ったので作っちゃいました。

UnrealEngine4 動く模様 球体 輪郭強調 点滅 マテリアル gif

ちなみに、↓が模様が動く球体に使ったマテリアルエディタです。

UnrealEngine4 動く模様 輪郭強調 点滅 マテリアルエディタ スクリーンショット

前回は、テクスチャもう一枚使ってたんですが、どうにも浮いちゃって使いづらかったので、今回はスカラー値のノードに変えてしまいました。

あとがき

マテリアルについてなら、多少は勝手がわかってきた気がします!継続は力なりを信じて、少しずつでも進んでいきますよ!

ご意見・ご感想・ご質問、また、ここ間違ってるよとか、もっといい方法あるよといったご指摘などございましたら、お手数ですがコメント欄やtwitterアカウントほろほろり(@_horo_horori)へお願いしますm(_ _)m

Pocket