Technology
Fact-checked

At EasyTechJunkie, we're committed to delivering accurate, trustworthy information. Our expert-authored content is rigorously fact-checked and sourced from credible authorities. Discover how we uphold the highest standards in providing you with reliable knowledge.

Learn more...

What Is a Game Engine?

Jerry Morrison
Jerry Morrison

A game engine refers to software development environments designed specifically for the generation of video games. It contains the core library of functions used in a game, however it exists independently of a specific game's content. Assets that make the game unique, such theme and characters, form the content. The game engine is used to control how assets interact to bring the game to life. This is accomplished by means of a set of reusable components that may serve as an engine for games of diverse genres and styles.

The role of a game engine is to do all the behind the scenes heavy lifting that makes any video game playable. Central components include a graphics rendering engine, a physics engine and collision detection. The rendering engine generates a two or three-dimensional image from a scene file, which defines elements such as viewpoint, lighting and texture. Physics engines approximate real world motion in a way familiar to the player, but also meaningful in the context of the game. Collision detection involves how the game detects, displays and reacts to the intersection of two or more rendered objects.

Game engines are what make video games playable.
Game engines are what make video games playable.

Other resources, such as a networking capability, artificial intelligence and sound creation are often components of a game engine as well. Typically, components are available to the developer through a visual integrated development environment (IDE) that simplifies game building. Scene files can be prototyped and tested with the rendering engine without leaving the IDE, for example. Such an approach also encourages component reuse, which makes the creation process more simple and efficient.

Most early game engines were proprietary designs, developed for use in making a single game. The flexibility afforded by selecting favored components and constructing a specialized interface was prized. Such an approach gave developers a great deal of control over the look and feel of games but greatly lengthened the development cycle. Cost constraints typically prohibit the use of a proprietary game engine in most projects.

Complete, ready to use game development suites are available that provide all the functionality of proprietary designs. Many are commercial products, but an open source game engine of comparable quality is not difficult to find. These are open to code tweaking to accommodate favorite programming styles or tools. A game maker may not have the flexibility of a proprietary engine, but the time and money saved in development usually far outweigh the loss of stylistic freedom.

Discussion Comments

Logicfest

@Vincenzo -- that is sometimes true, but competition usually sorts all of that out. If Company A is releasing the same game time and time again, Company B can show up with something new and different and woo away customers.

Also, good companies don't just use the same game engine time and time again. They improve on it so the gaming experience improves as the engine evolves.

Those companies that simply slap new window dressing on the same engine shouldn't last for long.

Vincenzo

@Markerrag -- sometimes everyone wins but the gamers. Take a racing game. A racing engine makes it far too easy for a game publisher to recycle the same engine time after time and produce games that are very similar in the way they behave.

Sure, "Race 2" might look different from "Race 1" and offer different tracks and cars, but does it really play that differently? When you hear critics griping about publishers releasing the same game year after year, they are talking about the fact the game engine remains the same and programmers aren't really trying to come up with new and different designs.

Markerrag

The development of these things makes a lot of logical sense. Game publishers are under constant pressure to release games frequently and for several different consoles. Programmers love nothing more than reusing old code because no one wants to reinvent the wheel if a good one already exists, right?

A good game engine allows the company to crank out something quickly and the programmers to achieve a lot of what they need to do without spending hours banging in new code. Everyone wins, right?

Post your comments
Login:
Forgot password?
Register:
    • Game engines are what make video games playable.
      By: Light Impression
      Game engines are what make video games playable.