Game Engines

by Adam Crivello
What is a game engine, and how is it used in game development? Our G2 guide can help you understand game engines, how they’re used by industry professionals, and their benefits.

What is a game engine?

Game engines give game developers a framework for developing a video game without creating all systems, such as the physics, graphics, and AI, from scratch. Game engines remove the need to program and integrate game-supporting systems together, saving developers' time and resources so they can focus on creating the meat of the game itself.

Game engines are an inherent part of game development, whether developers use a popular existing game engine or develop a game engine in-house. More than a helpful tool in the game development process, game engines provide the entire foundation and framework for a game’s development. Once a game engine is selected or built, game developers do the vast majority of the game’s design work within that engine. Even elements of game development created outside of the game engine, such as sound and art assets, are still imported to or referenced from within the game engine for use. For example, artists working on a game might create assets for the game using 3D modeling software. However, the completed models would then be accessible to game designers working within the development studio’s game engine of choice. 

Game engines contain many different internal systems such as a physics engine, audio engine, rendering engine, AI, animation, and more. There are also plug-ins or APIs available to customize a game engine, and some engines come with pre-built asset libraries to make it even easier to create a game. Using the building blocks game engines provide, game designers program the various elements of their game until the desired final product is reached. Different game engines support different programming languages. 

Types of game engines

Depending on the type of game a studio is trying to develop, one of a few different types of game engines will be utilized. Many game engines qualify as more than one of these types.

  • 2D game engines: As the name suggests, 2D game engines support the development of two-dimensional games such as side-scrolling platformers. They are optimized to work best with 2D assets and level designs. 
  • 3D game engines: In contrast with 2D game engines, 3D game engines support the development of games with three-dimensional graphics and levels. They are optimized to work best with 3D assets and level designs, which feature in open world and action-adventure games.  
  • Mobile game engines: Mobile game engines support the development of mobile games specifically, which are often less graphically demanding than other games. These engines provide tools and systems that complement touch-screen inputs, two-dimensional visuals on a handheld screen, and more. 
  • AR game engines: An augmented reality game engine, or AR game engine, provides game developers with the framework for creating AR video game experiences. These tools allow developers to create and edit 3D game assets that virtually interact with the real world as viewed from the player’s camera. 
  • VR game engines: A virtual reality game engine, or VR game engine, provides game developers with the framework for creating a VR video game experience. These tools allow developers to create and edit 3D assets as part of a fully immersive 3D virtual experience for the player. 

Benefits of using a game engine

Game engines are a fundamental part of game development. The games industry has seen exceedingly few examples of video games that were programmed without the use of a game engine, whether in-house or third party. Some of the reasons game engines are so vital to development include:

  • Pre-built framework: Crafting a game from scratch is a monumental task, even for large game studios. Game engine software’s prebuilt framework and tool kits save developers time and let them focus on game content. 
  • Standardized development: Using game engine software means that developers can rely on community knowledge and team knowledge about a standard build environment. This isn’t the case with custom-built solutions.
  • Workflow organization: Developers using game engine software benefit from the ability to work in one centralized hub. Without game engine software, workflows are prone to disorganization. Game development becomes faster and more efficient when developers can keep all of their tools in the same place.
  • Pre-built assets: Developers, especially those on smaller teams, can save effort by using prebuilt assets instead of building those assets themselves. Pulling from the asset libraries offered by many game engines gives developers more time to work on game mechanics as opposed to asset creation.

Basic elements of a game engine

The framework provided by a game engine can vary, but a complete game engine will typically include the following elements:

  • Graphics rendering system: A game engine will always include a graphics rendering system or engine that makes visual asset display and manipulation possible. These rendering systems differ from other image rendering systems in that they must be optimized to support interactive gameplay.
  • Physics engine: Most game engines provide a built-in physics engine. Physics engines are software systems that allow computers to simulate physics phenomena that people experience in the real world (gravity, fluid dynamics, etc.) and apply them to 3D objects in games and other 3D renderings, which affects how those objects interact in the digital world.
  • Audio engine: Many game engines provide a built-in audio engine. Audio engine software provides a framework to create and manage audio within video games. This element removes the need to create and mix sound effects from the ground up by offering a pre-built framework from which designers can interface with audio assets.
  • AI systems: AI systems provide basic logic which informs how non-player characters and systems behave in-game. Game designers can edit and add to these systems to tweak enemy character aggression, curate friendly character behavior, and more.
AC

Adam Crivello

Adam is a research analyst focused on dev software. He started at G2 in July 2019 and leverages his background in comedy writing and coding to provide engaging, informative research content while building his software expertise. In his free time he enjoys cooking, playing video games, writing and performing comedy, and avoiding sports talk.

Game Engines Software

This list shows the top software that mention game engines most on G2.

Unity is the world’s leading platform for creating and operating interactive, RT3D content. Creators, ranging from game developers to artists, architects,and automotive designers to filmmakers and more, use Unity to make their imaginations come to life. The Unity platform provides a comprehensive set of software solutions to create and operate real-time 2D and 3D content for multiple platforms, including mobile phones, tablets, PCs, consoles, and augmented and virtual reality devices.

Blender is an open source 3D creation suite that supports the 3D pipeline, modeling, rigging, animation, simulation, rendering, compositing, and motion tracking, video editing, and game creation.

Unreal Engine is a suite of game development tools made by game developers for game developers, from 2D mobile games to console blockbusters and VR.

GameMaker allows you to create cross platform games and functional prototypes with managed workflow, quality, multi format export, performance and more.

Unity Ads allows you to supplement your existing revenue strategy by allowing you to monetize your entire player base - including the ever-important 97% (industry average) of players that will never make an in-app purchase.

PhysX creates effects and scene filled with dynamic destruction, particle based fluids, and life-like animation with accurate physics simulation.

Box2D is an open source C++ engine for simulating bodies in 2D that has features in collision, physics, system, testbed, and documentation.

Bring your imagination to life with Maya® 3D animation, modeling, simulation, and rendering software. Maya helps artists tell their story with one fast, creative toolset.

Wwise is an interactive sound engine for games that is artist driven, is multithreaded and platform-optimized, with built-in effects and source plugs, and custom development, onsite support and more.

Cafu Engine is an all-purpose, modern 3D graphics engine and game development kit that has features that can be used to create a variety of 3D applications including games, simulations, and training and architectural software.

OGRE3D is a scene-oriented, 3D engine written in C++ that is designed to help developers produce application utilizing hardware-accelerated 3D graphics.

With ARCore, shape brand new experiences that seamlessly blend the digital and physical worlds. Transform the future of work and play at Android scale.

Microsoft Visual Studio is an integrated development environment (IDE) for developing console and graphical user interface applications along with Windows Forms or WPF applications, web sites, web applications, and web services.

Amazon GameLift is a managed service for deploying, operating, and scaling dedicated game servers for session-based multiplayer games.

Substance Painter gives you all the tools you need to texture your 3D assets.

Godot is an open source MIT licensed multi-platform 2D and 3D game engine that provides common tools so you can focus on making your game.

Silo 2 is a focused 3D modeling application with the ability to effortlessly switch between organically sculpting high-polygon models and precisely controlling hard-edged surfaces. It can be used for anything from creating 3D characters for video games and movies to quickly exploring 3D architectural ideas.