diff options
Diffstat (limited to 'intern/cycles/bvh/bvh.cpp')
-rw-r--r-- | intern/cycles/bvh/bvh.cpp | 19 |
1 files changed, 6 insertions, 13 deletions
diff --git a/intern/cycles/bvh/bvh.cpp b/intern/cycles/bvh/bvh.cpp index 0d9412a5712..350ca16f6e2 100644 --- a/intern/cycles/bvh/bvh.cpp +++ b/intern/cycles/bvh/bvh.cpp @@ -190,11 +190,12 @@ void BVH::build(Progress& progress) } /* build nodes */ - vector<int> prim_type; - vector<int> prim_index; - vector<int> prim_object; - - BVHBuild bvh_build(objects, prim_type, prim_index, prim_object, params, progress); + BVHBuild bvh_build(objects, + pack.prim_type, + pack.prim_index, + pack.prim_object, + params, + progress); BVHNode *root = bvh_build.run(); if(progress.get_cancel()) { @@ -202,14 +203,6 @@ void BVH::build(Progress& progress) return; } - /* todo: get rid of this copy */ - pack.prim_type = prim_type; - pack.prim_index = prim_index; - pack.prim_object = prim_object; - prim_type.free_memory(); - prim_index.free_memory(); - prim_object.free_memory(); - /* compute SAH */ if(!params.top_level) pack.SAH = root->computeSubtreeSAHCost(params); |