Conformance Test CTS_EXT_polygon_offset_clamp Contributors Filip Demczewski, Mobica Contacts Filip Demczewski, Mobica (filip.demczewski 'at' mobica.com) Status In review Version March 22, 2017 (version 1) Dependencies OpenGL 3.3 (either core or compatibility profile) is required. OpenGL ES 3.1 is required. EXT_polygon_offset_clamp extension is required. This specification is written against: - EXT_polygon_offset_clamp specification - OpenGL 3.3 (Core Profile) specification Overview Test is validating new polygon offset function that extends existing one with a new parameter that clamps the calculated offset to a minimum or maximum value. New Tests Availability test * Check if extension is supported. * Check if GetBooleanv, GetIntegerv, GetInteger64v, GetFloatv and GetDoublev can be called with POLYGON_OFFSET_CLAMP_EXT passed as parameter. * Check if new PolygonOffsetClampEXT function is available to call. Clamp min/max test * Render primitive. Read depth buffer value and store it. Disable depth test to ensure second primitive overwrites values in depth buffer. Call PolygonOffsetClampEXT. Render the same primitive again. Read depth buffer value again and compare it with previous one. Check if offset is clamped correctly by validating it against equation described in extension's specification. Zero or inifinity parameter test * Call PolygonOffset function. Render primitive. Read depth value and store it. Clear depth buffer. Call PolygonOffsetClampEXT function with 0 or infinity value passed as parameter. Read depth value and compare it to the stored one. Values should be equal as no clamping should occur. Revision History Revision 1, 22 March, 2017 (Filip Demczewski) - Intial version;