History

Revert "Revert "Mirrors + Portals""

Dale Glass committed 2 years ago

Commit e7591d61 parent b33d35c81 files · +1047 −263Browse files

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

Unified · Split

libraries/render-utils/src/ToneMapAndResampleTask.cpp+4−2
@@ -25,9 +25,10 @@ using namespace shader::render_utils::program; · 24 unmodified lines
2525 gpu::PipelinePointer ToneMapAndResample::_pipeline;
2626 gpu::PipelinePointer ToneMapAndResample::_mirrorPipeline;
2727
28−ToneMapAndResample::ToneMapAndResample() {
28+ToneMapAndResample::ToneMapAndResample(size_t depth) {
2929 Parameters parameters;
3030 _parametersBuffer = gpu::BufferView(std::make_shared<gpu::Buffer>(sizeof(Parameters), (const gpu::Byte*) &parameters));
31+ _depth = depth;
3132 }
3233
3334 void ToneMapAndResample::init() {
@@ -95,7 +96,8 @@ void ToneMapAndResample::run(const RenderContextPointer& renderContext, const In · 61 unmodified lines
9596 batch.setViewportTransform(destViewport);
9697 batch.setProjectionTransform(glm::mat4());
9798 batch.resetViewTransform();
98− batch.setPipeline(args->_renderMode == RenderArgs::MIRROR_RENDER_MODE ? _mirrorPipeline : _pipeline);
99+ bool shouldMirror = args->_numMirrorFlips >= (args->_renderMode != RenderArgs::MIRROR_RENDER_MODE);
100+ batch.setPipeline(shouldMirror ? _mirrorPipeline : _pipeline);
99101
100102 batch.setModelTransform(gpu::Framebuffer::evalSubregionTexcoordTransform(srcBufferSize, args->_viewport));
101103 batch.setUniformBuffer(render_utils::slot::buffer::ToneMappingParams, _parametersBuffer);