• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1Name
2    ARM_texture_unnormalized_coordinates
3
4Name Strings
5
6    GL_ARM_texture_unnormalized_coordinates
7
8Contact
9
10    Jan-Harald Fredriksen ( jan-harald.fredriksen 'at' arm.com)
11
12Contributors
13
14    Jan-Harald Fredriksen, ARM
15
16Status
17
18    Complete
19
20Version
21
22    Last Modified Date:         December 17, 2019
23    Revision:                   1
24
25Number
26
27    324
28
29Dependencies
30
31    OpenGL ES 3.0 is required.
32    This extension is written against OpenGL ES 3.2, May 14th 2018.
33
34Overview
35
36    This extension provides the option to switch to unnormalized
37    coordinates for texture lookups using a sampler parameter.
38
39    Texture lookup in OpenGL ES is done using normalized coordinates. For
40    certain applications it is convenient to work with non-normalized
41    coordinates instead. It also beneficial to keep support for bilinear
42    filtering.
43
44    Additional restrictions apply to textures with non-normalized
45    coordinates that affect texture completeness and the available
46    texture lookup functions.
47
48IP Status
49
50    No known IP claims.
51
52New Procedures and Functions
53
54    None
55
56New Tokens
57
58    Accepted by the <pname> parameter of TexParameteri, TexParameterf,
59    TexParameteriv, TexParameterfv, SamplerParameteri, SamplerParameterf,
60    SamplerParameteriv, SamplerParameterfv, TexParameterIivEXT,
61    TexParameterIuivEXT, SamplerParameterIivEXT, SamplerParameterIuivEXT,
62    GetTexParameteriv, GetTexParameterfv, GetTexParameterIivEXT,
63    GetTexParameterIuivEXT, GetSamplerParameteriv, GetSamplerParameterfv,
64    GetSamplerParameterIivEXT, and GetSamplerParameterIuivEXT:
65
66        TEXTURE_UNNORMALIZED_COORDINATES_ARM          0x8F6A
67
68Additions to Chapter 8 of the OpenGL ES 3.2 Specification (Textures and Samplers)
69
70   Add a section after section 8.15 (Texture Magnification)
71
72   8.xx Unnormalized coordinates
73
74   If the value of TEXTURE_UNNORMALIZED_COORDINATES_ARM is TRUE, then the range
75   of the coordinates used to lookup the texture value is in the range of zero
76   to the texture dimensions for x, y and z, rather than in the range of zero
77   to one.
78
79   When the value of TEXTURE_UNNORMALIZED_COORDINATES_ARM is TRUE,
80   equation 8.9 is not used. Instead, let
81     u(x; y) = s(x; y)
82     v(x; y) = t(x; y)
83     w(x; y) = r(x; y)
84
85   When the value of TEXTURE_UNNORMALIZED_COORDINATES_ARM is TRUE, results of
86   a texture lookup are undefined if any of the following conditions is true:
87   - the texture access is performed with a lookup functions that supports
88     texel offsets
89   - the texture access is performed with a lookup functions with projection
90
91
92   Add to 8.17 Texture Completeness
93
94   Add to the conditions for texture completeness below "Using the preceding
95   definitions, a texture is complete unless any of the following conditions
96   hold true:":
97
98   * The value of TEXTURE_UNNORMALIZED_COORDINATES_ARM is TRUE, and any of
99   ** the texture is not a two-dimensional texture
100   ** the minification filter is not NEAREST
101   ** the magnification is not NEAREST
102   ** the value of TEXTURE_BASE_LEVEL is not 0
103   ** the value of TEXTURE_WRAP_S and TEXTURE_WRAP_T is not CLAMP_TO_EDGE nor CLAMP_TO_BORDER
104   ** the value of TEXTURE_COMPARE_MODE is not NONE
105
106Errors
107
108    None.
109
110New State
111
112   Modify Table 21.12: Textures (state per sampler object)
113
114   Add the following parameter:
115
116    Get Value                             Type  Get Command         Value    Description         Sec.
117    ------------------------------------- ----- ------------------- -------  ------------------- ----
118    TEXTURE_UNNORMALIZED_COORDINATES_ARM  B     GetSamplerParameter FALSE    unnormalized coords 8.xx
119
120New Implementation Dependent State
121
122    None
123
124Issues
125
126    None
127
128Revision History
129
130    Rev.    Date      Author    Changes
131    ----  ----------  --------  -----------------------------------------
132    1     2019-12-17  jhf       initial version
133