Issue 026
➡️ Read the web version ⬅️ It looks way better!
🔥 Headlines
Epic Games won against Apple in a 4-year-long lawsuit. Apple must now allow developers to use other payment processors (such as Stripe) in the US App Store. In theory, you should now be able to publish a PWA game with web-based in-app purchases into the US App Store without supporting Apple Pay.
The European Commission has launched an enforcement action against harmful commercial practices in the game Star Stable Online, especially toward children. Violations include manipulative ads, time-limited purchase pressure, unclear pricing, and undisclosed influencer marketing. This sets a precedent for games in the EU.
Discord launched the Social SDK to power social infrastructure and communications for games. You can use it to leverage Discord features in your game, such as friend lists, deeplink invites, rich presence, voice chat, and linked channels. Players don't need to have a Discord account to use these features.
⭐️ Sponsors
CrazyGames is revolutionizing web gaming, connecting over 3,000 developers with 40+ million players monthly. Our platform supports both ads and in-app purchases, paying out millions in revenue share to developers each year while fostering one of the most vibrant player communities worldwide. Publish your game on CrazyGames!
CrazyGames is growing fast, and we're hiring across multiple positions! We're a fully remote company with an international team, and we're looking for passionate people to join us. For more details, check out our open roles.
Poki serves over 90 million players each month, offering a diverse range of game genres. Poki supports game developers in reaching a wide audience with HTML5 games and is continually evolving the variety of web games available, from casual point-and-click games to multiplayer FPS shooters and everything in between. Share your game with us!
Web Game Dev! Check out the link in this #showcase post on Discord to get access to our new Playtest feature. This allows you to get free and unlimited playtests of your game with our players! Learn more about Poki in this presentation.
💼 Jobs
CreativeDevJobs is a job board dedicated to connecting talented developers with cutting-edge companies worldwide. Our platform brings profiles such as creative developers, technical artists, game developers, and front-end developers with innovative projects using Three.js, WebGL, React Three Fiber, and other emerging web technologies. We help developers find exciting opportunities at the intersection of creativity and code.
Find your next opportunity on CreativeDevJobs.
🏎 Engines
- Three.js r176 (changelog, migration guide) – Learning TSL write-up by sunag.
- TresJS – Early v5.0.0-next.0 pre-release. See the changelog for details. They made a Nuxt DnD demo game.
- tresjs/post-processing v2.2 – Barrel blur, chromatic aberration, watercolor, scanline, brightness contrast, color depth, fish-eye, god rays, grid.
- Babylon.js v8 (video) – IBL shadows, area lights, node render graph, lightweight viewer, WGSL core engine shaders, overhauled audio engine, Havok character controller, and a lot more.
- PlayCanvas Engine v2.7.0 – Shader chunks ported to WGSL, 3DGS shadow casting and sorting speed-ups.
- PlayCanvas React 0.3.0 – React 19 support, smaller bundle size with lazy physics, new asset hooks.
- Wonderland Engine 1.3.4 and 1.3.3. Check out this presentation of the kind of optimization they implemented.
- Needle 4.4.0 – Check out their new devlog for updates.
- Phaser v4 RC2, RC1, and Phaser Editor 4.10.0.
- PixiJS Layout v3 – Flexbox-based Yoga-powered layout engine library.
- PixiJS React v8 – R3F-inspired full rewrite with React 19, PixiJS v8, and TypeScript support, by Trezy.
- Kaplay 4000.0.0-alpha.18 and a new project browser in the playground.
- Construct r433 – Adds support for TypeScript in the new Monaco code editor.
🛠 Tools
- Three.js Octahedral Impostor – Implementation following this article, by Brian Breiholz.
- batched-mesh-extensions (has WebGPURenderer support) by Andrea Gargaro.
- Anime.js v4 (gorgeous website) – New API, scroll animations, additive animations, WAAPI, by Julian Garnier.
- Universal Animation Library – 120 animations by Quaternius.
- JoltPhysics v5.3.0 by Jorrit Rouwe.
- vite-plugin-glsl – Import, inline (and minify) GLSL/WGSL shader files, by Ustym Ukhman.
- WESL – Community-Extended WGSL for Rust and JavaScript.
- WebAR.rocks – Object detection, tracking, and 6DoF Pose Estimation by Xavier Bourry.
- Playlight – Decentralized game discovery platform by PaulPlay.
🎬 Videos
- 3D on the Web 2025 presentations (WebGL and WebGPU Updates video) by Khronos Group
- Let's Learn Shaders! by Erik Onarheim (Excalibur.js)
- Intro to Creative Web Development with Three.js and Blender by Andrew Woan
- Easily add VFX to React Three Fiber - Mini Game Tutorial by Wawa Sensei
- Interactive 3D Apps With Svelte And Threlte by Joy of Code
- Hyper-Optimizing 3D on the Web with the Wonderland Engine by Jonathan Hale
- 3D Minesweeper Clone in Wonderland Engine (5 hours) by Sorskoot
- Why Phaser 4 Changes Everything Now! - Phaser World 219 by Phaser
- Fortnite, Unreal Engine, and the Future of Gaming with Tim Sweeney on the Lex Fridman Podcast
- Why we built our MMO inside a database (SpacetimeDB) by Tyler Cloutier
✍️ Articles
- What's New in WebGPU (Chrome) (concise changelog per version) by François Beaufort
- WebGPU presentation by Javi Agenjo
- Dive Into WebGPU by Martin Laxenaire
- Experimenting with WebGPU in WebXR by Brandon Jones
- Procedural Vortex Inside a Glass Sphere with Three.js and TSL by MisterPrada
- Building Dynamic Particle Trails with TSL by MisterPrada
- Crossy Road in Three.js and in React Three Fiber by Hunor Márton Borbély
- Creating Stylized Water Effects with React Three Fiber by Thalles Lopes
- New VFX chapter in Wawa Sensei's R3F course (includes TSL) by Wawa Sensei
- Building Performant Multiplayer Open-World Web Games by Leonidas Maliokas
- Defold Foundation x Poki Integration by Poki
- Making a multiplayer game with Colyseus and Kaplay by Peter Genčur
- Happy New Year Excalibur! by Erik Onarheim
- Building Games in TypeScript (Excalibur.js) podcast on TypeScript.fm with Erik Onarheim
- Float16Array in JavaScript by Trevor I. Lasn
- Publish your Web Game to Steam using Electron by Jack Le Hamster
🎮 Games
- Space Pizza by Perplex (Hamza) – Build your base, gather space mushrooms, and deal with intruders.
- Wizard Masters by Ertuğrul Çetin – (repo) Spell-based multiplayer third-person shooter.
- Cut in Half, Please! by Shubidumdu Studio – Cut items in half precisely to clear levels.
- Rise of the Blobs by Robot Invader – Rotate a cylindrical platform to match falling fruit with blobs.
- Crazy MotoX Multiplayer – 2D motorcycle balancing platformer game.
- Museum of Dots by Pelican Party – Platformer puzzle game that takes you on a museum adventure.
- Harvest Simulator by Camu – Harvest crops with your tractor.
- Blacktop: Police Chase by Steelpan Interactive – Crazy Taxi meets GTA!
- Fruits of Fury by berru & para – You are a ninja slashing through waves of fruits.
- Blumgi Merge by Blumgi – Merge slimes and fight dungeon monsters.
- Bubbits by Team Flow – Very polished classic bubble shooter game.
- Tanks 3D by Yp3d – MMO tank battles with destructible terrain.
- Racez.io (repo) by Aadi Kulshrestha – Racing game with a cute design.
- fly.pieter by Pieter Levels – The viral game that started the Three.js vibe-coded games craze.
- Asciicker (repo) by gumix – RPG with a surprising ASCII rendering of a 3D world.
✨ Demos
- Island Portfolio (repo) by hexianWeb
- Volumetric Lighting Tunnel by Maxime Heckel
- Three.js Island Challenge by Thibault Introvigne
- 3D Cyber Desk by Thibault Introvigne
- React Miami (repo) by basement.studio
- Crawler (video, repo) by Isaac Mason
If you liked this issue, please 🐦 retweet it or 🦋 repost it on Bluesky. It helps a lot!