ngfx::Texture

Inherited by ngfx::D3DTexture, ngfx::MTLTexture, ngfx::VKTexture

Public Functions

Name
Texture * create(GraphicsContext * graphicsContext, Graphics * graphics, const char * filename, ImageUsageFlags imageUsageFlags =ImageUsageFlags(IMAGE_USAGE_SAMPLED_BIT
Texture * create(GraphicsContext * graphicsContext, Graphics * graphics, void * data, PixelFormat format, uint32_t size, uint32_t w, uint32_t h, uint32_t d, uint32_t arrayLayers, ImageUsageFlags imageUsageFlags =ImageUsageFlags(IMAGE_USAGE_SAMPLED_BIT
virtual ~Texture()
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) =0
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) =0
virtual void changeLayout(CommandBuffer * commandBuffer, ImageLayout imageLayout) =0
virtual void generateMipmaps(CommandBuffer * commandBuffer) =0

Public Attributes

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

static Texture * create(
    GraphicsContext * graphicsContext,
    Graphics * graphics,
    const char * filename,
    ImageUsageFlags imageUsageFlags =ImageUsageFlags(IMAGE_USAGE_SAMPLED_BIT|IMAGE_USAGE_TRANSFER_SRC_BIT|IMAGE_USAGE_TRANSFER_DST_BIT),
    TextureType textureType =TEXTURE_TYPE_2D,
    bool genMipmaps =false,
    FilterMode minFilter =FILTER_NEAREST,
    FilterMode magFilter =FILTER_NEAREST,
    FilterMode mipFilter =FILTER_NEAREST,
    uint32_t numSamples =1
)

function create

static Texture * create(
    GraphicsContext * graphicsContext,
    Graphics * graphics,
    void * data,
    PixelFormat format,
    uint32_t size,
    uint32_t w,
    uint32_t h,
    uint32_t d,
    uint32_t arrayLayers,
    ImageUsageFlags imageUsageFlags =ImageUsageFlags(IMAGE_USAGE_SAMPLED_BIT|IMAGE_USAGE_TRANSFER_SRC_BIT|IMAGE_USAGE_TRANSFER_DST_BIT),
    TextureType textureType =TEXTURE_TYPE_2D,
    bool genMipmaps =false,
    FilterMode minFilter =FILTER_NEAREST,
    FilterMode magFilter =FILTER_NEAREST,
    FilterMode mipFilter =FILTER_NEAREST,
    uint32_t numSamples =1
)

function ~Texture

inline virtual ~Texture()

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
) =0

Reimplemented by: ngfx::MTLTexture::upload, ngfx::VKTexture::upload, ngfx::D3DTexture::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
) =0

Reimplemented by: ngfx::MTLTexture::download, ngfx::VKTexture::download, ngfx::D3DTexture::download

function changeLayout

virtual void changeLayout(
    CommandBuffer * commandBuffer,
    ImageLayout imageLayout
) =0

Reimplemented by: ngfx::MTLTexture::changeLayout, ngfx::VKTexture::changeLayout, ngfx::D3DTexture::changeLayout

function generateMipmaps

virtual void generateMipmaps(
    CommandBuffer * commandBuffer
) =0

Reimplemented by: ngfx::MTLTexture::generateMipmaps, ngfx::VKTexture::generateMipmaps, ngfx::D3DTexture::generateMipmaps

Public Attributes Documentation

variable format

PixelFormat format;

variable w

uint32_t w = 0;

variable h

uint32_t h = 0;

variable d

uint32_t d = 1;

variable arrayLayers

uint32_t arrayLayers = 1;

variable mipLevels

uint32_t mipLevels = 1;

variable numSamples

uint32_t numSamples = 1;

variable imageUsageFlags

ImageUsageFlags imageUsageFlags;

variable textureType

TextureType textureType;

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