Where does Blender report on fluid simulation bake completion time?
-
2$\begingroup$ I don't seem to remember this.. What versions do you think did this? $\endgroup$– gandalf3 ♦Mar 15, 2014 at 6:20
-
$\begingroup$ I've checked older versions and don't see it either. Is there a log file or other location containing this info? I'm experimenting with simulation settings affect on bake time but I bake overnight and thus cannot use a stop watch. $\endgroup$– futurehackMar 15, 2014 at 19:12
-
$\begingroup$ What about using a script or something? $\endgroup$– gandalf3 ♦Mar 15, 2014 at 22:36
-
$\begingroup$ Thanks for your response gandalf3. However, I would like to know if Blender natively reports this information before I explore scripting. $\endgroup$– futurehackMar 15, 2014 at 23:07
1 Answer
I don't know of any bake times being displayed.
To work out the bake time of a simulation that you have already baked, look in the cache folder and compare the earliest modified date to the latest modified date, the difference is how long it took to bake.
It isn't hard to setup a timer yourself. Rather than start the bake by pressing the bake button, you use a simple script that runs the bake operator and has timing around it.
import bpy
import time
startTime = time.process_time()
bpy.ops.fluid.bake()
timeToBake = time.process_time() - startTime
print("Time to bake the fluid sim was",timeToBake,"seconds")
This will print the time to the console - that is the terminal you started blender in. Alternatively you can paste the above code into blenders python console to see the result there when it is finished.
You also use wallclock timing with something like --
print("Start - ",time.strftime("%Y-%m-%d %H:%M:%S"))
print("End - ",time.strftime("%Y-%m-%d %H:%M:%S"))
around the fluid.bake
-
$\begingroup$ Thanks for the script sambler. Unfortunately, I am unfamiliar with Python scripting. I ran the script from the Python Console and the Text Editor and in both cases Blender which reports that the bake took 1.4 seconds (unlikely as I've a resolution of 200). Without changing any settings, when I click the Bake button, it takes all night. Am I meant to insert variables into that script? $\endgroup$ Mar 18, 2014 at 5:08
-
$\begingroup$ The line
bpy.ops.fluid.bake()
is the same code that gets run when you press the fluid bake button, running the script as it is should bake the fluid sim just the same as clicking the bake button. The fluid domain would need to be the selected object, I get an error if it isn't selected. Does entering thebpy.ops.fluid.bake()
command by itself into blenders python console start the bake? Do you have the()
after the bake command? $\endgroup$– samblerMar 18, 2014 at 10:37 -
$\begingroup$ Executing the bpy.ops.fluid.bake() command into the Python Console comes back with {'FINISHED'} within a second or so. The domain object is selected, and the command includes the (). I've tried using a new, empty cache directory and a different version of Blender but the script command doesn't actually execute the bake for me. Any other ideas? $\endgroup$ Mar 19, 2014 at 0:47
-
-
$\begingroup$ @gandalf3 that depends on what you are doing, this was expected to be run from within blender as an alternative to the bake button and only to give a time taken, an active simulation was therefore assumed to be selected (noted in my first comment) but if run in the background without a gui or for a more robust solution then you would need to specify the context details. $\endgroup$– samblerJul 31, 2014 at 3:58