Game engine
Before the 1980s, a game for the Atari 2600 had to be designed from the bottom up. Developers wrote singular entities that made optimal use of display hardware. This core display routine is today called the kernel by developers of games for older systems. Memory constraints usually sabotaged attempts to create data-heavy designs that an engine needs. Even on more accommodating platforms, very little could be reused between games. The rapid advance of arcade hardware meant most code would have to be thrown out afterwards anyway. Later generations of games used completely different game designs that took advantage of extra resources. Most game designs through the 1980s were designed through a hard-coded rule set with a small number of levels and graphics data.
A notable example of an in-house game engine on home consoles appeared in the mid-1980s. Shigeru Miyamoto's team at Nintendo developed a smooth side-scrolling engine for the Nintendo Entertainment System. They created this engine for the side-scrolling racing game Excitebike in 1984. The same engine was later employed for the scrolling platformer Super Mario Bros. in 1985. This allowed Mario to smoothly accelerate from a walk to a run. Earlier platformers moved at a constant speed like a metronome. The new engine gave characters fluid motion that felt alive compared to previous efforts. It proved that reusable software components could exist even within the tight memory limits of early consoles.
Epic Games, founded by Tim Sweeney, debuted its Unreal Engine in 1998. Id Software had previously licensed core portions of their software while designing their own graphics, characters, weapons, and levels. These elements became known as game content or game assets. Separation of game-specific rules and data from basic concepts like collision detection meant teams could grow and specialize. A single license for a high-end commercial game engine can range from $10,000 to millions of dollars. The number of licensees can reach several dozen companies, as seen with the Unreal Engine. At least one company, Epic Games, has become far more popular than id Tech 4 and its successor, id Tech 5. This practice has proven to be a useful auxiliary revenue stream for some game developers.
Game engines themselves can be described as middleware in broader terms. In video games, however, middleware often refers to subsystems of functionality within a game engine. Some game middleware does only one thing yet does it more convincingly or more efficiently than general purpose middleware. Four widely used middleware packages include RAD Game Tools' Bink, Firelight FMOD, Havok, and Scaleform GFx. RAD Game Tools develops Bink for basic video rendering along with Miles audio and Granny 3D rendering. Firelight FMOD is a low cost robust audio library and toolset. Havok provides a robust physics simulation system along with animation and behavior applications. Scaleform provides GFx for high performance Flash UI and high-quality video playback.
Exploiting threads has become more important due to modern multi-core systems and growing demands in realism. Separate threads of execution within a game engine manage intensive operations including rendering, asset streaming, audio playback, and physics simulation. Racing games have typically been at the forefront of threading with the physics engine running in a separate thread long before other core subsystems were moved. Rendering and related tasks need updating at only 30 to 60 Hz. On PlayStation 3, physics ran in Need For Speed at 100 Hz versus Forza Motorsport 2 at 360 Hz. This separation allows developers to optimize specific parts of the experience without slowing down the entire application.
Up Next
Common questions
When did Shigeru Miyamoto's team develop the smooth side-scrolling engine for the Nintendo Entertainment System?
Shigeru Miyamoto's team developed the smooth side-scrolling engine for the Nintendo Entertainment System in 1984. They created this engine for the side-scrolling racing game Excitebike in 1984 and later employed it for Super Mario Bros. in 1985.
What year did Epic Games debut its Unreal Engine?
Epic Games debuted its Unreal Engine in 1998. Tim Sweeney founded Epic Games, which has become far more popular than id Tech 4 and its successor, id Tech 5.
How much does a single license for a high-end commercial game engine cost?
A single license for a high-end commercial game engine can range from $10,000 to millions of dollars. The number of licensees can reach several dozen companies, as seen with the Unreal Engine.
Which middleware packages are widely used in video games alongside game engines?
Four widely used middleware packages include RAD Game Tools' Bink, Firelight FMOD, Havok, and Scaleform GFx. RAD Game Tools develops Bink for basic video rendering along with Miles audio and Granny 3D rendering.
At what frequency did physics run on PlayStation 3 in Need For Speed compared to Forza Motorsport 2?
On PlayStation 3, physics ran in Need For Speed at 100 Hz versus Forza Motorsport 2 at 360 Hz. Separate threads of execution within a game engine manage intensive operations including rendering, asset streaming, audio playback, and physics simulation.