#region usings using OpenTK.Graphics.OpenGL4; #endregion namespace SM.OGL.Texture { /// /// Works as a basis for textures. /// public abstract class TextureBase : GLObject { /// protected override bool AutoCompile { get; } = true; /// public override ObjectLabelIdentifier TypeIdentifier { get; } = ObjectLabelIdentifier.Texture; public PixelInformation PixelInformation; public TextureTarget Target { get; set; } = TextureTarget.Texture2D; /// /// The texture filter. /// Default: /// public virtual TextureMinFilter Filter { get; set; } = TextureMinFilter.Linear; /// /// The wrap mode. /// Default: /// public virtual TextureWrapMode WrapMode { get; set; } = TextureWrapMode.Repeat; /// /// The Width of the texture /// public virtual int Width { get; protected set; } /// /// The height of the texture /// public virtual int Height { get; protected set; } public override void Dispose() { base.Dispose(); GL.DeleteTexture(_id); } } }