The response to us going open source has been overwhelmingly positive, in a week we've received over 3000 stars and over 80 pull requests and 30 already merged.
Thank you to everyone for contributing and being interested in the project, the pull requests have been great so far from small bug fixes to proper features. It's giving us a lot more momentum.
We've been refining the repo sync workflows, GitHub actions now run formatting and unit tests on PRs, so any older PRs will need to update their branch to pass these tests.
I've added native Linux binaries to the open source repo for enthusiasts to play around with, these are for the dedicated server and game client only. Source 2 tools don't compile for Linux.
These are not shipped on Steam as they're not usable yet.
It's now possible for the host in a networked game to read inputs from other clients. This a start to making server-authoritative networking easier. We're now having clients send user commands to the host and these messages are now visible on the in-game Network Graph, too.
You can read input from any client as the host by simply using Connection.Down, Connection.Pressed, and Connection.Released which behave exactly like those from the Input class.
We've added a suite of new features to Movie Maker to help with animating characters. This includes IK controls to pose characters more easily, the ability to import animations from models, and tools to generate animations using AnimGraph.Check out the docs to get started, and for a complete list of all the new features:
There was a tiny regression when we optimized Screen Space Reflections a few moons back where pixels would drift depending if your screen resolution was pair or odd.
Looking into that I ended up overhauling the thing and it's 20% better, also back porting some of my work from the Motion Vectors branch and make it play nice with my niche INTC Arc GPU.
Denoiser pre-filter was eating a lot of the energy from the intersection result, causing things to look very faint and translucent:
We can upsample up from 0.1x resolution and still remain sharp, no drifting: Can move around without ghosting or smearing:
First-person weapon models and world models have been added to our weapon collection for several types of grenades: high explosive, flashbang, decoy, incendiary, and smoke.
This video shows a barebones Counter-Strike-style implementation, but you can mix-and-match animation parameters to get their use to work differently! As per usual, all the technical details for implementation in your own games can be found in our documentation.
25.12.03
25.12.03
28 November 2025
🎁 Added
Wheel joint support
MovieMaker: Bone tracks, IK controls, character animation tools
Connection Input / User Commands
ModelDoc: Gravity scale to physics body markup (supports negative gravity)
GraphicsView: Min/Max zoom
Text effects drawing for underline/strikethrough styles
NetList: AddRange
Sandbox.Mounting.InitializeContext.IsDlcInstalled
Support for Nullable<> as ConCmd argument
r_max_anisotropy convar automatically set by Texture Quality settings