Fixed Timestep Interpolation: Fix behaviour on pause

Co-authored-by: lawnjelly <lawnjelly@gmail.com>
This commit is contained in:
Ricardo Buring 2024-07-07 16:48:17 +02:00
parent f3af22b10b
commit ceadbaa299
2 changed files with 12 additions and 0 deletions

View file

@ -302,6 +302,12 @@ void Camera2D::_notification(int p_what) {
_interpolation_data.xform_prev = _interpolation_data.xform_curr; _interpolation_data.xform_prev = _interpolation_data.xform_curr;
} break; } break;
case NOTIFICATION_PAUSED: {
if (is_physics_interpolated_and_enabled()) {
_update_scroll();
}
} break;
case NOTIFICATION_TRANSFORM_CHANGED: { case NOTIFICATION_TRANSFORM_CHANGED: {
if ((!position_smoothing_enabled && !is_physics_interpolated_and_enabled()) || _is_editing_in_editor()) { if ((!position_smoothing_enabled && !is_physics_interpolated_and_enabled()) || _is_editing_in_editor()) {
_update_scroll(); _update_scroll();

View file

@ -177,6 +177,12 @@ void Node::_notification(int p_notification) {
} }
} break; } break;
case NOTIFICATION_PAUSED: {
if (is_physics_interpolated_and_enabled() && is_inside_tree()) {
reset_physics_interpolation();
}
} break;
case NOTIFICATION_PATH_RENAMED: { case NOTIFICATION_PATH_RENAMED: {
if (data.path_cache) { if (data.path_cache) {
memdelete(data.path_cache); memdelete(data.path_cache);