History

Created FadeEffect singleton to be able to get fade item & batch setters for every special entity render

Olivier Prat committed 9 years ago

Commit 3f8daa21 parent 76dd4216 files · +1011 −939Browse files

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

Unified · Split

libraries/render-utils/src/RenderDeferredTask.cpp+7−6
@@ -48,19 +48,21 @@ using namespace render; · 47 unmodified lines
48extern void initOverlay3DPipelines(render::ShapePlumber& plumber);48extern void initOverlay3DPipelines(render::ShapePlumber& plumber);
49extern void initDeferredPipelines(render::ShapePlumber& plumber, const render::ShapePipeline::BatchSetter& batchSetter, const render::ShapePipeline::ItemSetter& itemSetter);49extern void initDeferredPipelines(render::ShapePlumber& plumber, const render::ShapePipeline::BatchSetter& batchSetter, const render::ShapePipeline::ItemSetter& itemSetter);
50 50
51RenderDeferredTask::RenderDeferredTask() {
52 DependencyManager::set<FadeEffect>();
53}
54
51void RenderDeferredTask::configure(const Config& config)55void RenderDeferredTask::configure(const Config& config)
52{56{
53}57}
54 58
55void RenderDeferredTask::build(JobModel& task, const render::Varying& input, render::Varying& output) {59void RenderDeferredTask::build(JobModel& task, const render::Varying& input, render::Varying& output) {
56 const auto& items = input.get<Input>();60 const auto& items = input.get<Input>();
57 61 auto fadeEffect = DependencyManager::get<FadeEffect>();
58 auto editedFadeCategory = task.addJob<FadeJob>("Fade");
59 auto& fadeJob = task._jobs.back().get<FadeJob>();
60 62
61 // Prepare the ShapePipelines63 // Prepare the ShapePipelines
62 ShapePlumberPointer shapePlumber = std::make_shared<ShapePlumber>();64 ShapePlumberPointer shapePlumber = std::make_shared<ShapePlumber>();
63 initDeferredPipelines(*shapePlumber, fadeJob.getBatchSetter(), fadeJob.getItemSetter());65 initDeferredPipelines(*shapePlumber, fadeEffect->getBatchSetter(), fadeEffect->getItemSetter());
64 66
65 // Extract opaques / transparents / lights / metas / overlays / background67 // Extract opaques / transparents / lights / metas / overlays / background
66 const auto& opaques = items.get0()[RenderFetchCullSortTask::OPAQUE_SHAPE];68 const auto& opaques = items.get0()[RenderFetchCullSortTask::OPAQUE_SHAPE];
@@ -72,8 +74,7 @@ void RenderDeferredTask::build(JobModel& task, const render::Varying& input, ren · 5 unmodified lines
72 //const auto& background = items.get0()[RenderFetchCullSortTask::BACKGROUND];74 //const auto& background = items.get0()[RenderFetchCullSortTask::BACKGROUND];
73 const auto& spatialSelection = items[1];75 const auto& spatialSelection = items[1];
74 76
75 const auto fadeEditInput = FadeEditJob::Input(opaques, editedFadeCategory).asVarying();77 fadeEffect->build(task, opaques);
76 task.addJob<FadeEditJob>("FadeEdit", fadeEditInput);
77 78
78 // Filter the non antialiaased overlays79 // Filter the non antialiaased overlays
79 const int LAYER_NO_AA = 3;80 const int LAYER_NO_AA = 3;