ngfx::MTLTexture

Inherits from ngfx::Texture

Public Functions

Name
void create(MTLGraphicsContext * ctx, void * data, ::MTLPixelFormat format, uint32_t size, uint32_t w, uint32_t h, uint32_t d, uint32_t arrayLayers, MTLTextureUsage textureUsage, ::MTLTextureType textureType, bool genMipmaps, MTLSamplerDescriptor * samplerDescriptor, uint32_t numSamples)
virtual ~MTLTexture()
virtual void upload(void * data, uint32_t size, uint32_t x =0, uint32_t y =0, uint32_t z =0, int32_t w =-1, int32_t h =-1, int32_t d =-1, int32_t arrayLayers =-1) override
virtual void download(void * data, uint32_t size, uint32_t x =0, uint32_t y =0, uint32_t z =0, int32_t w =-1, int32_t h =-1, int32_t d =-1, int32_t arrayLayers =-1) override
virtual void changeLayout(CommandBuffer * commandBuffer, ImageLayout imageLayout) override
virtual void generateMipmaps(CommandBuffer * commandBuffer) override

Public Attributes

Name
MTLGraphicsContext * ctx
id< MTLTexture > v
id< MTLSamplerState > mtlSamplerState
bool depthTexture
bool stencilTexture

Additional inherited members

Public Functions inherited from ngfx::Texture

Name
virtual ~Texture()

Public Attributes inherited from ngfx::Texture

Name
PixelFormat format
uint32_t w
uint32_t h
uint32_t d
uint32_t arrayLayers
uint32_t mipLevels
uint32_t numSamples
ImageUsageFlags imageUsageFlags
TextureType textureType

Public Functions Documentation

function create

void create(
    MTLGraphicsContext * ctx,
    void * data,
    ::MTLPixelFormat format,
    uint32_t size,
    uint32_t w,
    uint32_t h,
    uint32_t d,
    uint32_t arrayLayers,
    MTLTextureUsage textureUsage,
    ::MTLTextureType textureType,
    bool genMipmaps,
    MTLSamplerDescriptor * samplerDescriptor,
    uint32_t numSamples
)

function ~MTLTexture

virtual ~MTLTexture()

function upload

virtual void upload(
    void * data,
    uint32_t size,
    uint32_t x =0,
    uint32_t y =0,
    uint32_t z =0,
    int32_t w =-1,
    int32_t h =-1,
    int32_t d =-1,
    int32_t arrayLayers =-1
) override

Reimplements: ngfx::Texture::upload

function download

virtual void download(
    void * data,
    uint32_t size,
    uint32_t x =0,
    uint32_t y =0,
    uint32_t z =0,
    int32_t w =-1,
    int32_t h =-1,
    int32_t d =-1,
    int32_t arrayLayers =-1
) override

Reimplements: ngfx::Texture::download

function changeLayout

inline virtual void changeLayout(
    CommandBuffer * commandBuffer,
    ImageLayout imageLayout
) override

Reimplements: ngfx::Texture::changeLayout

function generateMipmaps

virtual void generateMipmaps(
    CommandBuffer * commandBuffer
) override

Reimplements: ngfx::Texture::generateMipmaps

Public Attributes Documentation

variable ctx

MTLGraphicsContext * ctx = nullptr;

variable v

id< MTLTexture > v;

variable mtlSamplerState

id< MTLSamplerState > mtlSamplerState;

variable depthTexture

bool depthTexture = false;

variable stencilTexture

bool stencilTexture = false;

Updated on 3 April 2021 at 20:21:51 PDT