public static TextureMinFilter To(TextureMinificationFilter filter) { switch (filter) { case TextureMinificationFilter.Nearest: return(TextureMinFilter.Nearest); case TextureMinificationFilter.Linear: return(TextureMinFilter.Linear); case TextureMinificationFilter.NearestMipmapNearest: return(TextureMinFilter.NearestMipmapNearest); case TextureMinificationFilter.LinearMipmapNearest: return(TextureMinFilter.LinearMipmapNearest); case TextureMinificationFilter.NearestMipmapLinear: return(TextureMinFilter.NearestMipmapLinear); case TextureMinificationFilter.LinearMipmapLinear: return(TextureMinFilter.LinearMipmapLinear); } throw new ArgumentException("filter"); }
public static TextureSampler CreateTexture2DSampler( TextureMinificationFilter minificationFilter, TextureMagnificationFilter magnificationFilter, TextureWrap wrapS, TextureWrap wrapT) { return(new TextureSamplerGL3x( minificationFilter, magnificationFilter, wrapS, wrapT, 1)); }
protected TextureSampler( TextureMinificationFilter minificationFilter, TextureMagnificationFilter magnificationFilter, TextureWrap wrapS, TextureWrap wrapT, float maximumAnistropy) { _minificationFilter = minificationFilter; _magnificationFilter = magnificationFilter; _wrapS = wrapS; _wrapT = wrapT; _maximumAnistropy = maximumAnistropy; }
public static TextureSampler CreateTexture2DSampler( TextureMinificationFilter minificationFilter, TextureMagnificationFilter magnificationFilter, TextureWrap wrapS, TextureWrap wrapT, float maximumAnistropy) { return(new TextureSamplerGL3x( minificationFilter, magnificationFilter, wrapS, wrapT, maximumAnistropy)); }
public TextureSamplerGL3x( TextureMinificationFilter minificationFilter, TextureMagnificationFilter magnificationFilter, TextureWrap wrapS, TextureWrap wrapT, float maximumAnistropy) : base( minificationFilter, magnificationFilter, wrapS, wrapT, maximumAnistropy) { _name = new SamplerNameGL3x(); int glMinificationFilter = (int)TypeConverterGL3x.To(minificationFilter); int glMagnificationFilter = (int)TypeConverterGL3x.To(magnificationFilter); int glWrapS = (int)TypeConverterGL3x.To(wrapS); int glWrapT = (int)TypeConverterGL3x.To(wrapT); GL.SamplerParameterI(_name.Value, (ArbSamplerObjects)All.TextureMinFilter, ref glMinificationFilter); GL.SamplerParameterI(_name.Value, (ArbSamplerObjects)All.TextureMagFilter, ref glMagnificationFilter); GL.SamplerParameterI(_name.Value, (ArbSamplerObjects)All.TextureWrapS, ref glWrapS); GL.SamplerParameterI(_name.Value, (ArbSamplerObjects)All.TextureWrapT, ref glWrapT); if (Device.Extensions.AnisotropicFiltering) { GL.SamplerParameter(_name.Value, (ArbSamplerObjects)All.TextureMaxAnisotropyExt, maximumAnistropy); } else { if (maximumAnistropy != 1) { throw new InsufficientVideoCardException("Anisotropic filtering is not supported. The extension GL_EXT_texture_filter_anisotropic was not found."); } } }
public static TextureMinFilter To(TextureMinificationFilter filter) { switch (filter) { case TextureMinificationFilter.Nearest: return TextureMinFilter.Nearest; case TextureMinificationFilter.Linear: return TextureMinFilter.Linear; case TextureMinificationFilter.NearestMipmapNearest: return TextureMinFilter.NearestMipmapNearest; case TextureMinificationFilter.LinearMipmapNearest: return TextureMinFilter.LinearMipmapNearest; case TextureMinificationFilter.NearestMipmapLinear: return TextureMinFilter.NearestMipmapLinear; case TextureMinificationFilter.LinearMipmapLinear: return TextureMinFilter.LinearMipmapLinear; } throw new ArgumentException("filter"); }