Game Engines


Game Engines

What are the purposes of game engines?

Game engines are a development tool with software components that can be reused. Game engines were made to make game creation much simpler and so there can be more games being developed at a rapid pace. Game engines developers were trying to invent the wheel by making a software which encompasses multiple different elements that needed to make a game. All game engines give several different elements that make game development easier (e.g. graphics, sound effects, physics and AI functions).

Game engines can be called middleware because of how they are used in a business sense and how flexible and reusable they are which can provide core functions to develop a game and it costs less, makes it less complex and more time to market your game, all things that can help a games developers compete in the video game industry (examples of middleware programs are Gamebryo, Jmonkey Engine and RenderWare).

Similar to other middleware solutions, game engines usually provide platform abstractions that allow games being able to be able to be played on multiple different consoles and computers while still being effective with little changes to the games overall quality and source code. Game engines have been designed with a component-based architecture that can make certain systems in the engine that can be replaced or extended with more specialised and more expensive game middleware components (e.g. the physics in the Havok, the sound effects in the Miles Sound System or the videos in Bink). Video game engines like RenderWare are designed with loosely connect components from middleware that can be combined to make a new custom engine, instead of the more common approach extending  or customising a new solution. However being able to take the future into account is achieved, it is a high priority for game engines since they are used for other kinds of interactive purposes with real-time graphics that need marketing, demos, architectural visualisation, training simulations and modelling environments.

Game engines have several different such as a framework is composed of a multitude of very different components. The Rendering engine is the component generates 3D graphics and animated by your chosen method. The Audio engine is the component which uses different algorithms that are related to sound. The Physics engine is the component which is used to create the physics so the game feels somewhat realistic. The Artificial Intelligence is usually outsourced from the main game's program into a special module that has been designed and written by software engineers.

As technology ages, the components that are used in video game engines become more outdated or may become insufficient for the requirements of a given project. Since games development is a complex process of programming new games new engines may become a requirement and can result in unwanted delays or necessitate that the project need to start from scratch, a development team may elect to update their existing game engine with more functions and components.

What can game engines do?

Some game engines can only provide real-time 3D rendering capabilities instead of a wide range of functionality needed by other types of games. These types of engines rely on the game developer to add in the rest of the functions or use these assets from other games from other middleware game companies. These types of game engines are often times called graphics engines, rendering engines or 3D engines instead of being called term general term of game engine. This terminology is being really inconsistently used as many full-featured 3D games engines are simply referred to as 3D engines (a couple of examples of graphic engines are: Crystal Space, Genesis3D, Irrlicht, ORGE,
RealmForge, Truevision3D and Vision Engine). Modern games or graphics engines generally provide a scene graph, which is an object-oriented representation of the 3D game world which often simplifies game design and can be used for efficient rendering of the vast virtual worlds.

An example of a game engine is the CryEngine, the CryEngine is an open-world video game engine that belongs to the German game developers Crytek, it has been used in all of their tittles starting with Far Cry and is still being updated to support new consoles and hardware for the games that they make. It also has been used for many third-party games that Crytek has made (examples of third-party games made with the CryEngine are: Sniper: Ghost Warrior 2 and SNOW). Cloud Imperium Games has used a modified version of the CryEngine for their games (examples of games that Cloud Imperium Games has made with the modified CryEngine includes: Star Citizen and Squadron 42).

An example of a game engine is the Unreal engine, the Unreal engine is a video game engine that was developed by Epic Games, it was first shown in the 1998 first-person shooter game called Unreal, the Unreal Engine is mainly used for developing first-person shooters, but it has been used  to make games like MMORPGs, Stealth games and RPG. The first Unreal engine was made to compile rendering, collision detection, AI, visibility, networking, scripting and file management system into one engine. The second Unreal engine  was released in 2002 with the game America's Army, a free multiplayer shooter created by the US Army and financed by the U.S. government. In addition it features a level editor and ragdoll physics. The third Unreal engine was presented in 2004, it was designed to support a fixed-function pipeline and to take advantage of fully programmable shadier hardware in DirectX 9 terms, it required shadier model 3.0. Unreal engine 3 was made to only support Windows, the Xbox 360 and the PlayStation 3 and then later Android and IOS in 2010, then OS X in 2011. The Unreal engine 3 had included: a global illumination solver, an improved destructible environments, soft body dynamics, large crowd simulation, iPod Touch functionality, Steamworks integration, a real-time global illumination solution and stereoscopic 3D on Xbox 360 because of the TriQviz for Games Technology. The fourth Unreal engine was initially released in 2012 before having a stable release in 2016. The features that the Unreal engine 4 had were: real-time global illumination, eliminating pre-computer lighting and in released on all platform including PC because of concerns on next-generation consoles.

An example of a game engine is the Quake engine, the Quake engine is a video game engine made by id Software to power their video game that they made in 1996, Quake. It features true 3D real-time rendering and is licensed under the terms of the GNU General Public License (GPL). Quake was the first true-3D game to use a special map design system that is pre-processed and a 3D environment to reduce the processing required while playing the game. The Quake engine uses light-maps and 3D lights, as opposed to sector-based static lighting. The Quake engine has a way to reduce overdraw (putting new pixels over old ones the make older work pointless), the area is displayed from front to back, it uses the Global Edge List which sorts out edges that are already rendered polygons

Links
List of game engines source: https://en.wikipedia.org/wiki/List_of_game_engines
Game engine source: https://en.wikipedia.org/wiki/Game_engine

CryEngine source: https://en.wikipedia.org/wiki/CryEngine
List of games made in the CryEngine: https://en.wikipedia.org/wiki/List_of_CryEngine_games

Unreal engine source: https://en.wikipedia.org/wiki/Unreal_Engine
List of games made in Unreal engine: https://en.wikipedia.org/wiki/List_of_Unreal_Engine_games

Quake engine source: https://en.wikipedia.org/wiki/Quake_engine

Comments

Popular posts from this blog

Unit 6 - Assignment 2 - Task 2 P4 Analysis of a computer game

Unit 71: Object-Oriented Design for Computer Games

Unit 66/67 Creating a 3D modelling