UE4 ポストプロセスマテリアル(Post Process Material)でアウトラインを描画する
こちらの記事を参考にさせていただきました。
僕が今も使っているUE4用のポストプロセス セルシェーダーを誰でも使える形でGitHubにて公開しました。Postprocess Materialとして適用すれば、誰でもすぐにこんな感じのセルシェーディングができます!自由にジャンジャン使ってください!!#UE4 #UE4Studyhttps://t.co/sHG4vbHR00 pic.twitter.com/gARF4jx1LB
— alwei (@aizen76) May 27, 2018
・Unreal Engine 4 ポストプロセス セルシェーダー
https://github.com/alwei/PPCelShader
アウトライン
4種類のアウトライン描画があります。
まず、『Depth Line』と『Normal Line』はメッシュのカメラ距離に関係なく一環したライン描画が行われます。
その分、細かいライン調整を行うことはできませんが、安定したライン描画を行うことができるようになっています。
『Edge Line』と『Crease Line』はメッシュのカメラ距離に大きく依存しますが、『Depth Line』や『Normal Line』では描画できない部分が調整可能です。
それぞれを必要に応じて使わない選択肢も可能ですので、調整してみて好みに応じて利用してください。
上記でアウトラインを描画している箇所があったのでこちらをもとに作成してみました。
「PP_CelShader」を開きます。

詳しくは中身を見てもらえればよいので、
とりあえず全体としてこれだけノードがあるという感じですね。
このポストプロセスマテリアルの処理からアウトラインの描画部分だけを使いたいため
セルシェーディングに関する部分を削除します。

まずは赤枠で囲まれた部分を削除します。
そのあと入力がなくなってしまっているのでこんな感じで入力部分足します。

赤枠の部分のようにする感じですね。
結果こうなりました。

下に見切れているノードはアウトラインの部分をそのまま使っているので割愛します。
次に、このマテリアルに対してマテリアルインスタンスを作成します。

あとは、マテリアルインスタンスのパラメータを調整すればアウトラインが描画できます。

これを使ってみた結果がこちら。

今回は白いアウトラインを描画してみましたがいい感じなのではないでしょうか。
処理負荷などはともかくとして、とりあえずは描画できているので問題ないかなと。
ここらへんいつかは自分でも詳しくなっていろいろと一からできるようになってみたいですね。
| UE4 | 10:00 | comments:0 | trackbacks:0 | TOP↑