Update test spec.
[platform/upstream/VK-GL-CTS.git] / doc / testspecs / GLES31 / functional.blend_equation_advanced.txt
1 -------------------------------------------------------------------------
2 drawElements Quality Program Test Specification
3 -----------------------------------------------
4
5 Copyright 2014 The Android Open Source Project
6
7 Licensed under the Apache License, Version 2.0 (the "License");
8 you may not use this file except in compliance with the License.
9 You may obtain a copy of the License at
10
11      http://www.apache.org/licenses/LICENSE-2.0
12
13 Unless required by applicable law or agreed to in writing, software
14 distributed under the License is distributed on an "AS IS" BASIS,
15 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 See the License for the specific language governing permissions and
17 limitations under the License.
18 -------------------------------------------------------------------------
19     Blend Equation Advanced (GL_KHR_blend_equation_advanced)
20
21 Tests:
22  + dEQP-GLES31.functional.blend_equation_advanced.*
23
24 Includes:
25  + Validation of all advanced blending modes
26  + Rendering into default framebuffer
27  + Rendering into sRGB FBO
28  + Rendering into MSAA FBO
29  + glBlendBarrierKHR() usage
30  + Validation of coherent blending (if supported)
31
32 Excludes (will be added later):
33  + Use of blend_support_all qualifier
34  + Interaction with other per-fragment operations
35  + Non-premultiplied / invalid color inputs
36  + Negative tests
37
38 Description:
39
40 Advanced blending tests render two or more overlapping quads. First quad is
41 rendered without blending, while subsequent quads have the advanced blend mode
42 enabled. Results are always verified against a reference implementation. In
43 modes other than HSL, bilinear comparison is used. in HSL modes fuzzy
44 comparison is used as minor precision differences can cause relatively large
45 deviations in rendered images.
46
47 In basic, srgb, and msaa tests, only two quads are rendered. In barrier tests
48 multiple quads are rendered, one quad per draw call. A blend barrier call is
49 made between each overlapping quad with advanced blending enabled. In coherent
50 and coherent_msaa tests all quads that have blending enabled are rendered in a
51 single draw call.