aboutsummaryrefslogtreecommitdiff
path: root/samples/dual_layer/D3D11/src/HBAOSampleD3D11.h
diff options
context:
space:
mode:
authorlbavoil <[email protected]>2018-03-15 11:08:34 +0100
committerlbavoil <[email protected]>2018-03-15 11:08:34 +0100
commit636807e68a85a978473764d171ed0c7cc36f9be6 (patch)
tree784a3d4fa8f48b4c085dd959678505b2af12f425 /samples/dual_layer/D3D11/src/HBAOSampleD3D11.h
parentRemove test folder (diff)
downloadhbaoplus-636807e68a85a978473764d171ed0c7cc36f9be6.tar.xz
hbaoplus-636807e68a85a978473764d171ed0c7cc36f9be6.zip
HBAO+ 4.0.0.23740451
Diffstat (limited to 'samples/dual_layer/D3D11/src/HBAOSampleD3D11.h')
-rw-r--r--samples/dual_layer/D3D11/src/HBAOSampleD3D11.h49
1 files changed, 49 insertions, 0 deletions
diff --git a/samples/dual_layer/D3D11/src/HBAOSampleD3D11.h b/samples/dual_layer/D3D11/src/HBAOSampleD3D11.h
new file mode 100644
index 0000000..661449c
--- /dev/null
+++ b/samples/dual_layer/D3D11/src/HBAOSampleD3D11.h
@@ -0,0 +1,49 @@
+/*
+* Copyright (c) 2008-2018, NVIDIA CORPORATION. All rights reserved.
+*
+* NVIDIA CORPORATION and its licensors retain all intellectual property
+* and proprietary rights in and to this software, related documentation
+* and any modifications thereto. Any use, reproduction, disclosure or
+* distribution of this software and related documentation without an express
+* license agreement from NVIDIA CORPORATION is strictly prohibited.
+*/
+
+#include "HBAOSample.h"
+#include "DeviceManager11.h"
+#include <D3D11.h>
+#include <wrl.h>
+#include "SceneRenderer.h"
+
+#include <GFSDK_SSAO.h>
+
+using namespace Microsoft::WRL;
+class HBAOSampleD3D11 : public HBAOSample, public IVisualController
+{
+public:
+ void Initialize() override;
+ void Run() override;
+
+ void Render(RenderTargetView RTV) override;
+ void BackBufferResized(uint32_t width, uint32_t height, uint32_t sampleCount) override;
+
+private:
+ bool InitializeHBAOPlus();
+ bool InitializeRenderTargets();
+ LRESULT MsgProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam) override;
+
+ DeviceManager mDeviceManager;
+ ComPtr<ID3D11Texture2D> mDepthStencil[2];
+ ComPtr<ID3D11Resource> mNormalsGBuffer;
+ ComPtr<ID3D11DepthStencilView> mDepthStencilView[2];
+ ComPtr<ID3D11ShaderResourceView> mDepthSRV[2];
+
+ ID3D11Device* mDevice = nullptr;
+ ID3D11DeviceContext* mDeviceContext = nullptr;
+
+ ID3D12CommandQueue* mCommandQueue;
+
+ SceneRenderer mSceneRenderer;
+
+ GFSDK_SSAO_InputData_D3D11 mSSAOInputData;
+ GFSDK_SSAO_Context_D3D11* mSSAOContext;
+}; \ No newline at end of file