[Bf-blender-cvs] [6885b905648] hair_guides_grooming: Fix hair cache update flag combination, have to include dependencies regardless of cache state.

Lukas Tönne noreply at git.blender.org
Thu May 24 11:52:15 CEST 2018


Commit: 6885b905648abd6962e08ea3497e4dc5623c6b78
Author: Lukas Tönne
Date:   Thu May 24 10:50:59 2018 +0100
Branches: hair_guides_grooming
https://developer.blender.org/rB6885b905648abd6962e08ea3497e4dc5623c6b78

Fix hair cache update flag combination, have to include dependencies regardless of cache state.

===================================================================

M	source/blender/blenkernel/intern/hair.c

===================================================================

diff --git a/source/blender/blenkernel/intern/hair.c b/source/blender/blenkernel/intern/hair.c
index e2307311c92..ff86b27d8ce 100644
--- a/source/blender/blenkernel/intern/hair.c
+++ b/source/blender/blenkernel/intern/hair.c
@@ -606,11 +606,15 @@ static int hair_export_cache_get_dependencies(int data)
 int BKE_hair_export_cache_update(HairExportCache *cache, const HairSystem *hsys,
                                  int subdiv, DerivedMesh *scalp, int requested_data)
 {
-	/* Only update invalidated parts */
-	int data = requested_data & hair_export_cache_get_required_updates(cache);
+	/* Include dependencies */
+	int data = hair_export_cache_get_dependencies(requested_data);
 	
+	int uncached = hair_export_cache_get_required_updates(cache);
 	/* Invalid data should already include all dependencies */
-	BLI_assert(data == hair_export_cache_get_dependencies(data));
+	BLI_assert(uncached == hair_export_cache_get_dependencies(uncached));
+	
+	/* Only update invalidated parts */
+	data &= uncached;
 	
 	if (data & HAIR_EXPORT_GUIDE_CURVES)
 	{



More information about the Bf-blender-cvs mailing list