History

Removed jitter samples from shader and added name to batches in DEBUG mode to ease render debug

Olivier Prat committed 8 years ago

Commit 92e1fe81 parent 291711e43 files · +178 −256Browse files

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

Unified · Split

libraries/render-utils/src/RenderDeferredTask.cpp+13−14
@@ -92,7 +92,7 @@ void RenderDeferredTask::build(JobModel& task, const render::Varying& input, ren · 91 unmodified lines
92 92
93 fadeEffect->build(task, opaques);93 fadeEffect->build(task, opaques);
94 94
95 const auto jitterBuffer = task.addJob<JitterSample>("JitterCam");95 task.addJob<JitterSample>("JitterCam");
96 96
97 // Prepare deferred, generate the shared Deferred Frame Transform97 // Prepare deferred, generate the shared Deferred Frame Transform
98 const auto deferredFrameTransform = task.addJob<GenerateDeferredFrameTransform>("DeferredFrameTransform");98 const auto deferredFrameTransform = task.addJob<GenerateDeferredFrameTransform>("DeferredFrameTransform");
@@ -238,6 +238,10 @@ void RenderDeferredTask::build(JobModel& task, const render::Varying& input, ren · 139 unmodified lines
238 task.addJob<DrawBounds>("DrawOverlayInFrontTransparentBounds", overlaysInFrontTransparent);238 task.addJob<DrawBounds>("DrawOverlayInFrontTransparentBounds", overlaysInFrontTransparent);
239 }239 }
240 240
241 // AA job to be revisited
242 const auto antialiasingInputs = Antialiasing::Inputs(deferredFrameTransform, primaryFramebuffer, linearDepthTarget, velocityBuffer).asVarying();
243 task.addJob<Antialiasing>("Antialiasing", antialiasingInputs);
244
241 // Debugging stages245 // Debugging stages
242 {246 {
243 // Debugging Deferred buffer job247 // Debugging Deferred buffer job
@@ -268,11 +272,6 @@ void RenderDeferredTask::build(JobModel& task, const render::Varying& input, ren · 24 unmodified lines
268 task.addJob<DebugZoneLighting>("DrawZoneStack", deferredFrameTransform);272 task.addJob<DebugZoneLighting>("DrawZoneStack", deferredFrameTransform);
269 }273 }
270 274
271 // AA job to be revisited
272 const auto antialiasingInputs = Antialiasing::Inputs(deferredFrameTransform, jitterBuffer, primaryFramebuffer, linearDepthTarget, velocityBuffer).asVarying();
273
274 task.addJob<Antialiasing>("Antialiasing", antialiasingInputs);
275
276 // Composite the HUD and HUD overlays275 // Composite the HUD and HUD overlays
277 task.addJob<CompositeHUD>("HUD");276 task.addJob<CompositeHUD>("HUD");
278 277
@@ -297,13 +296,13 @@ void RenderDeferredTask::build(JobModel& task, const render::Varying& input, ren · 18 unmodified lines
297 296
298void BeginGPURangeTimer::run(const render::RenderContextPointer& renderContext, gpu::RangeTimerPointer& timer) {297void BeginGPURangeTimer::run(const render::RenderContextPointer& renderContext, gpu::RangeTimerPointer& timer) {
299 timer = _gpuTimer;298 timer = _gpuTimer;
300 gpu::doInBatch(renderContext->args->_context, [&](gpu::Batch& batch) {299 gpu::doInBatch("BeginGPURangeTimer::run", renderContext->args->_context, [&](gpu::Batch& batch) {
301 _gpuTimer->begin(batch);300 _gpuTimer->begin(batch);
302 });301 });
303}302}
304 303
305void EndGPURangeTimer::run(const render::RenderContextPointer& renderContext, const gpu::RangeTimerPointer& timer) {304void EndGPURangeTimer::run(const render::RenderContextPointer& renderContext, const gpu::RangeTimerPointer& timer) {
306 gpu::doInBatch(renderContext->args->_context, [&](gpu::Batch& batch) {305 gpu::doInBatch("EndGPURangeTimer::run", renderContext->args->_context, [&](gpu::Batch& batch) {
307 timer->end(batch);306 timer->end(batch);
308 });307 });
309 308
@@ -323,7 +322,7 @@ void DrawDeferred::run(const RenderContextPointer& renderContext, const Inputs& · 13 unmodified lines
323 322
324 RenderArgs* args = renderContext->args;323 RenderArgs* args = renderContext->args;
325 324
326 gpu::doInBatch(args->_context, [&](gpu::Batch& batch) {325 gpu::doInBatch("DrawDeferred::run", args->_context, [&](gpu::Batch& batch) {
327 args->_batch = &batch;326 args->_batch = &batch;
328 327
329 // Setup camera, projection and viewport for all items328 // Setup camera, projection and viewport for all items
@@ -370,7 +369,7 @@ void DrawStateSortDeferred::run(const RenderContextPointer& renderContext, const · 40 unmodified lines
370 369
371 RenderArgs* args = renderContext->args;370 RenderArgs* args = renderContext->args;
372 371
373 gpu::doInBatch(args->_context, [&](gpu::Batch& batch) {372 gpu::doInBatch("DrawStateSortDeferred::run", args->_context, [&](gpu::Batch& batch) {
374 args->_batch = &batch;373 args->_batch = &batch;
375 374
376 // Setup camera, projection and viewport for all items375 // Setup camera, projection and viewport for all items
@@ -434,14 +433,14 @@ void DrawOverlay3D::run(const RenderContextPointer& renderContext, const Inputs& · 57 unmodified lines
434 // Needs to be distinct from the other batch because using the clear call 433 // Needs to be distinct from the other batch because using the clear call
435 // while stereo is enabled triggers a warning434 // while stereo is enabled triggers a warning
436 if (_opaquePass) {435 if (_opaquePass) {
437 gpu::doInBatch(args->_context, [&](gpu::Batch& batch){436 gpu::doInBatch("DrawOverlay3D::run::clear", args->_context, [&](gpu::Batch& batch){
438 batch.enableStereo(false);437 batch.enableStereo(false);
439 batch.clearFramebuffer(gpu::Framebuffer::BUFFER_DEPTH, glm::vec4(), 1.f, 0, false);438 batch.clearFramebuffer(gpu::Framebuffer::BUFFER_DEPTH, glm::vec4(), 1.f, 0, false);
440 });439 });
441 }440 }
442 441
443 // Render the items442 // Render the items
444 gpu::doInBatch(args->_context, [&](gpu::Batch& batch) {443 gpu::doInBatch("DrawOverlay3D::run", args->_context, [&](gpu::Batch& batch) {
445 args->_batch = &batch;444 args->_batch = &batch;
446 batch.setViewportTransform(args->_viewport);445 batch.setViewportTransform(args->_viewport);
447 batch.setStateScissorRect(args->_viewport);446 batch.setStateScissorRect(args->_viewport);
@@ -473,7 +472,7 @@ void CompositeHUD::run(const RenderContextPointer& renderContext) { · 25 unmodified lines
473 }472 }
474 473
475 // Grab the HUD texture474 // Grab the HUD texture
476 gpu::doInBatch(renderContext->args->_context, [&](gpu::Batch& batch) {475 gpu::doInBatch("CompositeHUD::run", renderContext->args->_context, [&](gpu::Batch& batch) {
477 if (renderContext->args->_hudOperator) {476 if (renderContext->args->_hudOperator) {
478 renderContext->args->_hudOperator(batch, renderContext->args->_hudTexture, renderContext->args->_renderMode == RenderArgs::RenderMode::MIRROR_RENDER_MODE);477 renderContext->args->_hudOperator(batch, renderContext->args->_hudTexture, renderContext->args->_renderMode == RenderArgs::RenderMode::MIRROR_RENDER_MODE);
479 }478 }
@@ -499,7 +498,7 @@ void Blit::run(const RenderContextPointer& renderContext, const gpu::Framebuffer · 19 unmodified lines
499 // Blit primary to blit FBO498 // Blit primary to blit FBO
500 auto primaryFbo = srcFramebuffer;499 auto primaryFbo = srcFramebuffer;
501 500
502 gpu::doInBatch(renderArgs->_context, [&](gpu::Batch& batch) {501 gpu::doInBatch("Blit::run", renderArgs->_context, [&](gpu::Batch& batch) {
503 batch.setFramebuffer(blitFbo);502 batch.setFramebuffer(blitFbo);
504 503
505 if (renderArgs->_renderMode == RenderArgs::MIRROR_RENDER_MODE) {504 if (renderArgs->_renderMode == RenderArgs::MIRROR_RENDER_MODE) {