am f1044096: am 79c79d54: Merge "Remove broken line interpolation tests from must...
[platform/upstream/VK-GL-CTS.git] / doc / testspecs / GLES3 / functional.occlusion_query.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     Occlusion query tests
20
21 Tests:
22  + dEQP-GLES3.functional.occlusion_query.*
23
24 Includes:
25  + Following occluder types are tested:
26         - Scissor boxes
27         - Depth writes and clears
28         - Stencil writes and clears
29  + Exact occlusion query result verification
30         - For query target ANY_SAMPLES_PASSED
31  + Conservative occlusion query result verification
32         - For query target ANY_SAMPLES_PASSED_CONSERVATIVE
33
34 Excludes:
35
36 Description:
37
38 Occlusion query tests operate using the following steps. First, a number
39 of occluders are drawn on screen. Occluders can be areas around scissor
40 boxes, depth writes/clears or stencil writes/clears. Second, a number of
41 target primitives are drawn in red. If any target is visible, i.e. red
42 color appears in the framebuffer, the occlusion query should return true.
43 If targets are invisible, i.e. red color does not appear in the
44 framebuffer, the  occlusion query should return false. If these conditions
45 are not met, the test fails.
46
47 If the occlusion query target is ANY_SAMPLES_PASSED_CONSERVATIVE, the test
48 allows false positives, i.e. the occlusion query can return true even if
49 red color is not present in the framebuffer. The converse is not allowed:
50 if red color is present in the framebuffer, the query must return true.