Source distantly originates from the
GoldSrc engine, itself a heavily modified version of
John Carmack's
Quake engine with some code from the
Quake II engine. Carmack commented on his blog in 2004 that "there are still bits of early
Quake code in
Half-Life 2". Valve employee Erik Johnson explained the engine's
nomenclature on the Valve Developer Community: Source was developed part-by-part from this fork onwards, slowly replacing GoldSrc in Valve's internal projects and, in part, explaining the reasons behind its unusually modular nature. Valve's development of Source since has been a mixture of licensed
middleware and in-house-developed code. Older versions of Source use
Bink Video for video playback, however more recent releases of the Source engine use
WebM videos for menu backgrounds,
Full Motion Videos, and splash screens. .
Modularity and notable updates Source was created to evolve incrementally with new technology, as opposed to the
backward compatibility-breaking "version jumps" of its competitors. Different systems within Source are represented by separate modules which can be updated independently. With
Steam, Valve can distribute these updates automatically among its many users. In practice, however, there have been occasional breaks in this chain of compatibility. The release of
Half-Life 2: Episode One and
The Orange Box both introduced new versions of the engine that could not be used to run older games or
mods without the developers performing upgrades to code and, in some cases, content. Both cases required markedly less work to update its version than competing engines.
Source 2006 ''. The
high-dynamic-range rendering and
Phong shading effects are evident. The Source 2006 branch was the term used for Valve's games using technology that culminated with the release of
Half-Life 2: Episode One.
HDR rendering and
color correction were first implemented in 2005 using
Day of Defeat: Source, which required the engine's shaders to be rewritten. The former, along with developer commentary tracks, were showcased in
Half-Life 2: Lost Coast.
Episode One introduced
Phong shading and other smaller features.
Image-based rendering technology had been in development for
Half-Life 2, but was cut from the engine before its release. It was mentioned again by
Gabe Newell in 2006 as a piece of technology he would like to add to Source to implement support for much larger scenes that are impossible with strictly
polygonal objects.
Source 2007 The Source 2007 branch represented a full upgrade of the Source engine for the release of
The Orange Box. An artist-driven, threaded
particle system replaced previously
hard-coded effects for all of the games within. An in-
process tools framework was created to support it, which also supported the initial builds of
Source Filmmaker. In addition, the facial animation system was made hardware-accelerated on modern video cards for "feature film and broadcast television" quality. The release of
The Orange Box on multiple platforms allowed for a large
code refactoring, which let the Source engine take advantage of multiple CPU cores. However, support on the PC was experimental and unstable until the release of
Left 4 Dead. Multiprocessor support was later backported to
Team Fortress 2 and
Day of Defeat: Source. Valve created the
Xbox 360 release of
The Orange Box in-house, and support for the console is fully integrated into the main engine codeline. It includes asset converters, cross-platform play and
Xbox Live integration. The
PlayStation 3 release was outsourced to
Electronic Arts, and was plagued with issues throughout the process.
Gabe Newell cited these issues when criticizing the console during the release of
The Orange Box.
Left 4 Dead branch The Left 4 Dead branch is an overhaul of many aspects of the Source engine through the development of the
Left 4 Dead series. Multiprocessor support was further expanded, allowing for features like split screen multiplayer, additional post-processing effects, event scripting with
Squirrel, and the highly-dynamic
AI Director. The menu interface was re-implemented with a new layout designed to be more console-oriented. This branch later fueled the releases of
Alien Swarm and
Portal 2, the former released with source code outlining many of the changes made since the branch began.
Portal 2, in addition, served as the result of Valve taking the problem of porting to PlayStation 3 in-house, and in combination with
Steamworks integration creating what they called "the best console version of the game".
OS X, Linux, and Android support In April 2010, Valve released all of their major Source games on
OS X, coinciding with the release of the Steam client on the same platform. Valve announced that all their future games would be released simultaneously for Windows and Mac. The first of Valve's games to support Linux was
Team Fortress 2, the port released in October 2012 along with the closed beta of the Linux version of Steam. Both the OS X and Linux ports of the engine take advantage of
OpenGL and are powered by
Simple DirectMedia Layer. During the process of porting, Valve rearranged most of the games released up to
The Orange Box into separate, but parallel "singleplayer" and "multiplayer" branches. The game code to these branches was made public to mod developers in 2013, and they serve as the current stable release of Source designated for mods. Support for Valve's internal Steam Pipe distribution system as well as the
Oculus Rift are included. In May 2014,
Nvidia released ports of
Portal and
Half-Life 2 to their
Tegra 4-based Android
handheld game console Nvidia Shield.
Source 2 Source 2 was announced by Valve as the successor to Source at the
Game Developers Conference in March 2015. There, Valve stated that it would be free to use for developers, with support for the
Vulkan graphical API, as well as using a new in-house
physics engine called Rubikon. In June 2015, Valve announced that
Dota 2, originally developed with Source, would be ported over to Source 2 in an update called
Dota 2 Reborn.
Reborn was first released to the public as an opt-in beta update that same month before officially replacing the original client in September 2015, making it the first game to use the engine. The engine had succeeded Source by the late 2010s. == Tools and resources ==