Closed46

【UE5】UnrealEngine5で学ぶ ビジュアルエフェクト実装 (ハンズオン)

beckybecky

2.Unreal Engine 5 の導入

beckybecky

UEの基本機能とインストールの説明なので、特に追記なし。

beckybecky

3.マテリアルを使ってエフェクトを作成する

beckybecky

草木を抜きたかったので以下で設定
provide a texture that represents the appearance of stones along a river, as seen from an aerial view, with no vegetation.




beckybecky

参照されている
SM_Grass.obj ってのが存在しない、、、

beckybecky

An illustration of grass with a deep blue sky as the background.

beckybecky

StaticMeshじゃないと、アニメーションが反映されないっぽい。
BlueprintにPlane追加してアニメーションがあるMaterialつけてみたが駄目だった。

beckybecky

4.ポストプロセスを作成する

beckybecky

モノクロ (HLSL)

float luminance = 0.299 * Color.r + 0.358 7 * Color.g + 0.114 * Color.b; // 照度を算出
return float3(luminance, luminance, luminance); // モノクロに
beckybecky

万華鏡(HLSL)

float PI = 3.14159274;
float radScale = 2.0 * PI / division; // 繰り返す角度(ラジアン)

// 中心の原点の -1~1の範囲に変換
float2 normalizedUV = (uv - float2(0.5, 0.5)) * 2.0;

// 極座標に変換
float r = distance(normalizedUV, float2(0, 0));
float theta = atan2(normalizedUV.y, normalizedUV.x) + PI + time / 4;

// 角度で繰り返し
theta = theta % radScale;

// xy座標に戻す
return float2(r * cos(theta), r * sin(theta));
beckybecky

ランダムノイズ

struct Functions
{
    float rand(float2 p)
    {
        return frac(sin(dot(p.xy, float2(12.9898, 78.233))) * 43758.5453);
    }
};
Functions _f;

return _f.rand(float2(uv.x, uv.y));
beckybecky

ブレ

struct Functions
{
    float rand(float2 p)
    {
        return (frac(sin(dot(p, float2(127.1, 311.7))) * 43758.5453123) -0.5) * 2.0;
    }
};
Functions _f;

uv += float2(_f.rand(float2(0, uv.y + time)), 0) * scale;
return uv;
beckybecky

5.ブループリント

beckybecky

Execute Console Command
コンソールコマンドで実行できるコマンドをノードから実行

beckybecky

だいたい理解している内容だったので、
座学のみで完了。

beckybecky

文字が見えなかったり、必要な情報が載ってなかったりで、進めれないので中断。
クローズします。

このスクラップは2023/06/01にクローズされました