After wiring fluid FBOs on a lot of different projects, I finally built the library I always wished I had to simplify my life
A drop-in 2D fluid solver for @threejs#TSL & #WebGL
Built-in GPGPU particle displacement, 20+ post-processing effects, an API that just works
Code๐
Good eye. The first version did exactly that: the softness came from picking a blurrier mip of the height map. But a mip blurs by a fixed number of pixels, and mixing levels left steps around the hand and a hard cliff at the wrist.
Now the film behaves like a rubber sheet stretched over her. Where her hands or face touch it, it lies on them; everywhere else it pulls back toward flat glass, and a bulge fades out over about 3 cm (that 3 cm is a real distance, not a pixel count), so the film looks the same at any map resolution.
The mip pyramid is still there, but only to solve the sheet fast on the GPU.
3/ The depth offset that keeps the collar and brooch apart moved from pixels to vertices, and triangles go front to back, so hidden pixels are skipped. No invisible shadows, one shader for all portraits, the frame goes to the screen once, not after every pass.
#threejs#WebGPU
1/ A new challenge inside the #threejsJourney Halloween challenge: the living 3D portrait had to get much lighter, because many more will be watching.
Same look, but now a whole hallway of them takes less memory than one used to.
Live link and how it's done in @threejs โ
2/ Live: https://t.co/s2ojZWOcOz
What they're wearing and their hair never change, so each portrait has one main texture plus a small atlas for its dead, zombie or demon faces, all in KTX2, compressed right on the GPU. Everything that never moves is baked into the model.
@threejs A frame atlas can't give smooth motion or real volume, and the 3D model doesn't have the texture of an oil painting yet. Which one do you like better?
Atlas: https://t.co/jUst24IxMF
3D: https://t.co/s2ojZWOKE7
In 3D, try Follow visitor: she moves only while he isn't looking.
Productive weekend on my #threejsjourney challenge entry, with plenty to share.
With @threejs I built a simplified copy of my hallway to test creepy portraits: a head-turn atlas cut from video, and a rigged 3D bust pushing out of the canvas (#TSL + #WebGPU).
Live demos ๐
๐บ new #threejs (Opus?) stream today, two parallel projects:
a) using SDFs for particles collisions, soft shadows, baking AO/ thickness Blender. Tech prompts.
b) naive prompt to make a nice scene of similar direction.
You judge where we are now
https://t.co/D4YmWM08q6
New #threejsJourney challenge just dropped. Halloween theme, so Iโm trying something Iโve never done: interactive horror storytelling.
That night I sat down with the plot, characters, motivesโฆ and once I started thinking like them, the hair on my arms actually stood up.
I write stories and never publish them. This one isnโt staying on paper: psychological horror built on small details, the kind that slowly pulls you in and gives you chills once you start connecting the dots.
Generated a bunch of references before morning. Theyโre my map for building the world. Made some progress over the weekend, first look soon.
No idea if I can pull off everything I have in mind before the challenge ends. But Iโm finishing this one day, no matter what.
#threejs
You donโt have to believe in ghosts. They already believe in you.
Some mysteries arenโt meant to be solved.
First #threejsJourney scene is done. Built in #blender, straight from the references. Teaser for interactive #threejs storytelling there.
๐ง Headphones on!