You've already forked godot
mirror of
https://github.com/godotengine/godot.git
synced 2025-11-22 15:06:45 +00:00
Include the following-viewport-transform into CanvasLayer transforms
The following-viewport-transform was missing from several calculations
This commit is contained in:
@@ -87,6 +87,18 @@ Transform2D CanvasLayer::get_transform() const {
|
||||
return transform;
|
||||
}
|
||||
|
||||
Transform2D CanvasLayer::get_final_transform() const {
|
||||
if (is_following_viewport()) {
|
||||
Transform2D follow;
|
||||
follow.scale(Vector2(get_follow_viewport_scale(), get_follow_viewport_scale()));
|
||||
if (vp) {
|
||||
follow = vp->get_canvas_transform() * follow;
|
||||
}
|
||||
return follow * transform;
|
||||
}
|
||||
return transform;
|
||||
}
|
||||
|
||||
void CanvasLayer::_update_xform() {
|
||||
transform.set_rotation_and_scale(rot, scale);
|
||||
transform.set_origin(ofs);
|
||||
@@ -303,6 +315,7 @@ void CanvasLayer::_bind_methods() {
|
||||
|
||||
ClassDB::bind_method(D_METHOD("set_transform", "transform"), &CanvasLayer::set_transform);
|
||||
ClassDB::bind_method(D_METHOD("get_transform"), &CanvasLayer::get_transform);
|
||||
ClassDB::bind_method(D_METHOD("get_final_transform"), &CanvasLayer::get_final_transform);
|
||||
|
||||
ClassDB::bind_method(D_METHOD("set_offset", "offset"), &CanvasLayer::set_offset);
|
||||
ClassDB::bind_method(D_METHOD("get_offset"), &CanvasLayer::get_offset);
|
||||
|
||||
Reference in New Issue
Block a user