| Name |
| |
| NV_alpha_to_coverage_dither_control |
| |
| Name Strings |
| |
| GL_NV_alpha_to_coverage_dither_control |
| |
| Contact |
| Pierre Boudier, NVIDIA Corporation (pboudier 'at' nvidia.com) |
| |
| Contributors |
| |
| Tristan Lorach, NVIDIA Corporation |
| Christophe KULESZA, Dassault Systemes |
| Status |
| |
| Pending. |
| |
| Version |
| |
| Last Modified Date: April 25, 2016 |
| Revision: 1 |
| |
| Number |
| |
| 500 |
| |
| Dependencies |
| |
| This extension is written against the OpenGL 4.4 specification |
| (Core Profile) but may be used with the Compatibility profile or OpenGL ES |
| 2.0 or later. |
| |
| Overview |
| |
| NV_alpha_to_coverage_dither_control_triangles provides a new mechanism |
| to control whether dithering is applied when the existing alpha to coverage |
| functionality is used. |
| |
| |
| New Procedures and Functions |
| |
| AlphaToCoverageDitherControlNV(enum mode):. |
| |
| New Tokens |
| |
| Accepted by the <param> parameter of AlphaToCoverageDitherControlNV(): |
| ALPHA_TO_COVERAGE_DITHER_DEFAULT_NV 0x934D |
| ALPHA_TO_COVERAGE_DITHER_ENABLE_NV 0x934E |
| ALPHA_TO_COVERAGE_DITHER_DISABLE_NV 0x934F |
| |
| Accepted by the <param> of GetIntegerv(): |
| ALPHA_TO_COVERAGE_DITHER_MODE_NV 0x92BF |
| |
| Modification to Chapter 17.3.3 of the OpenGL 4.4 (Core Profile) Specification |
| (Multisample Fragment Operations) |
| |
| Modify the paragraph describing SAMPLE_ALPHA_TO_COVERAGE with |
| |
| ... No specific algorithm is required for converting the sample alpha values to a |
| temporary coverage value. It is intended that the number of 1s in the temporary |
| coverage be proportional to the set of alpha values for the fragment, with all 1s |
| corresponding to the maximum of all alpha values, and all 0s corresponding to |
| all alpha values being 0. The alpha values used to generate a coverage value are |
| clamped to the range [0; 1]. It is also intended that the algorithm be pseudo-random |
| in nature, to avoid image artifacts due to regular coverage sample locations. |
| |
| The function AlphaToCoverageDitherControlNV() allows to specify the kind of algorithm: |
| If the mode is ALPHA_TO_COVERAGE_DITHER_ENABLE, the algorithm is different at different |
| pixel locations. The dithering should be defined relative to window, not screen, coordinates, |
| so that rendering results are invariant with respect to window position. |
| If the mode is ALPHA_TO_COVERAGE_DITHER_ENABLE, then no dithering should be applied and the same |
| conversion should happen regardless of the pixel coordinates. |
| If the mode is ALPHA_TO_COVERAGE_DITHER_DISABLE, then the algorithm is implementation dependent. |
| |
| Addition to the Table 23.11. Multisampling: |
| ALPHA_TO_COVERAGE_DITHER_MODE | E | GetIntegerv | ALPHA_TO_COVERAGE_DITHER_DEFAULT | Control dither for alpha to coverage | 17.3.3 |
| |
| New State |
| |
| None. |
| |
| Additions to the AGL/GLX/WGL Specifications |
| |
| None. |
| |
| GLX Protocol |
| |
| None. |
| |
| Modifications to the OpenGL Shading Language Specification, Version 4.40 |
| |
| None. |
| |
| Errors |
| |
| None |
| |
| Issues |
| |
| (XX) |
| |
| Revision History |
| |
| Revision 1 |
| - Internal revisions. |