slot 0.0.1
A real time UI render framework
载入中...
搜索中...
未找到
Public 成员函数 | Private 属性 | 所有成员列表
z8::DX12TextureManager类 参考

#include <DX12TextureManager.h>

类 z8::DX12TextureManager 继承关系图:
Inheritance graph
[图例]
z8::DX12TextureManager 的协作图:
Collaboration graph
[图例]

Public 成员函数

 DX12TextureManager (DX12Render *render)
 
void Bind () const
 
D3D12_GPU_DESCRIPTOR_HANDLE GetGPUDescriptor (ResourceRef< BaseTexture > texture) const
 
void Init ()
 
- Public 成员函数 继承自 z8::DX12Common
 DX12Common (DX12Render *)
 
virtual ~DX12Common ()=default
 

Private 属性

ComPtr< ID3D12DescriptorHeapDescriptorHeap
 
unsigned DescriptorSize = 0
 
std::unordered_map< ResourceRef< BaseTexture >, uint32_t, ResourceRefHash< BaseTexture > > Indices
 
std::vector< ComPtr< ID3D12Resource > > Resources
 
std::vector< ComPtr< ID3D12Resource > > Uploads
 

额外继承的成员函数

- Public 属性 继承自 z8::DX12Common
DX12DeviceCtx
 
DX12RenderRender
 

详细描述

把 CPU RGBA8 Texture 上传为默认堆资源,并提供每材质使用的 SRV。

构造及析构函数说明

◆ DX12TextureManager()

DX12TextureManager::DX12TextureManager ( DX12Render * render)
explicit

成员函数说明

◆ Bind()

void DX12TextureManager::Bind ( ) const

绑定唯一的 CBV/SRV/UAV Shader-visible 堆。

◆ GetGPUDescriptor()

D3D12_GPU_DESCRIPTOR_HANDLE DX12TextureManager::GetGPUDescriptor ( ResourceRef< BaseTexture > texture) const

返回指定纹理的 GPU SRV;未知资源引用返回零描述符句柄。

◆ Init()

void DX12TextureManager::Init ( )

上传 ResourceManager 中的全部纹理并创建稳定 SRV 索引。

这是这个函数的调用关系图:

类成员变量说明

◆ DescriptorHeap

ComPtr<ID3D12DescriptorHeap> z8::DX12TextureManager::DescriptorHeap
private

◆ DescriptorSize

unsigned z8::DX12TextureManager::DescriptorSize = 0
private

◆ Indices

std::unordered_map<ResourceRef<BaseTexture>, uint32_t, ResourceRefHash<BaseTexture> > z8::DX12TextureManager::Indices
private

◆ Resources

std::vector<ComPtr<ID3D12Resource> > z8::DX12TextureManager::Resources
private

◆ Uploads

std::vector<ComPtr<ID3D12Resource> > z8::DX12TextureManager::Uploads
private

该类的文档由以下文件生成: