1. Granite for Unreal Adds Advanced Texture Streaming to Unreal Engine 4
12/27/2015 8:01:59 AM
Granite for Unreal Adds Advanced Texture Streaming to Unreal Engine 4
App Developer Magazine

Granite for Unreal Adds Advanced Texture Streaming to Unreal Engine 4

Stuart Parkerson Stuart Parkerson in Game Development Sunday, December 27, 2015

Granite for Unreal is a new solution that adds the Granite SDK to Unreal Engine 4, enabling game developers to handle substantial amounts of texture data while using less memory and eliminating loading time.

Available as a limited commercial seat license, Granite for Unreal eliminates texture-related memory and loading time issues to get ultra-high quality graphics in real-time on mainstream hardware for 3D visualization and video games. It’s a fine-grained texture streaming technology that is aimed at using sparse textures, also called virtual texturing.

Texture streaming is the process of progressively loading a texture into GPU memory. By progressively uploading textures, loading times can be shortened - not all textures have to be loaded up front - and memory use can be reduced - not all texture data needs to be present in memory at once.

To achieve texture streaming, the Granite texture streaming library splits the texture in tiles (small rectangles of texture data). Tiles are the basic unit of processing in the Granite SDK. All data is loaded, coded and processed one tile at a time. The Granite SDK also supports multiple resolution levels (also known as ‘mipmaps’). To achieve this, the resolution levels are split into tiles as well.

To create the tiled textures, the tools import all texture data into an efficient file format for large image data sets. The pixel data is highly compressed, using state of the art image compression techniques. The Granite SDK compression systems are specifically tuned for game specific data types, such as normal maps and alpha channels. The tools convert source art to the Granite streamable file format.

At run-time, the library then transcodes data from Granite custom compression format into a GPU friendly format (like DXT1 or DXT5). Doing this allows for hardware accelerated sampling in shaders, while reducing the amount of video memory. Granite’s transcoder algorithms are highly optimized (using assembly on most platforms) and can be run off the main game thread, allowing game developers to make optimal use of multicore systems.

Read more: http://graphinesoftware.com/products/granite-for-u...

Subscribe to App Developer Magazine

Become a subscriber of App Developer Magazine for just $5.99 a month and take advantage of all these perks.


  • - Exclusive content from leaders in the industry
  • - Q&A articles from industry leaders
  • - Tips and tricks from the most successful developers weekly
  • - Monthly issues, including all 90+ back-issues since 2012
  • - Event discounts and early-bird signups
  • - Gain insight from top achievers in the app store
  • - Learn what tools to use, what SDK's to use, and more

    Subscribe here