History

Revolutionizing ao

samcake committed 10 years ago

Commit afb1ebf1 parent 4f04dbc12 files · +221 −190Browse files

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

Unified · Split

libraries/render-utils/src/DeferredLightingEffect.cpp+4−7
@@ -400,7 +400,7 @@ void RenderDeferredSetup::run(const render::SceneContextPointer& sceneContext, c · 399 unmodified lines
400 const DeferredFramebufferPointer& deferredFramebuffer,400 const DeferredFramebufferPointer& deferredFramebuffer,
401 const LightingModelPointer& lightingModel,401 const LightingModelPointer& lightingModel,
402 const SurfaceGeometryFramebufferPointer& surfaceGeometryFramebuffer,402 const SurfaceGeometryFramebufferPointer& surfaceGeometryFramebuffer,
403 const gpu::FramebufferPointer& lowCurvatureNormalFramebuffer,403 const AmbientOcclusionFramebufferPointer& ambientOcclusionFramebuffer,
404 const SubsurfaceScatteringResourcePointer& subsurfaceScatteringResource) {404 const SubsurfaceScatteringResourcePointer& subsurfaceScatteringResource) {
405 405
406 auto args = renderContext->args;406 auto args = renderContext->args;
@@ -431,7 +431,7 @@ void RenderDeferredSetup::run(const render::SceneContextPointer& sceneContext, c · 24 unmodified lines
431 431
432 // FIXME: Different render modes should have different tasks432 // FIXME: Different render modes should have different tasks
433 if (args->_renderMode == RenderArgs::DEFAULT_RENDER_MODE && deferredLightingEffect->isAmbientOcclusionEnabled()) {433 if (args->_renderMode == RenderArgs::DEFAULT_RENDER_MODE && deferredLightingEffect->isAmbientOcclusionEnabled()) {
434 batch.setResourceTexture(DEFERRED_BUFFER_OBSCURANCE_UNIT, framebufferCache->getOcclusionTexture());434 batch.setResourceTexture(DEFERRED_BUFFER_OBSCURANCE_UNIT, ambientOcclusionFramebuffer->getOcclusionTexture());
435 } else {435 } else {
436 // need to assign the white texture if ao is off436 // need to assign the white texture if ao is off
437 batch.setResourceTexture(DEFERRED_BUFFER_OBSCURANCE_UNIT, textureCache->getWhiteTexture());437 batch.setResourceTexture(DEFERRED_BUFFER_OBSCURANCE_UNIT, textureCache->getWhiteTexture());
@@ -446,9 +446,6 @@ void RenderDeferredSetup::run(const render::SceneContextPointer& sceneContext, c · 8 unmodified lines
446 // Subsurface scattering specific446 // Subsurface scattering specific
447 if (surfaceGeometryFramebuffer) {447 if (surfaceGeometryFramebuffer) {
448 batch.setResourceTexture(DEFERRED_BUFFER_CURVATURE_UNIT, surfaceGeometryFramebuffer->getCurvatureTexture());448 batch.setResourceTexture(DEFERRED_BUFFER_CURVATURE_UNIT, surfaceGeometryFramebuffer->getCurvatureTexture());
449 }
450 if (lowCurvatureNormalFramebuffer) {
451 // batch.setResourceTexture(DEFERRED_BUFFER_DIFFUSED_CURVATURE_UNIT, lowCurvatureNormalFramebuffer->getRenderBuffer(0));
452 batch.setResourceTexture(DEFERRED_BUFFER_DIFFUSED_CURVATURE_UNIT, surfaceGeometryFramebuffer->getLowCurvatureTexture());449 batch.setResourceTexture(DEFERRED_BUFFER_DIFFUSED_CURVATURE_UNIT, surfaceGeometryFramebuffer->getLowCurvatureTexture());
453 }450 }
454 if (subsurfaceScatteringResource) {451 if (subsurfaceScatteringResource) {
@@ -693,7 +690,7 @@ void RenderDeferred::run(const SceneContextPointer& sceneContext, const RenderCo · 238 unmodified lines
693 auto deferredFramebuffer = inputs.get1();690 auto deferredFramebuffer = inputs.get1();
694 auto lightingModel = inputs.get2();691 auto lightingModel = inputs.get2();
695 auto surfaceGeometryFramebuffer = inputs.get3();692 auto surfaceGeometryFramebuffer = inputs.get3();
696 auto lowCurvatureNormalFramebuffer = inputs.get4();693 auto ssaoFramebuffer = inputs.get4();
697 auto subsurfaceScatteringResource = inputs.get5();694 auto subsurfaceScatteringResource = inputs.get5();
698 auto args = renderContext->args;695 auto args = renderContext->args;
699 696
@@ -701,7 +698,7 @@ void RenderDeferred::run(const SceneContextPointer& sceneContext, const RenderCo · 1 unmodified line
701 _gpuTimer.begin(batch);698 _gpuTimer.begin(batch);
702 });699 });
703 700
704 setupJob.run(sceneContext, renderContext, deferredTransform, deferredFramebuffer, lightingModel, surfaceGeometryFramebuffer, lowCurvatureNormalFramebuffer, subsurfaceScatteringResource);701 setupJob.run(sceneContext, renderContext, deferredTransform, deferredFramebuffer, lightingModel, surfaceGeometryFramebuffer, ssaoFramebuffer, subsurfaceScatteringResource);
705 702
706 lightsJob.run(sceneContext, renderContext, deferredTransform, deferredFramebuffer, lightingModel);703 lightsJob.run(sceneContext, renderContext, deferredTransform, deferredFramebuffer, lightingModel);
707 704