【UnrealEngine】Materialで圧縮と遅延

【UE4】【Material】圧縮と遅延アイキャッチアプリ
アプリ
この記事は約2分で読めます。

うるう年ですねー。あってよかった29日。
最近というか、去年の年末ぐらいから「Unreal Engine」ことUE4をちょいと使っておるおるのですが、
まーツカイニクスで四苦八苦しております(ました?)

UE4といえば、Materialくらいの、これを使えば表現の幅がグンっと広がるってもんよ!
くらいの勢いのシロモノで、
コードを書かなくてもノード同士をつないで表現できるという優れもどでさー。
まぁ逆にいろいろ面倒くさいのはここではゴニョゴニョ……

スポンサーリンク

Materialでいこう!

Materialの基本的なことはこの際ぶっ飛ばして、
今回書きたかったのは、Materialでアニメーションなどを表現するうえで
時間のコントロールをしなければいけない場面で意外と役に立ったというか、
そもそも遅延や圧縮ってないんかーい(あるけ?)となったので、
マテリアル関数にして使ってみたらまぁそれなりに便利だったので、memoしとこうと思った次第。

マテリアル関数

ある一定の処理を保存して、使いまわしたりすることができるスニペット。

時間を圧縮しよう compression

まずは圧縮さん。
どういうことかと言うと、
例えば、10秒のアニメーションを6秒で終わらせて残り4秒は停止みたいな感じ。

compression

時間を遅延させよう delay

こっちは遅延さん。
こちらは任意の分だけ遅らせてあとは残りの時間で圧縮再生します。
例えば、10秒のアニメーションを2秒遅延させた場合、残り8秒で10秒のアニメーションを行います。

さらにこちらは後ろにも停止時間を設定できるつくりにしているので、
10秒のアニメーションを2秒遅延させ、2秒~6秒の間で10秒のアニメーションを行い、残り4秒停止みたいな感じ。

delay
停止時間が必要ない場合は?

停止時間を設けない場合は“InputEndTime”に “InputTotalTime” と同じ値を入れてあげてください

マテリアル関数にしよう

吹き出しが付いている“Input*”のパラメータノードと“Time”ノードを入力値
一番右端のノードを出力値(Output ノード)につなげてくださいな。





おわりに

Materialは様々な表現ができる反面、調整や確認などすごい手間な部分もあって、
意外と面倒さんなので、楽できるところは楽していきませう。


コメント