あっぷあっぷブログ

UnrealEngine(ゲーム用途)関連の備忘録です。

【UE5/Material】Vertex Interpolator メモ

参考

www.unrealdirective.com

カスタマイズされた UV 機能と同様に、頂点補間ノードはピクセル シェーダーから頂点シェーダーに命令をオフロードします。ただし、対応するノードとは異なり、すぐに利用できるノードであるため、より柔軟です。

www.youtube.com

Vertex Interpolator

ピクセルごとの計算が頂点ごとの計算になる。
ピクセルシェーダーよりも頂点シェーダーの方が処理が軽いので、より高速化できる。(頂点数がピクセル数より少ないことが前提)

ハイポリモデルの場合、高速化されない場合がある。
メッシュを遠くから見た場合も、ピクセル数より頂点数が上回ることがある。

LodやNaniteに注意。
頂点数が変化する場合に何が起きるか確認しておく。
頂点ごとに実行するので、ピクセルシェーダーに比べて、精細さに欠ける。
グラデーションや模様などはクオリティが下がってしまう。
単色などは影響が少ない。

使用例

Per Instance Custom Dataノードと一緒に使用されている。

【UE5】任意の位置を中心に回転させる

やりたいこと

Meshに設定してあるPivotとは別に、仮のPivotを指定し、仮のPivotを中心に回転させる。

アクターにPivotを設定する


SceneComponentをPivotにしたい場所に設定します。

設定したPivotを中心に回転させる


関数を実行するたび、指定したPivotを中心にZ軸に10度づつ回転します。

【UE5】真っ暗なレベルにライト系のアクターを手っ取り早く追加する

環境光を置くのがちょっと面倒

新規のレベル等で何もライトが置かれていない場合、「アクターの配置」タブからわざわざ検索して環境光をレベルに追加するのはちょっとだけ面倒です。

環境ライトミキサーを使えば、その手間を少しだけ省いてくれます。

環境ライトミキサーの場所

ウィンドウ > 環境ライトミキサー

環境ライトミキサー画面


こちらから追加したいライトを選択すれば、レベルに追加してくれます。

【UE5】Gameplay Tag からDataTable行を取得

DataTableのRow NameとGameplay Tag名を一致させたいことがありました。
DataTableにBananaというRow Nameがあったとします。
Gameplay TagにはAch.ccc.Bananaがあります。
以下のようにすると、Gameplay Tagの文字列の一部を切り取ってDataTableのRow Nameとして使用することが可能です。

Ach.ccc.BananaというGameplay Tagがあった場合、Splitノード(Right S)により、Ach.ccc.Bananaの右から最初に遭遇した 「.」 以降のBananaが取得できます。