HatchitGraphics
ht_d3d11renderer.h
1 
15 #include <ht_platform.h>
16 #include <ht_renderer.h>
17 #include <ht_directx.h>
18 #include <ht_types.h>
19 
20 namespace Hatchit {
21 
22  namespace Graphics {
23 
24  namespace DirectX {
25 
26  class HT_API D3D11Renderer : public IRenderer
27  {
28  public:
29  D3D11Renderer();
30 
31  ~D3D11Renderer();
32 
33  bool VInitialize(const RendererParams& params) override;
34 
35  void VDeInitialize() override;
36 
37  void VResizeBuffers(uint32_t width, uint32_t height) override;
38 
39  void VSetClearColor(const Color& color) override;
40 
41  void VClearBuffer(ClearArgs args) override;
42 
43  void VPresent() override;
44 
45  private:
46  bool CreateBuffers(uint32_t width, uint32_t height);
47 
48  private:
49  ID3D11Device* m_device;
50  ID3D11DeviceContext* m_context;
51  ID3D11RenderTargetView* m_renderTargetView;
52  ID3D11DepthStencilView* m_depthStencilView;
53  IDXGISwapChain* m_swapChain;
54  DXGI_SWAP_CHAIN_DESC m_swapChainDesc;
55  D3D_FEATURE_LEVEL m_featureLevel;
56  RendererParams m_params;
57  HWND m_hwnd;
58  };
59 
60  }
61 
62  }
63 
64 }
Definition: ht_d3d11renderer.h:26
Definition: ht_renderer.h:69
Hatchit Engine Copyright(c) 2015-2016 Third-Degree.
Definition: ht_color.h:19
Color class defining a 4-component color value.
Definition: ht_color.h:26
An interface to a renderer that will need to be implemented with a graphics language.