Blam engine
From Halopedia, the Halo wiki
- This article is a stub. You can help Halopedia by expanding it.
Blam engine | |
---|---|
Also known as: |
|
Developed by: |
|
Entered development: |
|
Derivative engines: |
|
First use: |
Halo: Combat Evolved (2001) |
Latest use: |
Halo 5: Guardians (2015) |
The Blam engine,[1] often stylised Blam! engine, alternatively known as simply the Halo engine, and sometimes known as the Midnight engine in the case of Halo 4,[2] is the game engine that powers the majority of Halo titles, beginning with Halo: Combat Evolved in 2001. It has since been succeeded by the Slipspace Engine in 2021, with the release of Halo Infinite.
Development history[edit]
Early roots: Minotaur and Pathways into Darkness[edit]
Blam's origins can be traced back as early as Bungie's 1993 game Pathways into Darkness. Inspired by id Software's 1992 title Wolfenstein 3D, which itself began as a 3D remake of 1981's Castle Wolfenstein, Pathways was originally conceived as "Minotaur 3D", a 3D remake of Bungie's previous game Minotaur: The Labyrinths of Crete, released the year before.[3] In the summer of 1992, Jason Jones began work on creating a 3D rendering framework for Bungie's next game, soon producing a simple graphics engine that was able to simulate halls and walls using wireframe trapezoids. Though crude, this rendering engine laid the foundations of what would become the engine used for the game, and was improved and modified for months by Jones and others at Bungie until late 1992, introducing features such as texture mapping for walls.[4]
It was quickly decided that Minotaur was not well suited to a 3D perspective, as the original game's design heavily relied upon its top-down perspective, and so Bungie chose to pivot towards an entirely original game adventure game, instead of a remake or successor to Minotaur.[3] By the end of January 1993, the story for this new IP had been written, and work began in earnest on the game. During this time, Jones continued to improve upon the graphics engine and the game's interface, but also produced a level editor to allow the placement of walls, doors, guns, monsters and other miscellaneous objects into levels. This editor dramatically sped up development of the game.[4] Pathways into Darkness was eventually released in August 1993.[5]
Further development: Mosaic, Marathon and Myth[edit]
Following the release of Pathways into Darkness, Bungie began work on two future projects, Mosaic and Marathon.[4] Mosaic was to feature significantly improved graphics than Pathways, including texture mapping for the floors and ceilings, as well as optimizations aimed to make it possible for slower computers to reach acceptable framerates without switching to a lower-resolution mode. Another goal of the game was to produce more intelligent enemy artificial intelligence, capable of reacting to the player in more unique and interesting ways, such as searching for backup when outnumbered.[3]
Originally a sequel to Pathways into Darkness, Marathon entered development around the same time as as Mosaic,[3][4] initially starting out as a series of coding experiments aimed at making the Pathways engine faster and more structurally elegant, while also seeking to improve enemy intelligence, as with Mosaic. These experiments led to the creation of Marathon Zero, an alpha version of the game that was demoed at the Macworld Expo at San Francisco in January 1994. However, this demo garnered very little reaction from the public, and many dismissed the game as Pathways into Darkness with some minor cosmetic improvements.[6]
This reaction spurred Bungie to abandon the Mosaic project and focus all their resources on Marathon, determined to salvage the project. Upon returning from Macworld, the team "barricaded themselves in their Pilsen office" and set to work on the game. Over the course of roughly a week, Jason Jones and Ryan Martell, another Bungie programmer, rewrote Marathon's rendering engine from the ground up, completely stripping out and replacing what remained of the frontend portion of Pathway's renderer. In addition, Martell began work on a map editor called Vulcan, presumably to succeed the older Pathways editor produced by Jones.[6] Vulcan would go on to form the basis of Forge, a publicly-released map editor for Marathon, with bugs from Vulcan persisting into Forge. The game was playtested substantially, which Jones felt resulted in the engine being remarkably stable.[7][8]
Marathon was ultimately released on December 21, 1994, and was met with significant commercial success relative to the studio's small size. Within the first year, at least 100,000 copies of the game were sold worldwide. This success prompted work on two sequels, Marathon 2: Durandal and Marathon Infinity, releasing on November 24, 1995 and October 15, 1996 respectively. Each of the sequels was built upon the same engine and technology that powered the first game, but with significant iterations, improvements and optimisations each time. Marathon 2's iteration of the engine was reportedly roughly twice as fast, which permitted Bungie to increase the resolution from the original game's 448x272 to 640x320, a 68% increase in the number of rendered pixels. However, the later games did require more capable hardware than the original.[9]
After completion of the Marathon trilogy, Bungie's focus moved on to a new project, which would come to be known as Myth: The Fallen Lords. Myth was to be a real-time strategy game, with a particular focus on commanding units as opposed to the resource management and base building prominent in other RTS games.[citation needed] Myth's engine featured significant technological leaps over Marathon's, with the use of a static polygonal 3D mesh for terrain, [10] and the introduction of the tags system for storing game data in a platform-agnostic manner.[11] Nevertheless, Myth still inherited technology from the Marathon trilogy. At least one component, the physics engine, was a substantially improved version of that used in the Marathon engine.[10]
Myth: The Fallen Lords was released on November 7, 1997, and was followed by a sequel in the same engine, Myth II: Soulblighter, on December 28, 1998. A third game entitled Myth III: The Wolf Age would eventually be produced by a different studio, MumboJumbo, and released on November 2, 2001.
Inception of Blam: Halo[edit]
According to Chris Butcher, an engineering director at Bungie, the Blam engine entered development in late 1997 alongside the game that would come to be Halo: Combat Evolved.[1] The Blam engine first started out as an updated, "next-generation" version of the engine used in Myth: The Fallen Lords,[10][12] with the addition of polygonal units as opposed to the 2D sprites used by Myth. Bungie quickly decided, however, that focusing in on a single character would be a more compelling use of the Halo universe than a strategy game, and pivoted towards a third-person design.[10] Many remnants of the Myth engine remained prominent in the Blam engine, most notably the tag system, which remained a core part of Blam for the entirety of the engine's lifespan.[citation needed]
Nonetheless, many improvements were made over the Myth engine. Circa 1999, Blam supported features such as volumetric lighting, per-pixel reflections and multitexturing. All of these features would eventually make it into the game's Xbox release in 2001. At that time, the engine also supported a deformable terrain system, where explosions and orbital strikes would create permanent craters in the landscape.[10] However, this feature was ultimately cut.
Future games[edit]
- This section needs expansion. You can help Halopedia by expanding it.
Each successive Halo game developed by Bungie was built upon the Blam engine, and it was significantly evolved with each successive game.
Derived engines[edit]
Slipspace Engine[edit]
- Main article: Slipspace Engine
- This section needs expansion. You can help Halopedia by expanding it.
The Slipspace Engine is a heavily revamped and modernised game engine developed by 343 Industries, which is derived from Blam. While containing significant amounts of new and overhauled code, the engine is ultimately based upon the version of Blam used in Halo 5: Guardians and still retains remnants of this engine.[13] Halo Infinite is the first game to utilize the Slipspace Engine, and it will presumably succeed the Blam engine as the engine of choice for future Halo titles.[14]
Saber3D hybrid engine[edit]
- Main article: Saber3D engine
- This section needs expansion. You can help Halopedia by expanding it.
One of the key design goals of the Anniversary remasters of Halo: CE and Halo 2 was to leave the titles' original gameplay completely untouched, so that the games would play exactly as they originally did. As a result, both Halo: Combat Evolved Anniversary and Halo 2: Anniversary use their respective game's original engine. However, in order to produce the remastered anniversary graphics, developer Saber Interactive needed a significantly more modern rendering engine. Thus, for each of the games, they retrofitted their own internally-developed engine, the Saber3D engine, onto the original engine to facilitate the remastered graphics, while preserving the original Blam engine's gameplay logic so that the games play exactly as they originally did. This has been compared to essentially running two game engines at once, within the same game. This unique design also allowed for the ability for the player to switch between the two graphical modes at any time within the gameplay - a tool originally developed to allow developers on Anniversary remasters to rapidly compare their new artwork with the original game. However, the tool was turned into an official feature.[citation needed]
Tiger Engine[edit]
The Tiger Engine was a significantly overhauled version of the Blam engine developed for the Destiny franchise by Bungie, after their split from Microsoft. It was designed to overcome a number of limitations with the Blam engine and to be future-proofed for the then-upcoming eighth console generation. Both Destiny and Destiny 2 were developed using the engine.[1]
The Tiger Engine was a response to a number of constraints of the Blam engine that were becoming increasingly problematic as time passed, and both video game hardware and the industry evolved. Rather than technical debt or messy code, these constraints were mainly a result of the core design principles of the Blam engine - for instance, Blam assumed that there would only be one target platform for its games, and was largely single-threaded. As Bungie continued to iterate upon the Blam engine with each subsequent game, more and more code was built upon these fundamental assumptions, turning them essentially into "unwritten rules" of the engine.[1]
These constraints were not compatible with Destiny in a number of ways: it was a multi-platform game targeting release on a multitude of consoles, all of its target platforms contained multi-core processors which requires multithreading to take full advantage of, and finally, Destiny would feature many sizable content updates after launch, which Blam did not support. However, Bungie still wanted to preserve large portions of the Blam engine, notably the gameplay framework and networking code, and so couldn't build a new engine or switch to a third-party one.[1]
Thus, a team of engineers was formed within Bungie to develop the Tiger Engine. In 2008, they forked the codebase of the then in-development Halo: Reach, and began to work on exhaustively overhauling the majority of the engine to alleviate the highlighted constraints. The team worked steadily on the Tiger Engine for more than five years, excluding a 5-month hiatus in 2010 when they briefly rejoined the Halo: Reach engineering team to help ship the game. In 2011, after the release of Reach, the former Reach engineering team then joined the Destiny project and contributed further to the development of the Tiger Engine. By mid-2012, the engine had progressed to a state where the art and level design teams could begin producing art assets and designing missions, respectively, and by the end of 2013, Destiny was fully playable on all platforms, leaving only optimisation and polish work to be done on the Tiger Engine, before the game's launch in 2014.[1]
Games using the Blam engine[edit]
Released games[edit]
The following games were released on the Blam engine, or a descendant of it:
- Halo: Combat Evolved (2001)
- Halo: Combat Evolved for PC (2003)
- Halo: Combat Evolved for Macintosh (2003)
- Halo: Custom Edition (2004)
- Halo: Combat Evolved Anniversary (2011) (Saber3D hybrid engine)
- Halo 2 (2002)
- Halo 2 for Windows Vista (2007)
- Halo 2: Anniversary (2014) (Saber3D hybrid engine)
- Stubbs the Zombie in Rebel Without a Pulse (2005)
- Halo 3 (2007)
- Halo 3: Mythic (2009)
- Halo 3: ODST (2009)
- Halo: Reach (2010)
- Halo 4 (2012)
- Destiny (2014) (Tiger Engine)
- Halo: The Master Chief Collection (2014) (Engine version depends upon game)
- Halo 5: Guardians (2015)
- Halo 5: Forge (2016)
- Destiny 2 (2017) (Tiger Engine)
- Halo Infinite (2021) (Slipspace Engine)
Cancelled projects[edit]
These games were developed on the Blam engine but ultimately cancelled before release.
- Phoenix (cancelled in late 2002 or early 2003)
- Gypsum (cancelled in June 2003)
- Halo Online (cancelled in 2016)
Prototypes[edit]
Multiple games have also been prototyped using the Blam engine:
- Shadowrun (2007)[15] (Final game did not use Blam)
- Hail to the Chimp[16][17] (2008) (Final game did not use Blam)
- Destiny of Fighters: Super Turbo[18] (2018) (Tiger Engine; unreleased; internal Bungie game jam project)
Gallery[edit]
Flow charts[edit]
Development screenshots[edit]
A side-by-side image of the M6D magnum from Combat Evolved and M6H2 magnum from Halo 5: Guardians, highlighting the increase in poly count.
Sources[edit]
- ^ a b c d e f GDC Vault, Lessons from the Core Engine Architecture of Destiny (Retrieved on Sep 22, 2021) [archive]
- ^ Artstation, Thomas Stubbs, HALO 4 (Retrieved on Oct 3, 2022) [archive]
- ^ a b c d pid.bungie.org, Inside Mac Games Archive - Interview: Bungie's Jason Jones (Retrieved on Mar 9, 2022) [archive]
- ^ a b c d pid.bungie.org, Inside Mac Games Archive - The Making Of: Pathways into Darkness (Retrieved on Mar 9, 2022) [archive]
- ^ pid.bungie.org, Pathways into Darkness (Retrieved on Mar 9, 2022) [archive]
- ^ a b marathon.bungie.org, Marathon Scrapbook, Page 3 (Retrieved on Mar 9, 2022) [archive]
- ^ marathon.bungie.org, Marathon Scrapbook, Page 7 (Retrieved on Mar 9, 2022) [archive]
- ^ marathon.bungie.org, Inside Mac Games Archive - Interview: Bungie Software (Retrieved on Mar 9, 2022) [archive]
- ^ marathon.bungie.org, Inside Mac Games Archive - Sneak Peek: Marathon 2 (Retrieved on Mar 9, 2022) [archive]
- ^ a b c d e Inside Mac Games, Interview: Halo's Jason Jones (Retrieved on Aug 15, 2000) [archive]
- ^ Game Developer, Postmortem: Bungie's Myth: The Fallen Lords (Retrieved on Mar 9, 2022) [archive]
- ^ Halo Waypoint, Canon Fodder, Cutting Room Lore (Retrieved on Jul 26, 2022) [archive]
- ^ YouTube - Halopedia Archive, 343 Social Stream - Happy Halodays (19 December 2018): 23:09
- ^ Halo Waypoint, Our Journey Begins (Retrieved on Sep 22, 2021) [archive]
- ^ YouTube - Gamecheat13, Shadowrun Halo Prototype - The Artifact Playthrough
- ^ Twitter, @ihatecompvir: "So that Hail to the Chimp prototype from Deluge runs on the Blam engine. Neato, not sure if its H1 or H2 Blam (could be either)" (Retrieved on Sep 23, 2021) [archive]
- ^ Twitter, @zeddikins: "Hail To The Chimp build is split off from Stubbs, as theres still some bitmaps for it" (Retrieved on Sep 23, 2021) [archive]
- ^ David Candland, Functional Prototypes (Retrieved on Jan 18, 2022) [archive]
|