Revision: 43822
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=43822
Author: lukastoenne
Date: 2012-02-01 15:58:26 +0000 (Wed, 01 Feb 2012)
Log Message:
-----------
Optional offset for fluid cache frame reading.
This was a request by Daniel Salazar. It adds a new frame offset variable to
fluid sim settings, which can be used to display baked fluid sims at different
times. Eventually this could be replaced by real NLA strips for cached data,
but until then this is a simple way to have more flexible cache result usage.
Not strictly a BCon3 patch, but after IRC discussion with Genscher, ZanQdo and
kaito decided to commit it anyway, since it's a small feature and makes fluid
sim a bit more usable. Similar patch for point cache (particles, smoke, cloth)
is being worked on as well.
Modified Paths:
--------------
trunk/blender/release/scripts/startup/bl_ui/properties_physics_fluid.py
trunk/blender/source/blender/makesdna/DNA_object_fluidsim.h
trunk/blender/source/blender/makesrna/intern/rna_fluidsim.c
trunk/blender/source/blender/modifiers/intern/MOD_fluidsim_util.c
Modified:
trunk/blender/release/scripts/startup/bl_ui/properties_physics_fluid.py
===================================================================
--- trunk/blender/release/scripts/startup/bl_ui/properties_physics_fluid.py
2012-02-01 13:38:23 UTC (rev 43821)
+++ trunk/blender/release/scripts/startup/bl_ui/properties_physics_fluid.py
2012-02-01 15:58:26 UTC (rev 43822)
@@ -85,6 +85,7 @@
col.label()
col.prop(fluid, "use_speed_vectors")
col.prop(fluid, "use_reverse_frames")
+ col.prop(fluid, "frame_offset", text="Offset")
layout.prop(fluid, "filepath", text="")
Modified: trunk/blender/source/blender/makesdna/DNA_object_fluidsim.h
===================================================================
--- trunk/blender/source/blender/makesdna/DNA_object_fluidsim.h 2012-02-01
13:38:23 UTC (rev 43821)
+++ trunk/blender/source/blender/makesdna/DNA_object_fluidsim.h 2012-02-01
15:58:26 UTC (rev 43822)
@@ -74,6 +74,9 @@
float animStart, animEnd;
/* bake start end time (in blender frames) */
int bakeStart, bakeEnd;
+ /* offset for baked frames */
+ int frameOffset;
+ int pad;
/* g star param (LBM compressibility) */
float gstar;
/* activate refinement? */
Modified: trunk/blender/source/blender/makesrna/intern/rna_fluidsim.c
===================================================================
--- trunk/blender/source/blender/makesrna/intern/rna_fluidsim.c 2012-02-01
13:38:23 UTC (rev 43821)
+++ trunk/blender/source/blender/makesrna/intern/rna_fluidsim.c 2012-02-01
15:58:26 UTC (rev 43822)
@@ -335,6 +335,11 @@
RNA_def_property_range(prop, 0, 100);
RNA_def_property_ui_text(prop, "End Time", "Simulation time of the last
blender frame (in seconds)");
+ prop= RNA_def_property(srna, "frame_offset", PROP_INT, PROP_NONE);
+ RNA_def_property_int_sdna(prop, NULL, "frameOffset");
+ RNA_def_property_ui_text(prop, "Cache Offset", "Offset when reading
baked cache");
+ RNA_def_property_update(prop, NC_OBJECT, "rna_fluid_update");
+
prop= RNA_def_property(srna, "simulation_scale", PROP_FLOAT, PROP_NONE);
RNA_def_property_float_sdna(prop, NULL, "realsize");
RNA_def_property_range(prop, 0.001, 10);
Modified: trunk/blender/source/blender/modifiers/intern/MOD_fluidsim_util.c
===================================================================
--- trunk/blender/source/blender/modifiers/intern/MOD_fluidsim_util.c
2012-02-01 13:38:23 UTC (rev 43821)
+++ trunk/blender/source/blender/modifiers/intern/MOD_fluidsim_util.c
2012-02-01 15:58:26 UTC (rev 43822)
@@ -475,6 +475,9 @@
break;
}
+ /* offset baked frame */
+ curFrame += fss->frameOffset;
+
BLI_path_abs(targetFile, modifier_path_relbase(ob));
BLI_path_frame(targetFile, curFrame, 0); // fixed #frame-no
_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs