Game Engines
By Ewan Cussons
What Are Game Engines?
A games engine is a building block for a video game. It provides a software framework which game developers can use to create and edit content for video games, they can feature a large range of tools and elements to aid developers into creating a game, such as rendering, animation and scripting, the list goes on. The engines allow the process of video games to be cut down. This is because you can use the same game engine to create different games and not just one. Computer game engines use a variety of programming languages, such as Java and C++.
There is a range of different game engines that games are developed in. Each engine has its strengths, this also means it's weaknesses but is used to suit the game that is being created. Whereas you may use a 2D game engine to create a simple browser game using sprites, like the original Super Meat Boy. However you may want to use a 3D game engine such as Unreal 4 to create a FPS to compete with Call of Duty or even something like The Last of Us.
The purpose of a game engine is to provide a visual development tools to a developer to assist them in the production process. They enable a rapid development by simply being able to re-use meshes, textures and code. They also help with the creation of a games audio, graphics and AI functions.
2D Game Engines:
2D game engines are used to create 2D games across a range of platforms but wouldn’t include touch mechanics for these games, these would be purely for button games, like for PC or maybe Xbox Arcade. To add touch for mobile games, you would have to use a mobile game engine. These types of games can be found on consoles, mobile devices and on the internet. These game engines will always incorporate flat images, also known as sprites. Now due to the style of the engine everything in 2D always tends to be fairly simple. Controls are limited to a few keyboard controls or mouse movement, AI characters in a game tend to be easy and the design just revolves around being a simple game.
3D Game Engines:
3D game engines are the most complicated game engines currently available at the moment, they're mostly used for the development of triple A titles. With the evolution of technology ever expanding, anything is achievable within the limitations of a 3D environment. 3D game engines are by far the most complex to use and this is down to the amount of factors there are for a single action. For example, you might be importing a mesh into the 3D space. That might be simple on a 2D engine like Game Maker where you only have to worry about 2 dimensions but for 3D, you have to worry about more dimensions. This is just one of the factors that differs the two engines; 2D and 3D.
The assets tend to require a lot more talent and skill to pull off and most professional companies will only take on staff with experience of creating the assets, such as the 3D animation of a character or the model of a car. A lot more time is also spent creating a 3D game, meaning the development will be dramatically increased.
Mobile Game Engines:
Mobile game engines are the newest engines to shed light in the industry. They exist to incorporate senses into games, such as touch for smartphone games. They make great use of the technology in the device, such as tilting actions to create controls for the game. This is a factor for mobile game engines, as they rely on other ways to control aspects of games. You could tilt your tablet forward and that could be the control for acceleration for a car or even the speed you're travelling whilst running.
While the games created in these engines are fairly simple to create with assets such as animations and sounds, it becomes a lot more challenging when it comes to controls. Although in these engines, the common controls in mobile games are pre-made like walking and jumping, however if you wanted to create a new mechanic or control for a game, you would have to use the devices technology and write the code/script for yourself.
The History Of Game Engines:
The very first game engine that existed was the Space Rogue game engine. Released in 1989. The most technological factor of the engine was it's capability to texture map.
Unreal was another great game engine that was created in history of the gameing industry. Widely known for its own Unreal and Tournament games, it started off as strictly a FPS game engine. Eventually it became the base of many RPG titles, including Mass Effect. It was also one of the popular game engines among the modding community, it was the first game engine to be packaged with a map editor alongside the game itself, In which it allowed the community to show their creativity and create their unique custom levels.
The CryEngine was a brutal game engine that existed. Known to push hardware to its absolute limits with the Crysis series, the game engine pushed a lot into the visual looks. It's use of pixel shaders created realistic water effects, which you can imagine took strain upon the GPU and FPS of the game. With the engine there was no load times while you could enjoy the great graphics this engine could provide to a game. However Like I said the problem was it took strain to the GPU meaning you could only run it if you had the correct hardware to run it.