春日部つむぎ no ゲーム作ってみよう!【UE5/UE4】 - SphereMask【UE5】


https://youtu.be/L9Ur5RGOZqg?si=k80LLF5XhpBRveO4

00:00 オープニング
00:29 1.ポストプロセスマテリアルの作成
00:39 2.ポストプロセスボリュームの作成
01:28 3.ポストプロセスマテリアルの設定
04:20 4.ジッターの処理
05:48 設定ファイル
05:53 エンディング
05:56 視野を狭くしたり暗くしたりするメリットは?

1.ポストプロセスマテリアルの作成 00:29

右クリック>マテリアル
名前を「PPM_SphereMask」にします。

2.ポストプロセスボリュームの作成 00:39

アクタを配置パネル>ビジュアルエフェクトより
ポストプロセスボリュームをレベルに配置します。



詳細パネル>ポストプロセスボリューム設定で
Enabledを有効にします。



今回はレベル全体にポストプロセスを反映します。
Infinite Extentを有効にします。



今回は暗闇で使用するので、
明暗順応を無効にします。

レンズ>Exposure>Min Ev100とMax Ev100を0.0にします。



レンダリング機能>ポストプロセスマテリアル>Arrayでエレメントを追加します。
プルダウンメニューよりアセットリファレンスを選択します。



エレメントに作成したポストプロセスマテリアルを指定します。



後はお好みで!

3.ポストプロセスマテリアルの設定 01:28

PPM_SphereMaskをファイルを開きます。

詳細パネル>Material DomainをPost Processにします。



SphereMaskノードを配置します。
SphereMaskノードは、距離計算に基づきスフィア状のマスク値を出力します。
マスク値は、ある1つの点を指定します。その点が境界の外側であれば0で内側なら1となります。

Aは、ある1つの点の座標を入れます。

絶対ワールド位置(AbsoluteWorldPosition)ノードをつなぎます。
絶対ワールド位置(AbsoluteWorldPosition)ノードはワールド座標を示してくれるノードです。
座標の値をそのまま受け取っているので、値は非常に大きいです。

Bは、スフィアの原点を入れます。
Camera PositionWSノードをつなぎます。
キャラクターのカメラをスフィアの原点として指定します。

Radiusは、スフィアの半径の値を入れます。
右クリックして変数へ昇格します。
値を1000と記入します。

Hardnessは、境界のぼかしの値を入れます。
0-1の範囲で指定します。
値を大きくすればするほど境界がはっきりします。
値を小さくすればするほど境界がボケます。
右クリックして変数へ昇格します。
値を0.0にします。

エミッシブカラーにつなぎます。



保存して閉じます。
起動してみましょう。

キャラクターを中心にして、
スフィア状に内側は1.0/white(白)で、外側は0.0/black(黒)になりましたね、



PPM_SphereMaskを開きます。

黒と白を反転します。
1-xノードをつなぎます。

Scene Textureノード配置します。
詳細パネル>Scene Texture IdをPostProcessInput0にします。



ComponentMaskノードをつなぎます。
展開してRGBにします。

3キーを押したままクリックして、3成分ベクターを配置します。
0.0:0.0:0.0にして、黒色にします。

Lerp(LinearInterPolate)ノードを配置します。
Lerp(LinearInterPolate)ノードは、
3つの入力値に基づいて2つの入力値をブレンドします。
アルファ値が0.0/black(黒)の場合は、最初の入力値が使用されます。
アルファ値が1.0/white(白)の場合は、2番目の入力値が使用されます。



AピンにScene Textureノードをつなぎます。
Bピンに黒色をつなぎます。
AlphaピンにSphereMaskノードをつなぎます。

何となくよく出てくるノードの形になりましたね。



保存して閉じます。
起動してみましょう。





4.ジッターの処理 04:20

近くで見るとキャラクターがプルプルしてますね。



PPM_SphereMaskを開きます。

詳細パネル>ポストプロセスマテリアル>Blendable Locatiuonを
After Tonemappingから
Befor Tonemappingに変更します。



これは
描画処理工程の中で
ポストプロセスの処理工程を最後にするのか最初にするかですね。

Befor Tonemappingにして最初にポストプロセスの処理工程を持ってきます。

保存して閉じます。
起動してみましょう。

プルプルが無くなりましたね。

設定ファイル 05:48

PPM_SphereMask(暗闇表現)

視野を狭くしたり暗くしたりするメリットは? 05:56

緊迫感と没入感の向上:

暗い場面や狭い空間は、ホラーゲームやサスペンスゲームの雰囲気を高めるのに適しています。
プレイヤーに恐怖感や不安感を与え、物語の緊張感を増幅させます。

集中力の向上:

視野を狭くすることで、プレイヤーは周囲の情報に集中しやすくなります。
敵の位置や隠れているアイテムを見逃さないようにするため、プレイヤーはより注意深くプレイします。

戦術的な判断と戦闘スキルの向上:

狭い視野では、敵の位置を正確に把握するために戦術的な判断が必要です。
プレイヤーは隠れた敵を見つけるために音や動きに敏感になり、戦闘スキルを高めることができます。

パフォーマンスの向上:

視野を狭くすることで、ゲームエンジンは描画する範囲を減らすため、処理負荷が軽減されます。