From 0a34ee913884707986ba03bfab76443914d5e6dc Mon Sep 17 00:00:00 2001 From: Zach Pomerantz Date: Wed, 20 Jan 2016 12:39:27 -0800 Subject: [PATCH] Externalize list sizing for render::cullItems --- libraries/render/src/render/DrawTask.cpp | 4 +--- libraries/render/src/render/DrawTask.h | 2 ++ 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/libraries/render/src/render/DrawTask.cpp b/libraries/render/src/render/DrawTask.cpp index 9e3723da2a..191cb693fd 100755 --- a/libraries/render/src/render/DrawTask.cpp +++ b/libraries/render/src/render/DrawTask.cpp @@ -28,9 +28,6 @@ void render::cullItems(const RenderContextPointer& renderContext, const CullFunc RenderArgs* args = renderContext->getArgs(); ViewFrustum* frustum = args->_viewFrustum; - outItems.clear(); - outItems.reserve(inItems.size()); - details._considered += inItems.size(); // Culling / LOD @@ -208,6 +205,7 @@ void DrawLight::run(const SceneContextPointer& sceneContext, const RenderContext auto& details = args->_details.edit(RenderDetails::OTHER_ITEM); ItemIDsBounds culledItems; + culledItems.reserve(inItems.size()); cullItems(renderContext, _cullFunctor, details, inItems, culledItems); gpu::doInBatch(args->_context, [&](gpu::Batch& batch) { diff --git a/libraries/render/src/render/DrawTask.h b/libraries/render/src/render/DrawTask.h index 168f617ea8..684d8bf4ea 100755 --- a/libraries/render/src/render/DrawTask.h +++ b/libraries/render/src/render/DrawTask.h @@ -49,6 +49,8 @@ public: void run(const SceneContextPointer& sceneContext, const RenderContextPointer& renderContext, const ItemIDsBounds& inItems, ItemIDsBounds& outItems) { const auto& args = renderContext->getArgs(); auto& details = args->_details.edit(T); + outItems.clear(); + outItems.reserve(inItems.size()); render::cullItems(renderContext, _cullFunctor, details, inItems, outItems); }