Update on the Khronos 3D Viewer Certification Program and the Drive for Rendering Consistency
- Eric Chadwick (Wayfair)
- Leonard Daly (Daly Realism and Co-Chair of the Khronos 3D Commerce Certification Subgroup)
- Ashleigh Miller (Amazon and Co-Chair of the Khronos 3D Commerce Certification Subgroup)
- Norbert Nopper (UX3D)
3D Commerce Working Group builds industry consensus on best practices for reliable cross-platform rendering of glTF assets
Rendering variability across multiple platforms has long been a pain point for content creators wishing to reliably represent 3D models, such as products on a 3D Commerce website. In June 2021 Khronos launched the 3D Viewer Certification Program to bring together artists, developers, and vendors to build industry consensus on best practices for testing the consistency of rendering glTF assets in 3D viewers. These viewers are used to drive a wide variety of 3D end user experiences including interactions on social, search, and advertising platforms.
Following program launch, the 3D Commerce Viewer Certification Subgroup at Khronos has been investigating challenges to consistent rendering that were even more complex than we initially anticipated. We would like to share with you some of the insights we have gained into these technical challenges over the last few months of additional analysis. And good news: after retooling, we are now accepting new viewer submissions, and are even more convinced of the Certification Program’s benefit to the industry!
First, some clarity on the problem we are aiming to solve. 3D assets, such as a model of a piece of furniture or item of clothing, are created independently from the 3D viewers used to build consumer experiences. Once the 3D asset is exported, it might look inconsistent when using different viewers for various use cases—for example multiple storefronts on diverse browsers and devices, 3D ads, 3D search engines, 3D product listings, and Augmented Reality experiences—even if the input assets and rendering parameters are the same.
The Viewer Certification Program provides an opportunity for 3D viewer vendors to demonstrate that they can accurately and consistently display glTF assets. The Viewer Certification Subgroup at Khronos has created a test package with a set of publicly available glTF test assets that are used by the viewer vendors to generate test images. The test images are compared to ground truth images rendered by Khronos’s own glTF Sample Viewer . Viewers that produce rendered results that are consistent with the Sample Viewer are entered into a public registry of Certified Viewers that retailers and manufacturers can rely upon to display their products consistently. This performance baseline also gives artists a common design target.
When Khronos designed the Viewer Certification Program, an important goal was to make the comparison between the reference and test images as objective as possible, including the assessment of how viewers calculate physically based lighting, generate color values, and render PBR material properties such as roughness and metalness, along with many other parameters including transparency, texture transforms, and multiple UV spaces.
As we began the process of examining the initial set of viewer results, it quickly became apparent that the impact of the underlying operating/windowing system, web browser, and graphics API have a much larger impact on viewer output than we initially thought. The maker of the viewer has little influence over the design of these underlying layers but is dependent upon them. There are many parameters that viewers cannot control, and more for which best practices are not yet defined, including how to pre-filter the environment map for lighting, shader data precision, whether to use sRGB buffers, and more. Together, these dependencies can cause a significant divergence in the visual output of different viewers.
An additional challenge arose from the need for 3D Commerce workflows to use high dynamic range images for physically based rendering. Differences in the underlying capabilities of rendering hardware and output devices result in viewers employing a variety of techniques to convert rendered values to pixels for display. These techniques range from basic gamma correction, through common tone mapping, to sophisticated ACES workflows, all producing slightly different visual outcomes.
Certification Program Today
The Viewer Certification Subgroup has responded to these challenges in four ways.
Firstly, wherever possible, the requirements on how to render a 3D Commerce certified asset have been tightened to reduce variance between rendered images, building industry consensus for best practices. For example, the bidirectional reflectance distribution functions (BRDF) defined in the glTF 2.0 Specification are now a mandatory guide to implement a certified viewer.
Secondly, to enable pragmatic comparisons between rendered pixel values, independently of any final tone mapping used in production platforms, the calculation of displayed pixels for the purpose of comparison with ground truth images is mandated. For example, if BRDF calculations are performed in high dynamic range using floating point numbers, then the mapping to displayed pixels for certification must use a defined gamma correction/sRGB conversion – that retains the chromaticity of the HDR color value – to a low dynamic range image stored in a PNG having an eight bit per RGB color precision.
Thirdly, the tolerances in the comparison to ground truth images has been relaxed where necessary to account for unavoidable variances introduced by underlying system differences.
Lastly, and perhaps most importantly, Khronos will use the insights gained during implementation of the certification program to drive medium and long-term industry consensus and action for consistency in 3D APIs, rendering stacks and pipelines, and display hardware to reduce cross-platform 3D rendering visual differences.
So, today’s Viewer Certification program verifies that certified viewers produce consistent pixel colors before being tone mapped, with pragmatic rendering tolerances. This approach allows us to move the industry forward to greater visual consistency as quickly as possible with the help of the Certification Program Roadmap.
Certification Program Roadmap
The Viewer Certification Program complements Khronos’s 3D Commerce Asset Guidelines. The Certification and Asset Guidelines Subgroups will work closely to update both the Asset Creation Guidelines and the Viewer Certification Program as the industry gains experience with achieving widespread rendering consistency, including working towards an industry consensus on tone-mapping techniques that can be used in diverse 3D Commerce viewers.
We also anticipate that in the future, the Viewer Certification process will account for a wider selection of materials and features demanded by retailers, such as fabric display and physical simulation, advanced animation, audio, and rendering in VR or AR in the user’s own environment. As these features mature, they will be brought into future requirements for viewer certification.
The Viewer Certification process will also advance with improved platform capabilities and rendering technologies and will generate requirements to help guide that evolution. For example, as rendering hardware increases in performance, including the widespread availability of real-time ray tracing acceleration, algorithms used for physically based rendering will improve, enabling tolerances for generated PBR images to be tightened.
Lastly, 3D Commerce will provide a powerful incentive for display color accuracy and calibration, and the experience and quantitative data gathered in the Viewer Certification Program can help drive industry improvements for the benefit of all.
Open for Business
The Viewer Certification Program launched with strong industry support from viewer vendors including Amazon, Babylon.js, CGTrader, Emersya, Epic Games (Unreal Engine), Facebook (Spark AR), Google (<model-viewer> & Scene Viewer), Samsung (Internet Browser on Android), Sketchfab, Unity, and UX3D (Gestaltor).
The program is now open for business with greater clarity of scope, deeper technical analysis, and a streamlined testing process, and is announcing its first set of officially certified viewers, including products from UX3D (Gestaltor), Unity, Babylon.js, and CGTrader—with many more to come. We’re excited to continue to add viewers to the Viewer Certification Registry, giving artists and retailers the confidence to invest time and resources in glTF asset development, knowing they can rely on consistent performance across multiple viewers.
The Viewer Certification Program is open to all vendors, regardless of Khronos membership. Any vendors interested in submitting a viewer for certification can find full details and submission resources on the Khronos Viewer Certification website.
Those interested in contributing to the future development of the Viewer Certification Program, Asset Creations Guidelines, or Khronos standards, tools, and extensions are invited to join the Khronos Group and the 3D Commerce Working Group. The 3D Commerce Working Group at Khronos brings together a unique set of companies and expertise to identify, leverage and act on opportunities for increased consistency in displaying 3D assets everywhere. Visit the Khronos Membership website to learn more.