1#version 130
2
3/* texture - bias variants */
4 vec4 texture( sampler1D sampler, float P, float bias);
5ivec4 texture(isampler1D sampler, float P, float bias);
6uvec4 texture(usampler1D sampler, float P, float bias);
7
8 vec4 texture( sampler2D sampler, vec2 P, float bias);
9ivec4 texture(isampler2D sampler, vec2 P, float bias);
10uvec4 texture(usampler2D sampler, vec2 P, float bias);
11
12 vec4 texture( sampler3D sampler, vec3 P, float bias);
13ivec4 texture(isampler3D sampler, vec3 P, float bias);
14uvec4 texture(usampler3D sampler, vec3 P, float bias);
15
16 vec4 texture( samplerCube sampler, vec3 P, float bias);
17ivec4 texture(isamplerCube sampler, vec3 P, float bias);
18uvec4 texture(usamplerCube sampler, vec3 P, float bias);
19
20float texture(sampler1DShadow   sampler, vec3 P, float bias);
21float texture(sampler2DShadow   sampler, vec3 P, float bias);
22float texture(samplerCubeShadow sampler, vec4 P, float bias);
23
24 vec4 texture( sampler1DArray sampler, vec2 P, float bias);
25ivec4 texture(isampler1DArray sampler, vec2 P, float bias);
26uvec4 texture(usampler1DArray sampler, vec2 P, float bias);
27
28 vec4 texture( sampler2DArray sampler, vec3 P, float bias);
29ivec4 texture(isampler2DArray sampler, vec3 P, float bias);
30uvec4 texture(usampler2DArray sampler, vec3 P, float bias);
31
32float texture(sampler1DArrayShadow sampler, vec3 P, float bias);
33
34/* textureProj - bias variants */
35 vec4 textureProj( sampler1D sampler, vec2 P, float bias);
36ivec4 textureProj(isampler1D sampler, vec2 P, float bias);
37uvec4 textureProj(usampler1D sampler, vec2 P, float bias);
38 vec4 textureProj( sampler1D sampler, vec4 P, float bias);
39ivec4 textureProj(isampler1D sampler, vec4 P, float bias);
40uvec4 textureProj(usampler1D sampler, vec4 P, float bias);
41
42 vec4 textureProj( sampler2D sampler, vec3 P, float bias);
43ivec4 textureProj(isampler2D sampler, vec3 P, float bias);
44uvec4 textureProj(usampler2D sampler, vec3 P, float bias);
45 vec4 textureProj( sampler2D sampler, vec4 P, float bias);
46ivec4 textureProj(isampler2D sampler, vec4 P, float bias);
47uvec4 textureProj(usampler2D sampler, vec4 P, float bias);
48
49 vec4 textureProj( sampler3D sampler, vec4 P, float bias);
50ivec4 textureProj(isampler3D sampler, vec4 P, float bias);
51uvec4 textureProj(usampler3D sampler, vec4 P, float bias);
52
53float textureProj(sampler1DShadow sampler, vec4 P, float bias);
54float textureProj(sampler2DShadow sampler, vec4 P, float bias);
55
56/* textureOffset - bias variants */
57 vec4 textureOffset( sampler1D sampler, float P, int offset, float bias);
58ivec4 textureOffset(isampler1D sampler, float P, int offset, float bias);
59uvec4 textureOffset(usampler1D sampler, float P, int offset, float bias);
60
61 vec4 textureOffset( sampler2D sampler, vec2 P, ivec2 offset, float bias);
62ivec4 textureOffset(isampler2D sampler, vec2 P, ivec2 offset, float bias);
63uvec4 textureOffset(usampler2D sampler, vec2 P, ivec2 offset, float bias);
64
65 vec4 textureOffset( sampler3D sampler, vec3 P, ivec3 offset, float bias);
66ivec4 textureOffset(isampler3D sampler, vec3 P, ivec3 offset, float bias);
67uvec4 textureOffset(usampler3D sampler, vec3 P, ivec3 offset, float bias);
68
69float textureOffset(sampler1DShadow sampler, vec3 P, int offset, float bias);
70float textureOffset(sampler2DShadow sampler, vec3 P, ivec2 offset, float bias);
71
72 vec4 textureOffset( sampler1DArray sampler, vec2 P, int offset, float bias);
73ivec4 textureOffset(isampler1DArray sampler, vec2 P, int offset, float bias);
74uvec4 textureOffset(usampler1DArray sampler, vec2 P, int offset, float bias);
75
76 vec4 textureOffset( sampler2DArray sampler, vec3 P, ivec2 offset, float bias);
77ivec4 textureOffset(isampler2DArray sampler, vec3 P, ivec2 offset, float bias);
78uvec4 textureOffset(usampler2DArray sampler, vec3 P, ivec2 offset, float bias);
79
80float textureOffset(sampler1DArrayShadow samp, vec3 P, int offset, float bias);
81
82/* textureProjOffsetOffset - bias variants */
83 vec4 textureProjOffset( sampler1D sampler, vec2 P, int offset, float bias);
84ivec4 textureProjOffset(isampler1D sampler, vec2 P, int offset, float bias);
85uvec4 textureProjOffset(usampler1D sampler, vec2 P, int offset, float bias);
86 vec4 textureProjOffset( sampler1D sampler, vec4 P, int offset, float bias);
87ivec4 textureProjOffset(isampler1D sampler, vec4 P, int offset, float bias);
88uvec4 textureProjOffset(usampler1D sampler, vec4 P, int offset, float bias);
89
90 vec4 textureProjOffset( sampler2D sampler, vec3 P, ivec2 offset, float bias);
91ivec4 textureProjOffset(isampler2D sampler, vec3 P, ivec2 offset, float bias);
92uvec4 textureProjOffset(usampler2D sampler, vec3 P, ivec2 offset, float bias);
93 vec4 textureProjOffset( sampler2D sampler, vec4 P, ivec2 offset, float bias);
94ivec4 textureProjOffset(isampler2D sampler, vec4 P, ivec2 offset, float bias);
95uvec4 textureProjOffset(usampler2D sampler, vec4 P, ivec2 offset, float bias);
96
97 vec4 textureProjOffset( sampler3D sampler, vec4 P, ivec3 offset, float bias);
98ivec4 textureProjOffset(isampler3D sampler, vec4 P, ivec3 offset, float bias);
99uvec4 textureProjOffset(usampler3D sampler, vec4 P, ivec3 offset, float bias);
100
101float textureProjOffset(sampler1DShadow s, vec4 P, int offset, float bias);
102float textureProjOffset(sampler2DShadow s, vec4 P, ivec2 offset, float bias);
103
104/*
105 * The following texture functions are deprecated:
106 */
107vec4 texture1D       (sampler1D sampler, float coord, float bias);
108vec4 texture1DProj   (sampler1D sampler, vec2  coord, float bias);
109vec4 texture1DProj   (sampler1D sampler, vec4  coord, float bias);
110
111vec4 texture2D       (sampler2D sampler, vec2 coord, float bias);
112vec4 texture2DProj   (sampler2D sampler, vec3 coord, float bias);
113vec4 texture2DProj   (sampler2D sampler, vec4 coord, float bias);
114
115vec4 texture3D       (sampler3D sampler, vec3 coord, float bias);
116vec4 texture3DProj   (sampler3D sampler, vec4 coord, float bias);
117
118vec4 textureCube     (samplerCube sampler, vec3 coord, float bias);
119
120vec4 shadow1D       (sampler1DShadow sampler, vec3 coord, float bias);
121vec4 shadow2D       (sampler2DShadow sampler, vec3 coord, float bias);
122vec4 shadow1DProj   (sampler1DShadow sampler, vec4 coord, float bias);
123vec4 shadow2DProj   (sampler2DShadow sampler, vec4 coord, float bias);
124
125/*
126 * 8.8 - Fragment Processing Functions
127 */
128float dFdx(float p);
129vec2  dFdx(vec2  p);
130vec3  dFdx(vec3  p);
131vec4  dFdx(vec4  p);
132
133float dFdy(float p);
134vec2  dFdy(vec2  p);
135vec3  dFdy(vec3  p);
136vec4  dFdy(vec4  p);
137
138float fwidth(float p);
139vec2  fwidth(vec2  p);
140vec3  fwidth(vec3  p);
141vec4  fwidth(vec4  p);
142