add zoom to editor

This commit is contained in:
Sven Balzer 2026-04-18 14:52:11 +02:00
parent 53a7ed7890
commit 7e1894984c

View File

@ -1681,6 +1681,21 @@ static void process_event_editor(SDL_Event event) {
}
} break;
case SDL_EVENT_MOUSE_WHEEL: {
vec2 floor_pos_before = get_floor_intersection_of_mouse(vec2(event.wheel.mouse_x, event.wheel.mouse_y));
editor_camera_distance = SDL_max(0.2, editor_camera_distance - event.wheel.y * SDL_sqrt(editor_camera_distance));
view_matrix = view (vec3(editor_camera_position, 0), 0, editor_camera_distance);
inverse_view_matrix = inverse_view(vec3(editor_camera_position, 0), 0, editor_camera_distance);
vec2 floor_pos_after = get_floor_intersection_of_mouse(vec2(event.wheel.mouse_x, event.wheel.mouse_y));
editor_camera_position += floor_pos_before - floor_pos_after;
view_matrix = view (vec3(editor_camera_position, 0), 0, editor_camera_distance);
inverse_view_matrix = inverse_view(vec3(editor_camera_position, 0), 0, editor_camera_distance);
} break;
case SDL_EVENT_MOUSE_BUTTON_DOWN: {
if (io.WantCaptureMouse)
return;