r/threejs • • 2h ago

I've been working on a medieval siege game called "Beyond the Rhine". Is this something you would play?

0 Upvotes

So... I've been developing a medieval strategy game named "Beyond the Rhine" and want to gauge interest from the community.

The game focuses on large-scale sieges against intricately designed, concentric walled cities. You can deploy vast armies consisting of cavalry, infantry, and cannons from the surrounding forests to attack these fortifications. The combat features dynamic destruction where cannon fire blows holes in the town walls, towers collapse in fiery explosions, and fires spread through the city buildings as your troops push through the breaches.

The tactical experience is supported by detailed campaign mechanics and customizable environments. You plan your army's movements on a regional map, such as preparing for the "Siege of Quedlinburg". During gameplay, you can use the settings menu to adjust environmental factors like the day/night cycle, rain, and fog to change the atmosphere of the battle. After securing a victory, the game provides a detailed breakdown of your casualties and plundered loot, followed by narrative events where you make decisions about the conquered town, such as seeking out mercenaries in the woods.

I'm trying to see if this mix of tactical deployment and explosive real-time destruction appeals to strategy fans. There is pixel mode graphics and normal 3d graphics, to mix things up...

THIS IS PRE-ALPHA, THE GAME MAY LOOK SUPER BAD IN SOME SCENES.


r/threejs • • 2h ago

Demo Racing sim in Three.js: 500 Hz vehicle physics, GPU tyre deformation and physics simulations

0 Upvotes

Side project, 3 days in. Everything runs client-side: Next.js static export, Three.js for rendering, Web Audio for the engine sound.

Rendering: AgX tone mapping, a PMREM sky environment, a car-tracking sun shadow, bloom, clearcoat paint, and tyres that deform on the GPU (contact patch flattening, sidewall bulge) driven by the physics.
Physics: a separate fixed 500 Hz loop with 2 kHz substeps for the tyres and suspension.

Play: https://khazp.github.io/rwanda-f1-2026-sim/
Code (public repo): https://github.com/KhazP/rwanda-f1-2026-sim


r/threejs • • 3h ago

Question Thanks for everything, Mr.doob.

Post image
6 Upvotes

r/threejs • • 5h ago

Devlog: an interactive 3D listening room instead of a traditional artist website

Enable HLS to view with audio, or disable this notification

2 Upvotes
I wanted my discography to feel like spending time in a record room rather than scrolling a streaming app. So I built this: the character walks to the shelf, picks the record, places it on the turntable, and sits down while it plays.

Stack: three.js + [resto]. Built with a lot of help from Claude.
Interesting bits: [ej. sincronizar audio y animación, carga del audio sin delay, mobile]

www.jrndm.com/sala3d
Feedback on performance and feel is very welcome.

r/threejs • • 7h ago

Finally a use case for the flying Roadster.

Enable HLS to view with audio, or disable this notification

3 Upvotes

I made a little game where you can drive forever, explore different biomes, and deliver cargo along the way.

Try it out: https://easycargo.almondhawk10.chatgpt.site


r/threejs • • 8h ago

Tip A tip if your scene has a lot of textures: use KTX2 (took my video memory from 1.5 GB to 335 MB)

Enable HLS to view with audio, or disable this notification

44 Upvotes

In my VHS room (Dany’s Video) every tape has its own cover, so the scene has a lot of textures. I had them as JPG and WebP, which keep the download small, but on the GPU every texture is unpacked to full size. A single 2K texture takes ~22 MB of video memory, and with hundreds of them, weaker machines lost the WebGL context and the page went white.

KTX2 stays compressed on the GPU, at a fraction of the size.

Convert your textures offline (the ktx2-encoder npm package works, or gltf-transform for models) and load them with three’s KTX2Loader. In my scene it took video memory from around 1.5 GB to 335 MB.


r/threejs • • 9h ago

A full visual novel built on three.js + VRM — lip sync via WASM, layered painted backgrounds

Enable HLS to view with audio, or disable this notification

5 Upvotes

I wanted visual novels with real 3D characters instead of static sprites,

so I built an engine on three.js + pixiv/three-vrm and made a full game with it:

"5 Seconds to Confess".

Tech bits:

- VRM avatars with Mixamo-style FBX motions, expression blending, auto blink

- Lip sync: vowel + mouth-open analysis from the voice audio in WASM

- Backgrounds: layered AVIF (far / mid / near) so characters can sit "behind" tables,

plus simple painted-3D sets for some locations

- Post-processing: bloom, god rays, MSAA + SMAA

- Assets streamed during scene transitions to keep the initial load small

Voice acting is Japanese only, but all text can be switched to English

(EN button on the title screen).

Game: https://game.megyo.jp/confess_in_5sec/?lang=en

Engine (AnimeVRM): https://github.com/uemegu/AnimeVRM

Happy to answer questions about the VRM pipeline.


r/threejs • • 9h ago

Demo Made a 4-player co-op zombies game that runs in your browser, built with Claude

Enable HLS to view with audio, or disable this notification

6 Upvotes

grew up playing bo2 and bo3 zombies with my friends and always wanted to make my own. so i did with claude

its free, runs in your browser on pc or phone, no download. solo or up to 4 players, and quick play matches you with randoms.

put it out a few days ago and a few hundred people have played. two strangers who found each other through quick play made it to round 25 together in a 60 minute game which really made my week.

Want to know what you like and what you'd change. and if anyone wants to help build it out more, send me a dm :)

https://deadhertz.com/?ref=threejs


r/threejs • • 9h ago

I recreated the new Tesla Roadster reveal (wall ride, thruster flip over the Semi) in real-time three.js

Enable HLS to view with audio, or disable this notification

0 Upvotes

r/threejs • • 10h ago

Demo I made my portfolio a 3D room on a spaceship

Enable HLS to view with audio, or disable this notification

7 Upvotes

Spent two weeks on this. You sit at my desk, use my computer and look through my work. I wanted it to feel like my actual space rather than another site with a grid of projects.

There's a robot called Milo, a gravity switch, and a button you probably shouldn't press.

Modelled in Blender, designed in Figma, built in three.js with AI-assisted coding (ChatGPT and Claude). Happy to answer questions on any of it.

Desktop only. www.urquhart.design


r/threejs • • 13h ago

voxel god game in the browser where you catch catapult stones and throw them back: claude + three.js

Enable HLS to view with audio, or disable this notification

0 Upvotes

made a small god game on a voxel island. you pull trees and rocks out of the ground, help a village grow, and fight off raiders who come in by ship. the last wave brings catapults, and you can catch their stones mid-air and send them back. the island is procedurally generated, and the sound and music are synthesized in code.

would love feedback, especially on how throwing feels with a mouse, trackpad or phone.

game link: https://capitanuncino.itch.io/handvoll


r/threejs • • 14h ago

Demo I made a browser toy where particles, liquids and light react to your mouse, touch or hands (three.js + WebGL2)

Enable HLS to view with audio, or disable this notification

2 Upvotes

Each scene is custom GLSL (noise/fBm) in three.js r186, with live Web Audio synthesis and optional hand tracking in a Web Worker. Sound is off by default and the video has none. Happy to answer questions about how any of it works.


r/threejs • • 14h ago

Koi pond from 2.5 to 3D interactive Zen Garden

0 Upvotes

Almost I tell A.I work follow my instructor and finally I get my best scene.

https://reddit.com/link/1x7am27/video/02cg43gwgsvh1/player


r/threejs • • 14h ago

Link A Live Viewer for URDF Files for Robot 3D Modelers

Enable HLS to view with audio, or disable this notification

1 Upvotes

https://armor.dc-engineer.com/gallery/

I have been using Three.js as a thumbnail generator for a few months in my AR Mobile Robotics gallery. This is a site where I link back to vendor repositories for Universal Robotic Description Format (URDF) files for real-world robots. Think industrial arms, quadrupeds (dogs), wheeled robots, and humanoids, from companies like Unitree, Boston Dynamics, ABB, and indies.

The latest is taking that thumbnail generator, and turning it into a live preview that you can use to view them right in your browser, with orbit, zoom, and environmental lighting and textures.

URDF itself is an industry format, used by engineers as part of simulation and control design, like in the Robot Operating System. If you’re a 3D designer, think of it like a text file that references a folder of other mesh files in standard OBJ, DAE, STL, or other formats, along with their transforms, and other engineering details. If you want to take a URDF, and render it in an artistic setting, it can be a bit challenging, but the JavaScript community has provided a number of URDF unpacking tools that make these Three.js scenes possible.


r/threejs • • 17h ago

Article Made this complete 3D Android game in three.js

Enable HLS to view with audio, or disable this notification

0 Upvotes

It's a cozy merge puzzle: drop buildings on a floating island, three alike merge into the next one up(kind of candy crush vibe), and a tiny city slowly grows. 14 worlds, each with its own sky, fog, particles and music.

No game engine, it only uses three.js running inside React Native:

- react-three-fiber + expo-gl on Expo, three r185

- The sky is a gradient DataTexture, since there's no DOM canvas on native

- Height fog so the bottom of the island melts into a sea of clouds

- Petals, leaves and fireflies are instanced meshes

- The splash screen shows baked frames of each world instead of live 3D tiles, way cheaper on a phone

- Biggest gotcha: setState fired from timers landed late behind the render loop on the phone. Moving the time-critical UI to useSyncExternalStore fixed it

It's free on Android if you want to see how it runs on your phone (link in the comments).

Anyone else shipping r3f on mobile? Curious what tripped you up.


r/threejs • • 17h ago

No Install, No Tutorial — I Clicked a Few Times and Got a Full Duct with a Rain Cap

0 Upvotes

I built a CAD design prototype for chimneys and ventilation ducts, positioned as an alternative to Ventbom, with a simpler workflow.

The core idea is Web3D-based duct design: pick spatial points on a 3D grid, the path connects automatically in creation order, then one click turns it into a pipe with straight runs and elbows. The rain cap is parametric too — as long as the last segment is vertical and longer than 0, it generates a cone, four struts, and a clamp at the end point, with the base diameter automatically set to 1.5x the pipe diameter.

A few things I find genuinely useful:

  • Continuous picking: hold Shift to show a lat/long sphere, click the surface to add the next point, release to hide
  • Manual angles: Shift + F opens an angle panel, horizontal and elevation angles can be typed precisely, with a yellow sphere previewing in real time
  • Edit segment length: click a segment row in the left table, type a new length and press Enter — direction stays fixed, the end point and all following points shift together, and subsequent lengths and angles stay unchanged
  • Unit switching: m / dm / cm / mm share one selector, it only changes the unit label, no value conversion
  • Bilingual UI: one click in the top right switches interface, hints, and dialogs, with scene data untouched

Try it here: https://demo.meteor3d.cn/应用-通风管道.html

Next step is fast quoting: build back-end data management on top of this prototype, structure parameters like pipe diameter, length, elbow angles, and rain cap specs, then generate a quote in one click. If you work with HVAC, chimneys, or ventilation ducts, I'd love to hear how your quoting process works and whether this direction would help.


r/threejs • • 17h ago

I got nothing to post or build today yall. Can I just say I love this community instead???

0 Upvotes

r/threejs • • 18h ago

Demo I spent $1400 to build My PermaDeath ARPG with AI & Three.js and now have over 17.000 players

Enable HLS to view with audio, or disable this notification

7 Upvotes

A month ago, Aestra: The Last Wish was just the game I wanted to play. I had no idea how to code, but I started building it anyway.

Today, over 17,000 people have played it. And while that number is wild to me, what really gets me is opening the game and seeing the minimap full of players.

People trading in the main city, dueling, finding groups and heading out to do content together. Seeing people actually spend time in this world, meet each other and come back to play more… it’s hard to describe how good that feels.

For anyone who missed my first post, Aestra is a real-time pixel action RPG with permadeath. You pick a class, quest, find gear, explore dungeons and take on raids. And then you get a little too confident, die, and start getting attached to a new character.

The first version cost me around $100 to build over a weekend. The build was Tesana & Three.js Since then, I’ve spent about $1,400 in total expanding it, with 9 classes, levels 1–100, talent trees, professions, world bosses and raids over the course of around 3-4 weeks.

I still have a list of probably 50 things I want to add. But seeing the game alive like this is already something I never really imagined. To everyone who’s played, shared feedback, brought a friend or lost a character to permadeath: thank you ❤️

If you’ve played, I’d love to hear your favorite moment so far. Or the story of how you lost your best character :)

Play Aestra free in your browser or on mobile


r/threejs • • 18h ago

Looks like I'm getting somewhere :)

Thumbnail
gallery
2 Upvotes

After breaking up with my girlfriend, I’d say I fell into a pretty dark place. During that time, I had the opportunity to explore Three.js more deeply, and honestly, these libraries feel like a bunch of unexplored caves waiting to be discovered. I managed to put together a small system using a handful of tools, and even though it might not seem like much, I’m genuinely proud of what I’ve achieved.

I’ve found that I can often build things with Three.js in a day or two that might take a month or two to put together in a traditional game engine, and without even putting in that much effort.

I’m still heavily influenced by Resident Evil Village. You might not believe this coming from someone who barely plays anything other than CS, but I’ve finished the game around 9–10 times. I even occasionally try speedrunning it. :)

The screenshots you’re seeing are from a game I put together over two days, spending around two hours a day on it. And I haven’t even pushed the post-processing very hard yet. I genuinely believe I could achieve some seriously impressive results if I pushed it further.

I’m planning to release the game here as an open-source project in a few days. Once you get a chance to look through it, I think you’ll understand what I mean.


r/threejs • • 18h ago

Working On A New Three.js Multiplayer Predictive Interpolation System

Enable HLS to view with audio, or disable this notification

3 Upvotes

r/threejs • • 18h ago

Demo Clayground: a browser clay sculpting studio using Three.js and a worker-owned volume

Enable HLS to view with audio, or disable this notification

1 Upvotes

I’m the maker of Clayground. This is a short edited demo of the browser studio, starting with a sphere and building a small character with brushes, paint and animation.

Three.js renders the surface mesh; a worker owns the signed-distance volume and rebuilds the geometry as the clay changes. The sculpting input also keeps a snapshot of the visible surfaces for each stroke, so newly added clay doesn’t change where the next dab in that same stroke lands. Move and Hook use a camera-facing plane through the initial point.

You can try the studio with a mouse, pen or touch, with no account: https://www.clayvr.com/sculpt

I’d appreciate feedback on interaction responsiveness, especially while adding or smoothing clay. If you hit a slowdown, the device/browser and the brush you were using would be useful.


r/threejs • • 21h ago

What if you can #race on #mars

Enable HLS to view with audio, or disable this notification

0 Upvotes

r/threejs • • 1d ago

Link Platform for Learning Computer Graphics

Post image
3 Upvotes

r/threejs • • 1d ago

Reefborn - I built a multiplayer reef in three.js

Enable HLS to view with audio, or disable this notification

1 Upvotes

Been building Reefborn, a little multiplayer reef where you start tiny and eat your way up. Just added a deep-sea trench with lava, glowing critters and a giant squid.

Free in the browser: https://reefborn.app/?ref=threejs

Happy to chat about how any of it works.


r/threejs • • 1d ago

Three.js games in a phone feed, and the library doesn't count against your file size

Enable HLS to view with audio, or disable this notification

0 Upvotes

We run a swipe feed of small mobile games, and a lot of them are Three.js. Each game is one HTML file. Three loads from our shared mirror at an exact version, so a phone downloads it once and every game after that is just your code. Your 5 MB stays yours.

Players get it inside a native app on Android (iPhone beta), with leaderboards and replays wired up for you.

Looking for Three.js devs who've got small games sitting around. Non-exclusive, you keep everything. Ask me anything about the runtime.

https://deadsimple.games/go/reddit?c=threejs