This commit is contained in:
2026-07-02 04:02:28 +03:00
parent fdcb7845cf
commit 9eb4dd1155
+6 -5
View File
@@ -15,12 +15,13 @@ namespace omath::algorithm
auto look_at_angles = camera.calc_look_at_angles(position); auto look_at_angles = camera.calc_look_at_angles(position);
auto current_angles = camera.get_view_angles(); auto current_angles = camera.get_view_angles();
auto yaw = look_at_angles.yaw - current_angles.yaw + decltype(current_angles.yaw)::from_degrees(180); auto yaw = current_angles.yaw - look_at_angles.yaw - decltype(current_angles.yaw)::from_degrees(90);
auto right_yaw = camera.calc_look_at_angles(camera.get_origin() + camera.get_abs_right()).yaw auto right_yaw = current_angles.yaw
- current_angles.yaw + decltype(current_angles.yaw)::from_degrees(180); - camera.calc_look_at_angles(camera.get_origin() + camera.get_abs_right()).yaw
const auto right_scale = right_yaw.sin() < 0 ? -1.f : 1.f; - decltype(current_angles.yaw)::from_degrees(90);
const auto sign = right_yaw.cos() < 0 ? -1.f : 1.f;
return omath::Vector2<float>(static_cast<float>(yaw.sin()) * right_scale, yaw.cos()) return omath::Vector2<float>(static_cast<float>(yaw.cos()) * sign, static_cast<float>(yaw.sin()))
* (camera.get_origin().distance_to(position) * scale); * (camera.get_origin().distance_to(position) * scale);
} }
} // namespace omath::algorithm } // namespace omath::algorithm