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