53 using ComPtr_t = ::Microsoft::WRL::ComPtr<T>;
54 using Renders_t = ::std::vector<Render_t>;
59 String_t GetUsingApi(
void)
const override;
60 void PresentFrame(
void)
override;
61 void ResizeWindow(
const Rect &)
override;
65 Render_t CreateCamera(
const ComponentPtr_t &)
override;
67 Render_t CreateState(
const ComponentPtr_t &)
override;
68 Render_t CreateTexture(
const ComponentPtr_t &)
override;
69 Render_t CreateTextureArray(
const ComponentPtr_t &)
override;
70 Render_t CreateShader(
const ComponentPtr_t &)
override;
71 Render_t CreateBuffer(
const ComponentPtr_t &)
override;
72 Render_t CreateTransform(
const ComponentPtr_t &)
override;
73 Render_t CreatePresentBuffer(
const ComponentPtr_t &)
override;
76 void CreateDeviceAndSwapChain(
const Data_t &);
77 void SetRenderTargetSize(
const UINT,
const UINT);
78 void CreateRenderTargetView(
const UINT,
const UINT);
79 void CreateDepthStencilView(
const UINT,
const UINT);
82 Render_t CreateBlendState(
bool);
85 Render_t CreateDefaultTransformRender(
const ComponentPtr_t &);
87 Render_t CreateStaticTransformRender(
const ComponentPtr_t &);
88 template<
class,
class>
89 Render_t CreateBillboardTransformRender(
const ComponentPtr_t &);
92 ComPtr_t<ID3D11Device> m_pDevice;
93 ComPtr_t<ID3D11DeviceContext> m_pImmediateContext;
94 ComPtr_t<IDXGISwapChain> m_pSwapChain;
95 ComPtr_t<ID3D11RenderTargetView> m_pScreenRenderTargetView;
96 ComPtr_t<ID3D11DepthStencilView> m_pScreenDepthStencilView;
97 ::std::vector<ID3D11RenderTargetView *> m_CurrentRenderTargets;
98 ComPtr_t<ID3D11DepthStencilView> m_pCurrentDepthStencilView;
106 class ConstantBuffer;
117 friend DirectX11_test;
118 friend DirectX11Texture_test;