Merge pull request #59682 from Sauermann/fix-following-viewport-transform
Include the follow-viewport-transform into CanvasLayer transform calculations
This commit is contained in:
commit
f29f3db419
6 changed files with 27 additions and 7 deletions
|
|
@ -144,7 +144,7 @@ void CanvasItem::_redraw_callback() {
|
|||
|
||||
Transform2D CanvasItem::get_global_transform_with_canvas() const {
|
||||
if (canvas_layer) {
|
||||
return canvas_layer->get_transform() * get_global_transform();
|
||||
return canvas_layer->get_final_transform() * get_global_transform();
|
||||
} else if (is_inside_tree()) {
|
||||
return get_viewport()->get_canvas_transform() * get_global_transform();
|
||||
} else {
|
||||
|
|
@ -1099,7 +1099,7 @@ Transform2D CanvasItem::get_canvas_transform() const {
|
|||
ERR_FAIL_COND_V(!is_inside_tree(), Transform2D());
|
||||
|
||||
if (canvas_layer) {
|
||||
return canvas_layer->get_transform();
|
||||
return canvas_layer->get_final_transform();
|
||||
} else if (Object::cast_to<CanvasItem>(get_parent())) {
|
||||
return Object::cast_to<CanvasItem>(get_parent())->get_canvas_transform();
|
||||
} else {
|
||||
|
|
@ -1111,7 +1111,7 @@ Transform2D CanvasItem::get_viewport_transform() const {
|
|||
ERR_FAIL_COND_V(!is_inside_tree(), Transform2D());
|
||||
|
||||
if (canvas_layer) {
|
||||
return get_viewport()->get_final_transform() * canvas_layer->get_transform();
|
||||
return get_viewport()->get_final_transform() * canvas_layer->get_final_transform();
|
||||
} else {
|
||||
return get_viewport()->get_final_transform() * get_viewport()->get_canvas_transform();
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue