diff options
author | Chad Versace <chad.versace@intel.com> | 2011-04-26 12:20:14 -0700 |
---|---|---|
committer | Chad Versace <chad.versace@intel.com> | 2011-04-28 14:26:57 -0700 |
commit | 5d7187a6ffb2b3fe3a821bd08d70eaa5ddfbd0c9 (patch) | |
tree | ff8b01d9766542eeb2305601c7613f3f9f33f00e /tests/hiz | |
parent | 1f4ab9697ae9e2cf00a820f902514247399a5da7 (diff) |
hiz: Add tests for depth tests when rendering to an FBO
Add three tests, in which the FBO has the following attachments:
1. GL_DEPTH_ATTACHMENT: GL_DEPTH_COMPONENT24
2. GL_DEPTH_ATTACHMENT: GL_DEPTH_COMPONENT24
GL_STENCIL_COMPONENT: GL_STENCIL_INDEX8
3. GL_DEPTH_STENCIL_ATTACHMENT: GL_DEPTH24_STENCIL8
Reviewed-By: Ian Romanick <ian.d.romanick@intel.com>
Signed-off-by: Chad Versace <chad.versace@intel.com>
Diffstat (limited to 'tests/hiz')
-rw-r--r-- | tests/hiz/CMakeLists.gl.txt | 3 | ||||
-rw-r--r-- | tests/hiz/hiz-depth-test-fbo-d24-s8.c | 65 | ||||
-rw-r--r-- | tests/hiz/hiz-depth-test-fbo-d24.c | 65 | ||||
-rw-r--r-- | tests/hiz/hiz-depth-test-fbo-d24s8.c | 65 |
4 files changed, 198 insertions, 0 deletions
diff --git a/tests/hiz/CMakeLists.gl.txt b/tests/hiz/CMakeLists.gl.txt index 6d584da26..d28b9a28f 100644 --- a/tests/hiz/CMakeLists.gl.txt +++ b/tests/hiz/CMakeLists.gl.txt @@ -26,6 +26,9 @@ IF(${CMAKE_SYSTEM_NAME} MATCHES "Linux") link_libraries(pthread X11) ENDIF(${CMAKE_SYSTEM_NAME} MATCHES "Linux") +add_executable(hiz-depth-test-fbo-d24 hiz-depth-test-fbo-d24.c) +add_executable(hiz-depth-test-fbo-d24-s8 hiz-depth-test-fbo-d24-s8.c) +add_executable(hiz-depth-test-fbo-d24s8 hiz-depth-test-fbo-d24s8.c) add_executable(hiz-depth-test-window-stencil0 hiz-depth-test-window-stencil0.c) add_executable(hiz-depth-test-window-stencil1 hiz-depth-test-window-stencil1.c) diff --git a/tests/hiz/hiz-depth-test-fbo-d24-s8.c b/tests/hiz/hiz-depth-test-fbo-d24-s8.c new file mode 100644 index 000000000..a9136c6ba --- /dev/null +++ b/tests/hiz/hiz-depth-test-fbo-d24-s8.c @@ -0,0 +1,65 @@ +/* + * Copyright © 2011 Intel Corporation + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice (including the next + * paragraph) shall be included in all copies or substantial portions of the + * Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS + * IN THE SOFTWARE. + * + * Authors: + * Chad Versace <chad.versace@intel.com> + */ + +/** + * \file hiz-depth-test-fbo-d24-s8.c + * + * Checks that depth tests work correctly when rendering to a window FBO with + * the following attachments: + * - GL_COLOR_ATTACHMENT0: GL_RGBA + * - GL_DEPTH_ATTACHMENT: GL_DEPTH_COMPONENT24 + * - GL_STENCIL_ATTACHMENT: GL_STENCIL_INDEX8 + * + * \author Chad Versace <chad.versace@intel.com> + */ + +#include "piglit-util.h" +#include "hiz/hiz-util.h" + +int piglit_width = 400; +int piglit_height = 400; +int piglit_window_mode = GLUT_RGB; + +struct hiz_fbo_options fbo_options = { + .color_format = GL_RGBA, + .depth_format = GL_DEPTH_COMPONENT24, + .stencil_format = GL_STENCIL_INDEX8, + .depth_stencil_format = 0, +}; +void +piglit_init(int argc, char **argv) +{ + /* empty */ +} + +enum piglit_result +piglit_display() +{ + if (hiz_check_fbo_depth_test(&fbo_options)) + return PIGLIT_PASS; + else + return PIGLIT_FAIL; +} diff --git a/tests/hiz/hiz-depth-test-fbo-d24.c b/tests/hiz/hiz-depth-test-fbo-d24.c new file mode 100644 index 000000000..70100d880 --- /dev/null +++ b/tests/hiz/hiz-depth-test-fbo-d24.c @@ -0,0 +1,65 @@ +/* + * Copyright © 2011 Intel Corporation + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice (including the next + * paragraph) shall be included in all copies or substantial portions of the + * Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS + * IN THE SOFTWARE. + * + * Authors: + * Chad Versace <chad.versace@intel.com> + */ + +/** + * \file hiz-depth-test-fbo-d24.c + * + * Checks that depth tests work correctly when rendering to a window FBO with + * the following attachments: + * - GL_COLOR_ATTACHMENT0: GL_RGBA + * - GL_DEPTH_ATTACHMENT: GL_DEPTH_COMPONENT24 + * + * \author Chad Versace <chad.versace@intel.com> + */ + +#include "piglit-util.h" +#include "hiz/hiz-util.h" + +int piglit_width = 400; +int piglit_height = 400; +int piglit_window_mode = GLUT_RGB; + +struct hiz_fbo_options fbo_options = { + .color_format = GL_RGBA, + .depth_format = GL_DEPTH_COMPONENT24, + .stencil_format = 0, + .depth_stencil_format = 0, +}; + +void +piglit_init(int argc, char **argv) +{ + /* empty */ +} + +enum piglit_result +piglit_display() +{ + if (hiz_check_fbo_depth_test(&fbo_options)) + return PIGLIT_PASS; + else + return PIGLIT_FAIL; +} diff --git a/tests/hiz/hiz-depth-test-fbo-d24s8.c b/tests/hiz/hiz-depth-test-fbo-d24s8.c new file mode 100644 index 000000000..baad01cf0 --- /dev/null +++ b/tests/hiz/hiz-depth-test-fbo-d24s8.c @@ -0,0 +1,65 @@ +/* + * Copyright © 2011 Intel Corporation + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice (including the next + * paragraph) shall be included in all copies or substantial portions of the + * Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS + * IN THE SOFTWARE. + * + * Authors: + * Chad Versace <chad.versace@intel.com> + */ + +/** + * \file hiz-depth-test-fbo-d24s8.c + * + * Checks that depth tests work correctly when rendering to a window FBO with + * the following attachments: + * - GL_COLOR_ATTACHMENT0: GL_RGBA + * - GL_DEPTH_STENCIL_ATTACHMENT: GL_DEPTH24_STENCIL8 + * + * \author Chad Versace <chad.versace@intel.com> + */ + +#include "piglit-util.h" +#include "hiz/hiz-util.h" + +int piglit_width = 400; +int piglit_height = 400; +int piglit_window_mode = GLUT_RGB; + +struct hiz_fbo_options fbo_options = { + .color_format = GL_RGBA, + .depth_format = 0, + .stencil_format = 0, + .depth_stencil_format = GL_DEPTH24_STENCIL8, +}; + +void +piglit_init(int argc, char **argv) +{ + /* empty */ +} + +enum piglit_result +piglit_display() +{ + if (hiz_check_fbo_depth_test(&fbo_options)) + return PIGLIT_PASS; + else + return PIGLIT_FAIL; +} |