protected extern uivec4 texelFetch(usampler3D sampler, ivec3 p, int lod);
/// <summary> /// Do a texture lookup as in texture but with explicit LOD; lod specifies λbase and sets the partial derivatives as follows. /// (See section 3.8.11 “Texture Minification” and equation 3.17 in the OpenGL Graphics SystemSpecification.) /// ∂u/∂x = 0; ∂v/∂x = 0; ∂w/∂x = 0; ∂u/∂y = 0; ∂v/∂y = 0; ∂w/∂y = 0; /// </summary> protected static uvec4 textureLod(usampler3D sampler, vec3 P, float lod) { throw _invalidAccess; }
public static uvec4 texture(Location location, usampler3D sampler, vec3 P, float bias = 0) { return(textureu(location, sampler.i, P.x, P.y, P.z, 0, GetPName.TextureBinding3D)); }
protected static ivec3 textureSize(usampler3D sampler, int lod) { 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 = ∂P.p/∂x; ∂r/∂y = ∂P.p/∂y;</summary> protected static uvec4 textureGrad(usampler3D sampler, vec3 P, vec3 dPdx, vec3 dPdy) { 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 static uvec4 texelFetch(usampler3D sampler, ivec3 P, int lod) { throw _invalidAccess; }
/// <summary> Do a projective texture lookup as described in textureProj offset by offset as described in textureOffset. </summary> protected static uvec4 textureProjOffset(usampler3D sampler, vec4 P, ivec3 offset, float bias) { throw _invalidAccess; }
protected extern uivec4 textureProGrad(usampler3D sampler, vec4 p, vec3 dPdx, vec3 dPdy);
protected extern uivec4 textureProjGradOffset(usampler3D sampler, vec4 p, vec3 dPdx, vec3 dPdy, ivec3 offset);
protected extern uivec4 textureProjLod(usampler3D sampler, vec4 p, float lod);
protected extern uivec4 textureProjLodOffset(usampler3D sampler, vec4 p, float lod, ivec3 offset);
protected extern uivec4 textureLodOffset(usampler3D sampler, vec3 p, int lod, ivec3 offset);
protected extern uivec4 textureProjOffset(usampler3D sampler, vec4 p, ivec3 offset, float bias = 0);
protected extern uivec4 texelFetchOffset(usampler3D sampler, ivec3 p, int lod, ivec3 offset);
protected internal static ivec3 TextureSize(usampler3D sampler, int lod) { throw _invalidAccess; }
protected extern uivec4 textureProj(usampler3D sampler, vec4 p, float bias = 0);
/// <summary>Use the texture coordinate P to do a texture lookup in the texture currently bound to sampler.</summary> protected internal static uvec4 Texture(usampler3D sampler, vec3 P, float bias) { throw _invalidAccess; }
/// <summary>Do a texture lookup with projection. The texture coordinates consumed from P, /// not including the last component of P, are divided by the last component of P. /// After these values are computed,texture lookup proceeds as in texture.</summary> protected internal static uvec4 TextureProj(usampler3D sampler, vec4 P) { throw _invalidAccess; }
/// <summary>Do a texture lookup with projection. The texture coordinates consumed from P, /// not including the last component of P, are divided by the last component of P. /// After these values are computed,texture lookup proceeds as in texture.</summary> protected static uvec4 textureProj(usampler3D sampler, vec4 P) { 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 uvec4 TextureProjGrad(usampler3D sampler, vec4 P, vec3 dPdx, vec3 dPdy) { throw _invalidAccess; }
/// <summary> /// Returns the mipmap array(s) that would be accessed in the x component of the return value. /// Returns the computed level of detail relative to the base level in the y component of the return value. /// If called on an incomplete texture, the results are undefined. /// </summary> protected static vec2 textureQueryLod(usampler3D sampler, vec3 P) { throw _invalidAccess; }
/// <summary> Fetch a single texel as in TexelFetch offset by offset as described in TextureOffset. </summary> protected internal static uvec4 TexelFetchOffset(usampler3D sampler, ivec3 P, int lod, ivec3 offset) { throw _invalidAccess; }
/// <summary>Use the texture coordinate P to do a texture lookup in the texture currently bound to sampler.</summary> protected static uvec4 texture(usampler3D sampler, vec3 P, float bias) { throw _invalidAccess; }
/// <summary> Do an offset texture lookup with explicit LOD. See TextureLod and TextureOffset.</summary> protected internal static uvec4 TextureProjLod(usampler3D sampler, vec4 P, float lod) { throw _invalidAccess; }
/// <summary>Do a texture lookup with both explicit gradient and offset, as described in textureGrad and textureOffset. </summary> protected static uvec4 textureGradOffset(usampler3D sampler, vec3 P, vec3 dPdx, vec3 dPdy, ivec3 offset) { throw _invalidAccess; }
/// <summary> Do a projective texture lookup as described in TextureProj offset by offset as described in TextureOffset. </summary> protected internal static uvec4 TextureProjOffset(usampler3D sampler, vec4 P, ivec3 offset) { throw _invalidAccess; }
/// <summary> Do an offset texture lookup with explicit LOD. See textureLod and textureOffset.</summary> protected static uvec4 textureLodOffset(usampler3D sampler, vec3 P, float lod, ivec3 offset) { throw _invalidAccess; }
/// <summary> /// Returns the mipmap array(s) that would be accessed in the x component of the return value. /// Returns the computed level of detail relative to the base level in the y component of the return value. /// If called on an incomplete texture, the results are undefined. /// </summary> protected internal static vec2 TextureQueryLod(usampler3D sampler, vec3 P) { throw _invalidAccess; }
public static uvec4 texelFetch(Location location, usampler3D sampler, ivec3 P, int lod) { return(Shader.TraceFunction(location, new uvec4(texelFetch <uint>(location, sampler.i, P.x, P.y, P.z, lod, GetPName.TextureBinding3D)), "texelFetch")); }
protected extern ivec3 textureSize(usampler3D sampler, int lod);