History

Many improvments

samcake committed 10 years ago

Commit 28886f61 parent a307c8216 files · +206 −44Browse files

Showing the changes to libraries/render-utils/src/DebugDeferredBuffer.cpp (1 of 16 files). Show all

Unified · Split

libraries/render-utils/src/DebugDeferredBuffer.cpp+28−1
@@ -48,6 +48,8 @@ enum Slot { · 47 unmodified lines
4848 Shadow,
4949 Pyramid,
5050 Curvature,
51+ DiffusedCurvature,
52+ Scattering,
5153 AmbientOcclusion,
5254 AmbientOcclusionBlurred
5355 };
@@ -147,6 +149,21 @@ static const std::string DEFAULT_CURVATURE_SHADER{ · 93 unmodified lines
147149 " }"
148150 };
149151
152+static const std::string DEFAULT_NORMAL_CURVATURE_SHADER{
153+ "vec4 getFragmentColor() {"
154+ //" return vec4(pow(vec3(texture(curvatureMap, uv).a), vec3(1.0 / 2.2)), 1.0);"
155+ " return vec4(pow(vec3(texture(curvatureMap, uv).xyz), vec3(1.0 / 2.2)), 1.0);"
156+ //" return vec4(vec3(1.0 - textureLod(pyramidMap, uv, 3).x * 0.01), 1.0);"
157+ " }"
158+};
159+
160+static const std::string DEFAULT_SCATTERING_SHADER{
161+ "vec4 getFragmentColor() {"
162+ // " return vec4(pow(vec3(texture(scatteringMap, uv).xyz), vec3(1.0 / 2.2)), 1.0);"
163+ " return vec4(vec3(texture(scatteringMap, uv).xyz), 1.0);"
164+ " }"
165+};
166+
150167 static const std::string DEFAULT_AMBIENT_OCCLUSION_SHADER{
151168 "vec4 getFragmentColor() {"
152169 " return vec4(vec3(texture(obscuranceMap, uv).x), 1.0);"
@@ -214,6 +231,10 @@ std::string DebugDeferredBuffer::getShaderSourceCode(Mode mode, std::string cust · 61 unmodified lines
214231 return DEFAULT_PYRAMID_DEPTH_SHADER;
215232 case CurvatureMode:
216233 return DEFAULT_CURVATURE_SHADER;
234+ case NormalCurvatureMode:
235+ return DEFAULT_NORMAL_CURVATURE_SHADER;
236+ case ScatteringMode:
237+ return DEFAULT_SCATTERING_SHADER;
217238 case AmbientOcclusionMode:
218239 return DEFAULT_AMBIENT_OCCLUSION_SHADER;
219240 case AmbientOcclusionBlurredMode:
@@ -269,6 +290,8 @@ const gpu::PipelinePointer& DebugDeferredBuffer::getPipeline(Mode mode, std::str · 49 unmodified lines
269290 slotBindings.insert(gpu::Shader::Binding("shadowMap", Shadow));
270291 slotBindings.insert(gpu::Shader::Binding("pyramidMap", Pyramid));
271292 slotBindings.insert(gpu::Shader::Binding("curvatureMap", Curvature));
293+ slotBindings.insert(gpu::Shader::Binding("diffusedCurvatureMap", DiffusedCurvature));
294+ slotBindings.insert(gpu::Shader::Binding("scatteringMap", Scattering));
272295 slotBindings.insert(gpu::Shader::Binding("occlusionBlurredMap", AmbientOcclusionBlurred));
273296 gpu::Shader::makeProgram(*program, slotBindings);
274297
@@ -294,11 +317,13 @@ void DebugDeferredBuffer::configure(const Config& config) { · 19 unmodified lines
294317 _size = config.size;
295318 }
296319
297−void DebugDeferredBuffer::run(const SceneContextPointer& sceneContext, const RenderContextPointer& renderContext) {
320+void DebugDeferredBuffer::run(const SceneContextPointer& sceneContext, const RenderContextPointer& renderContext, const gpu::FramebufferPointer& inputBuffer) {
298321 assert(renderContext->args);
299322 assert(renderContext->args->hasViewFrustum());
300323 RenderArgs* args = renderContext->args;
301324
325+ auto& scatteringFramebuffer = inputBuffer;
326+
302327 gpu::doInBatch(args->_context, [&](gpu::Batch& batch) {
303328 batch.enableStereo(false);
304329 batch.setViewportTransform(args->_viewport);
@@ -329,6 +354,8 @@ void DebugDeferredBuffer::run(const SceneContextPointer& sceneContext, const Ren · 24 unmodified lines
329354 batch.setResourceTexture(Shadow, lightStage.lights[0]->shadow.framebuffer->getDepthStencilBuffer());
330355 batch.setResourceTexture(Pyramid, framebufferCache->getDepthPyramidTexture());
331356 batch.setResourceTexture(Curvature, framebufferCache->getCurvatureTexture());
357+ //batch.setResourceTexture(DiffusedCurvature, diffusedCurvatureBuffer);
358+ batch.setResourceTexture(Scattering, scatteringFramebuffer->getRenderBuffer(0));
332359 if (DependencyManager::get<DeferredLightingEffect>()->isAmbientOcclusionEnabled()) {
333360 batch.setResourceTexture(AmbientOcclusion, framebufferCache->getOcclusionTexture());
334361 } else {

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t