Nanite Programmable Path seems too costly to consider WPO for the most basic things... Uh, I don't like it. Feels like everything I'm tempted to do as a tech artist is no longer an option. Moving vertices used to be cheap :( So here's a hacky NO-WPO prototype 🧵
Ghislain Girardot
@ghislaingir.bsky.social
UE content creator, specialized in tech art. I don't share my opinion much.
🥳 That’s it — my new and final video is live on YouTube! In this 2h15 deep dive, I try to summarize everything I’ve learned over the past two months while diving head-first into C++ compute shader dispatch in UE and RDG.
oof, I got owned so hard. First time trying to use a struct in a compute shader. Things did not go as planned... After an entire day of debugging, structs could be the only culprit. This causes alignment issues. Using float4/FVector4f fixes it
A sneak peak of what I've been working on: A strand based hair system for Jolt Physics (WIP): youtu.be/Rl19G0c003o
A strand based hair simulation running on GPU
YouTube video by Jorrit Rouwe
youtu.be
Holidays side project. I'm trying to join the FFT ocean gang😅 I'm now at least somewhat more comfortable with various GPU programming paradigms and UE's RHI & CPP compute shader dispatchs, but I've so many questions still😅
New video on my YT! 🥳 A 55-minute deep dive into God of War's dual-depth foliage interaction technique. ⬇️🧵
Almost done with this. Hoping to be done with the breakdown video before holidays :)
🥳 New video up on my YT! I’m showing how I hack around the Character Movement Component in Unreal Engine to build custom movement modes—all in Blueprints. It’s a bit old school, but it still works like a charm for simple games! 😊
random thought of the day: Prince of Persia's SoT time rewind thingy in UE. How. Character animation specifically. 3, 2, 1, go🙃
2019 God of War's Dual Depth implementation. I still have a few issues to solve 🤔 CPU Performance is 💩because Niagara's RigidMeshCollision interface lack a much needed rasterizing function, so I had to re-implement it from scratch in BPs for this proof of concept😅
Soo, I've been diving into CommonUI lately... is it just me, or is keyboard focus still a bit of a mess? 🙃 Epic's 'Introduction to Common UI' is great, but they couldn't demo a working keyboard focus. Lots of hacks out there that kinda work, but not quite. Anyone else feel this?
🥳New 30-min video out! I dive into different ways to rasterize dynamic effects (explosions, attacks, etc.) using Niagara, and show how to apply them to foliage & particles. Check it out!⬇️
🥳 New Video Alert! In this 15-min deep dive, I walk through an experimental scriptable tool I built that fetches textures in material light functions to paint light dynamically, all in-editor. Check it out! 🔥
🥳 New video is out on my YT! It’s a 1h20m deep dive into 𝗦𝗶𝗴𝗻𝗲𝗱 𝗗𝗶𝘀𝘁𝗮𝗻𝗰𝗲 𝗙𝗶𝗲𝗹𝗱𝘀. I went a bit more in-depth than most UE tutorials out there — there’s a lot more to this topic than you might think! :D 🧵
We've been uploading a bunch of Unreal Fest talks to our Unreal Engine YouTube channel, such as this one from Tanglewood about taking the pain out of engine upgrades 👇 www.youtube.com/watch?v=vMEl...
Taking the Pain Out of Engine Upgrades | Unreal Fest Orlando 2025
YouTube video by Unreal Engine
youtube.com
I'm very confused about the Render Heightmap node. It seems to be using two channels to store the integer and fractional part of the world height but I've no idea where the range come from. It doesn't seem to be normalized based on the landscape Z bounds.
Hacky experiment. Tried to generate a distance field of an animated skeletal mesh using separable JFA. Performs well but I don't know how to make it signed/handle voxels inside the mesh 🫠
Another sdf-related tool. Nothing too fancy, this one bakes a 2D distance field for actors containing spline component(s). Might come in handy for shorelines etc. I'll do a breakdown of the scriptable tool BP in my upcoming video.
Every time I try to generate a material via BP/Python, I hit dead ends😩. Was hoping to generate a volumetric material asset, but apparently, you can't connect anything to the Extinction material property... Doing that in CPP isn't worth investing the time for my particular case.
A small tool I built the last two days. I'm using Geometry Scripting + Python to generate SDFs from any geometry in the scene and visualize the result. This is part of my next video dedicated to SDFs
Character I prototyped last year. I had the idea for a small party game, but I could never quite find a healthy balance between personal and professional projects. My brain doesn’t let me do 50/50.
What's the official statement on using distance fields in shaders? Afaik, they've been somewhat broken since 5.0. Workaround is to use a CVar to only use one low resolution cascade, I think, but it's far from ideal. Am I wrong? Any clues? Ty
Decided to try Position-Based Fluids for a first go at realtime fluids. I think I got the algorithm wrong, I've got weird boundary behavior. Meh, I suck at maths, it's an infinite pain to go through academic papers :(
TIL that NDC has a new method for querying particle data in BP :) The basic callback interface was severely limited. This looks much more powerful. Neat!
Continuing with my Niagara/Grass experiments... Here, a regular grass clump mesh is instanced about 64 times and each card is injected into a buffer to be individually simulated. I still need to fix plenty of issues & write to velocity buffer to fix TAA artifacts but it's a start
Core C-Side is my last golden berry, I swear. Golden B Sides and Farewell are on a whole other level, I want to keep what's left of my sanity. Still, fairly happy with my progression :shrug:
🥳🎥 New YouTube video just dropped! A quick 20-min dive into the basics of Niagara’s Dynamic Mesh interface + a breakdown of a more advanced (but flawed/experimental) use case. Link ⬇️ #UnrealEngine #Niagara #VFX
Alright, I'm done with my deep dive into Niagara's Dynamic Mesh interface. LOTS can be done with it. Frustrum culling is aggressive here for demonstration purposes. Overhead seems to be high: 1.3ms for generating this :( I'm sure my code isn't as optimized as could be tho.
#UE5 #vfx #gamedev #indiedev🥳I just released a short video explaining how sphere tracing works and how to write a sphere tracing function in HLSL for collision detection in Niagara: www.youtube.com/watch?v=B4RR...
Sphere Trace Collision in Niagara
YouTube video by Ghislain Girardot
youtube.com