Filling the gaps among splats with meshes or ray-marched surfaces. The data & acceleration structures are already there. Doing both splats & fill in one single pipeline is cheaper than doing them in two separate pipelines. #MudBun #GameDev #MadeWIthUnity #VFX
Ming-Lun "Allen" Chou
@theallenchou.bsky.social
Principal Game Programmer at @NaughtyDog.com from Taiwan. Math. Physics. Graphics. Game AI. Bunnies 🐰 Gamedev Blog: http://AllenChou.net/blog MudBun: https://LongBunnyLabs.com/mudbun/
I kept trying to geometrically solve blurry materials due to vertex interpolation at zero-blend brush boundaries, but to no avail. Here's a simple but effective alternative: resolving materials in the fragment shader. #MudBun #GameDev #MadeWithUnity #VFX
Destructive field stamping. There's only one active constructive brush, destructively stamping into a sparse signed distance field. Good for sculpting complex SDFs without blowing up constructive brush budgets. #MudBun #MadeWithUnity #GameDev #VFX
MudBun 2.0 in the works (still in early stages). Rect tool. Multi-renderer. #MudBun #GameDev #MadeWithUnity #VFX
PlayStation dragon paper puppet, complete with a headset 😍
Long over-due full documentation for Boing Kit, my bouncy VFX tool for Unity. No longer just a short quick guide & a few disjointed readme text files. Docs: longbunnylabs.github.io/boing-kit/ Store page: assetstore.unity.com/packages/too... #BoingKit #GameDev #VFX #MadeWithUnity
lsp-mcp: A simple VS Code extension that exposes language server features as MCP tools. It hooks into whatever language servers VS Code already has running. github.com/TheAllenChou...
GitHub - TheAllenChou/lsp-mcp
Contribute to TheAllenChou/lsp-mcp development by creating an account on GitHub.
github.com
When your kid goes to bed next to you with a Bulborb/Chappy and you wake up the next morning. #Pikmin
Alright. In my next project I'm going to have separate point & vector types, as they should be. We have this at work in our C++ engine and I can't go back. This guards against things like accidentally adding together two Vector3's that represent points. #GameDev #MadeWithUnity
They didn’t say adults couldn’t join a kids’ Easter bunny coloring activity at the park 🐰
Inverting normals can come in handy for shaping interior spaces more intuitively. #MudBun #GameDev #MadeWithUnity #VFX
GPU-based auto-smoothing was fun to implement. Adjacency is constructed by spatially hashing & adding coinciding verts to a shared list. Then each vert's normal is updated to be a weighted avg. of similar normals of verts in the same list. #MudBun #GameDev #MadeWithUnity #VFX
Ray-marched surface, take 2. Not sure why it's so much brighter than regular meshing. Even dual contouring can't beat this because it's the ground truth. Voxel density affects the proxy mesh complexity but doesn't change the visuals. #MudBun #MadeWithUnity #GameDev #VFX
Take 1 was in 2021, and this time I have some ideas to make it more performant.
Ray-marched surface, take 2. Not sure why it's so much brighter than regular meshing. Even dual contouring can't beat this because it's the ground truth. Voxel density affects the proxy mesh complexity but doesn't change the visuals. #MudBun #MadeWithUnity #GameDev #VFX
Another one. Blending between surface nets or dual contouring and intermediate dual quads never gets old. The mesh is constructed & animated by sampling triangle noise with scrolling spherical coordinates. #MudBun #GameDev #MadeWithUnity #VFX
Another demo of blending between surface nets and intermediate dual quads. #MudBun #GameDev #MadeWithUnity #VFX
Quick & easy way to get dithered transparency to look more convincing on overlapping transparent objects: throw unique object hash/ID into the mix for noise seed. #GameDev #MadeWithUnity
Transparency blend & splat size blend. #MudBun #GameDev #MadeWithUnity #VFX
Sometimes it's desired to jitter splat orientation. With high-frequency noise though, the normals might appear to be too noisy. A blend back to the original normals can help, in the same vein as normal transfer techniques for foliage in games. #MudBun #GameDev #MadeWithUnity #VFX
More documentary of the shelved experimental ray-traced voxel render mode. Splat size was used as a proxy for rendered voxel size. Had to speed up the video to fit within bsky's limit. #MudBun #GameDev #MadeWithUnity #VFX