From a1e817f70a05283dcd98068dd616ffb6a70b7753 Mon Sep 17 00:00:00 2001 From: ghostly_zsh Date: Thu, 11 Jun 2026 12:05:45 -0500 Subject: [PATCH] netcode: readd interpolation --- crates/unified/src/client/interpolation.rs | 38 ++++++++++++++++++++++ crates/unified/src/client/mod.rs | 3 ++ crates/unified/src/client/parts.rs | 9 ++++- 3 files changed, 49 insertions(+), 1 deletion(-) create mode 100644 crates/unified/src/client/interpolation.rs diff --git a/crates/unified/src/client/interpolation.rs b/crates/unified/src/client/interpolation.rs new file mode 100644 index 0000000000000000000000000000000000000000..065101db071c640ca6aa461d74641990f68921cb --- /dev/null +++ b/crates/unified/src/client/interpolation.rs @@ -0,0 +1,38 @@ +use std::time::{Duration}; +use avian2d::parry::transformation::utils::transform; +use crate::prelude::*; + +pub fn interpolation_plugin(app: &mut App) { + app + .add_systems(Update, update_interpolation_info) + .add_systems(Update, do_interpolation); +} + +#[derive(Component, Debug)] +pub struct TransformInterpolationInfo { + pub last_dt: Duration, + pub this_tick_start: bevy::platform::time::Instant, + pub latest_transform: Transform, + pub last_transform: Transform, +} + +fn update_interpolation_info( + mut interpolation_query: Query<(&Transform, &mut TransformInterpolationInfo), Changed>, + time: Res