[Bf-blender-cvs] [d4f27b960bf] cycles_cryptomatte: Cycles: Switched CPU cryptomatte to use unordered_map instead of map.
Stefan Werner
noreply at git.blender.org
Wed Jul 11 12:20:47 CEST 2018
Commit: d4f27b960bf8ae75eff330f8f19e42de815ef337
Author: Stefan Werner
Date: Wed Jul 11 12:20:44 2018 +0200
Branches: cycles_cryptomatte
https://developer.blender.org/rBd4f27b960bf8ae75eff330f8f19e42de815ef337
Cycles: Switched CPU cryptomatte to use unordered_map instead of map.
===================================================================
M intern/cycles/device/device_cpu.cpp
M intern/cycles/kernel/kernel_globals.h
===================================================================
diff --git a/intern/cycles/device/device_cpu.cpp b/intern/cycles/device/device_cpu.cpp
index e70c3e0d78c..2f70a49d823 100644
--- a/intern/cycles/device/device_cpu.cpp
+++ b/intern/cycles/device/device_cpu.cpp
@@ -674,7 +674,7 @@ public:
return true;
}
- void path_trace(DeviceTask &task, RenderTile &tile, KernelGlobals *kg, vector<map<float, float> >& coverage_object, vector<map<float, float> >& coverage_material, vector<map<float, float > >& coverage_asset)
+ void path_trace(DeviceTask &task, RenderTile &tile, KernelGlobals *kg, vector<unordered_map<float, float> >& coverage_object, vector<unordered_map<float, float> >& coverage_material, vector<unordered_map<float, float > >& coverage_asset)
{
scoped_timer timer(&tile.buffers->render_time);
kg->coverage_object = kg->coverage_material = NULL;
@@ -776,9 +776,9 @@ public:
while(task.acquire_tile(this, tile)) {
if(tile.task == RenderTile::PATH_TRACE) {
/* cryptomatte data. This needs a better place than here. */
- vector<map<float, float> >coverage_object;
- vector<map<float, float> >coverage_material;
- vector<map<float, float> >coverage_asset;
+ vector<unordered_map<float, float> >coverage_object;
+ vector<unordered_map<float, float> >coverage_material;
+ vector<unordered_map<float, float> >coverage_asset;
if(use_split_kernel) {
device_only_memory<uchar> void_buffer(this, "void_buffer");
diff --git a/intern/cycles/kernel/kernel_globals.h b/intern/cycles/kernel/kernel_globals.h
index 5276ea4b08b..b2dedbba37d 100644
--- a/intern/cycles/kernel/kernel_globals.h
+++ b/intern/cycles/kernel/kernel_globals.h
@@ -71,9 +71,9 @@ typedef struct KernelGlobals {
int decoupled_volume_steps_index;
/* A buffer for storing per-pixel coverage for Cryptomatte. */
- map<float, float> *coverage_object;
- map<float, float> *coverage_material;
- map<float, float> *coverage_asset;
+ unordered_map<float, float> *coverage_object;
+ unordered_map<float, float> *coverage_material;
+ unordered_map<float, float> *coverage_asset;
/* split kernel */
SplitData split_data;
More information about the Bf-blender-cvs
mailing list