]> gitweb.ps.run Git - subsurface_scattering/blobdiff - src/main2.cpp
remove debugging renderstate
[subsurface_scattering] / src / main2.cpp
index 38ca5f2d7641c4650350394a9a153fd495d1147c..c30fb9e1ef2e6ee722a682ea10bb715c599ec9b6 100644 (file)
 #include <assimp/postprocess.h>\r
 #include <assimp/scene.h>\r
 \r
-/*\r
 \r
-TODO:\r
-- Save Depth to fbo\r
-- Stencil Buffer\r
-- LightDist > 1\r
-  - 1 - distanceToBackside in frag_irradiance\r
-- ShadowMap Perspective (no projection?)\r
-- (Implement Gaussian Blur)\r
-- LightDir nicht immer zu 0 0 0\r
-\r
-*/\r
+// sample positions and weights for a Gaussian kernel from \r
+// Hable, John ; Borshukov, George ; Hejl, Jim: Fast Skin Shading. In: ShaderX7, ShaderX : Charles River Media, 2009, S. 161–173\r
 \r
 float samplePositions[] = {\r
   0.000000f,  0.000000f,\r
@@ -396,7 +387,6 @@ int main() {
   GLuint shaderProgramIrradiance = compileShaders("shaders/ts_vert_irradiance.glsl", "shaders/ts_frag_irradiance.glsl");\r
   GLuint shaderProgramCombine = compileShaders("shaders/ts_vert.glsl", "shaders/ts_frag.glsl");\r
 \r
-  //model m = loadModel("models/Isotrop-upperjaw.ply");\r
   model m = loadModel("models/african_head/african_head.obj");\r
 \r
   arccam arcCam;\r
@@ -483,7 +473,7 @@ int main() {
 \r
     prevMouse = sf::Mouse::isButtonPressed(sf::Mouse::Right);\r
 \r
-    // Render Shadowmap\r
+    // Render Shadowmap to fbo\r
 \r
     glBindFramebuffer(GL_FRAMEBUFFER, fb_irradiance.fbo);\r
     glClearColor(0.0f, 0.0f, 0.0f, 1.0f);\r
@@ -527,9 +517,7 @@ int main() {
 \r
     m.draw();\r
 \r
-    \r
-\r
-    // Render fbo to screen\r
+    // Render model and calculate light spread and translucency in shader\r
 \r
     glBindFramebuffer(GL_FRAMEBUFFER, 0);\r
     glClearColor(0.0f, 0.0f, 0.0f, 1.0f);\r
@@ -582,23 +570,15 @@ int main() {
     glActiveTexture(GL_TEXTURE0 + 0);\r
     glBindTexture(GL_TEXTURE_2D, fb_irradiance.renderTexture);\r
 \r
-    // glBindVertexArray(fb_irradiance.screenVAO);\r
-    // glUniform1i(glGetUniformLocation(fb_irradiance.screenShaderProgram, "shadowmapTexture"), 0);\r
-    // glActiveTexture(GL_TEXTURE0 + 0);\r
-    // glBindTexture(GL_TEXTURE_2D, fb_irradiance.renderTexture);\r
-    // glDrawArrays(GL_TRIANGLES, 0, 6);\r
-    // glBindVertexArray(0);\r
-\r
     m.draw();\r
 \r
-\r
+    // menu\r
 \r
     ImGui::SFML::Update(window, deltaClock.restart());\r
 \r
     ImGui::Begin("Options");\r
     ImGui::Checkbox("Wireframe", &options.wireframe);\r
     ImGui::Checkbox("Free Cam", &options.freecam);\r
-    ImGui::InputInt("Render State", &options.renderState);\r
     ImGui::DragFloat3("Color", options.color, 0.01, 0, 1);\r
     ImGui::DragFloat("Transmittance Scale", &options.transmittanceScale, 0.0001f, 0, 0.3);\r
     ImGui::DragFloat("Pow Base", &options.powBase, 0.01f, 0, 4);\r