0429 커서위치 뷰 월드 상호변환
dp::Vector2f local_mouse_pos = get_owner().get_local_mouse_position();
const auto& window_size = get_owner().get_owner().get_owner().get_window()->get_size();
// ============================== //
// ==== 뷰 공간의 마우스 위치 === //
dp::Vector2f view_mouse_pos = local_mouse_pos;
view_mouse_pos.x -= (window_size.x / 2.0f);
view_mouse_pos.y -= (window_size.y / 2.0f);
view_mouse_pos = dp::Convert2DVectorTo(coord_sys, view_mouse_pos);
// ============================== //
// ==== 월드 공간의 마우스 위치 === //
// -> 뷰 공간의 마우스 위치에다가 뷰 매트릭스의 역을 곱하면 나온다.
dp::Vector2f world_mouse_pos =
dp::Vector2f(
dp::inverse(get_owner().get_current_cam_2d()->get_view_matrix().get_matrix())
* dp::Vector4f(view_mouse_pos.x, view_mouse_pos.y, 0.0f, 1.0f)
);