Newsletter โ Issue 023
๐ฅ Headlines
๐ฆ We now have a Web Game Dev Bluesky Starter Pack (opens in a new tab) that you can use to easily sign up and follow 100+ folks from the JavaScript game dev and front-end ecosystems. There is also a list (opens in a new tab) that you can follow.
Subscribe to the new YouTube channel (opens in a new tab) where we post Trezy (opens in a new tab)'s Games Showcase meetups (opens in a new tab)!
WebXR is now enabled by default on Apple Vision Pro. Watch the Build immersive web experiences with WebXR (opens in a new tab) WWDC24 presentation by Ada Rose Cannon (opens in a new tab) and read the WebKit 18.0 release notes (opens in a new tab).
Kaboom.js (opens in a new tab) is no longer maintained, but there is now a community fork called Kaplay (opens in a new tab).
Unity 6 is coming (opens in a new tab) with a new focus on the web and WebGPU, as announced at the Unite 2024 Keynote (opens in a new tab). They announced the Crazy Web Game Jam 2024 (opens in a new tab) with CrazyGames (opens in a new tab) (Unity-only), and canceled the Runtime Fee (opens in a new tab).
๐ The Ray Browser (opens in a new tab) (video (opens in a new tab)) is a new browser focused on gaming, with support for split-screen (with a game on one side and Discord on the other, for example). It has features for developers (opens in a new tab) such as its WebGL2 inspector.
The State of JavaScript 2023 (opens in a new tab) survey results are out.
โญ๏ธ Sponsor
Poki (opens in a new tab) is on a mission to create the ultimate online playground โ where players and developers come together to play and create! Together with a growing 400+ 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 (opens in a new tab)!
Poki, the market leader on Web, is proud to sponsor Web Game Dev! In the coming month, we will give the community access to our new Playtesting feature - which provides unlimited and free playtesting of your game with our audience! Keep an eye out for more in the Web Game Dev Discord (opens in a new tab) at the beginning of October! Learn more about Poki in this presentation (opens in a new tab).
๐ Engines
- Three.js r168 (opens in a new tab) (changelog (opens in a new tab), migration guide (opens in a new tab))
- Drei Vanilla 1.19.0 (opens in a new tab) โ Expose Caustics (opens in a new tab) materials, add MeshWobbleMaterial (opens in a new tab) and MeshDistortMaterial (opens in a new tab).
- Three.js Shading Language Sandbox (opens in a new tab) โ TSL examples by Bruno Simon (opens in a new tab).
- R3F v8.17.0 (opens in a new tab) โ Adds
flushSync
, which forces React to flush any updates synchronously and immediately. - Drei v9.113.0 (opens in a new tab) โ InstancedAttribute and createInstances (opens in a new tab), support any color representation in GradientTexture (opens in a new tab).
- @react-three/xr (opens in a new tab) (video (opens in a new tab)) went through a major overhaul (opens in a new tab), thanks to Bela Bohlender (opens in a new tab) (who also made uikit (opens in a new tab)).
- TresJS 4.2.0 (opens in a new tab) โ Adds
dpr
prop toTresCanvas
, anduserData
to inspectable devtool properties. - Cientos v4 (opens in a new tab) โ AnimatedSprite (opens in a new tab), breaking changes and refactors.
- PlayCanvas Engine 2.0.0 (opens in a new tab) โ A release that drops WebGL1 support among other breaking changes (opens in a new tab) and API cleanups, and adds new custom shader and hardware instancing APIs.
- Phaser v3.85 (opens in a new tab), Phaser Editor 4.4 (opens in a new tab), and Phaser Beam Technical Preview 4 (opens in a new tab)
- Wonderland Engine 1.2.3 (opens in a new tab) โ Editor Scope plugins, configure shortcuts, and Streaming Fetches.
- Construct (opens in a new tab) r407 (opens in a new tab) โ Instance Bar, instance tags & signals, flowcharts improvements
- PixiJS 8.4.0 (opens in a new tab)
- Babylon.js 7.26.2 (opens in a new tab)
- Needle (opens in a new tab) 3.48.0 (opens in a new tab)
- Excalibur.js (opens in a new tab) has a new newsletter (opens in a new tab).
- Orillusion (opens in a new tab) v0.8 (opens in a new tab)
- Web Export in Godot 4.3 (opens in a new tab) by Adam Scott (opens in a new tab)
- GameMaker (opens in a new tab) (Lua) has a new engine (opens in a new tab) with experimental WebGPU support.
- Flutter (opens in a new tab) can be used to make games (opens in a new tab), now with WebAssembly support. Watch the Google I/O presentation (opens in a new tab).
๐ Tools
- N8AO 1.9 (opens in a new tab) by N8 (opens in a new tab) โ 10-20% perf boost, more config options, quantize AO tones for bevel and toon effects.
- Three.ez InstancedMesh2 (opens in a new tab) โ Simplified and enhanced InstancedMesh (opens in a new tab) with frustum culling, fast raycasting (using BVH), sorting, visibility management and more, by Andrea Gargaro (opens in a new tab).
- InstancedBatchedSkinnedMesh (opens in a new tab) with GPU mixer by Cody Bennett (opens in a new tab).
- v0 (opens in a new tab), Vercel's AI code-generation tool, now supports React Three Fiber (opens in a new tab) and its ecosystem.
- Interactive Water Surface (opens in a new tab) (demo (opens in a new tab)) by Toby (opens in a new tab)
- Ecctrl FixedCamera mode (opens in a new tab) by Andrew Chen (opens in a new tab)
- VFX-JS (opens in a new tab) and React-VFX (opens in a new tab) โ WebGL-powered visual effects by AMAGI (opens in a new tab).
- TypeGPU (opens in a new tab) โ A type-safe toolkit for WebGPU. by Iwo Plaza (opens in a new tab) from Software Mansion (opens in a new tab).
- ๐พ Jolt Physics 5.1.0 (opens in a new tab) โ Improvements to soft bodies, characters and vehicles, by Jorrit Rouwe (opens in a new tab).
- ๐ต Pelimanni (opens in a new tab) โ Web Audio classical instruments and utilities for making dynamically looping music by Joni Korpi (opens in a new tab).
- Colyseus 0.16.0-preview (opens in a new tab) by Endel (opens in a new tab)
๐ฌ Videos
- Advancements in WebGL and WebGPU (opens in a new tab) (August) at SIGGRAPH by Khronos Group (opens in a new tab)
- WebGL + WebGPU Meetup - July 2024 (opens in a new tab) by Khronos Group (opens in a new tab)
- WebGPU Compute Shaders Crash Course (opens in a new tab) by Visionary 3D (opens in a new tab)
- WebGL and basic graphics programming (opens in a new tab) by yellowFloppyDrive (opens in a new tab)
- Learn Three.js by Building 5 Projects (opens in a new tab) by Robot Bobby (opens in a new tab)
- Three.js Game Dev: Wormhole Blaster (opens in a new tab) by Robot Bobby (opens in a new tab)
- Embracing WebGPU and WebXR With Three.js (opens in a new tab) by mrdoob (opens in a new tab)
- Building an RPG with Three.js series (opens in a new tab) by Dan Greenheck (opens in a new tab)
- The Future of React Three Fiber (opens in a new tab) by Kris Baumgartner (opens in a new tab)
- Make a 3D Avatar Builder series (opens in a new tab) by Wawa Sensei (opens in a new tab)
- Third Person Controller (opens in a new tab) by Wawa Sensei (opens in a new tab)
- Wiggle Bones Threejs Library (opens in a new tab) by Wawa Sensei (opens in a new tab)
- Three.js Third Person Controller with Rogue Engine (opens in a new tab) by P. Martin Ortiz (opens in a new tab)
- Wonderland Engine in 100 Seconds (opens in a new tab) (not actually Fireship) by Wonderland Engine (opens in a new tab)
- Phaser Game Engine 2024 Explained (opens in a new tab) by Phaser (opens in a new tab)
- Building Excalibur.js (opens in a new tab) by Erik Onarheim (opens in a new tab)
- Kaplay Library Crash Course (opens in a new tab) by JS Legend (opens in a new tab)
- I made a full game in 400 hours - This is how! (opens in a new tab) by Imphenzia (opens in a new tab)
- ๐ ExileCon 2023 - Rendering Path of Exile 2 (opens in a new tab) by Alexander Sannikov (opens in a new tab)
- ๐ The Most Valuable File Format You've Never Heard Of (opens in a new tab) (OpenUSD (opens in a new tab)) by Acerola (opens in a new tab)
- ๐ A simple procedural animation technique (opens in a new tab) by argonaut (opens in a new tab)
- Here's how to release a game on Poki (opens in a new tab) by Denis McKeown (opens in a new tab)
- ๐ Presentation of CrazyGames at Gamescom (opens in a new tab) by Rafael from CrazyGames (opens in a new tab)
โ๏ธ Articles
- What's New in WebGPU โ Chrome 129 (opens in a new tab), 128 (opens in a new tab), 127 (opens in a new tab) by Franรงois Beaufort (opens in a new tab)
- WebGPU Unleashed: A Practical Tutorial (opens in a new tab) by Shi Yan (opens in a new tab)
- Three.JS WebGPURenderer Part 1: Fragment/Vertex Shaders (opens in a new tab) by Christian Helgeson
- I like big fog and I cannot lie (opens in a new tab) by A Number From the Ghost (opens in a new tab)
- Tilt Shift, Blend Modes, and the Necronomicon (opens in a new tab) by A Number From the Ghost (opens in a new tab)
- The Art of Dithering and Retro Shading for the Web (opens in a new tab) by Maxime Heckel (opens in a new tab)
- PS1-Inspired Jitter Shader (opens in a new tab) by Oguzhan Tufenk (opens in a new tab)
- Loading assets in React Three Fiber - Zero to Hero (opens in a new tab) by Aaron Claes (opens in a new tab)
- Simulating 20,000,000 particles in JavaScript (opens in a new tab) by David Gerrells (opens in a new tab)
- Physically Based Rendering in glTF (opens in a new tab) guide by Khronos Group (opens in a new tab)
- ๐ Game Maker Toolkit Notebook (opens in a new tab) by Steven Yau (opens in a new tab)
- Discord Activity Playbook (opens in a new tab) by the creators of Death by AI (opens in a new tab)
- Bring your Phaser game to iOS and Android with Capacitor (opens in a new tab) by Phaser (opens in a new tab)
- Autotiling Technique (opens in a new tab) by Justin Young (opens in a new tab)
- Cellular Automata (opens in a new tab) by Justin Young (opens in a new tab)
- Systemless Components with Excalibur.js (opens in a new tab) by Matt Jennings (opens in a new tab)
- Building an HTML5 game with KaplayJS (opens in a new tab) by Rohan Thakur (opens in a new tab)
- โก๏ธ List of spatial indexing algorithms (opens in a new tab) with pros and cons by Juan Linietsky (opens in a new tab)
Kevin Glass (opens in a new tab) from the Rune (opens in a new tab) platform has been putting out a ton of great articles on Rune's blog (opens in a new tab):
- ๐ก Building a scalable multiplayer game architecture (opens in a new tab)
- ๐ก Making JS deterministic for fun and glory (opens in a new tab)
- ๐ก Gotchas in multiplayer game design (opens in a new tab)
- ๐ก WebRTC vs. WebSockets for multiplayer games (opens in a new tab)
- ๐ก Modern game networking models (opens in a new tab)
- ๐ก Networking a top-down RPG (opens in a new tab)
- ๐ฑ Hasnโt everyone got a good phone nowadays? (opens in a new tab)
- ๐ฑ What to consider when building cross-platform games (opens in a new tab)
- โก๏ธ Web game performance optimization (opens in a new tab)
- ๐จ How to make a game when you suck at art (opens in a new tab)
- ๐ Who plays casual multiplayer games anyway? (opens in a new tab)
- ๐ Why indie game dev marketing is hard (opens in a new tab)
- ๐ Announcing Rune and our $8M raise! (opens in a new tab) by Sanjay Guruprasad (opens in a new tab)
๐ฎ Games
- Blumgi Racers by Blumgi โ Gravity-defying puzzle game.
- Quivershot by Dedra Games โ Top-down pixel roguelite.
- Blaze Drifter by Deer Cat Games โ Racing game with takedowns.
- Stunt Bike Extreme by Hyperkani โ Motorbike balancing game with stunts and jumps.
- Ping Pong Go by Happylander โ Ping Pong game with increasing difficulty.
- SquadBlast by UltraHorse โ Multiplayer 2D hero shooter and platformer.
- Kour.io by LEGiON Platforms โ Multiplayer FPS with various game modes.
- Dungeons n' Ducks by Long Story Short โ Puzzle game with original mechanics.
- Bulletz.io by Luke Wood โ Agar-inspired game in which you grow by consuming other players.
- WorldGuessr by Gautam โ Open-source geography game inspired by GeoGuessr.
-
Brawl Bugs (opens in a new tab) by Jay โ Multiplayer arena brawler with insects.
-
Connection Home (opens in a new tab) โ Platformer demo game made to showcase the Hology Engine (opens in a new tab).
โจ Demos
- Collection of raw WebGL demos (opens in a new tab) by Cedric Hutchings (opens in a new tab)
- Ohziverse (opens in a new tab) by OHZI Interactive Studio (opens in a new tab)
- Ghost of Tsushima Style Grass (opens in a new tab) by Aadarsh Gupta (opens in a new tab)
- Isolines (opens in a new tab) (repo (opens in a new tab)) by Christophe Choffel (opens in a new tab)
- Interactive Shield (opens in a new tab) (repo (opens in a new tab)) by Bhushan Wagh (opens in a new tab)
- Figlie โ Gaussian Splatting Exhibition (opens in a new tab) by felixkit (opens in a new tab)
Liked this issue? ๐ฆ Retweet it, join our Discord, and Subscribe below!