Newsletter โ Issue 022
๐ฅ Headlines
Discord shared their plan for the future and launched their Embedded App SDK for Activities (NPM package). Multiplayer web games can now be played directly within Discord via iframes, with users connected via voice chat. The SDK lets you authenticate players and manage how your game interacts with Discord. Check out the official starter, Hugo Duprezโs starter, and Colyseusโ starter (article).
๐ Safari 18 beta was announced at Appleโs WWDC developer event. WebXR is no longer behind a feature flag, and immersive-vr
sessions and hand tracking are available by default. Even though WebGPU has been available in the Technology Preview since last December, it is unfortunately not part of this release. So, you will have to support WebGL for a while if you support Safari. On the Web Apps (PWAs) front, if a user has your web app installed and clicks a link pointing to your domain from outside their browser (like a link shared on Discord or Slack), it will open in the web app. Unfortunately, there are still no Install Prompts on Safari, so you will have to keep explaining to your users how to install your web app manually.
The Meta Quest Browser now supports WebGPU since version 32.0!
Babylon.js 7.0 is out! Check out the release video. This major version includes a procedural Node Geometry (live editor), Global Illumination, Gaussian Splats, Ragdoll Physics and better WebXR support.
The winners of Gamedev.js Jam 2024 have been announced. The theme was Power.
Athena Crisis by Christoph Nakazawa is now open source and funding contributions! Check out the repo.
๐ฅญ Jamango! web game raises $2.5M โ Co-founded by Adam Dalton, Richie Whelan, and Jeremy Klarenbeek, Jamango! is a browser-based multiplayer user-generated content platform. It is currently in closed alpha, but you can check out the homepage to get an idea of whatโs coming. I have been working for Jamango! for several months, and this project is truly promising. Remember this name, and keep an eye out for the public release!
โญ๏ธ Sponsor
Poki is on a mission to create the ultimate online playground โ where players and developers come together to play and create! Together with a growing 350+ game developer community and 65 million players each month, weโre creating a new standard for web games. Interested in working together? Share your game with us!
Poki will be rolling out its new playtesting flow soonโข๏ธ, which allows you to get unlimited free playtests of your game with Poki players! Just upload a web build of your game and start watching, no strings attached! The official announcement is still to come, but if you have questions, feel free to ping the team on the Web Game Dev Discord!
๐ Engines
- Three.js r165, r164, and r163 (changelog, migration guide).
- Three.js Shading Language โ First draft of the TSL spec, which allows you to write shaders in JavaScript. Check out Bruno Simonโs tweets for examples (portal shader).
- Drei Vanilla v1.16.0 โ
Cloud, adds
screenspace
to Outlines. - Drei v9.106.0 โ
HLS in
useVideoTexture,
gainmap,
envmap rotation and intensity, ScrollControls
prepend
. - @threlte/extras 8.11.0 โ Outlines, Text3DGeometry, InstancedSprite, Stars, Mask, ImageMaterial.
- Threlte Studio is the upcoming editor of Threlte. Here is a sneak peek.
- TresJS v4 - On-demand rendering, new useLoop, pointer events with event bubbling, primitives reactive obj and conditional rendering, Better disposal of resources.
- cientos v3.9.0 โ Local canvas option for MouseParallax, Fit component, positional audio, LightFormer in Environment, Holographic Material, Ocean component, RoundedBox, mouse/touch props for camera-controls.
- PlayCanvas v1.71.0, 1.70.0, 1.69.0 - Gaussian Splats, WebGPU Compute Shaders, convex hull collisions, dispersion extension support, temporal anti-aliasing (TAA). WebGPU is now supported in the editor.
- Phaser โ A ton of ecosystem updates, including an upcoming new renderer, Phaser Compressor, Phaser Editor v4.0.2, Phaser Sandbox v3, Playable Ads Plugin, Discord Multiplayer Tutorial, Phaser Explorer, Create Game CLI.
- A-Frame v1.6.0 โ Bug fixes, memory management and performance improvements. Execution order API.
- Wonderland Engine 1.2.0 (and 1.2.1) โ Includes post-processing like Bloom and Tonemapping, HDR environment support, improvements to image-based lighting, animation blending, morph targets, and a JavaScript/TypeScript based editor API to write custom tools.
- Needle 3.40.0-exp โ Includes automatic LOD generation to improve performance and loading times.
- PixiJS 8.1.0
- ๐คบ Rapier 0.20.0
- Defold 1.8.0
- Construct R388 & R395 beta
- Excalibur 0.29.2
- Cocos 3.8.3 โ See changelog (scroll down)
- WarmeY2K Engine by Julien Rongiere โ PSX-style 3D engine.
๐ Tools
- glTF progressive โ Automatic loading of mesh and texture LODs, by Needle Engine.
- Tree.js procedural tree generator (repo) by Dan Greenheck.
- three-pinata by Dan Greenheck.
- Wiggle Bones by Xavier (Jack).
- ๐น๏ธ Mana Potion (demo) by me โ Now with Vue, Svelte, and vanilla JS support.
- HTML23 (demo) live editor for pmndrs/uikit by Bela Bohlender.
- three-fiber-webxr-toolbox (video) by sawa-zen.
- Triplex 67.4 and an upcoming VS Code extension. Get in touch with Douges to try it.
- tres-fps-controls by Jaime Torrealba.
- ๐พ Jolt Physics v5.0.0 by Jorrit Rouwe โ See the list of new features.
- glTF-Transform v4 by Don McCurdy โ Performance improvements, new APIs for moving resources (materials, meshes, animations) between models, KHR_materials_dispersion and KHR_materials_diffuse_transmission.
- GLB UV Inspector by Simon Harris โ Quickly look at the UVโs of a GLB.
- Model Viewer 4.10.0 by PlayCanvas โ New camera controls. See changelog.
- ๐จ Khronos PBR Neutral Tone Mapper โ True-to-Life Color Rendering with Three.js and Babylon.js support.
- Arwes Futuristic Sci-Fi UI Web Framework by Romel Pรฉrez.
- ๐ Crocotile 3D by Alex HW โ Tile-based 3D modeling tool for low-poly pixel art.
- ๐ Smooth Voxels 2.3.0 โ Three.js and A-Frame support, save animations from the Playground, new shapes.
- Colyseus 0.15.17 โ Improves how stale rooms are cleared when using multiple processes.
- ๐ก PartyKit by Sunil Pai is joining Cloudflare.
- ๐ก LootLocker โ Game backend platform.
- ๐ก Open Game Backend by Rivet.
- ๐ก Edgegap โ Game server hosting.
- ๐ก SpacetimeDB (repo) โ Database with custom logic support for multiplayer games.
- ๐ฐ 1D3 โ Merchant of record and monetization.
- ๐ฐ Sanlo โ Merchant of record and monetization.
๐ฌ Videos
- WebGL + WebGPU Meetup - March 2024 by Khronos Group
- ๐ Lerp smoothing is broken by Freya Holmรฉr
- ๐ How do Video Game Graphics Work? by Branch Education
- Zelda Wind Waker in the browser by RobinPayot
- Three.js Raycasting Tutorial for Beginners by Dan Greenheck
- Make Any 3D Model Explode, with R3F and Next 14 by developedbyed
- Make a Fall Guys Clone for Discord Activity by Wawa Sensei
- Coastal World Aesthetics by Wawa Sensei
- Loading 3D Models with Threlte by Zoetrope Studios
- Revolutionizing Game Development (transcript) with Will Eastcott from PlayCanvas
- Blender, Unity, WebXR in Blender, WebXR in Unity mini tutorials for Needle Engine
- Community Reel 2023 by Wonderland Engine
- Build a Virtual World Filled with Self-Driving Cars (with no libraries!) by Radu Mariescu-Istodor
- JavaScript Adventure Platformer Game Tutorial by JS Legend
- How to Make a Video Game - Godot Beginner Tutorial by Brackeys
- ๐๏ธ 3D web game dev jam! with Brian Breiholz on the JS Party podcast
โ๏ธ Articles
- Whatโs New in WebGPU (Chrome 126) by Franรงois Beaufort
- ๐ Choosing texture formats for WebGL and WebGPU applications by Don McCurdy
- ๐ Morphing and Vertex Animation Techniques by Luiz Otavio Vasconcelos
- ๐ Voxel Displacement Renderer (video) by Daniel Schroeder
- Moebius-style post-processing by Maxime Heckel
- Rendering User Interfaces on the GPU by Bela Bohlender
- Building Your First Browser Game with Three.js and React by Romain Herault
- Transparently supporting both WebGL and WebGPU by Deltakosh
- Introduction to Babylon.js by Jan Kaiser
- Prefab Instancing in Wonderland Engine 1.2.0 by David Peicho
- Combining Pixi-React and HTML with Tunnels by Jallen
- Wave Function Collapse, Pathfinding, and NPC AI planning with GOAP by Justin Young
- Choosing your web game engine by Poki
- Optimizing Javascript for fun and for profit by Rom Grk
- Garbage Collection in V8 by Roman Maksimov
- ๐พ 2D Rigid Body Collision Resolution by Kai Sassnowski
- ๐ก Matchmaking Series: Ping (in Call of Duty) by Activision
- Unity sees WebGPU as a growing market by Bryant Francis
๐ฎ Games
- Simply Prop Hunt by Elanra Studios โ Hide-and-seek game in which you play as a Hunter or a Prop.
- Under the Red Sky by Federico Calchera & Dedra Games โ First-person 3D parkour game.
- Blumgi Soccer by Blumgi โ Shoot the soccer ball into the goal across various worlds.
- Stunt Car Extreme by Hyperkani โ Time trial driving game with stunts and jumps.
- Ragdoll Hit by Ericetto โ Control a ragdoll stickman to defeat all kinds of enemies.
- CaptainForever.io by Farbs โ Multiplayer game in which you build and fly a wireframe ship in space.
- Chroma by Logix Indie โ Link 4 or more shapes of the same color.
- Shift by Logix Indie โ Recreate a pattern by moving the rows of a hexagonal grid.
- Eggsolotl by Axol Studio โ Retro match-3 puzzle game in which you kick, lift, and throw eggs.
- Monster Match by Axol Studio โ Retro match-3 game in which you play as a lich defending its realm.
-
Food for Fish (source) by Kris Temmerman โ Great-looking point-and-click adventure about underpants.
-
Equinox by Little Workshop โ An impressive 1st-person adventure in a spaceship. Youโve got to try this one!
-
Fabled Recipes (repo) โ by Vincent Douchin
-
Marble Run Simulator by Tiaratum Games โ A marble machine construction game with great physics.
-
Pixaland by Giorgi Nadiradze โ A multiplayer sandbox game with a pixel art style.
-
Eternya Tactics by Kainage Productions โ Turb-based fantasy tactical RPG.
โจ Demos
- Stylized Castle WebGL demo (article, repo) by Oleksandr Popov
- Sunday Afternoon (repo) by Faraz
- BatchedMesh Instancing (demo) by Garrett Johnson
- Depth peeling transparency (demo) by Garrett Johnson
- R3F Camera animated along a curved path (source) by Michael Dobekidis
- Car Physics mini-game (source) by Kryลกtof Toman
Liked this issue? ๐ฆ Retweet it, join our Discord, and Subscribe below!