ngfx::VKTexture

Inherits from ngfx::Texture

Public Functions

Name
void create(VKGraphicsContext * ctx, void * data, uint32_t size, VkExtent3D extent, uint32_t arrayLayers, VkFormat format, VkImageUsageFlags imageUsageFlags, VkImageViewType imageViewType, bool genMipmaps, VKSamplerCreateInfo * pSamplerCreateInfo, uint32_t numSamples =1)
virtual ~VKTexture()
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
VKImageView * getImageView(VkImageViewType imageViewType, uint32_t mipLevels, uint32_t arrayLayers, uint32_t baseMipLevel =0, uint32_t baseArrayLayer =0)

Public Attributes

Name
VkFormat vkFormat
VKImage vkImage
std::vector< std::unique_ptr< VKImageView > > vkImageViewCache
VKImageView * vkDefaultImageView
VkDescriptorSet samplerDescriptorSet
VkDescriptorSet storageImageDescriptorSet
VkSampler sampler
VkImageAspectFlags aspectFlags
bool depthTexture
bool genMipmaps
std::unique_ptr< VKSamplerCreateInfo > samplerCreateInfo

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(
    VKGraphicsContext * ctx,
    void * data,
    uint32_t size,
    VkExtent3D extent,
    uint32_t arrayLayers,
    VkFormat format,
    VkImageUsageFlags imageUsageFlags,
    VkImageViewType imageViewType,
    bool genMipmaps,
    VKSamplerCreateInfo * pSamplerCreateInfo,
    uint32_t numSamples =1
)

function ~VKTexture

virtual ~VKTexture()

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

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

Reimplements: ngfx::Texture::changeLayout

function generateMipmaps

virtual void generateMipmaps(
    CommandBuffer * commandBuffer
) override

Reimplements: ngfx::Texture::generateMipmaps

function getImageView

VKImageView * getImageView(
    VkImageViewType imageViewType,
    uint32_t mipLevels,
    uint32_t arrayLayers,
    uint32_t baseMipLevel =0,
    uint32_t baseArrayLayer =0
)

Public Attributes Documentation

variable vkFormat

VkFormat vkFormat;

variable vkImage

VKImage vkImage;

variable vkImageViewCache

std::vector< std::unique_ptr< VKImageView > > vkImageViewCache;

variable vkDefaultImageView

VKImageView * vkDefaultImageView = nullptr;

variable samplerDescriptorSet

VkDescriptorSet samplerDescriptorSet = 0;

variable storageImageDescriptorSet

VkDescriptorSet storageImageDescriptorSet = 0;

variable sampler

VkSampler sampler = 0;

variable aspectFlags

VkImageAspectFlags aspectFlags;

variable depthTexture

bool depthTexture = false;

variable genMipmaps

bool genMipmaps = false;

variable samplerCreateInfo

std::unique_ptr< VKSamplerCreateInfo > samplerCreateInfo;

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