From 974e506371402164ef90f84989c059e8217c00d3 Mon Sep 17 00:00:00 2001 From: Hugo Locurcio Date: Mon, 22 Apr 2019 21:48:19 +0200 Subject: [PATCH] Make the Platformer 2D demo work with ultrawide displays This makes it possible to fill the whole viewport when playing on a 21:9 monitor or a 19:9 smartphone. --- 2d/platformer/Stage.tscn | 40 +++++++----------- 2d/platformer/background/ParallaxBg.tscn | 15 +++---- 2d/platformer/background/scroll_bg_fg_1.png | Bin 5203 -> 5401 bytes .../background/scroll_bg_fg_1.png.import | 2 +- 2d/platformer/background/scroll_bg_fg_2.png | Bin 5779 -> 6003 bytes .../background/scroll_bg_fg_2.png.import | 2 +- 2d/platformer/player/Player.tscn | 17 +++++--- 2d/platformer/project.godot | 2 +- 8 files changed, 36 insertions(+), 42 deletions(-) diff --git a/2d/platformer/Stage.tscn b/2d/platformer/Stage.tscn index c8253d31..5bef7416 100644 --- a/2d/platformer/Stage.tscn +++ b/2d/platformer/Stage.tscn @@ -4,18 +4,11 @@ [ext_resource path="res://coin/Coin.tscn" type="PackedScene" id=2] [ext_resource path="res://platform/MovingPlatform.tscn" type="PackedScene" id=3] [ext_resource path="res://platform/OneWayPlatform.tscn" type="PackedScene" id=4] -[ext_resource path="res://player/Player.tscn" type="PackedScene" id=5] -[ext_resource path="res://enemy/Enemy.tscn" type="PackedScene" id=6] -[ext_resource path="res://background/ParallaxBg.tscn" type="PackedScene" id=7] +[ext_resource path="res://enemy/Enemy.tscn" type="PackedScene" id=5] +[ext_resource path="res://background/ParallaxBg.tscn" type="PackedScene" id=6] +[ext_resource path="res://player/Player.tscn" type="PackedScene" id=7] [ext_resource path="res://audio/music.ogg" type="AudioStream" id=8] - - - - - - - [node name="Stage" type="Node"] [node name="TileMap" type="TileMap" parent="."] @@ -220,45 +213,45 @@ position = Vector2( 1099.56, 940.804 ) [node name="OneWayPlatform13" parent="Props" instance=ExtResource( 4 )] position = Vector2( 1339.63, 967.879 ) -[node name="Player" parent="." instance=ExtResource( 5 )] +[node name="Player" parent="." instance=ExtResource( 7 )] position = Vector2( 251.684, 1045.6 ) [node name="Enemies" type="Node" parent="."] -[node name="Enemy1" parent="Enemies" instance=ExtResource( 6 )] +[node name="Enemy1" parent="Enemies" instance=ExtResource( 5 )] position = Vector2( 734.693, 1064.22 ) -[node name="Enemy2" parent="Enemies" instance=ExtResource( 6 )] +[node name="Enemy2" parent="Enemies" instance=ExtResource( 5 )] position = Vector2( 707.665, 1225.05 ) -[node name="Enemy3" parent="Enemies" instance=ExtResource( 6 )] +[node name="Enemy3" parent="Enemies" instance=ExtResource( 5 )] position = Vector2( 1125.21, 1053.06 ) -[node name="Enemy4" parent="Enemies" instance=ExtResource( 6 )] +[node name="Enemy4" parent="Enemies" instance=ExtResource( 5 )] position = Vector2( 1292.11, 1059.24 ) -[node name="Enemy5" parent="Enemies" instance=ExtResource( 6 )] +[node name="Enemy5" parent="Enemies" instance=ExtResource( 5 )] position = Vector2( 968.927, 766.466 ) -[node name="Enemy6" parent="Enemies" instance=ExtResource( 6 )] +[node name="Enemy6" parent="Enemies" instance=ExtResource( 5 )] position = Vector2( 3080.34, 1807.61 ) -[node name="Enemy7" parent="Enemies" instance=ExtResource( 6 )] +[node name="Enemy7" parent="Enemies" instance=ExtResource( 5 )] position = Vector2( 1457.6, 688.741 ) -[node name="Enemy8" parent="Enemies" instance=ExtResource( 6 )] +[node name="Enemy8" parent="Enemies" instance=ExtResource( 5 )] position = Vector2( 1264.06, 571.713 ) -[node name="Enemy9" parent="Enemies" instance=ExtResource( 6 )] +[node name="Enemy9" parent="Enemies" instance=ExtResource( 5 )] position = Vector2( 3590.85, 1114.86 ) -[node name="Enemy10" parent="Enemies" instance=ExtResource( 6 )] +[node name="Enemy10" parent="Enemies" instance=ExtResource( 5 )] position = Vector2( 3546.2, 1356.19 ) -[node name="Enemy11" parent="Enemies" instance=ExtResource( 6 )] +[node name="Enemy11" parent="Enemies" instance=ExtResource( 5 )] position = Vector2( 2215.3, 1429.39 ) -[node name="ParallaxBg" parent="." instance=ExtResource( 7 )] +[node name="ParallaxBg" parent="." instance=ExtResource( 6 )] [node name="Label" type="Label" parent="."] margin_left = 12.0 @@ -273,4 +266,3 @@ autowrap = true [node name="Music" type="AudioStreamPlayer" parent="."] stream = ExtResource( 8 ) autoplay = true - diff --git a/2d/platformer/background/ParallaxBg.tscn b/2d/platformer/background/ParallaxBg.tscn index e0c7f62b..8d1c7256 100644 --- a/2d/platformer/background/ParallaxBg.tscn +++ b/2d/platformer/background/ParallaxBg.tscn @@ -14,7 +14,7 @@ scroll_base_scale = Vector2( 0.7, 0 ) motion_mirroring = Vector2( 800, 0 ) [node name="Sprite" type="Sprite" parent="Sky"] -scale = Vector2( 32, 0.94 ) +scale = Vector2( 128, 0.94 ) texture = ExtResource( 1 ) centered = false @@ -54,23 +54,18 @@ centered = false [node name="Mount2" type="ParallaxLayer" parent="."] motion_scale = Vector2( 0.2, 1 ) -motion_mirroring = Vector2( 800, 0 ) [node name="Sprite" type="Sprite" parent="Mount2"] -position = Vector2( 0, 225 ) +position = Vector2( 0, 353 ) texture = ExtResource( 5 ) -centered = false region_enabled = true -region_rect = Rect2( 0, 0, 800, 256 ) +region_rect = Rect2( 0, 0, 4096, 256 ) [node name="Mount1" type="ParallaxLayer" parent="."] motion_scale = Vector2( 0.4, 1 ) -motion_mirroring = Vector2( 800, 0 ) [node name="Sprite" type="Sprite" parent="Mount1"] -position = Vector2( 0, 225 ) +position = Vector2( 0, 353 ) texture = ExtResource( 6 ) -centered = false region_enabled = true -region_rect = Rect2( 0, 0, 800, 256 ) - +region_rect = Rect2( 0, 0, 4096, 256 ) diff --git a/2d/platformer/background/scroll_bg_fg_1.png b/2d/platformer/background/scroll_bg_fg_1.png index 99821f356b51b81309f06a9212b6df201ee6a66a..4c8e192c2ba184576800b92238ea11e361d80b9b 100644 GIT binary patch delta 4793 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 delta 4596 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 CB_}rk diff --git a/2d/platformer/background/scroll_bg_fg_1.png.import b/2d/platformer/background/scroll_bg_fg_1.png.import index 5f3912cf..08be05e9 100644 --- a/2d/platformer/background/scroll_bg_fg_1.png.import +++ b/2d/platformer/background/scroll_bg_fg_1.png.import @@ -19,7 +19,7 @@ compress/lossy_quality=0.7 compress/hdr_mode=0 compress/bptc_ldr=0 compress/normal_map=0 -flags/repeat=0 +flags/repeat=1 flags/filter=false flags/mipmaps=false flags/anisotropic=false diff --git a/2d/platformer/background/scroll_bg_fg_2.png b/2d/platformer/background/scroll_bg_fg_2.png index e8d2905d806ef7325be18a2ddb7a5f1f49cc13b8..d1e7480f7b4b25ac3dc3acc26482632c8ac970da 100644 GIT binary patch literal 6003 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 qyv#jH)Bj+-!hgl#x{#tEW-;*sVODVg` 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 Crp2%T diff --git a/2d/platformer/background/scroll_bg_fg_2.png.import b/2d/platformer/background/scroll_bg_fg_2.png.import index cf45621b..1f681ad6 100644 --- a/2d/platformer/background/scroll_bg_fg_2.png.import +++ b/2d/platformer/background/scroll_bg_fg_2.png.import @@ -19,7 +19,7 @@ compress/lossy_quality=0.7 compress/hdr_mode=0 compress/bptc_ldr=0 compress/normal_map=0 -flags/repeat=0 +flags/repeat=1 flags/filter=false flags/mipmaps=false flags/anisotropic=false diff --git a/2d/platformer/player/Player.tscn b/2d/platformer/player/Player.tscn index fe41e5e6..aacabf25 100644 --- a/2d/platformer/player/Player.tscn +++ b/2d/platformer/player/Player.tscn @@ -247,17 +247,24 @@ passby_press = true action = "move_right" visibility_mode = 1 -[node name="Jump" type="TouchScreenButton" parent="UI"] -position = Vector2( 666.224, 359.02 ) +[node name="BottomRightAnchor" type="Control" parent="UI"] +anchor_left = 1.0 +anchor_top = 1.0 +anchor_right = 1.0 +anchor_bottom = 1.0 +margin_left = -40.0 +margin_top = -40.0 + +[node name="Jump" type="TouchScreenButton" parent="UI/BottomRightAnchor"] +position = Vector2( -98.151, -83.768 ) scale = Vector2( 1.49157, 1.46265 ) normal = ExtResource( 7 ) action = "jump" visibility_mode = 1 -[node name="Fire" type="TouchScreenButton" parent="UI"] -position = Vector2( 668.073, 262.788 ) +[node name="Fire" type="TouchScreenButton" parent="UI/BottomRightAnchor"] +position = Vector2( -96.302, -180 ) scale = Vector2( 1.49157, 1.46265 ) normal = ExtResource( 8 ) action = "shoot" visibility_mode = 1 - diff --git a/2d/platformer/project.godot b/2d/platformer/project.godot index 8ee9fc00..bbd89f03 100644 --- a/2d/platformer/project.godot +++ b/2d/platformer/project.godot @@ -62,7 +62,7 @@ gdscript/warnings/unsafe_call_argument=true window/size/width=800 window/size/height=480 window/stretch/mode="2d" -window/stretch/aspect="keep" +window/stretch/aspect="keep_height" stretch/aspect="keep_height" stretch/mode="2d"