47 lines
1.2 KiB
C#
47 lines
1.2 KiB
C#
// MonoGame - Copyright (C) The MonoGame Team
|
|
// This file is subject to the terms and conditions defined in
|
|
// file 'LICENSE.txt', which is part of this source code package.
|
|
|
|
using MonoGame.OpenGL;
|
|
|
|
namespace Microsoft.Xna.Framework.Graphics
|
|
{
|
|
public abstract partial class Texture
|
|
{
|
|
internal int glTexture = -1;
|
|
internal TextureTarget glTarget;
|
|
internal TextureUnit glTextureUnit = TextureUnit.Texture0;
|
|
internal PixelInternalFormat glInternalFormat;
|
|
internal PixelFormat glFormat;
|
|
internal PixelType glType;
|
|
internal SamplerState glLastSamplerState;
|
|
|
|
private void PlatformGraphicsDeviceResetting()
|
|
{
|
|
DeleteGLTexture();
|
|
glLastSamplerState = null;
|
|
}
|
|
|
|
protected override void Dispose(bool disposing)
|
|
{
|
|
if (!IsDisposed)
|
|
{
|
|
DeleteGLTexture();
|
|
glLastSamplerState = null;
|
|
}
|
|
|
|
base.Dispose(disposing);
|
|
}
|
|
|
|
private void DeleteGLTexture()
|
|
{
|
|
if (glTexture > 0)
|
|
{
|
|
GraphicsDevice.DisposeTexture(glTexture);
|
|
}
|
|
glTexture = -1;
|
|
}
|
|
}
|
|
}
|
|
|