The glTF™ open standard format for transmitting 3D assets and scenes continues to gather strong momentum, with increasing adoption from tools, players and applications throughout the industry.
As part of the ongoing work to ensure glTF meets the needs of the developer community the Khronos™ 3D Formats working group is working on a new glTF compression extension to greatly improve transmission efficiency of texture assets while providing efficient, cross-platform transcoding into a wide range of GPU hardware-accelerated texture formats.
Why do we need a glTF Compressed Texture Extension?
The Khronos 3D Formats working group, that develops the glTF standard, is working on a compressed texture extension for glTF 2.0. This extension is designed to make glTF scenes and assets significantly more compact, while also addressing one of the key challenges that developers face with managing compressed texture assets in their cross-platform, content pipeline workflows. The industry lacks a universal standard GPU texture format that is available across all supported target devices. Generally, each class of graphics device has its own unique set of supported native texture formats and compression modes. This typically requires that all texture assets for a project must be processed, compressed and packaged in multiple formats to ensure that the target device can understand at least one of the included formats. This is a significant waste of developer effort, transcoding processing time — as well as making distribution of the assets complex, unwieldy, and inefficient.
The new glTF extension will greatly simplify this process by providing a universal compressed texture file format that can be deployed to any device, whereupon the data is transcoded from the universal format into the native GPU format for that specific device at runtime. The transcoding process is a direct conversion from the universal compressed format to the required GPU target format, and is designed to be extremely fast and efficient.
In addition, the new texture extension will also support a set of super-compressed texture encoders that can be used to apply an extra layer of jpeg-level compression onto any specific GPU block-format texture. This highly packed texture data can be transmitted very efficiently, and can be decoded very quickly on the CPU, or directly on the GPU before use.
The extension has just entered the design phase, and work is progressing well. One key technology contribution to this effort is Basis from Binomial — a cross-platform, universal texture compressor that is already being used by a number of high-profile media companies and game studios. Khronos will be working with Binomial and other members of the 3D Formats to accept any technology contributions to create truly cross-platform solution.
There are many ways to get involved in helping glTF evolve to meet your needs. If your company wants a seat at the 3D Formats working group, you are welcome to join Khronos. Otherwise, anyone is welcome to follow, and contribute to, technical discussions on the public glTF GitHub repo?. We look forward to working with you!