Fixed width of CapsuleShape2D::get_rect + set center to center of shape

The width of the rect was only half of the width of the shape, and
the 0;0 coord was at the top left of the rect.
Now the width properly matches the width of the shape, and the 0;0
coord is at the center of the shape. It should match the behavior
of Godot 3.X.

(cherry picked from commit ab5462e386)
This commit is contained in:
FranckRJ 2023-05-14 15:46:57 +02:00 committed by Yuri Sizov
parent acd975a45a
commit ac1885925c
1 changed files with 2 additions and 1 deletions

View File

@ -97,7 +97,8 @@ void CapsuleShape2D::draw(const RID &p_to_rid, const Color &p_color) {
}
Rect2 CapsuleShape2D::get_rect() const {
return Rect2(0, 0, radius, height);
const Vector2 half_size = Vector2(radius, height * 0.5);
return Rect2(-half_size, half_size * 2.0);
}
real_t CapsuleShape2D::get_enclosing_radius() const {