[Bf-blender-cvs] [48590d0dc9c] cycles_procedural_api: only use a single procedural per cache file
Kévin Dietrich
noreply at git.blender.org
Fri Oct 9 17:56:03 CEST 2020
Commit: 48590d0dc9c7061c12d8566a98a027394772410f
Author: Kévin Dietrich
Date: Wed Oct 7 02:17:59 2020 +0200
Branches: cycles_procedural_api
https://developer.blender.org/rB48590d0dc9c7061c12d8566a98a027394772410f
only use a single procedural per cache file
===================================================================
M intern/cycles/blender/blender_object.cpp
M intern/cycles/blender/blender_sync.h
===================================================================
diff --git a/intern/cycles/blender/blender_object.cpp b/intern/cycles/blender/blender_object.cpp
index d5ded6a5f33..2010935863c 100644
--- a/intern/cycles/blender/blender_object.cpp
+++ b/intern/cycles/blender/blender_object.cpp
@@ -347,13 +347,14 @@ void BlenderSync::sync_procedural(BL::Object &b_ob,
return;
}
- ObjectKey key(b_ob.parent(), NULL, b_ob, false);
+ BL::CacheFile cache_file = b_mesh_cache.cache_file();
+ void *cache_file_key = cache_file.ptr.data;
- AlembicProcedural *p = static_cast<AlembicProcedural *>(procedural_map.find(key));
+ AlembicProcedural *p = static_cast<AlembicProcedural *>(procedural_map.find(cache_file_key));
if (!p) {
p = scene->create_node<AlembicProcedural>();
- procedural_map.add(key, p);
+ procedural_map.add(cache_file_key, p);
}
else {
procedural_map.used(p);
diff --git a/intern/cycles/blender/blender_sync.h b/intern/cycles/blender/blender_sync.h
index cdb02ed837c..b039d6d086a 100644
--- a/intern/cycles/blender/blender_sync.h
+++ b/intern/cycles/blender/blender_sync.h
@@ -223,7 +223,7 @@ class BlenderSync {
id_map<void *, Shader> shader_map;
id_map<ObjectKey, Object> object_map;
- id_map<ObjectKey, Procedural> procedural_map;
+ id_map<void *, Procedural> procedural_map;
id_map<GeometryKey, Geometry> geometry_map;
id_map<ObjectKey, Light> light_map;
id_map<ParticleSystemKey, ParticleSystem> particle_system_map;
More information about the Bf-blender-cvs
mailing list