The best graphics engines for video games (I): open-source solutions

4 min reading
Development / 16 December 2015
The best graphics engines for video games (I): open-source solutions
The best graphics engines for video games (I): open-source solutions

BBVA API Market

You can't create a video game without a graphics engine. Which is why video game programmers have to choose the right engine each time they start a new project. There are a number of options on the market, some more powerful than others and some that offer greater flexibility. The choice will largely depend on what kind of development is required and the needs of those driving the conceptualization and design.

Some options are entirely free and offer excellent performance for independent developers hoping to establish a foothold in the industry. Basically there are three such engines: Unity, Cryengine and Unreal Development Kit (UDK). There are also pay options, such as Unreal Engine, MT Framework, Samaritan, Titanium, Rockstar Advanced Game Engine (RAGE), Frostbite, Havok, Anvil Engine and 4A Engine

Free solutions: features and benefits

1. Unity

Unity is a free graphics engine that offers flexibility and an extensive range of tools. This is a great option for young developers, allowing them to create quality developments at no cost. It is easy to get familiar with and use, while its multi-platform capabilities mean projects can easily be exported to mobile operating systems such as Android, iOS and Windows Phone. It offers everything users need to design projects in 2D and 3D

Further features:

For mobile devices, consoles, browsers and virtual reality: any development may be effortlessly deployed on a wide variety of platforms, not just mobile operating systems like iOS, Android, Windows Phone and Tizen (based on Linux), but also on desktop operating systems such as Windows, Mac OS X and Linux; consoles such as PS Vita, PS3, PS4, Xbox360, Xbox One and Wii U; all kinds of browsers and well-known virtual reality platforms such as Oculus Rift, MS Hololens, Gear VR and Play Station VR.

– The perfect video game engine for mobile developments. The Unity graphics engine offers attractive features:

1. Monetization services.
2. Occlusion culling
: a technique that determines which parts of a graphics scene should not be loaded because they are hidden behind foreground elements. This improves rendering speed in real time.

3. Asset bundling: these are files that developers may export in compressed form via Unity, including elements such as textures, models, audio clips and even full graphics scenes loaded separately. 

– Developments for desktop. Unity includes a solution that allows development of immersive video games with striking graphics: Realtime Global Illumination from Enlighten. This tool provides scenes with  lightmaps, lightprobes and cubemaps in real time, while it can dynamically change key elements such as light sources, scene lighting and the properties of materials in terms of light.

Virtual reality. Unity provides specific support for VR, such as head movement controls; appropriate fields of vision and automatic stereoscopic translation applied to the camera; shadow maps; multi-threaded rendering; GPU skinning; and draw call batching. It provides everything developers need. 

2. Cryengine

Cryengine is one of the graphics engines most frequently used by developers of video games for consoles, PC and mobile devices, whether the PlayStation 4, Xbox One, Wii U, or Windows, Mac OS X, Linux, iOS and Android operating systems. Cryengine offers great graphics, based on an optimal real-time rendering solution and highly efficient 3D technology

Key features of this graphics engine include:

Visual aspects. Most real-time graphics engines base visual elements on traditional shading technology. Cryengine opts for a model called Physically Based Shading, which ensures that interaction between objects and light imitates real-world behavior almost perfectly. This solution requires fewer parameters, which makes for faster conceptualization and content creation. This solution supports real-time movement of vegetation, liquid flows, water reflections and sound.

To achieve all this Cryengine uses a number of processes that allow developers to perfect objects:

– Tessellation. Cryengine uses accelerated DX11 tessellation hardware, which supports various methods of triangulation to improve mesh design and render characters more realistically, even animation. These are Phong,  PN Triangles and displacement mapping models, all editable in real time in order to strike a balance between graphics and performance.

Pixel Accurate Displacement Mapping (PADM). A new displacement mapping method designed specifically for Crysis 3. Compared to tessellation, this system supports greater definition with fewer triangles.

– Cryengine tools. One of the most appealing is Statoscope, a real-time performance measurement tool that provides developers with information on the status of queued streaming tasks, the number of draw calls, bandwidth statistics, function profiles and more  

3. Unreal Development Kit (UDK)

Unreal Development Kit is the free version of Unreal Engine. This graphics engine for video game developers uses UnrealScript as the programming language and is compatible with Windows, the Microsoft operating system.  Like the other two graphics engines, it allows images to be designed in 2D and 3D. Generally speaking this is a solution used by small developers. 

UDK comes with a number of tools to support the conceptualization and design of video games: Unreal Editor, a solution for content creation; Unreal Frontend, which supports generation of the final graphics product; ActorX, to import meshes; and 3DS Max, for 3D animation. 

Some of its key features are: 

– It uses the DirectX 11 and 12 graphics APIs.

– C++ code view. A code sorting system that supports direct browsing through code functions and helps save time.

– Development of immersive video games.

– Artificial intelligence.

Character animation. A suite of tools that allows developers to design skeleton and animation meshes.

– Cascading visual effect. The Cascade VFX editor allows the design of effects such as smoke, fire, dust, dirt and rubble. This is achieved by allowing millions of particles to interact with light and generate shadows and movement on a graphics scene. 

Follow us @BBVAAPIMarket

 

It may interest you