A Strawberry. 90 stacks, 88 photos each. 2M splats. @michael-moroz.bsky.social helped out with training it. 👇
Mykhailo Moroz
@michael-moroz.bsky.social
Love physics simulations and rendering algorithms. Currently work at ZibraAI as Lead 3D Research Engineer. Discord: misha.m. michaelmoroz.github.io/about/
crazy cool
I made an experimental "GPU mode" in my toy shader debugger (pema.dev/hlsl/). It runs the shader on the GPU with WebGPU by transpiling to WGSL with the Slang compiler. You can click on a pixel to drop into the interpreter and start debugging. Also added image previews when you hover variables. :)
(🧵 1/6) Recently I've been working on an HLSL interpreter, which can execute shader code entirely on the CPU github.com/pema99/HLSLI... I used it to make a cute little interactive debugger demo. You can try it yourself at pema.dev/hlsl/
I know I've been talking about this for over six months now, but I swear I'm working towards releasing the source 😅 - along with an explainer video and a blog post.
Figured out a proper Gaussian Splat -> #VRChat workflow using free software and @michael-moroz.bsky.social's implementation. I'm really happy with the result! I made a tutorial on my blog if anyone wants to scan the world and create VRChat maps from it! blog.monsy.monster/gaussian-spl...
I'm finally writing up how Nanite Tessellation works. The first few blogs posts are up. More will be coming. graphicrants.blogspot.com/2026/02/nani...
Nanite Tessellation
Nanite Tessellation, aka Nanite Dynamic Tessellation, aka Nanite Dynamic Displacement was the next major feature I worked on after Nanite it...
graphicrants.blogspot.com
I just released my video about the engine (and game) I've been working on. The engine is based on dynamic SDFs, and the video describes how it works and what it makes possible. Link in the reply! This is my first YouTube video and it took forever - please repost!
Ever seen one of these, and wondered *why* they work? 🧵 This is a so-called Bitonic sorting network, and the illustrations show the two common ways to implement them. From an implementation point of view the two methods are effectively the same, so which one you pick just comes down to preference.
Decided to go back to making Shadertoy fluid sims for for a bit. This time I improved my particle clustering cellular automaton SPH fluid sim to support multiple species particle merging and splitting. Also some fine tuning of the physics. shadertoy.com/view/tfyyWD
I am making clouds for @skipsy.ca's new VRChat world. The clouds render faster than the mountains lol #VRChat
Slang can be made extremely close to GLSL/Shadertoy style of shaders by using a set of defines and typealiases, I've made a template in compute.toyts just for that compute.toys/view/1947 I also ported my most popular shadertoy using it: compute.toys/view/1948
Compute.toys finally got the Slang compiler integrated, which means its finally time to ditch WGSL 🎉🎉 I've ported my FFT to it, coding in it is much nicer. compute.toys/view/1922 Should try something with its autodiff next.
Made a mixed radix FFT implementation in compute.toys/view/1915 It is neat, but I still wonder how do you properly handle large prime factor size FFT's?
Faster Mixed Radix FFT
Forked from https://compute.toys/view/1914 Faster version
compute.toys
I've ported my vrchat isosurface ray tracer to shadertoy and added it to my fluid simulation there. Its probably the fastest multibounce ray tracing for liquids I've made thus far. shadertoy.com/view/w3sXzs
I posted my own implementation of the trilinear isosurface intersection on shadertoy 2 methods, one is the one from jcgt.org/published/00... and the other one is my own idea of using 4 trilinear samples (can use HW samplers here) to reconstruct the cubic. www.shadertoy.com/view/WXS3Rm
Shadertoy
shadertoy.com
Managed to get Nvidia Flow (PhysX) to compile and run, after initially failing the other week. Was curious for a quick peek now that it's been open sourced (github.com/NVIDIA-Omniv...) Flow itself isn't CUDA based, but instead uses compute shaders Some higher level observations in the replies 1/?
I've been improving my VRChat liquid simulation for the last few weeks. Of the most notable things that I've implemented is a ray tracing algorithm over a 3d texture isosurface (using some ideas from jcgt.org/published/00...) Its surprisingly performant for VR resolutions!
Is it me or is bluesky video quality absolute trash
I'm slowly porting my approximate grid SPH simulation to VRChat. It did require few improvements to be stable enough, now its a hybrid neighbor index/particle average grid. Still need to implement @d4rkpl4y3r.bsky.social 's mip counting sorting method for improved performance.
I usually render particle fluids with particles, as it gives the most details, but here I tried using ray marching for the fluid. It certainly is much more liquid like, but at the same time its slower and loses some detail. I wonder if I can improve this. compute.toys/view/1809
I tried to apply my previous simulation approach to model soft bodies. By keeping the initial positions and using those to create springs between particles with spring length being the distance between initial positions its easy to make a soft body sim. compute.toys/view/1807
Been recently looking into fluid simulations again. This time I've testing if I can make a good SPH simulation but only having "average" cell particles. It seems to work surprisingly well, and it doesn't need sorting either. compute.toys/view/1782 Explanation thread👇🧵
On a day like this I recommend donating to Ukraine's military units. @serhii-rieznik.bsky.social has a drive going. A fellow Berliner, collecting for Kraken unit to grab them another drone. I can personally vouch for Serhii as an aid organiser who has done great work. www.paypal.com/paypalme/ser...
Pay Serhii Rieznik using PayPal.Me
Go to paypal.me/serhiirieznik and type in the amount. Since it’s PayPal, it's easy and secure. Don’t have a PayPal account? No worries.
paypal.com
There was a severe lack of good volumetrics in VRC, so I decided to make my first VRChat world👀 vrchat.com/home/world/w... The world is based on Room -02- world from どんぐりのお店's BOOTH and the volumetric fog is a modification of this Shadertoy shadertoy.com/view/Wc23Rm
Successfully smashing together two neutron stars, to make a #blackhole. The amount of extra resolution you need to simulate a black hole compared to a neutron star is kind of nuts
Today I uploaded my Powder Toy in #VRChat creation as a world, so people who don't know me can play with it: vrchat.com/home/launch?... I also added 10 new elements, including a bunch of explosives which can push around particles when detonated, via a rudimentary wind simulation.
I made Powder Toy in VRChat! It supports several kinds of liquids and solids, including chemical reactions between them. It's done entirely with fragment shaders and cameras, so I can put it on my avatar.
Almost forgor about this place huh In any case, here is a video of a superfluid simulation www.youtube.com/watch?v=uuGR... As well as the simulation itself compute.toys/view/1640
Superfluid 3D simulation
YouTube video by Mykhailo Moroz
youtube.com
Hello everyone! I've been experimenting with some different ways of rendering a fluid simulation, and made a video about the journey over here: youtu.be/kOkfC5fLfgE
Coding Adventure: Rendering Fluids
YouTube video by Sebastian Lague
youtu.be