aboutsummaryrefslogtreecommitdiff
path: root/KaplaDemo/samples/sampleViewer3/HBAOHelper.h
diff options
context:
space:
mode:
Diffstat (limited to 'KaplaDemo/samples/sampleViewer3/HBAOHelper.h')
-rw-r--r--KaplaDemo/samples/sampleViewer3/HBAOHelper.h33
1 files changed, 33 insertions, 0 deletions
diff --git a/KaplaDemo/samples/sampleViewer3/HBAOHelper.h b/KaplaDemo/samples/sampleViewer3/HBAOHelper.h
new file mode 100644
index 00000000..33519ebc
--- /dev/null
+++ b/KaplaDemo/samples/sampleViewer3/HBAOHelper.h
@@ -0,0 +1,33 @@
+#pragma once
+
+#include "GFSDK_SSAO.h"
+#include "Shader.h"
+
+class HBAOHelper
+{
+public:
+ HBAOHelper(float fov, float zNear, float zFar);
+ ~HBAOHelper();
+
+ bool init();
+ bool renderAO(void(*renderScene)(), GLuint oldFBO = 0, bool useNormalTexture = true);
+ void resize(int wAA, int hAA, int realw, int realH);
+
+private:
+ GFSDK_SSAO_Parameters mAoParams;
+ GFSDK_SSAO_GLFunctions mGLFunctions;
+ GFSDK_SSAO_Context_GL* mHbaoGlContext;
+ float mNormalMapTransform[16];
+ float mFov;
+ float mZnear;
+ float mZFar;
+ GLint mWidthAA;
+ GLint mHeightAA;
+ GLint mWidthReal;
+ GLint mHeightReal;
+ GLuint mNormalTex;
+ GLuint mDepthTex;
+ GLuint mFBO;
+ GLuint mDownScaledFBO;
+ GLuint mColorTex;
+};