History

stutter fix: only perform fade transactions when depth == 0

HifiExperiments committed 2 years ago

Commit aaa92df1 parent 43e15c013 files · +43 −105Browse files

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

Unified · Split

libraries/render-utils/src/RenderDeferredTask.cpp+4−3
@@ -101,12 +101,11 @@ void RenderDeferredTask::configure(const Config& config) { · 100 unmodified lines
101101 }
102102
103103 void RenderDeferredTask::build(JobModel& task, const render::Varying& input, render::Varying& output, render::CullFunctor cullFunctor, size_t depth) {
104− static auto fadeEffect = DependencyManager::get<FadeEffect>();
105104 // Prepare the ShapePipelines
106105 static ShapePlumberPointer shapePlumber = std::make_shared<ShapePlumber>();
107106 static std::once_flag once;
108107 std::call_once(once, [] {
109− initDeferredPipelines(*shapePlumber, fadeEffect->getBatchSetter(), fadeEffect->getItemUniformSetter());
108+ initDeferredPipelines(*shapePlumber, FadeEffect::getBatchSetter(), FadeEffect::getItemUniformSetter());
110109 });
111110
112111 const auto& inputs = input.get<Input>();
@@ -146,7 +145,9 @@ void RenderDeferredTask::build(JobModel& task, const render::Varying& input, ren · 33 unmodified lines
146145 // Shadow Stage Frame
147146 const auto shadowFrame = shadowTaskOutputs[1];
148147
149− fadeEffect->build(task, opaques);
148+ if (depth == 0) {
149+ task.addJob<FadeEffect>("FadeEffect", opaques);
150+ }
150151
151152 const auto jitter = task.addJob<JitterSample>("JitterCam");
152153