🚀 Senior Full-Stack Developer | 20+ yrs crafting digital magic ✨. Passionate about innovative animation, creative UI, and robust software architecture.

Odesa, Ukraine
Joined October 2013
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👇
15
57
4
500
27,427
It's not glass. Something on the other side found out. It's touching back. Would you touch it? #threejs #threejsJourney #gamedev #indiedev
2
4
13
1,610
How it's made: a real animated mesh stands behind the glass (from the side, from behind). An orthographic camera renders it into a height map (right), and the mirror's film bends to it, going soft through the mip levels like cloth. The map is redrawn only when she moves. Built with @threejs #WebGPU + TSL.
1
1
74
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 ↓
1
1
121
2/ Live: dont-look-back.artcreativeco… 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.
1
54
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
28
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 👇
2
2
6
327
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: dont-look-back.artcreativeco… 3D: dont-look-back.artcreativeco… In 3D, try Follow visitor: she moves only while he isn't looking.
1
145
Artem Korenevych retweeted
📺 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 youtube.com/live/0_1WDKZKXRQ
10
26
1
367
21,287
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!
2
3
3
194
References for comparison xitter.cf/artcreativecode/status…
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
21
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
🤖 Made with AI
1
1
101
All transitions at once 🌸 Each tile plays two in a row: the flower melts, crumbles to ash, flies apart or unravels into threads, and the next one takes its place. Built with @threejs WebGPU Live link, sound on! floramorph.artcreativecode.c… #threejs #creativecoding #threejsjourney
A digital garden you want to touch, and you can 🌸 Endless voxel particles that grow, melt, turn to ash and rise again. Inspired by @refikanadol, built with @threejs WebGPU + TSL. Which flower is your favourite? Live demo 👇 #threejsjourney #threejs #creativecode
4
7
1
35
2,792
A digital garden you want to touch, and you can 🌸 Endless voxel particles that grow, melt, turn to ash and rise again. Inspired by @refikanadol, built with @threejs WebGPU + TSL. Which flower is your favourite? Live demo 👇 #threejsjourney #threejs #creativecode
5
3
1
32
5,344
Try it in your browser, sound on 🔊 floramorph.artcreativecode.c… 131,072 cubes, all simulated on the GPU. #threejs #webgpu #creativecoding
119
Artem Korenevych retweeted
LAUNCH TIME! 🏁 Play it for free now: threejspunk.com This is NOT a demo. It’s a full racing game made with #threejs. 🏎️ 50+ missions 🚗 Multiple cars 💎 Collectibles 🌧️ Realistic rendering, rain, reflections & physics 🌃 A huge city to explore 📱 Desktop + mobile Built with #WebGPU, TSL, GPUCompute, and a lot of custom rendering techniques — pushing game quality on the Web as far as I can. I hope you like it 😍. Thanks to all beta testers for their input. Thank you, @sea3dformat, for helping me with performance and story. #threejs #WebGPU #TSL #WebGL #gamedev #indiedev
108
100
26
1,003
80,846
Artem Korenevych retweeted
As promised, the #threejs Cyberpunk Project got an update, and the source code is now available. You can download it, learn from it, or feed it into your AI if needed. @sea3dformat and I documented every important aspect and created specific agent instructions with Do's & Don'ts. Live: threejspunk.vercel.app/ Source: github.com/ektogamat/threejs… If you find it helpful, please leave a star on GitHub ⭐️. Thanks again to all the @threejsconf workshop participants. It was great 🥳 to meet you all in person.
18
27
2
373
15,319
Do you love laser shows as much as I do? ✨ I built three-ilda - a library to bring authentic ILDA laser shows into any @threejs scene! Load .ild files with ILDALoader and render volumetric beams that stop at 3D walls. Full source: github.com/artcodev/three-il… Under the hood 🧵👇
5
7
103
6,123
ILDALoader is a regular THREE.Loader. It parses .ild into typed arrays (position, color, blank) grouped into frames and projector tracks. CPU side: LaserScanner steps through those points at a fixed sample rate, independent of frame rate. It low-pass filters XY with a spring/damper model of the mirrors, writes the result into a ring buffer and fades color by sample age. LaserShow then packs that buffer into a BufferGeometry with DynamicDrawUsage and skips any segment that touches a blanked sample. The blank flag is read a few points behind the current one so it lines up with the mirror lag.
1
106
GPU side: LaserShow is a Group you just scene.add(). The drawing is LineSegments with vertex colors, additive blending and depthWrite false. The beams are a Mesh of triangles from the projector Object3D to each segment, same blending. Materials are TSL node materials on WebGPURenderer and ShaderMaterial on WebGLRenderer. Scale, zoom, intensity and projector position are uniforms, so changing them doesn't rebuild buffers. LaserShowPipeline is optional post-processing. It renders the scene with bloom plus a separate half-res beam pass. The beams fade against the scene depth, get blurred and are composited on top as haze.
78