feat: More camera controls
This commit is contained in:
14
src/main.cpp
14
src/main.cpp
@@ -60,10 +60,16 @@ int main(int argc, char *argv[])
|
||||
}
|
||||
|
||||
const bool *key_states = SDL_GetKeyboardState(NULL);
|
||||
if (key_states[SDL_SCANCODE_W]) renderer.move_camera(vec2_unity * 30 * (1.0f / 60.0f));
|
||||
if (key_states[SDL_SCANCODE_S]) renderer.move_camera(-vec2_unity * 30 * (1.0f / 60.0f));
|
||||
if (key_states[SDL_SCANCODE_A]) renderer.move_camera(-vec2_unitx * 30 * (1.0f / 60.0f));
|
||||
if (key_states[SDL_SCANCODE_D]) renderer.move_camera(vec2_unitx * 30 * (1.0f / 60.0f));
|
||||
|
||||
const float move_spd = 1.0f * renderer.get_zoom();
|
||||
const float zoom_spd = 0.5f;
|
||||
|
||||
if (key_states[SDL_SCANCODE_W]) renderer.move_camera(+vec2_unity * move_spd * (1.0f / 60.0f));
|
||||
if (key_states[SDL_SCANCODE_S]) renderer.move_camera(-vec2_unity * move_spd * (1.0f / 60.0f));
|
||||
if (key_states[SDL_SCANCODE_A]) renderer.move_camera(-vec2_unitx * move_spd * (1.0f / 60.0f));
|
||||
if (key_states[SDL_SCANCODE_D]) renderer.move_camera(+vec2_unitx * move_spd * (1.0f / 60.0f));
|
||||
if (key_states[SDL_SCANCODE_Q]) renderer.zoom_camera(+zoom_spd * (1.0f / 60.0f));
|
||||
if (key_states[SDL_SCANCODE_E]) renderer.zoom_camera(-zoom_spd * (1.0f / 60.0f));
|
||||
|
||||
// Clear
|
||||
renderer.color(0, 0, 0, 255);
|
||||
|
||||
Reference in New Issue
Block a user