/// <summary> /// Use integer texture coordinate P to lookup a single texel from sampler. /// The level-ofdetail lod is as described in sections 2.11.8 “Shader Execution” /// under Texel Fetches and 3.8 “Texturing” of the OpenGL GraphicsSystem Specification. /// </summary> protected static vec4 texelFetch(sampler2DRect sampler, ivec2 P) { throw _invalidAccess; }
protected internal static ivec2 TextureSize(sampler2DRect sampler) { throw _invalidAccess; }
/// <summary>Use the texture coordinate P to do a texture lookup in the texture currently bound to sampler.</summary> protected internal static vec4 Texture(sampler2DRect sampler, vec2 P) { throw _invalidAccess; }
public static vec4 texture(Location location, sampler2DRect sampler, vec2 P) { return(texturef(location, sampler.i, P.x, P.y, 0, 0, GetPName.TextureBindingRectangle)); }
protected extern vec4 texelFetch(sampler2DRect sampler, ivec2 p, int lod);
protected static ivec2 textureSize(sampler2DRect sampler) { throw _invalidAccess; }
/// <summary> Do a texture lookup as in texture but with explicit gradients. /// The partial derivatives of P are with respect to window x and window y. /// ∂s/∂x = ∂P.s/∂x; ∂s/∂y = ∂P.s/∂y; ∂t/∂x = ∂P.t/∂x; ∂t/∂y = ∂P.t/∂y; ∂r/∂x = 0; ∂r/∂y = 0;</summary> protected static vec4 textureGrad(sampler2DRect sampler, vec2 P, vec2 dPdx, vec2 dPdy) { throw _invalidAccess; }
protected extern vec4 texture(sampler2DRect sampler, vec2 p);
protected extern vec4 textureProj(sampler2DRect sampler, vec4 p);
protected extern vec4 textureProGrad(sampler2DRect sampler, vec4 p, vec2 dPdx, vec2 dPdy);
protected extern vec4 textureProjGradOffset(sampler2DRect sampler, vec4 p, vec2 dPdx, vec2 dPdy, ivec2 offset);
protected extern vec4 textureProjOffset(sampler2DRect sampler, vec4 p, ivec2 offset, float bias = 0);
protected extern ivec2 textureSize(sampler2DRect sampler);
protected extern vec4 texelFetchOffset(sampler2DRect sampler, ivec2 p, int lod, ivec2 offset);
/// <summary> Fetch a single texel as in texelFetch offset by offset as described in textureOffset. </summary> protected static vec4 texelFetchOffset(sampler2DRect sampler, ivec2 P, ivec2 offset) { throw _invalidAccess; }
/// <summary> /// Use integer texture coordinate P to lookup a single texel from sampler. /// The level-ofdetail lod is as described in sections 2.11.8 “Shader Execution” /// under Texel Fetches and 3.8 “Texturing” of the OpenGL GraphicsSystem Specification. /// </summary> protected internal static vec4 TexelFetch(sampler2DRect sampler, ivec2 P) { throw _invalidAccess; }
/// <summary> Do a projective texture lookup as described in textureProj offset by offset as described in textureOffset. </summary> protected static vec4 textureProjOffset(sampler2DRect sampler, vec4 P, ivec2 offset) { throw _invalidAccess; }
/// <summary>Do a texture lookup both projectively, as described in TextureProj, and with explicit gradient as /// described in TextureGrad. The partial derivatives dPdx and dPdy are assumed to be already projected.</summary> protected internal static vec4 TextureProjGrad(sampler2DRect sampler, vec3 P, vec2 dPdx, vec2 dPdy) { throw _invalidAccess; }
/// <summary>Use the texture coordinate P to do a texture lookup in the texture currently bound to sampler.</summary> protected static vec4 texture(sampler2DRect sampler, vec2 P) { throw _invalidAccess; }
/// <summary>Do a texture lookup projectively and with explicit gradient as described in TextureProjGrad, /// as well as with offset, as described in TextureOffset.</summary> protected internal static vec4 TextureProjGradOffset(sampler2DRect sampler, vec4 P, vec2 dPdx, vec2 dPdy, ivec2 offset) { throw _invalidAccess; }
/// <summary>Do a texture lookup with both explicit gradient and offset, as described in textureGrad and textureOffset. </summary> protected static vec4 textureGradOffset(sampler2DRect sampler, vec2 P, vec2 dPdx, vec2 dPdy, ivec2 offset) { throw _invalidAccess; }
/// <summary> Do a projective texture lookup as described in TextureProj offset by offset as described in TextureOffset. </summary> protected internal static vec4 TextureProjOffset(sampler2DRect sampler, vec3 P, ivec2 offset) { throw _invalidAccess; }
public static vec4 texelFetch(Location location, sampler2DRect sampler, ivec2 P) { return(Shader.TraceFunction(location, new vec4(texelFetch <float>(location, sampler.i, P.x, P.y, 0, 0, GetPName.TextureBindingRectangle)), "texelFetch")); }
protected extern vec4 textureOffset(sampler2DRect sampler, vec3 p, ivec2 offset);