1Conformance Test 2 3 CTS_EXT_polygon_offset_clamp 4 5Contributors 6 7 Filip Demczewski, Mobica 8 9Contacts 10 11 Filip Demczewski, Mobica (filip.demczewski 'at' mobica.com) 12 13Status 14 15 In review 16 17Version 18 19 March 22, 2017 (version 1) 20 21Dependencies 22 23 OpenGL 3.3 (either core or compatibility profile) is required. 24 OpenGL ES 3.1 is required. 25 26 EXT_polygon_offset_clamp extension is required. 27 28 This specification is written against: 29 - EXT_polygon_offset_clamp specification 30 - OpenGL 3.3 (Core Profile) specification 31 32Overview 33 34 Test is validating new polygon offset function that extends 35 existing one with a new parameter that clamps the calculated 36 offset to a minimum or maximum value. 37 38New Tests 39 40 Availability test 41 42 * Check if extension is supported. 43 44 * Check if GetBooleanv, GetIntegerv, GetInteger64v, GetFloatv 45 and GetDoublev can be called with POLYGON_OFFSET_CLAMP_EXT 46 passed as <pname> parameter. 47 48 * Check if new PolygonOffsetClampEXT function is available to call. 49 50 Clamp min/max test 51 52 * Render primitive. 53 Read depth buffer value and store it. 54 Disable depth test to ensure second primitive overwrites values 55 in depth buffer. 56 Call PolygonOffsetClampEXT. 57 Render the same primitive again. 58 Read depth buffer value again and compare it with previous one. 59 Check if offset is clamped correctly by validating it against 60 equation described in extension's specification. 61 62 Zero or inifinity parameter test 63 64 * Call PolygonOffset function. 65 Render primitive. 66 Read depth value and store it. 67 Clear depth buffer. 68 Call PolygonOffsetClampEXT function with 0 or infinity value 69 passed as <clamp> parameter. 70 Read depth value and compare it to the stored one. 71 Values should be equal as no clamping should occur. 72 73Revision History 74 75 Revision 1, 22 March, 2017 (Filip Demczewski) 76 - Intial version;