AnimationCafe

Power Modeler - アイコン付きボタンでZModelerを視覚的に分...

テキスト表示で分かりづらいZModelerを扱いやすく!Artistic Squadによるアイコン付きボタンでZModeler視覚的にわかりやすくするZBrushプラグイン「Power Modeler」が登場!

  • 11
  • 1
  • 0
続きを読む

Substance Alchemist 2020.3 - AI活用アトラスフィル...

Adobeのテクスチャリングソフト「Substance Alchemist」のバージョン2020.2(2.3.0)がリリースされました。

  • 23
  • 1
  • 0
続きを読む

Asset Creation Toolset 3 - アセット制作で役立つ機能を...

Ivan Vostrikov氏による、アセット制作で役立つ機能を多数搭載したツールセット「Asset Creation Toolset 3」のご紹介。無料です!

  • 19
  • 1
  • 0
続きを読む

WebPShop v0.3 - WebP(Googleが開発した軽量画像フォーマ...

最近やたらと多いWebP、サイトの軽量化システムが勝手にこのフォーマットにする事が多いんですよね。良いんですが手軽に扱えないのが難点。そんな時は、WebP公式のPhotoshopで読み込むためのプラグイン「WebPShop」を使いましょう。

  • 13
  • 8
  • 1
続きを読む

ゲームエンジンアーキテクチャ 第3版 - 好評のゲームエンジン解説本「Game ...

ゲーム開発者は抑えておきたい1冊!ジェイソン・グレゴリー著書「Game Engine Architecture, Third Edition」の日本語版「ゲームエンジンアーキテクチャ 第3版」が2020年11月下旬にボーンデジタルから発売されます。

  • 12
  • 15
  • 0
続きを読む

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

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


PR

Autodesk® Maya® Indie、Autodesk® 3ds Max® Indie | AREA JAPAN | Autodesk


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

動画中登場する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


PR


関連記事

  1. Bullets included - Peter Aversten氏によるガトリングガンドロイドの実写合成ショートクリップと、Mariのテクスチャリングチュートリアル映像

    2013-04-25

  2. Krita timelapse : Flying around Komona - 無料高機能ペイントソフト『Krita』を使ったイラスト作成タイムラプス映像!

    2015-02-10

  3. MMD to Blender 2.8x motion file VMD - MMDのフォーマットであるVMDデータをBlender 2.8にインポートするアドオンの解説動画

    2020-01-05

  4. Free Tutorial Photobashing Sci-Fi Environments - フォトバッシュを使ったSci-Fiコンセプトアート!制作チュートリアルビデオが無償公開!

    2018-05-14

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

COMMENT

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

3D人について

3D/2D/CG関連のネタ・ツール情報をほぼ毎日紹介!掲載してほしい情報、ツール検証依頼などありましたら、メッセージボックス、Twitter、Facebook、LINEからご連絡お願いします!

おしらせ

ほしい物リスト公開中!
3D人運営に援助していただけると嬉しいです。
Amazonでリストを見る

Discordチャンネル公開

pixivFUNBOXページ公開!

LINEアカウント作りました!
友だち追加

follow us in feedly



 RSSリーダーで購読する

おすすめ商品Pickup

スポンサー

注目の記事

PR

オンライン相談

Flying Ship Studio

アーカイブ

カテゴリー

スポンサー

相互リンク

インディーズゲームを発掘するならここ

おすすめ記事