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 } /** @} */ }