OLD | NEW |
(Empty) | |
| 1 Rules for Claiming a Conformant WebGL Implementation |
| 2 ==================================================== |
| 3 |
| 4 The WebGL API is a web standard, and many web browser implementers |
| 5 deliver their browser on multiple operating systems (OSs). WebGL |
| 6 implementations also typically rely on the presence of an OpenGL or |
| 7 OpenGL ES implementation on the OS. It can be appreciated that a WebGL |
| 8 implementation therefore has many dependencies. This document attempts |
| 9 to clarify to potential implementers the rules the Khronos Group uses |
| 10 to judge whether a particular WebGL implementation is conformant. |
| 11 |
| 12 1. Conformance on a particular operating system |
| 13 |
| 14 On a given OS, a WebGL implementation will be considered to conform to |
| 15 a particular version of the conformance suite if the suite passes with |
| 16 no test failures on at least two GPUs, each from a different |
| 17 vendor. If the OS only supports a GPU from one vendor, the two-GPU |
| 18 requirement is dropped. |
| 19 |
| 20 2. Conformance across multiple operating systems |
| 21 |
| 22 A WebGL implementation will be considered to conform to a particular |
| 23 version of the conformance suite if it passes rule (1) on all of the |
| 24 OSs on which the WebGL implementation is intended to be supported. |
| 25 |
| 26 Discussion |
| 27 ========== |
| 28 |
| 29 A WebGL implementation might reach conformance on a particular OS, but |
| 30 a subsequent graphics driver release on that OS might introduce a |
| 31 regression causing failures of one or more of the WebGL conformance |
| 32 tests. In this situation it is not required that the browser revoke |
| 33 support for the "webgl" HTML Canvas context type. The browser vendor |
| 34 should work with the GPU vendor to ensure the driver regression is |
| 35 fixed. A situation like this would, however, prevent the WebGL |
| 36 implementer from conforming to a subsequent version of the test suite. |
| 37 |
| 38 A WebGL implementation intended to ship on three OSs may reach |
| 39 conformance on two of them, but due to graphics driver bugs, may be |
| 40 unable to reach conformance on the third. In this situation the |
| 41 implementation is not yet considered to be conformant. |
| 42 |
| 43 A web browser author developing a new WebGL implementation should not |
| 44 support the "webgl" HTML Canvas context type by default in a shipping |
| 45 version of the product until reaching conformance. It is acceptable to |
| 46 give end users an option to turn on WebGL support in a non-conformant |
| 47 implementation as long as the documentation for that option clearly |
| 48 indicates that the implementation is not yet conformant and may have |
| 49 compatibility issues. It is suggested that the Canvas context type |
| 50 "experimental-webgl" may be supported by default in such |
| 51 implementations. |
| 52 |
| 53 An existing WebGL implementation which conformed to an earlier version |
| 54 of the test suite is not required to remove support for the "webgl" |
| 55 HTML Canvas context type while in the process of conforming to a later |
| 56 version of the test suite. However, the implementer must not advertise |
| 57 conformance to the later version until it has been reached. It is |
| 58 acceptable for the implementer to advertise details of their |
| 59 conformance, for example number or percentage of passing or failing |
| 60 tests, or names of passing or failing tests. |
| 61 |
| 62 The WebGL API has strict security requirements. Even one failing test |
| 63 may indicate a serious security issue in the WebGL implementation. For |
| 64 this reason, no exceptions for failing conformance tests will be |
| 65 granted. |
| 66 |
| 67 The Khronos Group determines whether a particular WebGL implementation |
| 68 is conformant based on the implementer's conformance suite |
| 69 submissions, on multiple OSs and on multiple GPUs as necessary, using |
| 70 the rules above. An implementer shall not judge their own |
| 71 implementation conformant simply by applying the above rules. |
OLD | NEW |