Commit: a7ca8fe1dd111f0b99c1b17cdd6b0f7e1c6f987b
Author: Sergey Sharybin
Date:   Fri Jun 22 15:03:42 2018 +0200
Branches: blender2.8
https://developer.blender.org/rBa7ca8fe1dd111f0b99c1b17cdd6b0f7e1c6f987b

Modifiers: Remove lots of usages of md->scene

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

M       source/blender/modifiers/intern/MOD_cloth.c
M       source/blender/modifiers/intern/MOD_datatransfer.c
M       source/blender/modifiers/intern/MOD_displace.c
M       source/blender/modifiers/intern/MOD_dynamicpaint.c
M       source/blender/modifiers/intern/MOD_explode.c
M       source/blender/modifiers/intern/MOD_meshcache.c
M       source/blender/modifiers/intern/MOD_meshdeform.c
M       source/blender/modifiers/intern/MOD_meshsequencecache.c
M       source/blender/modifiers/intern/MOD_ocean.c
M       source/blender/modifiers/intern/MOD_particleinstance.c
M       source/blender/modifiers/intern/MOD_particlesystem.c
M       source/blender/modifiers/intern/MOD_smoke.c
M       source/blender/modifiers/intern/MOD_softbody.c
M       source/blender/modifiers/intern/MOD_warp.c
M       source/blender/modifiers/intern/MOD_wave.c
M       source/blender/modifiers/intern/MOD_weightvgedit.c
M       source/blender/modifiers/intern/MOD_weightvgmix.c
M       source/blender/modifiers/intern/MOD_weightvgproximity.c

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

diff --git a/source/blender/modifiers/intern/MOD_cloth.c 
b/source/blender/modifiers/intern/MOD_cloth.c
index 19afe30acae..05c9e44d980 100644
--- a/source/blender/modifiers/intern/MOD_cloth.c
+++ b/source/blender/modifiers/intern/MOD_cloth.c
@@ -54,6 +54,8 @@
 #include "BKE_modifier.h"
 #include "BKE_pointcache.h"
 
+#include "DEG_depsgraph_query.h"
+
 #include "MOD_util.h"
 
 static void initData(ModifierData *md)
@@ -78,6 +80,7 @@ static void deformVerts(
 {
        Mesh *mesh_src;
        ClothModifierData *clmd = (ClothModifierData *) md;
+       Scene *scene = DEG_get_evaluated_scene(ctx->depsgraph);
 
        /* check for alloc failing */
        if (!clmd->sim_parms || !clmd->coll_parms) {
@@ -123,7 +126,7 @@ static void deformVerts(
 
        BKE_mesh_apply_vert_coords(mesh_src, vertexCos);
 
-       clothModifier_do(clmd, ctx->depsgraph, md->scene, ctx->object, 
mesh_src, vertexCos);
+       clothModifier_do(clmd, ctx->depsgraph, scene, ctx->object, mesh_src, 
vertexCos);
 
        BKE_id_free(NULL, mesh_src);
 }
diff --git a/source/blender/modifiers/intern/MOD_datatransfer.c 
b/source/blender/modifiers/intern/MOD_datatransfer.c
index 8a95c8020e9..5bdb90ec42d 100644
--- a/source/blender/modifiers/intern/MOD_datatransfer.c
+++ b/source/blender/modifiers/intern/MOD_datatransfer.c
@@ -46,6 +46,8 @@
 #include "BKE_modifier.h"
 #include "BKE_report.h"
 
+#include "DEG_depsgraph_query.h"
+
 #include "MEM_guardedalloc.h"
 #include "MOD_util.h"
 
@@ -150,6 +152,7 @@ static bool isDisabled(const struct Scene *UNUSED(scene), 
ModifierData *md, int
 static Mesh *applyModifier(ModifierData *md, const ModifierEvalContext *ctx, 
Mesh *me_mod)
 {
        DataTransferModifierData *dtmd = (DataTransferModifierData *) md;
+       struct Scene *scene = DEG_get_evaluated_scene(ctx->depsgraph);
        Mesh *result = me_mod;
        ReportList reports;
 
@@ -184,7 +187,7 @@ static Mesh *applyModifier(ModifierData *md, const 
ModifierEvalContext *ctx, Mes
        BKE_reports_init(&reports, RPT_STORE);
 
        /* Note: no islands precision for now here. */
-       BKE_object_data_transfer_ex(ctx->depsgraph, md->scene, dtmd->ob_source, 
ctx->object, result, dtmd->data_types, false,
+       BKE_object_data_transfer_ex(ctx->depsgraph, scene, dtmd->ob_source, 
ctx->object, result, dtmd->data_types, false,
                             dtmd->vmap_mode, dtmd->emap_mode, dtmd->lmap_mode, 
dtmd->pmap_mode,
                             space_transform, false, max_dist, 
dtmd->map_ray_radius, 0.0f,
                             dtmd->layers_select_src, dtmd->layers_select_dst,
diff --git a/source/blender/modifiers/intern/MOD_displace.c 
b/source/blender/modifiers/intern/MOD_displace.c
index 28791899e02..351a496daa1 100644
--- a/source/blender/modifiers/intern/MOD_displace.c
+++ b/source/blender/modifiers/intern/MOD_displace.c
@@ -53,6 +53,7 @@
 #include "BKE_object.h"
 
 #include "DEG_depsgraph.h"
+#include "DEG_depsgraph_query.h"
 
 #include "MEM_guardedalloc.h"
 
@@ -159,6 +160,7 @@ static void updateDepsgraph(ModifierData *md, const 
ModifierUpdateDepsgraphConte
 
 typedef struct DisplaceUserdata {
        /*const*/ DisplaceModifierData *dmd;
+       struct Scene *scene;
        struct ImagePool *pool;
        MDeformVert *dvert;
        float weight;
@@ -205,7 +207,7 @@ static void displaceModifier_do_task(
 
        if (dmd->texture) {
                texres.nor = NULL;
-               BKE_texture_get_value_ex(dmd->modifier.scene, dmd->texture, 
tex_co[iter], &texres, data->pool, false);
+               BKE_texture_get_value_ex(data->scene, dmd->texture, 
tex_co[iter], &texres, data->pool, false);
                delta = texres.tin - dmd->midlevel;
        }
        else {
@@ -330,6 +332,7 @@ static void displaceModifier_do(
        }
 
        DisplaceUserdata data = {NULL};
+       data.scene = DEG_get_evaluated_scene(ctx->depsgraph);
        data.dmd = dmd;
        data.dvert = dvert;
        data.weight = weight;
diff --git a/source/blender/modifiers/intern/MOD_dynamicpaint.c 
b/source/blender/modifiers/intern/MOD_dynamicpaint.c
index 5ca367e342a..6619f0079e7 100644
--- a/source/blender/modifiers/intern/MOD_dynamicpaint.c
+++ b/source/blender/modifiers/intern/MOD_dynamicpaint.c
@@ -42,8 +42,8 @@
 #include "BKE_modifier.h"
 
 #include "DEG_depsgraph.h"
-
 #include "DEG_depsgraph_build.h"
+#include "DEG_depsgraph_query.h"
 
 #include "MOD_modifiertypes.h"
 
@@ -107,7 +107,8 @@ static DerivedMesh *applyModifier(
 
        /* dont apply dynamic paint on orco dm stack */
        if (!(ctx->flag & MOD_APPLY_ORCO)) {
-               return dynamicPaint_Modifier_do(pmd, ctx->depsgraph, md->scene, 
ctx->object, dm);
+               Scene *scene = DEG_get_evaluated_scene(ctx->depsgraph);
+               return dynamicPaint_Modifier_do(pmd, ctx->depsgraph, scene, 
ctx->object, dm);
        }
        return dm;
 }
diff --git a/source/blender/modifiers/intern/MOD_explode.c 
b/source/blender/modifiers/intern/MOD_explode.c
index cbb15665bef..948aaf0751e 100644
--- a/source/blender/modifiers/intern/MOD_explode.c
+++ b/source/blender/modifiers/intern/MOD_explode.c
@@ -51,6 +51,8 @@
 #include "BKE_particle.h"
 #include "BKE_scene.h"
 
+#include "DEG_depsgraph_query.h"
+
 #include "MEM_guardedalloc.h"
 
 #include "MOD_modifiertypes.h"
@@ -1028,18 +1030,20 @@ static DerivedMesh *applyModifier(
                        createFacepa(emd, psmd, derivedData);
                }
                /* 2. create new mesh */
+               Scene *scene = DEG_get_evaluated_scene(ctx->depsgraph);
                if (emd->flag & eExplodeFlag_EdgeCut) {
                        int *facepa = emd->facepa;
                        DerivedMesh *splitdm = cutEdges(emd, dm);
-                       DerivedMesh *explode = explodeMesh(emd, psmd, ctx, 
md->scene, splitdm);
+                       DerivedMesh *explode = explodeMesh(emd, psmd, ctx, 
scene, splitdm);
 
                        MEM_freeN(emd->facepa);
                        emd->facepa = facepa;
                        splitdm->release(splitdm);
                        return explode;
                }
-               else
-                       return explodeMesh(emd, psmd, ctx, md->scene, 
derivedData);
+               else {
+                       return explodeMesh(emd, psmd, ctx, scene, derivedData);
+               }
        }
        return derivedData;
 }
diff --git a/source/blender/modifiers/intern/MOD_meshcache.c 
b/source/blender/modifiers/intern/MOD_meshcache.c
index 145bceb99aa..9d6dfc0e1eb 100644
--- a/source/blender/modifiers/intern/MOD_meshcache.c
+++ b/source/blender/modifiers/intern/MOD_meshcache.c
@@ -42,6 +42,8 @@
 #include "BKE_mesh.h"
 #include "BKE_main.h"
 
+#include "DEG_depsgraph_query.h"
+
 #include "MEM_guardedalloc.h"
 
 #include "MOD_meshcache_util.h"  /* utility functions */
@@ -80,7 +82,7 @@ static bool isDisabled(const struct Scene *UNUSED(scene), 
ModifierData *md, int
 
 
 static void meshcache_do(
-        MeshCacheModifierData *mcmd, Object *ob, DerivedMesh *UNUSED(dm),
+        MeshCacheModifierData *mcmd, Scene *scene, Object *ob, DerivedMesh 
*UNUSED(dm),
         float (*vertexCos_Real)[3], int numVerts)
 {
        const bool use_factor = mcmd->factor < 1.0f;
@@ -88,7 +90,6 @@ static void meshcache_do(
                                      MEM_malloc_arrayN(numVerts, 
sizeof(*vertexCos_Store), __func__) : NULL;
        float (*vertexCos)[3] = vertexCos_Store ? vertexCos_Store : 
vertexCos_Real;
 
-       Scene *scene = mcmd->modifier.scene;
        const float fps = FPS;
 
        char filepath[FILE_MAX];
@@ -270,8 +271,9 @@ static void deformVerts(
         int numVerts)
 {
        MeshCacheModifierData *mcmd = (MeshCacheModifierData *)md;
+       Scene *scene = DEG_get_evaluated_scene(ctx->depsgraph);
 
-       meshcache_do(mcmd, ctx->object, derivedData, vertexCos, numVerts);
+       meshcache_do(mcmd, scene, ctx->object, derivedData, vertexCos, 
numVerts);
 }
 
 static void deformVertsEM(
@@ -279,8 +281,9 @@ static void deformVertsEM(
         DerivedMesh *derivedData, float (*vertexCos)[3], int numVerts)
 {
        MeshCacheModifierData *mcmd = (MeshCacheModifierData *)md;
+       Scene *scene = DEG_get_evaluated_scene(ctx->depsgraph);
 
-       meshcache_do(mcmd, ctx->object, derivedData, vertexCos, numVerts);
+       meshcache_do(mcmd, scene, ctx->object, derivedData, vertexCos, 
numVerts);
 }
 
 
diff --git a/source/blender/modifiers/intern/MOD_meshdeform.c 
b/source/blender/modifiers/intern/MOD_meshdeform.c
index 2228366b030..ea20d5f5a0f 100644
--- a/source/blender/modifiers/intern/MOD_meshdeform.c
+++ b/source/blender/modifiers/intern/MOD_meshdeform.c
@@ -52,6 +52,7 @@
 #include "MEM_guardedalloc.h"
 
 #include "DEG_depsgraph.h"
+#include "DEG_depsgraph_query.h"
 
 #include "MOD_util.h"
 
@@ -324,8 +325,9 @@ static void meshdeformModifier_do(
 
                /* progress bar redraw can make this recursive .. */
                if (!recursive) {
+                       Scene *scene = DEG_get_evaluated_scene(ctx->depsgraph);
                        recursive = 1;
-                       mmd->bindfunc(md->scene, mmd, cagemesh, (float 
*)vertexCos, numVerts, cagemat);
+                       mmd->bindfunc(scene, mmd, cagemesh, (float *)vertexCos, 
numVerts, cagemat);
                        recursive = 0;
                }
        }
diff --git a/source/blender/modifiers/intern/MOD_meshsequencecache.c 
b/source/blender/modifiers/intern/MOD_meshsequencecache.c
index 77be2d6b17a..482a74ed248 100644
--- a/source/blender/modifiers/intern/MOD_meshsequencecache.c
+++ b/source/blender/modifiers/intern/MOD_meshsequencecache.c
@@ -98,7 +98,7 @@ static Mesh *applyModifier(
        Mesh *me = (ctx->object->type == OB_MESH) ? ctx->object->data : NULL;
        Mesh *org_mesh = mesh;
 
-       Scene *scene = md->scene; /* for FPS macro */
+       Scene *scene = DEG_get_evaluated_scene(ctx->depsgraph);
        const float frame = DEG_get_ctime(ctx->depsgraph);
        const float time = BKE_cachefile_time_offset(mcmd->cache_file, frame, 
FPS);
        const char *err_str = NULL;
diff --git a/source/blender/modifiers/intern/MOD_ocean.c 
b/source/blender/modifiers/intern/MOD_ocean.c
index af5b537ca52..2de737129fa 100644
--- a/source/blender/modifiers/intern/MOD_ocean.c
+++ b/source/blender/modifiers/intern/MOD_ocean.c
@@ -46,6 +46,8 @@
 #include "BKE_modifier.h"
 #include "BKE_ocean.h"
 
+#include "DEG_depsgraph_query.h"
+
 #include "MOD_modifiertypes.h"
 
 #ifdef WITH_OCEANSIM
@@ -406,7 +408,7 @@ static DerivedMesh 
*generate_ocean_geometry(OceanModifierData *omd)
 }
 
 static DerivedMesh *doOcean(
-        ModifierData *md, Object *ob,
+        ModifierData *md, Scene *scene, Object *ob,
         DerivedMesh *derivedData,
         int UNUSED(useRenderParams))
 {
@@ -450,7 +452,7 @@ static DerivedMesh *doOcean(
                if (!omd->oceancache) {
                        init_cache_data(ob, omd);
                }
-               BKE_ocean_simulate_cache(omd->oceancache, md->scene->r.cfra);
+               BKE_ocean_simulate_cache(omd->oceancache, scene->r.cfra);
        }
        else {
                simulate_ocean_modifier(omd);
@@ -464,7 +466,7 @@ static DerivedMesh *doOcean(
                dm = CDDM_copy(derivedData);
        }
 
-       cfra = md->scene->r.cfra

@@ Diff output truncated at 10240 characters. @@

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
https://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to