summaryrefslogtreecommitdiff
path: root/source
diff options
context:
space:
mode:
Diffstat (limited to 'source')
-rwxr-xr-xsource/main.cpp27
-rw-r--r--source/todo.txt2
2 files changed, 9 insertions, 20 deletions
diff --git a/source/main.cpp b/source/main.cpp
index ae6b5a4..f1d76a9 100755
--- a/source/main.cpp
+++ b/source/main.cpp
@@ -900,13 +900,7 @@ int main(int argc, char* argv[])
// @todo: rename rect members (makes more sense)
// tl -> lt
// br -> rb
- {
- // @step: calculate_camera_bounds
- Vec2 cam_lb = Vec2{renderer.cam_pos.x, renderer.cam_pos.y};
- Vec2 cam_rt = Vec2{renderer.cam_pos.x + camera_screen_size.x, renderer.cam_pos.y + camera_screen_size.y};
- state.camera_bounds.lb = cam_lb;
- state.camera_bounds.rt = cam_rt;
- }
+ state.camera_bounds = rect(renderer.cam_pos, camera_screen_size);
// @section: level elements
@@ -927,8 +921,8 @@ int main(int argc, char* argv[])
load_level(&state, &level_arena, level_path);
// put camera on player
Entity player = state.game_level.entities[state.player.index];
- renderer.cam_pos.x = player.position.x;
- renderer.cam_pos.y = player.position.y;
+ renderer.cam_pos.x = player.position.x - (40.0f * state.render_scale.x);
+ renderer.cam_pos.y = player.position.y - (40.0f * state.render_scale.y);
effective_force = 0.0f;
player_velocity = Vec2{0.0f, 0.0f};
gravity_diry = 1.0f;
@@ -1065,11 +1059,12 @@ int main(int argc, char* argv[])
load_level(&state, &level_arena, level_path);
// put camera on player
Entity player = state.game_level.entities[state.player.index];
- renderer.cam_pos.x = player.position.x;
- renderer.cam_pos.y = player.position.y;
+ renderer.cam_pos.x = player.position.x - (40.0f * state.render_scale.x);
+ renderer.cam_pos.y = player.position.y - (40.0f * state.render_scale.y);
effective_force = 0.0f;
player_velocity = Vec2{0.0f, 0.0f};
gravity_diry = 1.0f;
+ renderer.cam_update = 1;
}
}
#if CAM_MANUAL_MOVE
@@ -1510,7 +1505,7 @@ int main(int argc, char* argv[])
state.game_level.entities[state.player.index] = player;
}
- // @func: update_camera
+ // @section: camera_update
{
// camera movement and handling
// Cases:
@@ -1629,13 +1624,7 @@ int main(int argc, char* argv[])
renderer.preset_up_dir
);
renderer.cam_update = false;
- {
- // @step: calculate_camera_bounds
- Vec2 cam_lb = Vec2{renderer.cam_pos.x, renderer.cam_pos.y};
- Vec2 cam_rt = Vec2{renderer.cam_pos.x + camera_screen_size.x, renderer.cam_pos.y + camera_screen_size.y};
- state.camera_bounds.lb = cam_lb;
- state.camera_bounds.rt = cam_rt;
- }
+ state.camera_bounds = rect(renderer.cam_pos, camera_screen_size);
}
}
diff --git a/source/todo.txt b/source/todo.txt
index efc8285..18ea2e1 100644
--- a/source/todo.txt
+++ b/source/todo.txt
@@ -32,9 +32,9 @@ in the level file.
* add lines for easier distinction
* get world position via mouse
- setup ui camera
+- Fix camera jerk on level load (just a bug)
DOING:
-- Fix camera jerk on level load
BLOCKED:
- Audio: figure out what the correct audio sound for jumping will be.