[Bf-blender-cvs] [620b190e521] geometry-nodes-simulation: Fix delta time output
Hans Goudey
noreply at git.blender.org
Sat Dec 10 21:07:15 CET 2022
Commit: 620b190e521e9e7fd21115126cc5733a06ca4e6f
Author: Hans Goudey
Date: Sat Dec 10 14:07:09 2022 -0600
Branches: geometry-nodes-simulation
https://developer.blender.org/rB620b190e521e9e7fd21115126cc5733a06ca4e6f
Fix delta time output
Output time in seconds rather than frame units
===================================================================
M source/blender/nodes/geometry/nodes/node_geo_simulation_input.cc
===================================================================
diff --git a/source/blender/nodes/geometry/nodes/node_geo_simulation_input.cc b/source/blender/nodes/geometry/nodes/node_geo_simulation_input.cc
index c8c038b748b..d4ca1ae22c3 100644
--- a/source/blender/nodes/geometry/nodes/node_geo_simulation_input.cc
+++ b/source/blender/nodes/geometry/nodes/node_geo_simulation_input.cc
@@ -84,7 +84,9 @@ static void node_geo_exec(GeoNodeExecParams params)
}
if (params.lazy_output_is_required("Delta Time")) {
- const float delta_time = cache->is_empty() ? 0.0f : scene_ctime - cache->last_run_time()->time;
+ const float time_diff = cache->is_empty() ? 0.0f : scene_ctime - cache->last_run_time()->time;
+ const double frame_rate = (double(scene->r.frs_sec) / double(scene->r.frs_sec_base));
+ const float delta_time = float(std::max(0.0f, time_diff) / frame_rate);
params.set_output("Delta Time", delta_time);
}
More information about the Bf-blender-cvs
mailing list