You've already forked godot
mirror of
https://github.com/godotengine/godot.git
synced 2025-11-04 12:00:25 +00:00
Add alternative pixel rounding
This commit is contained in:
@@ -267,7 +267,7 @@ void AnimatedSprite2D::_notification(int p_what) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (get_viewport() && get_viewport()->is_snap_2d_transforms_to_pixel_enabled()) {
|
if (get_viewport() && get_viewport()->is_snap_2d_transforms_to_pixel_enabled()) {
|
||||||
ofs = ofs.round();
|
ofs = (ofs + Point2(0.5, 0.5)).floor();
|
||||||
}
|
}
|
||||||
|
|
||||||
Rect2 dst_rect(ofs, s);
|
Rect2 dst_rect(ofs, s);
|
||||||
|
|||||||
@@ -98,7 +98,7 @@ void Sprite2D::_get_rects(Rect2 &r_src_rect, Rect2 &r_dst_rect, bool &r_filter_c
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (get_viewport() && get_viewport()->is_snap_2d_transforms_to_pixel_enabled()) {
|
if (get_viewport() && get_viewport()->is_snap_2d_transforms_to_pixel_enabled()) {
|
||||||
dest_offset = dest_offset.round();
|
dest_offset = (dest_offset + Point2(0.5, 0.5)).floor();
|
||||||
}
|
}
|
||||||
|
|
||||||
r_dst_rect = Rect2(dest_offset, frame_size);
|
r_dst_rect = Rect2(dest_offset, frame_size);
|
||||||
@@ -400,7 +400,7 @@ Rect2 Sprite2D::get_rect() const {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (get_viewport() && get_viewport()->is_snap_2d_transforms_to_pixel_enabled()) {
|
if (get_viewport() && get_viewport()->is_snap_2d_transforms_to_pixel_enabled()) {
|
||||||
ofs = ofs.round();
|
ofs = (ofs + Point2(0.5, 0.5)).floor();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (s == Size2(0, 0)) {
|
if (s == Size2(0, 0)) {
|
||||||
|
|||||||
@@ -1249,7 +1249,7 @@ int RichTextLabel::_draw_line(ItemFrame *p_frame, int p_line, const Vector2 &p_o
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (is_inside_tree() && get_viewport()->is_snap_2d_transforms_to_pixel_enabled()) {
|
if (is_inside_tree() && get_viewport()->is_snap_2d_transforms_to_pixel_enabled()) {
|
||||||
fx_offset = fx_offset.round();
|
fx_offset = (fx_offset + Point2(0.5, 0.5)).floor();
|
||||||
}
|
}
|
||||||
|
|
||||||
Vector2 char_off = char_xform.get_origin();
|
Vector2 char_off = char_xform.get_origin();
|
||||||
|
|||||||
@@ -284,8 +284,8 @@ void RendererCanvasCull::_cull_canvas_item(Item *p_canvas_item, const Transform2
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (snapping_2d_transforms_to_pixel) {
|
if (snapping_2d_transforms_to_pixel) {
|
||||||
final_xform.columns[2] = final_xform.columns[2].round();
|
final_xform.columns[2] = (final_xform.columns[2] + Point2(0.5, 0.5)).floor();
|
||||||
parent_xform.columns[2] = parent_xform.columns[2].round();
|
parent_xform.columns[2] = (parent_xform.columns[2] + Point2(0.5, 0.5)).floor();
|
||||||
}
|
}
|
||||||
|
|
||||||
final_xform = parent_xform * final_xform;
|
final_xform = parent_xform * final_xform;
|
||||||
|
|||||||
Reference in New Issue
Block a user