summaryrefslogtreecommitdiffstats
path: root/src/tacmap.rs
diff options
context:
space:
mode:
authorJon Santmyer <jon@jonsantmyer.com>2026-05-07 10:12:11 -0400
committerJon Santmyer <jon@jonsantmyer.com>2026-05-07 10:12:11 -0400
commitc9041e2e6fe59d6127bb1085b874e8e3cda8000e (patch)
treec339cf86b88743b1c74707f6d714b1a0950c43ff /src/tacmap.rs
parentc1adf64c1aaecd5a2b9d532d707ef35971f1aa18 (diff)
downloadsystemic4x-c9041e2e6fe59d6127bb1085b874e8e3cda8000e.tar.gz
systemic4x-c9041e2e6fe59d6127bb1085b874e8e3cda8000e.tar.bz2
systemic4x-c9041e2e6fe59d6127bb1085b874e8e3cda8000e.zip
more intense position-relative rendering to fix some precision problems
Diffstat (limited to 'src/tacmap.rs')
-rw-r--r--src/tacmap.rs9
1 files changed, 3 insertions, 6 deletions
diff --git a/src/tacmap.rs b/src/tacmap.rs
index b093fc1..cd9d878 100644
--- a/src/tacmap.rs
+++ b/src/tacmap.rs
@@ -80,10 +80,7 @@ impl TacticalMap
ui_state: &mut ui::State,
dt: Duration)
{
- ui_state.camera_info.camera_scale = self.camera.get_scale();
- ui_state.camera_info.camera_pos = Some(self.camera.get_abs_position());
- ui_state.camera_info.camera_rot = Some(self.camera.get_rotation());
- self.camera.set_target(ui_state.camera_info.target);
+ self.camera.set_target(ui_state.camera_target);
self.camera_controller.update(&mut self.camera, solar_system, ui_state, dt);
}
@@ -164,7 +161,7 @@ impl TacticalMap
let scaled_radius = (screen_size.y * body.radius() * self.camera.get_scale()).max(16.0);
let world_pos = solar_system.body_position(body);
- let local_pos = world_pos - self.camera.get_abs_position();
+ let local_pos = world_pos - self.camera.get_combined_position();
let origin_pos = match body.get_orbit() {
Some(orbit) => {
@@ -172,7 +169,7 @@ impl TacticalMap
},
None => cgmath::vec3(0.0, 0.0, 0.0)
};
- let origin_local_pos = origin_pos - self.camera.get_abs_position();
+ let origin_local_pos = origin_pos - self.camera.get_origin_position();
let scaled_pos = local_pos * self.camera.get_scale() as f64;
let scaled_origin_pos = origin_local_pos * self.camera.get_scale() as f64;