エントリーフォーム - COYOTE 3DCG STUDIO | C&R Creative Studios

Blender Buddy | APIキー不要!Llama.cppを採用し完全に...

CGMatterがBlender上でAIと対話しながら色々出来ちゃうBlenderアドオン「Blender Buddy」を無料公開しています!

続きを読む

AI4AnimationPy | Metaの研究チームによるニューラルネットワー...

Meta Research所属のPaul Starke氏とSebastian Starke氏がNumPy/PyTorch を用いた Python 環境で実現するAI駆動型キャラクターアニメーションのためのPythonフレームワーク「AI4AnimationPy」をGithub上で公開!

続きを読む

Niagara Automotive | Unreal Engine 5.7のN...

RedefineFXから自動車ビジュアライゼーション用のNiagaraコース「Niagara Automotive」が発表されております!

続きを読む

XYN Spatial Capture Solution | XYNが「空間キャ...

2026年4月14日、ソニーがXYNの「空間キャプチャーソリューション」 を法人向けに提供開始しました!

続きを読む

観客を没入させるストーリー・ストラクチャー:最後まで飽きさせない物語構造と演出 ...

ユタ大学教授クレイグ・コールドウェル(Craig Caldwell)氏著書の構図やカメラワーク、演出における視覚表現した指南書の日本語版『観客を没入させるストーリー・ストラクチャー:最後まで飽きさせない物語構造と演出 』が発売中です!

続きを読む

Blob with Raymarching - UE4上でレイマーチングを使ったブロブシェーダーを構築するチュートリアル動画!入門に最適!

この記事は約2分42秒で読めます

Epic GamesのテクニカルアーティストMarien Elalaoui氏による、カスタムノードとHLSLシェーダーを使用し、UE4上でレイマーチングシェーダーを使ったブロブ表現を構築するチュートリアル「Blob with Raymarching」がYoutube上に公開されました。

英語ですが、少しづつ構築しながら解説されているので、一つ一つ手順をまねしていくだけでも勉強になると思います。

動画中登場するDistance関数参考サイト:Inigo Quilez :: fractals, computer graphics, mathematics, shaders, demoscene and more

私でも簡単にできたよ!

シェーダーのコードとノード画像参考に張り付けておきますね。

カスタムノードの中身

#include "/Engine/RMBlob.ush"
return 0;

UE本体のインストール先にある、Engine/Shadersフォルダに保存したシェーダーを読み込んでるだけです

RMBlob.ushの中身

struct RMstruct
{

float RMSphere(float3 pos)
	{
		return length(pos) - 50;
	}
	
	float3 RMNormal(float3 pos)
	
	{
	float2 Off = float2(0.01,0);
	return normalize(float3(
	RMSphere(pos + Off.xyy) - RMSphere(pos - Off.xyy),
	RMSphere(pos + Off.yxy) - RMSphere(pos - Off.yxy),
	RMSphere(pos + Off.yyx) - RMSphere(pos - Off.yyx)
	));
	}

	//Smooth Union
	float opSmoothUnion( float d1, float d2, float k ) 
	{
		float h = clamp( 0.5 + 0.5*(d2-d1)/k, 0.0, 1.0 );
		return lerp( d2, d1, h ) - k*h*(1.0-h); 
	}

};

RMstruct RM;
float4 Col = 0;
float3 pos = WorldPosition;
float3 Normal = 0;

for(int i=0; i<MaxSteps; i++)
{
	if(SceneDepth < length(pos - CameraPosition))
	break;
	
	float d1 = RM.RMSphere(pos - ObjectPosition);
	//メッシュディスタンスフィールドを使わない場合(コメントアウトしてます
	//float d2 = SceneDepth - length(pos - CameraPosition);
	//メッシュディスタンスフィールドを使う場合
	float d2 = GetDistanceToNearestSurfaceGlobal(pos);

	float distance = RM.opSmoothUnion(d1, d2, Smooth);
	
	if(distance < 0.01)
	{
		Col = 1;
		Normal = RM.RMNormal(pos - ObjectPosition);
		break;
	}
	pos += CameraVector * 1;
}
return float4(Normal,Col.a);

マテリアルノード参考

今回がMarien Elalaoui氏初のチュートリアル動画との事ですが、
過去にアップされた動画の表現がとても気になります。今後の動きも楽しみですね。

リンク

ArtStation – Marien Elalaoui

関連記事

  1. フェイシャル:息づくキャラクターへ - 柳島HiD氏によるMetaHumanとiPhone活用フェイシャルアニメーションフロー解説!ダイキンCG Channel 無料ウェビナーが2024年2月28日に公開予定!

    2024-02-27

  2. Substance Designer Simple Texturing Step by Step - 倍速なし!1時間半でアイアンマンモデルのテクスチャを作成する様をじっくり確認!

    2014-08-02

  3. 【PR】Meihu - Stylized PBR Character - スタイライズドキャラクターモデル作成を解説!WINGFOXオンラインチュートリアルコース!

    2020-09-23

  4. Unreal Engine Cinematic Dive 2023 Slide and Videos - 2023年12月13日にオンライン開催された映像向けUE5勉強イベントの講演映像とスライドが公開!

    2023-12-15

コメントをお待ちしています。

コメント

日本語が含まれない投稿は無視されます。-Posts that do not include the Japanese will be ignored-(スパム対策-anti Spam-)

3D人-3dnchu-

3D/2D/VR/GAME/AIなどのCGに関連する個人的に気になる情報をほぼ毎日紹介!XやYoutubeなども是非フォローよろしくお願いします!
※当サイトのリンクにはアフィリエイトを含みます

※当サイトの一部記事にはアフィリエイトが含まれております。

スポンサープロダクト


X-Ray Realtime Light and TexturingTool

CGElementaryに関する記事一覧


Character Creator - アニメーション、ゲーム、AR/VR のための 3D キャラメイクソフト

Reallusionに関する記事一覧


Paintstorm Studio

Paintstorm Studioに関する記事一覧


MarvelousDesigner

MarvelousDesignerに関する記事一覧


JangaFX - Real-Time VFX Software For Real-Time VFX Artists

JangaFXに関する記事一覧


パルミーの講座が見放題!月謝制お申し込み|お絵かき講座パルミー

Palmieに関する記事一覧


AAA Character Creation: The Boxing Bunny

WINGFOXに関する記事一覧


Meshy - Free AI 3D Model Generator

Meshyに関する記事一覧


アーカイブ

カテゴリ

おすすめ商品Pickup

注目の記事

PR


PR






   
USD
3D人のLINEアカウントを作りました!
友だち追加


follow us in feedly

RSSリーダーで購読する


ほしい物リスト公開中!
3D人運営に援助!
Amazonでリストを見る

Discordチャンネル公開

pixivFUNBOXページ公開!




おすすめ商品Pickup

おすすめ記事

ページ上部へ戻る