0% found this document useful (0 votes)
219 views6 pages

Game Engine

The document discusses game engines, which are software frameworks primarily designed for video game development. Game engines provide tools and reusable components to aid in development and allow games to run on multiple platforms. The document outlines the history and evolution of game engines from early hardcoded games to modern complex applications that separate rendering, scripting, artwork and level design between large development teams.

Uploaded by

Patrick Panti
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
219 views6 pages

Game Engine

The document discusses game engines, which are software frameworks primarily designed for video game development. Game engines provide tools and reusable components to aid in development and allow games to run on multiple platforms. The document outlines the history and evolution of game engines from early hardcoded games to modern complex applications that separate rendering, scripting, artwork and level design between large development teams.

Uploaded by

Patrick Panti
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 6

Game engine

A game engine is a software framework primarily designed for the development of video games, and
generally includes relevant libraries and support programs.[1] The "engine" terminology is similar to the
term "software engine" used in the software industry.

Game engine can also refer to the development software utilizing this framework, typically offering a suite
of tools and features for developing games.[2][3]

Developers can use game engines to construct games for video game consoles and other types of
computers. The core functionality typically provided by a game engine may include a rendering engine
("renderer") for 2D or 3D graphics, a physics engine or collision detection (and collision response), sound,
scripting, animation, artificial intelligence, networking, streaming, memory management, threading,
localization support, scene graph, and video support for cinematics. Game engine implementers often
economize on the process of game development by reusing/adapting, in large part, the same game engine to
produce different games[4]
or to aid in porting games to multiple platforms.

Contents
Purpose
History
Game engines as an industry
Game middleware
See also
References

Purpose
In many cases, game engines provide a suite of visual
development tools in addition to reusable software
components. These tools are generally provided in an
integrated development environment to enable
simplified, rapid development of games in a data-
driven manner. Game-engine developers often attempt
to preempt implementer needs by developing robust
software suites which include many elements a game
developer may need to build a game. Most game-
engine suites provide facilities that ease development, Creating a platform game in Godot
such as graphics, sound, physics and artificial-
intelligence (AI) functions. These game engines are
sometimes called "middleware" because, as with the business sense of the term, they provide a flexible and
reusable software platform which provides all the core functionality needed, right out of the box, to develop
a game application while reducing costs, complexities, and time-to-market — all critical factors in the
highly competitive video-game industry.[5]
Like other types of middleware, game engines usually provide platform abstraction, allowing the same
game to run on various platforms (including game consoles and personal computers) with few, if any,
changes made to the game source-code. Often, programmers design game engines with a component-based
architecture that allows specific systems in the engine to be replaced or extended with more specialized
(and often more expensive) game-middleware components. Some game engines comprise a series of
loosely connected game middleware components that can be selectively combined to create a custom
engine, instead of the more common approach of extending or customizing a flexible integrated product.
However achieved, extensibility remains a high priority for game engines due to the wide variety of uses
for which they are applied. Despite the specificity of the name "game engine", end-users often re-purpose
game engines for other kinds of interactive applications with real-time graphical requirements - such as
marketing demos, architectural visualizations, training simulations, and modeling environments.[6]

Some game engines only provide real-time 3D rendering capabilities instead of the wide range of
functionality needed by games. These engines rely upon the game developer to implement the rest of this
functionality or to assemble it from other game-middleware components. These types of engines are
generally referred to as a "graphics engine", "rendering engine", or "3D engine" instead of the more
encompassing term "game engine". This terminology is inconsistently used, as many full-featured 3D game
engines are referred to simply as "3D engines". Examples of graphics engines include: Crystal Space,
Genesis3D, Irrlicht, OGRE, RealmForge, Truevision3D, and Vision Engine. Modern game- or graphics-
engines generally provide a scene graph - an object-oriented representation of the 3D game-world which
often simplifies game design and can be used for more efficient rendering of vast virtual worlds.

As technology ages, the components of an engine may become outdated or insufficient for the requirements
of a given project. Since the complexity of programming an entirely new engine may result in unwanted
delays (or necessitate that a project restart from the beginning), an engine-development team may elect to
update their existing engine with newer functionality or components.

History
Before game engines, games were typically written as
singular entities: a game for the Atari 2600, for
example, had to be designed from the bottom up to
make optimal use of the display hardware—this core
display routine is today called the kernel by developers
of games for older systems. Other platforms had more
Some game engines experience an evolution over
leeway, but even when the display was not a concern,
time and develop a family tree, like for instance
memory constraints usually sabotaged attempts to
id's Quake engine which resulted in the id Tech
create the data-heavy design that an engine needs.
family
Even on more accommodating platforms, very little
could be reused between games. The rapid advance of
arcade hardware—which was the leading edge of the market at the time—meant that most of the code
would have to be thrown out afterwards anyway, as later generations of games would use completely
different game designs that took advantage of extra resources. Thus most game designs through the 1980s
were designed through a hard-coded ruleset with a small number of levels and graphics data. Since the
golden age of arcade video games, it became common for video game companies to develop in-house game
engines for use with first-party software.

A notable example of an in-house game engine on home consoles in the mid-1980s was the smooth side-
scrolling engine developed by Shigeru Miyamoto's team at Nintendo for the Nintendo Entertainment
System (NES). The engine they had developed for the side-scrolling racing game Excitebike (1984) was
later employed for the scrolling platformer Super Mario Bros. (1985). This had the effect of allowing Mario
to smoothly accelerate from a walk to a run, rather than move at a constant speed like in earlier
platformers.[7]

While third-party game engines were not common up until the rise of 3D computer graphics in the 1990s,
there were several 2D game creation systems produced in the 1980s for independent video game
development. These include Pinball Construction Set (1983), ASCII's War Game Construction Kit
(1983),[8] Thunder Force Construction (1984),[9] Adventure Construction Set (1984), Garry Kitchen's
GameMaker (1985), Wargame Construction Set (1986), Shoot-'Em-Up Construction Kit (1987), Arcade
Game Construction Kit (1988), and most popularly ASCII's RPG Maker engines from 1998 onwards. Klik
& Play (1994) is another legacy offering that's still available.[10]

The term "game engine" arose in the mid-1990s, especially in connection with 3D games such as first-
person shooters with a first-person shooter engine. Epic games, founded by developer Tim Sweeney,
debuted Unreal Engine in the year 1998.[11]

Such was the popularity of Id Software's Doom and Quake games that, rather than work from scratch,
other developers licensed the core portions of the software and designed their own graphics, characters,
weapons and levels—the "game content" or "game assets". Separation of game-specific rules and data from
basic concepts like collision detection and game entity meant that teams could grow and specialize.[10]

Later games, such as id Software's Quake III Arena and Epic Games's 1998 Unreal were designed with
this approach in mind, with the engine and content developed separately. The practice of licensing such
technology has proved to be a useful auxiliary revenue stream for some game developers, as one license for
a high-end commercial game engine can range from US$10,000 to millions of dollars, and the number of
licensees can reach several dozen companies, as seen with the Unreal Engine. At the very least, reusable
engines make developing game sequels faster and easier, which is a valuable advantage in the competitive
video game industry. While there was a strong rivalry between Epic and id around 2000, since then Epic's
Unreal Engine has been far more popular than id Tech 4 and its successor id Tech 5.[12]

Modern game engines are some of the most complex applications written, often featuring dozens of finely
tuned systems interacting to ensure a precisely controlled user experience. The continued evolution of game
engines has created a strong separation between rendering, scripting, artwork, and level design. It is now
common, for example, for a typical game development team to have several times as many artists as actual
programmers.[13]

First-person shooter games remain the predominant users of third-party game engines, but they are now
also being used in other genres. For example, the role-playing video game The Elder Scrolls III: Morrowind
and the MMORPG Dark Age of Camelot are based on the Gamebryo engine, and the MMORPG Lineage
II is based on the Unreal Engine. Game engines are used for games originally developed for home consoles
as well; for example, the RenderWare engine is used in the Grand Theft Auto and Burnout franchises.

Threading is taking on more importance due to modern multi-core systems (e.g. Cell) and increased
demands in realism. Typical threads involve rendering, streaming, audio, and physics. 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, partly because rendering and related tasks need updating at only 30–
60 Hz. For example, on PlayStation 3, physics ran in Need For Speed at 100 Hz versus Forza Motorsport
2 at 360 Hz.

Although the term was first used in the 1990s, there are a few earlier systems in the 1980s that are also
considered to be game engines, such as Sierra's Adventure Game Interpreter (AGI) and SCI systems,
LucasArts' SCUMM system and Incentive Software's Freescape engine (in 1986[14]). Unlike most modern
game engines, these game engines were never used in any third-party products (except for the SCUMM
system which was licensed to and used by Humongous Entertainment).

As game engine technology matures and becomes more user-friendly, the application of game engines has
broadened in scope. They are now being used for serious games: visualization, training, medical, and
military simulation applications, with the CryEngine being one example.[15] To facilitate this accessibility,
new hardware platforms are now being targeted by game engines, including mobile phones (e.g. Android
phones, iPhone) and web browsers (e.g. WebGL, Shockwave, Flash, Trinigy's WebVision, Silverlight,
Unity Web Player, O3D and pure DHTML).[16]

Additionally, more game engines are being built upon higher level languages such as Java and C#/.NET
(e.g. TorqueX, and Visual3D.NET), Python (Panda3D), or Lua Script (Leadwerks). As most 3D rich
games are now mostly GPU-limited (i.e. limited by the power of the graphics card), the potential slowdown
due to translation overheads of higher level languages becomes negligible, while the productivity gains
offered by these languages work to the game engine developers' benefit.[17] These recent trends are being
propelled by companies such as Microsoft to support indie game development. Microsoft developed XNA
as the SDK of choice for all video games released on Xbox and related products. This includes the Xbox
Live Indie Games[18] channel designed specifically for smaller developers who don't have the extensive
resources necessary to box games for sale on retail shelves. It is becoming easier and cheaper than ever to
develop game engines for platforms that support managed frameworks.[19]

Game engines as an industry


Producers of game engines decide how they allow users to utilize their products. Just as gaming is an
industry, so are the engines they are built off. The major game engines come at varying prices, whether it
be in the form of subscription fees or license payments.[20] The Unity engine and the Unreal Engine
currently being the two most popular choices for game developers.[21] Although the differences among the
different game engines blur as they build their own tools on top of them, different game developers may be
too used to a system to change, or attracted by the huge benefits of such engines regardless of pay-walls.

Game middleware
In the broader sense of the term, game engines themselves can be described as middleware. In the context
of video games, however, the term "middleware" is often used to refer to subsystems of functionality within
a game engine. Some game middleware does only one thing but does it more convincingly or more
efficiently than general purpose middleware.

The four most widely used middleware packages[22] that provide subsystems of functionality 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 a suite of
animation and behavior applications. Scaleform provides GFx for high performance Flash UI and high-
quality video playback, and an Input Method Editor (IME) add-on for in-game Asian chat support.

Other middleware is used for performance optimisation - for example 'Simplygon' helps to optimise and
generate level of detail meshes, and 'Umbra' adds occlusion culling optimisations to 3d graphics.

Some middleware contains full source code, others just provide an API reference for a compiled binary
library. Some middleware programs can be licensed either way, usually for a higher fee for full source
code.
See also
List of game engines
List of first-person shooter engines
List of game middleware
Game physics
3D computer graphics
Virtual studio
Authoring system

References
1. Valencia-Garcia, Rafael; et al. (2016). Technologies and Innovation: Second International
Conference, CITI 2016, Guayaquil, Ecuador, November 23-25, 2016, Proceedings (https://w
ww.google.com.au/books/edition/Technologies_and_Innovation/bZZyDQAAQBAJ?hl=en&g
bpv=1&pg=PA146). ISBN 9783319480244. Retrieved 2021-07-22.
2. "Common game development terms and definitions | Game design vocabulary | Unity" (http
s://unity.com/how-to/beginner/game-development-terms). Unity. Retrieved 2021-07-14.
3. Tan, James. "Introduction - Unreal Engine (Canterbury Software Summit 2013 slides)" (http
s://cdn2.unrealengine.com/Resources/files/Build_1.x_Not_1.0_JamesTan-1535398852.pdf)
(PDF). Unreal Engine. Retrieved 2021-07-14.
4. "What is a Game Engine?" (http://www.gamecareerguide.com/features/529/what_is_a_gam
e_.php). GameCareerGuide.com. Retrieved 2013-11-24.
5. O'Neill, John (January 15, 2008). "My Turn: The Real Cost of Middleware" (https://web.archi
ve.org/web/20090830205358/http://www.gamedaily.com/articles/features/my-turn-the-real-co
st-of-middleware/71334/?biz=1). Gamedaily.com. Archived from the original (http://www.gam
edaily.com/articles/features/my-turn-the-real-cost-of-middleware/71334/?biz=1) on August
30, 2009. Retrieved 2013-11-24.
6. Report on Use of Middleware in Games (http://adlcommunity.net/file.php/36/GrooveFiles/Ga
mes%20Madison/report%20Middleware.pdf) Archived (https://web.archive.org/web/2013101
7044354/http://adlcommunity.net/file.php/36/GrooveFiles/Games%20Madison/report%20Mid
dleware.pdf) October 17, 2013, at the Wayback Machine
7. Williams, Andrew (16 March 2017). History of Digital Games: Developments in Art, Design
and Interaction. CRC Press. pp. 152–4. ISBN 978-1-317-50381-1.
8. "War Game Construction Kit" (https://web.archive.org/web/20130728111753/http://retropc.ne
t/fm-7/museum/softhouse/ascii/000701300.html). Oh!FM. Archived from the original (http://ret
ropc.net/fm-7/museum/softhouse/ascii/000701300.html) on 28 July 2013. Retrieved
3 September 2012. Alt URL (https://translate.google.com/translate?hl=en&sl=ja&tl=en&u=htt
p%3A%2F%2Fretropc.net%2Ffm-7%2Fmuseum%2Fsofthouse%2Fascii%2F000701300.ht
ml)
9. "Thunder Force Construction" (https://web.archive.org/web/20130728113345/http://retropc.n
et/fm-7/museum/softhouse/tecnosoft/330602301.html). Oh!FM. Archived from the original (htt
p://retropc.net/fm-7/museum/softhouse/tecnosoft/330602301.html) on 28 July 2013.
Retrieved 1 September 2012. Alt URL (https://translate.google.com/translate?sl=ja&tl=en&js
=n&prev=_t&hl=en&ie=UTF-8&layout=2&eotf=1&u=https%3A%2F%2Ffanyv88.com%3A443%2Fhttp%2Fretropc.net%2Ffm-7%
2Fmuseum%2Fsofthouse%2Ftecnosoft%2F330602301.html)
10. Fiadotau, Mikhail (2019). "Dezaemon, RPG Maker, NScripter: Exploring and classifying
game 'produsage' in 1990s Japan". Journal of Gaming & Virtual Worlds. 11 (3): 215–230.
doi:10.1386/jgvw.11.3.215_1 (https://doi.org/10.1386%2Fjgvw.11.3.215_1).
S2CID 213694676 (https://api.semanticscholar.org/CorpusID:213694676).
11. Weinberger, Matt. "The CEO behind 'Fortnite' says it's 'evolving beyond being a game' and
explains the company's ambitious vision" (https://www.businessinsider.com/epic-games-ceo
-tim-sweeney-fortnite-unreal-engine-2019-3). Business Insider. Retrieved 2022-02-17.
12. Bramwell, Tom (2007-08-09). "id Tech 5 Interview • Page 1 • Interviews •" (http://www.euroga
mer.net/articles/id-tech-5-interview). Eurogamer.net. Retrieved 2013-11-24.
13. "Game Development Team Composition Study - Changes over time" (http://web.cs.wpi.edu/
~id111x/c05/slides/intro.ppt). Retrieved 2011-01-17.
14. "Freescape Engine" (https://www.uvlist.net/groups/info/freescapeengine). Universal
Videogame List. Retrieved 2020-05-16.
15. "Video Games Starting to Get Serious" (https://web.archive.org/web/20081203174009/http://
www.gazette.net/stories/083107/businew11739_32356.shtml). Gazette.net. 2007-08-31.
Archived from the original (http://www.gazette.net/stories/083107/businew11739_32356.sht
ml) on 2008-12-03. Retrieved 2011-01-17.
16. "Gaming: Mobile and Wireless Trends for 2008" (https://web.archive.org/web/201101080735
02/http://www.m-trends.org/2008/01/mobile-and-wireless-trends-for-2008.html). M-trends.org.
Archived from the original (http://www.m-trends.org/2008/01/mobile-and-wireless-trends-for-
2008.html) on 2011-01-08. Retrieved 2011-01-17.
17. Zerbst, Stefan; Düvel, Oliver (2004). 3D Game Engine Programming (book) (https://books.go
ogle.com/books?id=-vifhqAi0SEC&q=gpu-limited+games&pg=PA338).
ISBN 9781592003518. Retrieved 2011-01-17.
18. "xboxlivecommunitygames.org" (http://www.xboxlivecommunitygames.org/).
xboxlivecommunitygames.org. Retrieved 2013-11-24.
19. "Microsoft to Enable User-Created XBox 360 Games" (http://www.gamasutra.com/php-bin/n
ews_index.php?story=10458). Retrieved 2017-05-05.
20. "The 10 Best Video Game Engines | 2018 Edition" (https://www.gamedesigning.org/career/v
ideo-game-engines/). The Ultimate Resource for Video Game Design. 2017-03-11.
Retrieved 2019-05-15.
21. "The Two Engines Driving the $120B Gaming Industry Forward" (https://www.cbinsights.co
m/research/game-engines-growth-expert-intelligence/). CB Insights Research. 2018-09-20.
Retrieved 2019-05-15.
22. "Gamasutra Engine and Middleware Technology Survey" (http://www.gamasutra.com/blogs/
MarkDeLoura/20090316/903/The_Engine_Survey_Technology_Results.php).
Gamasutra.com. 2009-05-08. Retrieved 2011-01-17.

Retrieved from "https://en.wikipedia.org/w/index.php?title=Game_engine&oldid=1115442813"

This page was last edited on 11 October 2022, at 13:54 (UTC).

Text is available under the Creative Commons Attribution-ShareAlike License 3.0;


additional terms may apply. By
using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the
Wikimedia Foundation, Inc., a non-profit organization.

You might also like