1Name 2 3 NV_alpha_to_coverage_dither_control 4 5Name Strings 6 7 GL_NV_alpha_to_coverage_dither_control 8 9Contact 10 11 Pierre Boudier, NVIDIA Corporation (pboudier 'at' nvidia.com) 12 13Contributors 14 15 Tristan Lorach, NVIDIA Corporation 16 Christophe KULESZA, Dassault Systemes 17 18Status 19 20 Pending. 21 22Version 23 24 Last Modified Date: May 31, 2017 25 Revision: 1.01 26 27Number 28 29 500 30 31Dependencies 32 33 This extension is written against the OpenGL 4.4 specification 34 (Core Profile) but may be used with the Compatibility profile or OpenGL ES 35 2.0 or later. 36 37Overview 38 39 NV_alpha_to_coverage_dither_control_triangles provides a new mechanism 40 to control whether dithering is applied when the existing alpha to coverage 41 functionality is used. 42 43 44New Procedures and Functions 45 46 void AlphaToCoverageDitherControlNV(enum mode) 47 48New Tokens 49 50 Accepted by the <param> parameter of AlphaToCoverageDitherControlNV(): 51 ALPHA_TO_COVERAGE_DITHER_DEFAULT_NV 0x934D 52 ALPHA_TO_COVERAGE_DITHER_ENABLE_NV 0x934E 53 ALPHA_TO_COVERAGE_DITHER_DISABLE_NV 0x934F 54 55 Accepted by the <param> of GetIntegerv(): 56 ALPHA_TO_COVERAGE_DITHER_MODE_NV 0x92BF 57 58Modification to Chapter 17.3.3 of the OpenGL 4.4 (Core Profile) Specification 59(Multisample Fragment Operations) 60 61 Modify the paragraph describing SAMPLE_ALPHA_TO_COVERAGE with 62 63 ... No specific algorithm is required for converting the sample 64 alpha values to a temporary coverage value. It is intended that the 65 number of 1's in the temporary coverage be proportional to the set 66 of alpha values for the fragment, with all 1's corresponding to 67 the maximum of all alpha values, and all 0's corresponding to all 68 alpha values being 0. The alpha values used to generate a coverage 69 value are clamped to the range [0; 1]. It is also intended that the 70 algorithm be pseudo-random in nature, to avoid image artifacts due 71 to regular coverage sample locations. 72 73 The function AlphaToCoverageDitherControlNV() allows to specify the 74 kind of algorithm: If the mode is ALPHA_TO_COVERAGE_DITHER_ENABLE, 75 the algorithm is different at different pixel locations. The dithering 76 should be defined relative to window, not screen, coordinates, so 77 that rendering results are invariant with respect to window position. 78 If the mode is ALPHA_TO_COVERAGE_DITHER_DISABLE, then no dithering 79 should be applied and the same conversion should happen regardless of 80 the pixel coordinates. If the mode is ALPHA_TO_COVERAGE_DITHER_DEFAULT, 81 then the algorithm is implementation dependent. 82 83 Addition to the Table 23.11. Multisampling: 84 ALPHA_TO_COVERAGE_DITHER_MODE | E | GetIntegerv | ALPHA_TO_COVERAGE_DITHER_DEFAULT | Control dither for alpha to coverage | 17.3.3 85 86New State 87 88 None. 89 90Additions to the AGL/GLX/WGL Specifications 91 92 None. 93 94GLX Protocol 95 96 None. 97 98Modifications to the OpenGL Shading Language Specification, Version 4.40 99 100 None. 101 102Errors 103 104 None 105 106Issues 107 108 (XX) 109 110Revision History 111 112 Revision 1.01 113 - fix incorrect enum names in the text section 114 Revision 1 115 - Internal revisions. 116