| Name |
| ARM_texture_unnormalized_coordinates |
| |
| Name Strings |
| |
| GL_ARM_texture_unnormalized_coordinates |
| |
| Contact |
| |
| Jan-Harald Fredriksen ( jan-harald.fredriksen 'at' arm.com) |
| |
| Contributors |
| |
| Jan-Harald Fredriksen, ARM |
| |
| Status |
| |
| Complete |
| |
| Version |
| |
| Last Modified Date: December 17, 2019 |
| Revision: 1 |
| |
| Number |
| |
| 324 |
| |
| Dependencies |
| |
| OpenGL ES 3.0 is required. |
| This extension is written against OpenGL ES 3.2, May 14th 2018. |
| |
| Overview |
| |
| This extension provides the option to switch to unnormalized |
| coordinates for texture lookups using a sampler parameter. |
| |
| Texture lookup in OpenGL ES is done using normalized coordinates. For |
| certain applications it is convenient to work with non-normalized |
| coordinates instead. It also beneficial to keep support for bilinear |
| filtering. |
| |
| Additional restrictions apply to textures with non-normalized |
| coordinates that affect texture completeness and the available |
| texture lookup functions. |
| |
| IP Status |
| |
| No known IP claims. |
| |
| New Procedures and Functions |
| |
| None |
| |
| New Tokens |
| |
| Accepted by the <pname> parameter of TexParameteri, TexParameterf, |
| TexParameteriv, TexParameterfv, SamplerParameteri, SamplerParameterf, |
| SamplerParameteriv, SamplerParameterfv, TexParameterIivEXT, |
| TexParameterIuivEXT, SamplerParameterIivEXT, SamplerParameterIuivEXT, |
| GetTexParameteriv, GetTexParameterfv, GetTexParameterIivEXT, |
| GetTexParameterIuivEXT, GetSamplerParameteriv, GetSamplerParameterfv, |
| GetSamplerParameterIivEXT, and GetSamplerParameterIuivEXT: |
| |
| TEXTURE_UNNORMALIZED_COORDINATES_ARM 0x8F6A |
| |
| Additions to Chapter 8 of the OpenGL ES 3.2 Specification (Textures and Samplers) |
| |
| Add a section after section 8.15 (Texture Magnification) |
| |
| 8.xx Unnormalized coordinates |
| |
| If the value of TEXTURE_UNNORMALIZED_COORDINATES_ARM is TRUE, then the range |
| of the coordinates used to lookup the texture value is in the range of zero |
| to the texture dimensions for x, y and z, rather than in the range of zero |
| to one. |
| |
| When the value of TEXTURE_UNNORMALIZED_COORDINATES_ARM is TRUE, |
| equation 8.9 is not used. Instead, let |
| u(x; y) = s(x; y) |
| v(x; y) = t(x; y) |
| w(x; y) = r(x; y) |
| |
| When the value of TEXTURE_UNNORMALIZED_COORDINATES_ARM is TRUE, results of |
| a texture lookup are undefined if any of the following conditions is true: |
| - the texture access is performed with a lookup functions that supports |
| texel offsets |
| - the texture access is performed with a lookup functions with projection |
| |
| |
| Add to 8.17 Texture Completeness |
| |
| Add to the conditions for texture completeness below "Using the preceding |
| definitions, a texture is complete unless any of the following conditions |
| hold true:": |
| |
| * The value of TEXTURE_UNNORMALIZED_COORDINATES_ARM is TRUE, and any of |
| ** the texture is not a two-dimensional texture |
| ** the minification filter is not NEAREST |
| ** the magnification is not NEAREST |
| ** the value of TEXTURE_BASE_LEVEL is not 0 |
| ** the value of TEXTURE_WRAP_S and TEXTURE_WRAP_T is not CLAMP_TO_EDGE nor CLAMP_TO_BORDER |
| ** the value of TEXTURE_COMPARE_MODE is not NONE |
| |
| Errors |
| |
| None. |
| |
| New State |
| |
| Modify Table 21.12: Textures (state per sampler object) |
| |
| Add the following parameter: |
| |
| Get Value Type Get Command Value Description Sec. |
| ------------------------------------- ----- ------------------- ------- ------------------- ---- |
| TEXTURE_UNNORMALIZED_COORDINATES_ARM B GetSamplerParameter FALSE unnormalized coords 8.xx |
| |
| New Implementation Dependent State |
| |
| None |
| |
| Issues |
| |
| None |
| |
| Revision History |
| |
| Rev. Date Author Changes |
| ---- ---------- -------- ----------------------------------------- |
| 1 2019-12-17 jhf initial version |