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
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.
– 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.
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
In a connected world, APIs are the glue that keeps all the parts that form our day-to-day lives in place. The same way the power of glue depends on the material it is used on and the knowledge of its properties, APIs are only as useful as their documentation allows for.
There are different solutions to monitor the performance of an API, in terms of traffic, quality and speed of the answers it provides. Detecting faults in the code or quantifying the generated revenues are also some of the options offered by these useful tools.
App users must be aware that a button... is in fact a clickable button. Therefore, app buttons must be designed in such a way that users should feel invited to interact with the interface and actually click on it.