diff options
author | Stefan Werner <stefan.werner@tangent-animation.com> | 2018-07-11 13:20:44 +0300 |
---|---|---|
committer | Stefan Werner <stefan.werner@tangent-animation.com> | 2018-07-11 13:20:44 +0300 |
commit | d4f27b960bf8ae75eff330f8f19e42de815ef337 (patch) | |
tree | edf872e27ad1d1224ed798c7e74482245e105299 | |
parent | c36977652aa834165a95f4a803313cdb61899264 (diff) |
Cycles: Switched CPU cryptomatte to use unordered_map instead of map.cycles_cryptomatte
-rw-r--r-- | intern/cycles/device/device_cpu.cpp | 8 | ||||
-rw-r--r-- | intern/cycles/kernel/kernel_globals.h | 6 |
2 files changed, 7 insertions, 7 deletions
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; |