using System;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
namespace BansheeEngine
{
/** @addtogroup Rendering
* @{
*/
/// Flags that describe how is a texture used.
public enum TextureUsage
{
/// A regular texture that is not often or ever updated from the CPU.
Default = 1,
/// A regular texture that is often updated by the CPU.
Dynamic = 2,
/// Texture that can be rendered to by the GPU.
Render = 512,
/// Texture used as a depth/stencil buffer by the GPU.
DepthStencil = 1024,
/// Texture that allows load/store operations from the GPU program.
LoadStore = 2048,
///
/// All mesh data will also be cached in CPU memory, making it available for fast read access from the CPU.
///
CPUCached = 4096,
/// Allows the CPU to directly read the texture data buffers from the GPU.
CPUReadable = 8192
}
/** @} */
}