slot 0.0.1
A real time UI render framework
载入中...
搜索中...
未找到
DX12WindowSurface.h
浏览该文件的文档.
1#pragma once
2
7
8#include <DirectXMath.h>
9#include <d3d12.h>
10#include <vector>
11
12namespace z8::ui {
13class TextNode;
14}
15
16namespace z8 {
17
26public:
32 int Width = 1;
33 int Height = 1;
34 float DpiScale = 1.0f;
35
36private:
37 DirectX::XMFLOAT4 ClearColor{};
38 unsigned SampleCount = 1;
39 unsigned SampleQuality = 0;
40 bool Initialized = false;
41 HWND Window = nullptr;
42
43public:
45 ~DX12WindowSurface() override;
46
47 void ApplyViewport() const;
48 void DrawTextAndPresent(const std::vector<ui::TextNode *> &texts,
49 float originX = 0.0f, float originY = 0.0f);
50 void Init(HWND window, int width, int height, unsigned sampleCount,
51 unsigned sampleQuality,
52 const DirectX::XMFLOAT4 &clearColor);
53 bool IsInitialized() const { return Initialized; }
54 void PrepareFrame();
56 void Resize(int width, int height);
57 void Shutdown();
58
59private:
60 void RefreshViewport();
61};
62
63} // namespace z8
Definition DX12Common.h:35
Definition DX12Render.h:33
Definition DX12RenderTarget.h:17
Definition DX12SwapChain.h:13
Definition DX12TextRenderer.h:23
Definition DX12WindowSurface.h:25
~DX12WindowSurface() override
Definition DX12WindowSurface.cpp:13
DX12RenderTarget ColorTarget
Definition DX12WindowSurface.h:28
void ApplyViewport() const
Definition DX12WindowSurface.cpp:15
bool IsInitialized() const
Definition DX12WindowSurface.h:53
void Shutdown()
Definition DX12WindowSurface.cpp:86
DirectX::XMFLOAT4 ClearColor
Definition DX12WindowSurface.h:37
void PrepareFrame()
Definition DX12WindowSurface.cpp:50
bool Initialized
Definition DX12WindowSurface.h:40
DX12TextRenderer TextRenderer
Definition DX12WindowSurface.h:29
int Height
Definition DX12WindowSurface.h:33
D3D12_RECT Scissor
Definition DX12WindowSurface.h:31
D3D12_VIEWPORT Viewport
Definition DX12WindowSurface.h:30
DX12SwapChain SwapChain
Definition DX12WindowSurface.h:27
float DpiScale
Definition DX12WindowSurface.h:34
unsigned SampleCount
Definition DX12WindowSurface.h:38
DX12WindowSurface(DX12Render *render)
Definition DX12WindowSurface.cpp:9
void DrawTextAndPresent(const std::vector< ui::TextNode * > &texts, float originX=0.0f, float originY=0.0f)
Definition DX12WindowSurface.cpp:20
void Resize(int width, int height)
Definition DX12WindowSurface.cpp:65
void RefreshViewport()
Definition DX12WindowSurface.cpp:59
void Init(HWND window, int width, int height, unsigned sampleCount, unsigned sampleQuality, const DirectX::XMFLOAT4 &clearColor)
Definition DX12WindowSurface.cpp:26
unsigned SampleQuality
Definition DX12WindowSurface.h:39
int Width
Definition DX12WindowSurface.h:32
资源的强类型引用,同时覆盖持久化 ID 与运行时索引两种边界。
Definition ResourceRef.h:36
Definition Window.h:12
Definition Application.h:18
世界矩阵 描述坐标系,左手坐标系 使用 DirectX12 坐标系的描述
Definition Application.h:15