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

#include <DX12RenderTarget.h>

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

Public 成员函数

 DX12RenderTarget (DX12Render *render)
 
void Bind (const D3D12_CPU_DESCRIPTOR_HANDLE *depth=nullptr) const
 
void ClearBuffer () const
 
ID3D12ResourceGetBuffer () const
 
void InitBuffer (DX12SwapChain &swapChain, int width, int height, unsigned sampleCount, unsigned sampleQuality, const DirectX::XMFLOAT4 &clearColor)
 
void InitDescriptor ()
 
bool IsMultisampled () const
 
void ResetBuffer ()
 
void Resolve () const
 
void SelectBuffer (int index)
 
void Transition (bool toPresent=true) const
 
- Public 成员函数 继承自 z8::DX12Common
 DX12Common (DX12Render *)
 
virtual ~DX12Common ()=default
 

Public 属性

ComPtr< ID3D12ResourceBuffer [DX12SwapChain::BufferCount]
 
ComPtr< ID3D12ResourceMsaaBuffer
 
ComPtr< ID3D12DescriptorHeapRtvHeap
 
D3D12_CPU_DESCRIPTOR_HANDLE CurrentRtv {}
 
D3D12_CPU_DESCRIPTOR_HANDLE MsaaRtv {}
 
DXGI_FORMAT Format = DXGI_FORMAT_R8G8B8A8_UNORM
 
int CurrentBufferIndex = 0
 
- Public 属性 继承自 z8::DX12Common
DX12DeviceCtx
 
DX12RenderRender
 

Private 属性

DirectX::XMFLOAT4 ClearColor {}
 
unsigned RtvSize = 0
 
unsigned SampleCount = 1
 
unsigned SampleQuality = 0
 

详细描述

单个 WindowSurface 的颜色目标集合。

后备缓冲由传入的交换链拥有,本类只保持 COM 引用、RTV 和可选 MSAA 颜色 纹理;尺寸、采样配置和当前索引均由调用方显式提交,不读取主窗口状态。

构造及析构函数说明

◆ DX12RenderTarget()

z8::DX12RenderTarget::DX12RenderTarget ( DX12Render * render)
inlineexplicit

成员函数说明

◆ Bind()

void DX12RenderTarget::Bind ( const D3D12_CPU_DESCRIPTOR_HANDLE * depth = nullptr) const
函数调用图:
这是这个函数的调用关系图:

◆ ClearBuffer()

void DX12RenderTarget::ClearBuffer ( ) const
函数调用图:
这是这个函数的调用关系图:

◆ GetBuffer()

ID3D12Resource * DX12RenderTarget::GetBuffer ( ) const
这是这个函数的调用关系图:

◆ InitBuffer()

void DX12RenderTarget::InitBuffer ( DX12SwapChain & swapChain,
int width,
int height,
unsigned sampleCount,
unsigned sampleQuality,
const DirectX::XMFLOAT4 & clearColor )
函数调用图:
这是这个函数的调用关系图:

◆ InitDescriptor()

void DX12RenderTarget::InitDescriptor ( )
这是这个函数的调用关系图:

◆ IsMultisampled()

bool z8::DX12RenderTarget::IsMultisampled ( ) const
inline
这是这个函数的调用关系图:

◆ ResetBuffer()

void DX12RenderTarget::ResetBuffer ( )
这是这个函数的调用关系图:

◆ Resolve()

void DX12RenderTarget::Resolve ( ) const
函数调用图:
这是这个函数的调用关系图:

◆ SelectBuffer()

void DX12RenderTarget::SelectBuffer ( int index)
这是这个函数的调用关系图:

◆ Transition()

void DX12RenderTarget::Transition ( bool toPresent = true) const
函数调用图:
这是这个函数的调用关系图:

类成员变量说明

◆ Buffer

ComPtr<ID3D12Resource> z8::DX12RenderTarget::Buffer[DX12SwapChain::BufferCount]

◆ ClearColor

DirectX::XMFLOAT4 z8::DX12RenderTarget::ClearColor {}
private

◆ CurrentBufferIndex

int z8::DX12RenderTarget::CurrentBufferIndex = 0

◆ CurrentRtv

D3D12_CPU_DESCRIPTOR_HANDLE z8::DX12RenderTarget::CurrentRtv {}

◆ Format

DXGI_FORMAT z8::DX12RenderTarget::Format = DXGI_FORMAT_R8G8B8A8_UNORM

◆ MsaaBuffer

ComPtr<ID3D12Resource> z8::DX12RenderTarget::MsaaBuffer

◆ MsaaRtv

D3D12_CPU_DESCRIPTOR_HANDLE z8::DX12RenderTarget::MsaaRtv {}

◆ RtvHeap

ComPtr<ID3D12DescriptorHeap> z8::DX12RenderTarget::RtvHeap

◆ RtvSize

unsigned z8::DX12RenderTarget::RtvSize = 0
private

◆ SampleCount

unsigned z8::DX12RenderTarget::SampleCount = 1
private

◆ SampleQuality

unsigned z8::DX12RenderTarget::SampleQuality = 0
private

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