Merge branch 'master' into blender2.8
[blender.git] / source / blender / modifiers / intern / MOD_fluidsim_util.c
index 479466ead658db8f59eadd0f9c940954f56ac470..4bcc14236a03ce7c43f0e94bf56a3387b5299045 100644 (file)
@@ -53,6 +53,9 @@
 #  include "BKE_global.h"
 #endif
 
+#include "DEG_depsgraph.h"
+#include "DEG_depsgraph_query.h"
+
 #include "MOD_fluidsim_util.h"
 #include "MOD_modifiertypes.h"
 
@@ -513,17 +516,20 @@ static DerivedMesh *fluidsim_read_cache(
 #endif // WITH_MOD_FLUID
 
 DerivedMesh *fluidsimModifier_do(
-        FluidsimModifierData *fluidmd, Scene *scene,
-        Object *ob,
-        DerivedMesh *dm,
-        int useRenderParams, int UNUSED(isFinalCalc))
+        FluidsimModifierData *fluidmd,
+        const ModifierEvalContext *ctx,
+        DerivedMesh *dm)
 {
 #ifdef WITH_MOD_FLUID
+       Object *ob = ctx->object;
+       Depsgraph *depsgraph = ctx->depsgraph;
+       const bool useRenderParams = (ctx->flag & MOD_APPLY_RENDER) != 0;
+//     const bool isFinalCalc = (ctx->flag & MOD_APPLY_USECACHE) != 0;
        DerivedMesh *result = NULL;
        int framenr;
        FluidsimSettings *fss = NULL;
 
-       framenr = (int)scene->r.cfra;
+       framenr = (int)DEG_get_ctime(depsgraph);
        
        /* only handle fluidsim domains */
        if (fluidmd && fluidmd->fss && (fluidmd->fss->type != OB_FLUIDSIM_DOMAIN))
@@ -553,10 +559,8 @@ DerivedMesh *fluidsimModifier_do(
 #else
        /* unused */
        (void)fluidmd;
-       (void)scene;
-       (void)ob;
+       (void)ctx;
        (void)dm;
-       (void)useRenderParams;
        return NULL;
 #endif
 }