|
slot 0.0.1
A real time UI render framework
|
#include <DX12SceneTarget.h>


Public 成员函数 | |
| DX12SceneTarget (DX12Render *render) | |
| void | InitDescriptor () |
| void | InitBuffer () |
| void | ResetBuffer () |
| void | Bind () const |
| void | Clear () const |
| void | Transition (D3D12_RESOURCE_STATES targetState) |
Public 成员函数 继承自 z8::DX12Common | |
| DX12Common (DX12Render *) | |
| virtual | ~DX12Common ()=default |
Public 属性 | |
| ComPtr< ID3D12Resource > | Buffer |
| ComPtr< ID3D12DescriptorHeap > | DescriptorHeap |
| D3D12_CPU_DESCRIPTOR_HANDLE | Descriptor {} |
| DXGI_FORMAT | Format = DXGI_FORMAT_R8G8B8A8_UNORM |
Public 属性 继承自 z8::DX12Common | |
| DX12Device * | Ctx |
| DX12Render * | Render |
Private 属性 | |
| D3D12_RESOURCE_STATES | State = D3D12_RESOURCE_STATE_RENDER_TARGET |
3D 场景专用离屏颜色缓冲。
它与交换链保持相同尺寸,SceneNode 只复制自己的矩形区域;这样停靠布局变化 不会频繁重建 GPU 资源,也不要求 UI Shader 增加纹理采样 ABI。
|
inlineexplicit |
| void DX12SceneTarget::Bind | ( | ) | const |
| void DX12SceneTarget::Clear | ( | ) | const |
| void DX12SceneTarget::InitBuffer | ( | ) |
| void DX12SceneTarget::InitDescriptor | ( | ) |
| void DX12SceneTarget::ResetBuffer | ( | ) |
| void DX12SceneTarget::Transition | ( | D3D12_RESOURCE_STATES | targetState | ) |
维护实际资源状态,避免离屏绘制与复制之间出现隐式状态假设。
| ComPtr<ID3D12Resource> z8::DX12SceneTarget::Buffer |
| D3D12_CPU_DESCRIPTOR_HANDLE z8::DX12SceneTarget::Descriptor {} |
| ComPtr<ID3D12DescriptorHeap> z8::DX12SceneTarget::DescriptorHeap |
| DXGI_FORMAT z8::DX12SceneTarget::Format = DXGI_FORMAT_R8G8B8A8_UNORM |
|
private |