ngfx::D3DTexture

Inherits from ngfx::Texture

Public Classes

Name
struct RtvData
struct SamplerData
struct SrvData

Public Functions

Name
void create(D3DGraphicsContext * ctx, D3DGraphics * graphics, void * data, uint32_t size, uint32_t w, uint32_t h, uint32_t d, uint32_t arrayLayers, DXGI_FORMAT format, ImageUsageFlags usageFlags, TextureType textureType, bool genMipmaps, uint32_t numSamples, const D3DSamplerDesc & samplerDesc)
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
void resourceBarrier(D3DCommandList * cmdList, D3D12_RESOURCE_STATES newState, UINT subresource =D3D12_RESOURCE_BARRIER_ALL_SUBRESOURCES)
virtual void generateMipmaps(CommandBuffer * commandBuffer) override
D3DDescriptorHandle getRtvDescriptor(uint32_t level =0, uint32_t baseLayer =0, uint32_t layerCount =1)
D3DDescriptorHandle getSamplerDescriptor(D3D12_FILTER filter =D3D12_FILTER_MIN_MAG_MIP_POINT)
D3DDescriptorHandle getSrvDescriptor(uint32_t baseMipLevel, uint32_t numMipLevels)

Public Attributes

Name
ComPtr< ID3D12Resource > v
std::vector< RtvData > rtvDescriptorCache
std::vector< SamplerData > samplerDescriptorCache
D3DDescriptorHandle defaultSrvDescriptor
D3DDescriptorHandle defaultRtvDescriptor
D3DDescriptorHandle dsvDescriptor
D3DDescriptorHandle defaultSamplerDescriptor
std::vector< SrvData > srvDescriptorCache
D3D12_RESOURCE_DESC resourceDesc

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(
    D3DGraphicsContext * ctx,
    D3DGraphics * graphics,
    void * data,
    uint32_t size,
    uint32_t w,
    uint32_t h,
    uint32_t d,
    uint32_t arrayLayers,
    DXGI_FORMAT format,
    ImageUsageFlags usageFlags,
    TextureType textureType,
    bool genMipmaps,
    uint32_t numSamples,
    const D3DSamplerDesc & samplerDesc
)

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 resourceBarrier

void resourceBarrier(
    D3DCommandList * cmdList,
    D3D12_RESOURCE_STATES newState,
    UINT subresource =D3D12_RESOURCE_BARRIER_ALL_SUBRESOURCES
)

function generateMipmaps

virtual void generateMipmaps(
    CommandBuffer * commandBuffer
) override

Reimplements: ngfx::Texture::generateMipmaps

function getRtvDescriptor

D3DDescriptorHandle getRtvDescriptor(
    uint32_t level =0,
    uint32_t baseLayer =0,
    uint32_t layerCount =1
)

function getSamplerDescriptor

D3DDescriptorHandle getSamplerDescriptor(
    D3D12_FILTER filter =D3D12_FILTER_MIN_MAG_MIP_POINT
)

function getSrvDescriptor

D3DDescriptorHandle getSrvDescriptor(
    uint32_t baseMipLevel,
    uint32_t numMipLevels
)

Public Attributes Documentation

variable v

ComPtr< ID3D12Resource > v;

variable rtvDescriptorCache

std::vector< RtvData > rtvDescriptorCache;

variable samplerDescriptorCache

std::vector< SamplerData > samplerDescriptorCache;

variable defaultSrvDescriptor

D3DDescriptorHandle defaultSrvDescriptor {};

variable defaultRtvDescriptor

D3DDescriptorHandle defaultRtvDescriptor {};

variable dsvDescriptor

D3DDescriptorHandle dsvDescriptor {};

variable defaultSamplerDescriptor

D3DDescriptorHandle defaultSamplerDescriptor {};

variable srvDescriptorCache

std::vector< SrvData > srvDescriptorCache;

variable resourceDesc

D3D12_RESOURCE_DESC resourceDesc;

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