Yesterday, Valve had finally taken the next step to "officially" announce Source 2. So for the first time in 3 years, I'm going to weigh in on everything that's been confirmed since the rumors started, as well as all the implications for the future.
The Rumors Confirmed
First off, I'll just retroactively visit some of the points I made in my original Facepunch post, and add on a few additional rumors from others over the years.
- Source 2 definitely exists - Self-explanatory.
- A revamped KeyValues script perhaps? - This is mainly for the Source nuts, but while KeyValues technically already had a "successor", this is very clearly where it's being brought into the forefront. The most important consequence is that scripts will be able to use new methods of storing data.
- Source 2 will take advantage of 64-bit - With fellow engines Unity and Unreal taking full advantage of 64-bit systems and next-gen consoles, this is a no-brainer for Valve. On top of being migrated to OpenGL and now its successor Vulkan, this is the next step to freeing the engine from its past constraints.
- Source 2 may be rehauling its content pipeline, including renaming its models to .vmdl - Valve's current internal pipeline involves three main folders: "content" (unfinished assets), "src" (source code), and "game" (releasable engine and assets). VMDL is one of many new file formats introduced in Dota 2 to distinguish itself from the original Source, and can now be worked with by modders.
- [Insert overused game rumor meme here] - Nothing's been confirmed for specific games, but no doubt there will be some demos and examples of games ported to (or developed in) Source 2 to coincide with the proper release of the engine.
- This is going to be lumped together with the new VR to go with Steam Machines - According to the cryptic message on this page, it very well might.
- Rubikon is going to be Source 2's new physics module - It's already been talked about in those very slides, and this year's physics talks will no doubt look at some of the elements, if not the module itself.
A Necessary Upgrade
As many of you already know, Source is the descendant of groundbreaking code by id Software, namely through Half-Life's original GoldSrc engine being made with code from Quake 1 and 2. Back in the day, mods of id Tech games were the norm, and Valve carried over their mod-friendly philosophy, but there were several stumbling blocks for GoldSrc and Source to be as successful in that regard.
Valve had a fully paid license that allowed them to change not only the gameplay, but the entire engine. They gave it their own additions, but much of the code even in Source still had origins from id Software. While this doesn't afford Valve much obligation to raise the costs, this put a lot of limitations on the engine that now put it in a slow pace compared to its peers.
The biggest and most glaring issue was the BSP level optimizing system, which was designed back when Doom needed to run its expansive levels on relatively underpowered 486 machines using Linux or DOS. It made Source incredibly great at rendering hallways, but expansive areas were always going to be limited in comparison to more expansive engines later on. Dota 2 practically removed the need for that, but it will take a lot more effort to apply that to the rest of their backlog.
Second, the largest costs to licensing Source today are for middleware used by Valve and provided in the Source SDK. Two of them, Miles Sound System and Bink Video, are optional additions to the engine. However, the vital and complicated VPhysics module is anchored to code licensed from Havok.
Back in 2000, Havok bought out Munich-based Ipion Software, whose physics code was folded into Havok's and later sent to Valve. That code was originally priced at $50,000 per game, plus royalties, and anyone who licenses Source today has to pay half that cost to Havok. Talk about overkill!
That's one of the reasons why Valve employees seem to be involved with a few GDC talks on optimizing physics calculations. The code from Ipion and Havok were the perfect choice for Valve's groundbreaking see-saw puzzles, but they would be a hamper for anyone who wanted to make any money off the engine (for instance, the longest-lasting standalone endeavor with Source was a line of ad-supported episodic games created by Kuma Games). That's why we've already heard about Rubikon, and why it's incredibly likely that it will replace Havok's code, if not the entire existing VPhysics system.
Finally, Valve needed to make it all accessible to as many people as possible. As outlined on several talks during last year's Steam Dev Days, Source 2 needed to get rid of all its dependencies to not only existing middleware, but also to the frameworks that anchored the reach of their audience.
DirectX, the framework that offers top-of-the-line features at the cost of sticking to Windows and Xbox, could no longer impede Valve from moving their games into uncharted platforms quickly and easily. No longer did Valve have to make the engine convert their shaders from DX9 bytecode into GLSL at runtime for Linux and Mac users. No longer could Valve limit users in China running Windows XP on modern hardware. They had to move to full OpenGL.
And now, Valve will lead the announcement on Thursday for a new generation of OpenGL that will promise to end the debate. And headlining the use of it will be Source 2.
The OpenSrc Implications
Combing the engine free of tangles and dependencies, the most immediate result is an engine that is able to be licensed at a lower cost (or free, as announced), and can potentially be opened up to mod teams and developers ready to push the limits of what it can do. In other words, an open-source engine ready to jump back into the fray.
In practice, Valve most likely won't open up the entire engine's source code, but the new approach to tools and assets will definitely open up greater horizons for designers with some extra convincing from Valve.
This approach will also expand awareness of free engines outside Valve's own. These days, the attention in this area has mostly been focused on Unreal and Unity, but Valve's ability to embrace both as partners in a greater endeavor has worked out for the better from the beginning and will continue to drive business.
On top of that, Valve's presence in industry talks, despite their notoriety for not really enjoying conferences, has allowed their techniques to shape the opinions of other developers in their own projects. Applying this to the way that Valve tests new approaches on old games, Source 2 would be the perfect breeding ground for tons of fresh ideas from both within and outside of Valve.
This is hardly something to wrap up and leave forever, but for now let's close this opinion piece with a little remark. Don't get too excited about what could happen, since we basically covered all the bases here. Instead, marvel at the fact that it took years to get to this point, and realize that it's a small piece of a larger puzzle that needed to be solved.
This week, we all win. We have the industry to thank, and we have Valve to thank.
Image: OSFM logo drive entry.