Games Engines Assignment Unit 70

Game Engines

In this assignment I will write about the different game engines which are software programs used to build the games we play. The majority of games on the market will run on game engines, all these engines have different features, graphical capabilities, and physics. I will discuss game engines such as: Unreal, Unity, Rage, Frostbite, Crytec, and Gamebryo.

What is a game engine?
Before I discuss game engine, you must know what a computer game is. A computer game is filled with code, graphics, and audio files. All this data comes together, and creates a game on a screen, the player of the game will control the game using some sort of peripheral, i.e a controller, or keyboard and mouse. Games can run on different gaming platforms- this means the hardware used to play the game- for example Xbox and PlayStation are to two home console platforms which run many of the same games, these games are called cross platform games; despite having the same games there are differences between the platforms, for example the PlayStation 4 is more powerful as the Xbox one- so it will show better graphics and performance when the player is playing the game- because of this difference many games will be exclusive to one console platform. many game engines are equip to deal with the cross platform differences- but not all are. 

A game engine will help a game developer build a computer game, there are many different gaming engines available to the public- these are known as Open Game Engines. However some other game engines are only available to employees of certain companies. 

Open Game Engines
Open game engines are available to the public, and some are even free to download- for example the Unreal engine is free to download and create games in. However Unreal will take royalties from the game you have made. Unreal is a popular game engine- a large proportion of the games released in the computer game industry, will be running on the Unreal Engine. This is because it's graphics are up to a modern standard- depending on what version you are using- also Unreal is very accessible, as it is free.

Another open game engine is Unity. Unity is also free to use for personal use, this means it has limited functions, so it's more for the hobbyists. Unity does have some other purchasing options which can be used for professional use, Unity is most popular in the mobile gaming market, 1.7 billion mobile devices are running Unity made games, and 5.5 million users are creating games with Unity. Unity is considered inferior to Unreal, but considering that mobile gaming is getting more and more popular, Unity seems to be more suitable for mobile releases, so Unity seems to be the future of gaming.

Gamemaker is another more recent game engine, it's a very simple and very limited game engine, it specialises in 2D games, and uses GML code- which is a very simple form of code. Because of the simplicity of this game engine, it has become quite popular, many amateur programmers, have been able to release games on to the market- and many have been extremely successful. Some examples include: Hotline Miami, Undertale, and Nidhogg; all these games were created by small teams, or individuals.


CryEngine is an open game engine, and is free, however it is not the same as Unreal- as it does not own the royalties of the game someone makes. CryEngine uses a "Pay what you want system", this means that creators can purchase materials that can be used with CryEngine in the CryEngine marketplace, these materials are created by other users, this helps other games designers, as everybody has different skills and talents, for example a lot of music and sound effects are on the marketplace, this helps save time for games designers who don't have a sound designer working with them.

Now lets compare the CryEngine with the Unreal Engine, both of these engine are open game engines, and both are free to obtain. Both these engines have some brilliant graphics, CryEngine is the most powerful engine, but it is also not a very beginner friendly game engine- whereas Unreal is a lot more simple; but still not as simple as Unity. From what I have seen from screenshot comparisons of the two engines- Unreal has superior lighting effects. 
CryEngine 3

Unreal Engine 4

Closed Game Engines
Closed game engines are not available to the general public, they are available to the company that owns the engine- and the company allows their employs to create games using the engine. An example is the RAGE engine, this game engine belongs to Rockstar Games- the creators of Grand Theft Auto- this engine is considered to be one of the best game engine out there; this is because it's physics and graphical capabilities seem to be near real life. The RAGE engine is great for creating open world sandbox games, like Grand Theft Auto. Rockstar have been using this engine since 2006- the first tech demo was a game of table tennis- which they eventually made into a game. 

Another example of closed game engine is the Frostbite engine- used by EA games. Games like Battlefield and FIFA both use the frostbite engine- the current engine is Frostbite 3. Battlefield and FIFA are very different games, Battlefield is a first person shooter, where the player is placed on to a huge area to fight other players online; whereas FIFA is a game of football, this shows that a game engine can produce many different types computer games. Frostbite is a an engine which has created some of the most graphically demand games on the market, the Battlefield series is known for having a very realistic look to it, and also it has realistic sounds, and somewhat realistic physics. 

Frostbite engine logo 2016.jpeg

Comparing the Frostbite 3 and Rage engines, might be difficult as they are both closed game engines, so the only way I can compare the two, is by comparing games created on the engines. The two biggest games, are Grand Theft Auto 5, and Battlefield 4, both of these games have brilliant graphical capabilities, but there is more to games than graphics. Firstly, the Rage engine is older than Frostbite 3, Rockstar games used the same engine to create GTA V (2013), as GTA IV (2008), whereas Battlefield 3(2011) used Frostbite 2, and Battlefield 4(2013) used Frostbite 3; even with a new game engine Battlefield 3 and 4 look and almost the same- just with a bit of polish. The RAGE engine is brilliant for creating large open worlds, the GTA V world is huge, and it's not repetitive, each area has it's own different looks. Frostbite can create huge maps- for example the large maps in Battlefield, but these maps do not have large amounts of traffic and pedestrian AI being generated like Grand Theft Auto does. The Frostbite is brilliant with combat, RAGE has some pretty decent combat, but Frostbite excels in it, the gameplay of modern Battlefield games are extremely realistic, the things you see and hear seem so real.

Game engines change over time, they update to the modern standard of gaming, for example the current Unreal Engine is Unreal 4.13. The original Unreal Engine was created to run the Unreal game, which became Unreal tournament; If you look at these old games, and compare them to how modern Unreal games look, you will notice how much the engine has improved over the years. 
Unreal 4 2016(stable release)
Unreal 1 1998

Game engines will have many different versions, but this doesn't mean they are released, Unreal 4.13 was the stable release of the Unreal 4 engine- which has been in development for since 2003, but had not been accessible to the public until 2012- and that was an early build of the engine. 

What is in a Game Engine?

There are many different components in a game engine, these include: a rendering engine, audio engine, physics engine, and the Artificial intelligence.

Rendering Engine
A rendering engine is the component that creates 3D animated graphics in a game engine, the rendering engine will be the component responsible for displaying 3D models in the game

Audio engine
The audio engine is the component that is responsible for processing the audio for the game. All the sound effects, and background music are processed using the audio engine. 

Physics Engine
The physics engine is responsible for generating the laws of physics for the game. The physics are a vital part of a game, physics will make the character control, instead of just appearing on the screen and doing nothing. The physics engine determines the collision detection, this is very important as it allows the player to move across surfaces, as well as allowing them to stop or slow down if they bump into a wall, the physics engine will allow a player to attack an enemy- this really shows how important a physics engine is to a game engine, because it's essentially what makes the game move.

Artificial intelligence (AI)
In games, AI is used to create behaviours in Non Playable Characters(NPC's). AI is an important feature of most games, because it makes the game challenging, the AI is almost like playing against another person. AI has been used in games since the beginning- but in the past has been very predictable. Real time strategy(RTS) games were the first genre of games that made AI less predictable and more random, RTS's allowed a player to play against a computer player, this computer player would play the game the same way a player would; although you could change the difficulty to make the computer player better at the game; in some games you can even make the AI more aggressive or passive, this could make the game easier or harder- but whats important is the fun AI can create, in my opinion AI is a lot more important to a finished game, than well polished graphics, or exciting cut scenes, I want the AI to be believable, but not at all predictable.

Middleware is software that is used to make a game easier to design. Middleware packages are available to purchase, what they do is generate a part of the game which would have taken games developers a long time to create themselves, for example the Unreal engine uses SpeedTree middleware. SpeedTree is a middleware package that generates foliage in a game world, it has been used in many games in the past, and has even been used in cinema.

Animation systems
Animation systems are important to making a game, animation is used to make the game move properly. Keyframing is used to move player models, this is an important feature, of a game engine, because a player model without any animation will remain idle.

Particle systems also come under animation, these systems allow a games designer create objects like water, fire, and clouds. These particle systems use non static animations, so when one object has finished its animation, a new object will be created in it's place.