Overview

Gameface is a game UI middleware. It’s powered by the libraries Cohtml (HTML engine) and Renoir (rendering engine). Cohtml is the main component and is responsible for handling the UI’s layout and logic. When done, Cohtml sends commands to Renoir for drawing all of the UI’s elements. Keep this in mind while reading this documentation.

The Cohtml library was born from our experience with Coherent Browser and Coherent GT - both leading solutions for UI on desktop and consoles. We found that to support the performance requirements of consoles and mobile devices we had to completely re-think the way we do UI. Cohtml was created from the ground up with games and real-time applications in mind and is based on completely proprietary technology. The runtime can be embedded in any application on the supported platforms. Cohtml is not a “WebView” and is not based on WebKit/Chromium/Gecko/IE.

Gameface allows developers to use modern web technologies to create their user interfaces in desktop, console and mobile applications. Iteration times are substantially reduced due to the fast workflow with HTML/CSS/JavaScript.

Major Features

  • Web development friendly. Gameface runs a standard-compliant HTML5 engine and through it, you can use standard web tools and libraries like React.js, Preact.js, jQuery.

  • Powerful debugging tools. Gameface packs Google Chrome’s DevTools, allowing you to inspect and modify the DOM on the fly and debug JavaScript.

  • Styling is available through style sheets that allow changing the whole UI visuals quickly and easily.

  • Automatic scaling and layout. The powerful CSS layout rules will make your UI look great on any resolution and aspect ratio.

  • UI coding with JavaScript, or other bound languages

  • Vector-based assets allow adaptable resolution without sacrificing quality. SVG support.

  • Advanced visual effects - shadows, masking clipping, 9-slice, filters, blend modes, 2D and 3D transformations, particle effects through transparent videos, etc.

  • High-performance. Gameface was created from the ground up with games and real-time applications in mind.

  • Scalable. Gameface makes use of multiple cores on the client device.

  • Easy interaction with the gameplay code

  • Integrated Profiler.

  • Whitebox. Ability to control as much as possible of Gameface’s subsystems - rendering, task system, logging, memory allocations, resource loading.

  • Support for multiple image formats - DDS, TGA, JPEG, PSD, BMP, PNG, ASTC, PKM, KTX