Subdiv: Enable topology cache for animation
authorSergey Sharybin <sergey.vfx@gmail.com>
Thu, 21 Feb 2019 14:15:10 +0000 (15:15 +0100)
committerSergey Sharybin <sergey.vfx@gmail.com>
Thu, 21 Feb 2019 14:25:02 +0000 (15:25 +0100)
This commit makes it so both Subdivision Surface and Multiresolution
modifiers are caching OpenSubdiv topology. This cuts down evaluation
time quite a bit, especially for meshes which don't have many extra
ordinary verticies.

Only working for animation. Other modifications like edit mode needs
more work to make topology cache preserved by copy-on-write.

source/blender/modifiers/intern/MOD_multires.c
source/blender/modifiers/intern/MOD_subsurf.c

index 34162b8..0b3c9e1 100644 (file)
@@ -80,9 +80,7 @@ static Subdiv *subdiv_descriptor_ensure(MultiresModifierData *mmd,
 {
        Subdiv *subdiv = BKE_subdiv_update_from_mesh(
                mmd->subdiv, subdiv_settings, mesh);
-       if (false) {
-               mmd->subdiv = subdiv;
-       }
+       mmd->subdiv = subdiv;
        return subdiv;
 }
 
index be1dffd..d079d53 100644 (file)
@@ -123,9 +123,7 @@ static Subdiv *subdiv_descriptor_ensure(SubsurfModifierData *smd,
 {
        Subdiv *subdiv = BKE_subdiv_update_from_mesh(
                smd->subdiv, subdiv_settings, mesh);
-       if (false) {
-               smd->subdiv = subdiv;
-       }
+       smd->subdiv = subdiv;
        return subdiv;
 }