Browse Source

Port audio, gui, mono, networking and viewport demos to Godot 3.1

Rémi Verschelde 6 years ago
parent
commit
a38b315064
77 changed files with 395 additions and 2885 deletions
  1. 0 1
      audio/mic_record/Node2D.tscn
  2. 0 2
      audio/mic_record/default_bus_layout.tres
  3. 0 2
      audio/mic_record/default_env.tres
  4. 11 173
      gui/drag_and_drop/drag_and_drop.tscn
  5. 4 4
      gui/drag_and_drop/drag_drop_script.gd
  6. 2 3
      gui/drag_and_drop/icon.png.import
  7. 6 1
      gui/drag_and_drop/project.godot
  8. 18 216
      gui/input_mapping/controls.tscn
  9. 26 6
      gui/input_mapping/project.godot
  10. 6 1
      gui/rich_text_bbcode/project.godot
  11. 5 1
      gui/rich_text_bbcode/rich_text_bbcode.gd
  12. 13 38
      gui/rich_text_bbcode/rich_text_bbcode.tscn
  13. 0 54
      gui/translation/controls.tscn
  14. 11 136
      gui/translation/main.tscn
  15. 6 1
      gui/translation/project.godot
  16. 0 3
      gui/translation/text.csv.import
  17. BIN
      gui/translation/text.en.translation
  18. BIN
      gui/translation/text.es.translation
  19. BIN
      gui/translation/text.ja.translation
  20. 12 67
      mono/DodgeTheCreepsCS/Main.tscn
  21. 4 2
      mono/DodgeTheCreepsCS/Player.cs
  22. 0 89
      mono/DodgeTheCreepsCS/default_env.tres
  23. 1 1
      mono/DodgeTheCreepsCS/project.godot
  24. 0 91
      mono/monkey_pong/pong.tscn
  25. 23 5
      mono/monkey_pong/project.godot
  26. 6 99
      networking/multiplayer_bomber/bomb.tscn
  27. 2 3
      networking/multiplayer_bomber/brickfloor.png.import
  28. 2 3
      networking/multiplayer_bomber/charwalk.png.import
  29. 2 3
      networking/multiplayer_bomber/explosion.png.import
  30. 1 1
      networking/multiplayer_bomber/gamestate.gd
  31. 0 1
      networking/multiplayer_bomber/lobby.gd
  32. 14 186
      networking/multiplayer_bomber/lobby.tscn
  33. 12 12
      networking/multiplayer_bomber/player.gd
  34. 8 38
      networking/multiplayer_bomber/player.tscn
  35. 30 6
      networking/multiplayer_bomber/project.godot
  36. 2 2
      networking/multiplayer_bomber/rock.gd
  37. 3 26
      networking/multiplayer_bomber/rock.tscn
  38. 2 3
      networking/multiplayer_bomber/rock_bit.png.import
  39. 1 1
      networking/multiplayer_bomber/score.gd
  40. 4 18
      networking/multiplayer_bomber/tile_scene.tscn
  41. 1 18
      networking/multiplayer_bomber/world.tscn
  42. 1 1
      networking/multiplayer_pong/ball.gd
  43. 2 3
      networking/multiplayer_pong/ball.png.import
  44. 0 13
      networking/multiplayer_pong/ball.tscn
  45. 2 3
      networking/multiplayer_pong/icon.png.import
  46. 2 2
      networking/multiplayer_pong/lobby.gd
  47. 0 102
      networking/multiplayer_pong/lobby.tscn
  48. 1 1
      networking/multiplayer_pong/paddle.gd
  49. 2 3
      networking/multiplayer_pong/paddle.png.import
  50. 0 26
      networking/multiplayer_pong/paddle.tscn
  51. 1 1
      networking/multiplayer_pong/pong.gd
  52. 3 67
      networking/multiplayer_pong/pong.tscn
  53. 18 3
      networking/multiplayer_pong/project.godot
  54. 2 3
      networking/multiplayer_pong/separator.png.import
  55. 23 456
      viewport/2d_in_3d/2D_in_3D.tscn
  56. 2 3
      viewport/2d_in_3d/ball.png.import
  57. 0 86
      viewport/2d_in_3d/default_env.tres
  58. 2 3
      viewport/2d_in_3d/icon.png.import
  59. 2 3
      viewport/2d_in_3d/left_pallete.png.import
  60. 22 5
      viewport/2d_in_3d/project.godot
  61. 2 3
      viewport/2d_in_3d/right_pallete.png.import
  62. 2 3
      viewport/2d_in_3d/separator.png.import
  63. 5 51
      viewport/3d_in_2d/3D_in_2D.tscn
  64. 0 88
      viewport/3d_in_2d/default_env.tres
  65. 2 3
      viewport/3d_in_2d/icon.png.import
  66. BIN
      viewport/3d_in_2d/player.scn
  67. 6 1
      viewport/3d_in_2d/project.godot
  68. 2 3
      viewport/3d_in_2d/robot_demo.png.import
  69. 24 400
      viewport/gui_in_3d/Gui_in_3D.tscn
  70. 0 86
      viewport/gui_in_3d/default_env.tres
  71. 1 1
      viewport/gui_in_3d/gui_3d.gd
  72. 10 1
      viewport/gui_in_3d/project.godot
  73. 4 51
      viewport/screen_capture/capture_screen.tscn
  74. 0 86
      viewport/screen_capture/default_env.tres
  75. 2 3
      viewport/screen_capture/icon.png.import
  76. 2 3
      viewport/screen_capture/mountains.png.import
  77. 10 1
      viewport/screen_capture/project.godot

+ 0 - 1
audio/mic_record/Node2D.tscn

@@ -5,7 +5,6 @@
 
 [sub_resource type="AudioStreamMicrophone" id=1]
 
-
 [node name="Node2D" type="Node2D"]
 script = ExtResource( 1 )
 

+ 0 - 2
audio/mic_record/default_bus_layout.tres

@@ -1,11 +1,9 @@
 [gd_resource type="AudioBusLayout" load_steps=2 format=2]
 
 [sub_resource type="AudioEffectRecord" id=1]
-
 resource_name = "Record"
 
 [resource]
-
 bus/1/name = "Record"
 bus/1/solo = false
 bus/1/mute = true

+ 0 - 2
audio/mic_record/default_env.tres

@@ -1,14 +1,12 @@
 [gd_resource type="Environment" load_steps=2 format=2]
 
 [sub_resource type="ProceduralSky" id=1]
-
 sky_top_color = Color( 0.647059, 0.839216, 0.945098, 1 )
 sky_horizon_color = Color( 0.839216, 0.917647, 0.980392, 1 )
 ground_bottom_color = Color( 0.156863, 0.184314, 0.211765, 1 )
 ground_horizon_color = Color( 0.423529, 0.396078, 0.372549, 1 )
 
 [resource]
-
 background_mode = 2
 background_sky = SubResource( 1 )
 

+ 11 - 173
gui/drag_and_drop/drag_and_drop.tscn

@@ -2,273 +2,111 @@
 
 [ext_resource path="res://drag_drop_script.gd" type="Script" id=1]
 
-[node name="Control" type="Control" index="0"]
-
-anchor_left = 0.0
-anchor_top = 0.0
+[node name="Control" type="Control"]
 anchor_right = 1.0
 anchor_bottom = 1.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
 __meta__ = {
 "__editor_plugin_screen__": "2D"
 }
 
-[node name="ColorPickerButton0" type="ColorPickerButton" parent="." index="0"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="ColorPickerButton0" type="ColorPickerButton" parent="."]
 margin_left = 64.0
 margin_top = 64.0
 margin_right = 160.0
 margin_bottom = 128.0
-rect_pivot_offset = Vector2( 0, 0 )
-focus_mode = 2
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
-toggle_mode = false
-enabled_focus_mode = 2
-shortcut = null
-group = null
-flat = false
-align = 1
 color = Color( 0.671032, 0.605183, 0, 1 )
-edit_alpha = true
 script = ExtResource( 1 )
 
-[node name="ColorPickerButton1" type="ColorPickerButton" parent="." index="1"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="ColorPickerButton1" type="ColorPickerButton" parent="."]
 margin_left = 224.0
 margin_top = 64.0
 margin_right = 320.0
 margin_bottom = 128.0
-rect_pivot_offset = Vector2( 0, 0 )
-focus_mode = 2
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
-toggle_mode = false
-enabled_focus_mode = 2
-shortcut = null
-group = null
-flat = false
-align = 1
 color = Color( 0, 0.797347, 0.741037, 1 )
-edit_alpha = true
 script = ExtResource( 1 )
 
-[node name="ColorPickerButton2" type="ColorPickerButton" parent="." index="2"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="ColorPickerButton2" type="ColorPickerButton" parent="."]
 margin_left = 384.0
 margin_top = 64.0
 margin_right = 480.0
 margin_bottom = 128.0
-rect_pivot_offset = Vector2( 0, 0 )
-focus_mode = 2
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
-toggle_mode = false
-enabled_focus_mode = 2
-shortcut = null
-group = null
-flat = false
-align = 1
 color = Color( 0.443924, 0, 0.632923, 1 )
-edit_alpha = true
 script = ExtResource( 1 )
 
-[node name="ColorPickerButton3" type="ColorPickerButton" parent="." index="3"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="ColorPickerButton3" type="ColorPickerButton" parent="."]
 margin_left = 64.0
 margin_top = 160.0
 margin_right = 160.0
 margin_bottom = 224.0
-rect_pivot_offset = Vector2( 0, 0 )
-focus_mode = 2
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
-toggle_mode = false
-enabled_focus_mode = 2
-shortcut = null
-group = null
-flat = false
-align = 1
 color = Color( 1, 1, 1, 1 )
-edit_alpha = true
 script = ExtResource( 1 )
 
-[node name="ColorPickerButton4" type="ColorPickerButton" parent="." index="4"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="ColorPickerButton4" type="ColorPickerButton" parent="."]
 margin_left = 224.0
 margin_top = 160.0
 margin_right = 320.0
 margin_bottom = 224.0
-rect_pivot_offset = Vector2( 0, 0 )
-focus_mode = 2
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
-toggle_mode = false
-enabled_focus_mode = 2
-shortcut = null
-group = null
-flat = false
-align = 1
 color = Color( 1, 0.933842, 0, 1 )
-edit_alpha = true
 script = ExtResource( 1 )
 
-[node name="ColorPickerButton5" type="ColorPickerButton" parent="." index="5"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="ColorPickerButton5" type="ColorPickerButton" parent="."]
 margin_left = 384.0
 margin_top = 160.0
 margin_right = 480.0
 margin_bottom = 224.0
-rect_pivot_offset = Vector2( 0, 0 )
-focus_mode = 2
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
-toggle_mode = false
-enabled_focus_mode = 2
-shortcut = null
-group = null
-flat = false
-align = 1
 color = Color( 0.287293, 0.886362, 0.122933, 1 )
-edit_alpha = true
 script = ExtResource( 1 )
 
-[node name="ColorPickerButton6" type="ColorPickerButton" parent="." index="6"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="ColorPickerButton6" type="ColorPickerButton" parent="."]
 margin_left = 64.0
 margin_top = 256.0
 margin_right = 160.0
 margin_bottom = 320.0
-rect_pivot_offset = Vector2( 0, 0 )
-focus_mode = 2
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
-toggle_mode = false
-enabled_focus_mode = 2
-shortcut = null
-group = null
-flat = false
-align = 1
 color = Color( 0.908461, 0, 0.88789, 1 )
-edit_alpha = true
 script = ExtResource( 1 )
 
-[node name="ColorPickerButton7" type="ColorPickerButton" parent="." index="7"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="ColorPickerButton7" type="ColorPickerButton" parent="."]
 margin_left = 224.0
 margin_top = 256.0
 margin_right = 320.0
 margin_bottom = 320.0
-rect_pivot_offset = Vector2( 0, 0 )
-focus_mode = 2
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
-toggle_mode = false
-enabled_focus_mode = 2
-shortcut = null
-group = null
-flat = false
-align = 1
 color = Color( 0, 0.283703, 0, 1 )
-edit_alpha = true
 script = ExtResource( 1 )
 
-[node name="ColorPickerButton8" type="ColorPickerButton" parent="." index="8"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="ColorPickerButton8" type="ColorPickerButton" parent="."]
 margin_left = 384.0
 margin_top = 256.0
 margin_right = 480.0
 margin_bottom = 320.0
-rect_pivot_offset = Vector2( 0, 0 )
-focus_mode = 2
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
-toggle_mode = false
-enabled_focus_mode = 2
-shortcut = null
-group = null
-flat = false
-align = 1
 color = Color( 0, 0, 0.178211, 1 )
-edit_alpha = true
 script = ExtResource( 1 )
 
-[node name="Label" type="Label" parent="." index="9"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="Label" type="Label" parent="."]
 margin_left = 10.0
 margin_top = 11.0
 margin_right = 470.0
 margin_bottom = 24.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "Drag colors from button to button, or change button colors and drag them again."
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
-
 

+ 4 - 4
gui/drag_and_drop/drag_drop_script.gd

@@ -2,7 +2,7 @@
 extends ColorPickerButton
 
 
-func get_drag_data(pos):
+func get_drag_data(_pos):
 	# Use another colorpicker as drag preview
 	var cpb = ColorPickerButton.new()
 	cpb.color = color
@@ -12,9 +12,9 @@ func get_drag_data(pos):
 	return color
 
 
-func can_drop_data(pos, data):
+func can_drop_data(_pos, data):
 	return typeof(data) == TYPE_COLOR
 
 
-func drop_data(pos, data):
-	color=data
+func drop_data(_pos, data):
+	color = data

+ 2 - 3
gui/drag_and_drop/icon.png.import

@@ -7,16 +7,14 @@ path="res://.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex"
 [deps]
 
 source_file="res://icon.png"
-source_md5="9cb7b2d10396f1f208c56fb5126b023d"
-
 dest_files=[ "res://.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex" ]
-dest_md5="3a238454b327f15f0e03ddf32f186730"
 
 [params]
 
 compress/mode=0
 compress/lossy_quality=0.7
 compress/hdr_mode=0
+compress/bptc_ldr=0
 compress/normal_map=0
 flags/repeat=0
 flags/filter=true
@@ -26,6 +24,7 @@ flags/srgb=2
 process/fix_alpha_border=true
 process/premult_alpha=false
 process/HDR_as_SRGB=false
+process/invert_color=false
 stream=false
 size_limit=0
 detect_3d=true

+ 6 - 1
gui/drag_and_drop/project.godot

@@ -6,7 +6,12 @@
 ;   [section] ; section goes between []
 ;   param=value ; assign values to parameters
 
-config_version=3
+config_version=4
+
+_global_script_classes=[  ]
+_global_script_class_icons={
+
+}
 
 [application]
 

+ 18 - 216
gui/input_mapping/controls.tscn

@@ -2,17 +2,9 @@
 
 [ext_resource path="res://controls.gd" type="Script" id=1]
 
-[node name="controls_ui" type="Control" index="0"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="controls_ui" type="Control"]
 margin_right = 40.0
 margin_bottom = 40.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
 script = ExtResource( 1 )
@@ -20,339 +12,149 @@ __meta__ = {
 "__editor_plugin_screen__": "2D"
 }
 
-[node name="contextual_help" type="Label" parent="." index="0"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="contextual_help" type="Label" parent="."]
 margin_left = 100.0
 margin_top = 50.0
 margin_right = 465.0
 margin_bottom = 89.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "Click on a key binding to reassign it, or press the Cancel action."
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
-
-[node name="bindings" type="Control" parent="." index="1"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="bindings" type="Control" parent="."]
 margin_left = 50.0
 margin_top = 50.0
 margin_right = 90.0
 margin_bottom = 90.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
 
-[node name="move_up" type="Control" parent="bindings" index="0"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="move_up" type="Control" parent="bindings"]
 margin_left = 50.0
 margin_top = 50.0
 margin_right = 90.0
 margin_bottom = 90.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
 
-[node name="Label" type="Label" parent="bindings/move_up" index="0"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="Label" type="Label" parent="bindings/move_up"]
 margin_left = 5.0
 margin_top = 8.0
 margin_right = 45.0
 margin_bottom = 21.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "Up"
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
 
-[node name="Button" type="Button" parent="bindings/move_up" index="1"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="Button" type="Button" parent="bindings/move_up"]
 margin_left = 84.0
 margin_top = -1.0
 margin_right = 144.0
 margin_bottom = 29.0
-rect_pivot_offset = Vector2( 0, 0 )
-focus_mode = 2
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
-toggle_mode = false
-enabled_focus_mode = 2
-shortcut = null
-group = null
-flat = false
-align = 1
-
-[node name="move_down" type="Control" parent="bindings" index="1"]
 
+[node name="move_down" type="Control" parent="bindings"]
 editor/display_folded = true
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
 margin_left = 50.0
 margin_top = 100.0
 margin_right = 90.0
 margin_bottom = 140.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
 
-[node name="Label" type="Label" parent="bindings/move_down" index="0"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="Label" type="Label" parent="bindings/move_down"]
 margin_left = 5.0
 margin_top = 8.0
 margin_right = 45.0
 margin_bottom = 21.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "Down"
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
 
-[node name="Button" type="Button" parent="bindings/move_down" index="1"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="Button" type="Button" parent="bindings/move_down"]
 margin_left = 84.0
 margin_top = -1.0
 margin_right = 144.0
 margin_bottom = 29.0
-rect_pivot_offset = Vector2( 0, 0 )
-focus_mode = 2
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
-toggle_mode = false
-enabled_focus_mode = 2
-shortcut = null
-group = null
-flat = false
-align = 1
-
-[node name="move_left" type="Control" parent="bindings" index="2"]
 
+[node name="move_left" type="Control" parent="bindings"]
 editor/display_folded = true
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
 margin_left = 50.0
 margin_top = 150.0
 margin_right = 90.0
 margin_bottom = 190.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
 
-[node name="Label" type="Label" parent="bindings/move_left" index="0"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="Label" type="Label" parent="bindings/move_left"]
 margin_left = 5.0
 margin_top = 8.0
 margin_right = 45.0
 margin_bottom = 21.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "Left"
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
-
-[node name="Button" type="Button" parent="bindings/move_left" index="1"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="Button" type="Button" parent="bindings/move_left"]
 margin_left = 84.0
 margin_top = -1.0
 margin_right = 144.0
 margin_bottom = 29.0
-rect_pivot_offset = Vector2( 0, 0 )
-focus_mode = 2
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
-toggle_mode = false
-enabled_focus_mode = 2
-shortcut = null
-group = null
-flat = false
-align = 1
-
-[node name="move_right" type="Control" parent="bindings" index="3"]
 
+[node name="move_right" type="Control" parent="bindings"]
 editor/display_folded = true
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
 margin_left = 50.0
 margin_top = 200.0
 margin_right = 90.0
 margin_bottom = 240.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
 
-[node name="Label" type="Label" parent="bindings/move_right" index="0"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="Label" type="Label" parent="bindings/move_right"]
 margin_left = 5.0
 margin_top = 8.0
 margin_right = 45.0
 margin_bottom = 21.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "Right"
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
-
-[node name="Button" type="Button" parent="bindings/move_right" index="1"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="Button" type="Button" parent="bindings/move_right"]
 margin_left = 84.0
 margin_top = -1.0
 margin_right = 144.0
 margin_bottom = 29.0
-rect_pivot_offset = Vector2( 0, 0 )
-focus_mode = 2
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
-toggle_mode = false
-enabled_focus_mode = 2
-shortcut = null
-group = null
-flat = false
-align = 1
-
-[node name="jump" type="Control" parent="bindings" index="4"]
 
+[node name="jump" type="Control" parent="bindings"]
 editor/display_folded = true
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
 margin_left = 50.0
 margin_top = 250.0
 margin_right = 90.0
 margin_bottom = 290.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
 
-[node name="Label" type="Label" parent="bindings/jump" index="0"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="Label" type="Label" parent="bindings/jump"]
 margin_left = 5.0
 margin_top = 8.0
 margin_right = 45.0
 margin_bottom = 21.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "Jump"
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
 
-[node name="Button" type="Button" parent="bindings/jump" index="1"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="Button" type="Button" parent="bindings/jump"]
 margin_left = 84.0
 margin_top = -1.0
 margin_right = 144.0
 margin_bottom = 29.0
-rect_pivot_offset = Vector2( 0, 0 )
-focus_mode = 2
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
-toggle_mode = false
-enabled_focus_mode = 2
-shortcut = null
-group = null
-flat = false
-align = 1
-
 

+ 26 - 6
gui/input_mapping/project.godot

@@ -6,7 +6,12 @@
 ;   [section] ; section goes between []
 ;   param=value ; assign values to parameters
 
-config_version=3
+config_version=4
+
+_global_script_classes=[  ]
+_global_script_class_icons={
+
+}
 
 [application]
 
@@ -25,13 +30,28 @@ singletons=[  ]
 
 [input]
 
-jump=[ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":32,"unicode":0,"echo":false,"script":null)
+jump={
+"deadzone": 0.5,
+"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":32,"unicode":0,"echo":false,"script":null)
  ]
-move_down=[ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777234,"unicode":0,"echo":false,"script":null)
+}
+move_down={
+"deadzone": 0.5,
+"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777234,"unicode":0,"echo":false,"script":null)
  ]
-move_left=[ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777231,"unicode":0,"echo":false,"script":null)
+}
+move_left={
+"deadzone": 0.5,
+"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777231,"unicode":0,"echo":false,"script":null)
  ]
-move_right=[ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777233,"unicode":0,"echo":false,"script":null)
+}
+move_right={
+"deadzone": 0.5,
+"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777233,"unicode":0,"echo":false,"script":null)
  ]
-move_up=[ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777232,"unicode":0,"echo":false,"script":null)
+}
+move_up={
+"deadzone": 0.5,
+"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777232,"unicode":0,"echo":false,"script":null)
  ]
+}

+ 6 - 1
gui/rich_text_bbcode/project.godot

@@ -6,7 +6,12 @@
 ;   [section] ; section goes between []
 ;   param=value ; assign values to parameters
 
-config_version=3
+config_version=4
+
+_global_script_classes=[  ]
+_global_script_class_icons={
+
+}
 
 [application]
 

+ 5 - 1
gui/rich_text_bbcode/rich_text_bbcode.gd

@@ -3,4 +3,8 @@ extends Panel
 
 
 func _on_RichTextLabel_meta_clicked(meta):
-	OS.shell_open(meta)
+	var err = OS.shell_open(meta)
+	if (err == OK):
+		print("Opened link '%s' successfully!" % meta)
+	else:
+		print("Failed opening the link '%s'!" % meta)

+ 13 - 38
gui/rich_text_bbcode/rich_text_bbcode.tscn

@@ -7,46 +7,24 @@
 [ext_resource path="res://Titillium-Regular.otf" type="DynamicFontData" id=5]
 
 [sub_resource type="DynamicFont" id=1]
-
 size = 20
-use_mipmaps = false
-use_filter = false
 font_data = ExtResource( 2 )
-_sections_unfolded = [ "Font", "Settings" ]
 
 [sub_resource type="DynamicFont" id=2]
-
 size = 20
-use_mipmaps = false
-use_filter = false
 font_data = ExtResource( 3 )
-_sections_unfolded = [ "Font", "Settings" ]
 
 [sub_resource type="DynamicFont" id=3]
-
 size = 20
-use_mipmaps = false
-use_filter = false
 font_data = ExtResource( 4 )
-_sections_unfolded = [ "Font", "Settings" ]
 
 [sub_resource type="DynamicFont" id=4]
-
 size = 20
-use_mipmaps = false
-use_filter = false
 font_data = ExtResource( 5 )
-_sections_unfolded = [ "Font", "Settings" ]
-
-[node name="Panel" type="Panel" index="0"]
 
-anchor_left = 0.0
-anchor_top = 0.0
+[node name="Panel" type="Panel"]
 anchor_right = 1.0
 anchor_bottom = 1.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
 script = ExtResource( 1 )
@@ -54,20 +32,13 @@ __meta__ = {
 "__editor_plugin_screen__": "2D"
 }
 
-[node name="RichTextLabel" type="RichTextLabel" parent="." index="0"]
-
-anchor_left = 0.0
-anchor_top = 0.0
+[node name="RichTextLabel" type="RichTextLabel" parent="."]
 anchor_right = 1.0
 anchor_bottom = 1.0
 margin_left = 49.0
 margin_top = 55.0
 margin_right = -48.0
 margin_bottom = -62.0
-rect_pivot_offset = Vector2( 0, 0 )
-rect_clip_content = true
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
 custom_fonts/bold_italics_font = SubResource( 1 )
@@ -78,18 +49,22 @@ bbcode_enabled = true
 bbcode_text = "[b][u]Rich Text Test[/u][/b]
 
 RichTextLabel is a flexible way of adding text to your game, with support for [i]italics[/i], [b]bold[/b] and [i][b]both[/b][/i]. [u]Underline[/u] works too.
-It is also possible to include [img]res://unicorn_icon.png[/img] custom images, as well as [color=aqua][url=http://www.google.com]Custom URLs[/url][/color].
+It is also possible to include [img]res://unicorn_icon.png[/img] custom images, as well as [color=aqua][url=https://godotengine.org]Custom URLs[/url][/color].
 
 Left alignment is default,[center]but center alignment is supported,[/center][right]as well as right alignment.[/right]
 [fill]Fill alignment is also supported, and allows writing very long text that will end up fitting the horizontal space entirely with  words of joy.[/fill]
 
-For full reference [color=aqua][url=http://docs.godotengine.org/en/latest/learning/features/gui/bbcode_in_richtextlabel.html]check the documentation.[/url][/color]
+For full reference [color=aqua][url=https://docs.godotengine.org/en/latest/tutorials/gui/bbcode_in_richtextlabel.html]check the documentation.[/url][/color]
 "
-visible_characters = -1
-percent_visible = 1.0
-override_selected_font_color = false
-_sections_unfolded = [ "BBCode", "custom_fonts" ]
+text = "Rich Text Test
 
-[connection signal="meta_clicked" from="RichTextLabel" to="." method="_on_RichTextLabel_meta_clicked"]
+RichTextLabel is a flexible way of adding text to your game, with support for italics, bold and both. Underline works too.
+It is also possible to include  custom images, as well as Custom URLs.
 
+Left alignment is default,but center alignment is supported,as well as right alignment.
+Fill alignment is also supported, and allows writing very long text that will end up fitting the horizontal space entirely with  words of joy.
 
+For full reference check the documentation.
+"
+
+[connection signal="meta_clicked" from="RichTextLabel" to="." method="_on_RichTextLabel_meta_clicked"]

+ 0 - 54
gui/translation/controls.tscn

@@ -4,14 +4,8 @@
 [ext_resource path="res://flag_uk.png" type="Texture" id=2]
 
 [node name="Panel" type="Panel"]
-
-anchor_left = 0.0
-anchor_top = 0.0
 anchor_right = 1.0
 anchor_bottom = 1.0
-rect_pivot_offset = Vector2( 0, 0 )
-rect_clip_content = false
-mouse_filter = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
 script = ExtResource( 1 )
@@ -20,88 +14,40 @@ __meta__ = {
 }
 
 [node name="Label" type="Label" parent="."]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
 margin_left = 175.0
 margin_top = 118.0
 margin_right = 328.0
 margin_bottom = 132.0
-rect_pivot_offset = Vector2( 0, 0 )
-rect_clip_content = false
-mouse_filter = 2
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "KEY_HELLO"
 align = 1
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
 
 [node name="Button" type="Button" parent="."]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
 margin_left = 166.0
 margin_top = 178.0
 margin_right = 335.0
 margin_bottom = 199.0
-rect_pivot_offset = Vector2( 0, 0 )
-rect_clip_content = false
-mouse_filter = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
-toggle_mode = false
-enabled_focus_mode = 2
-shortcut = null
-group = null
 text = "KEY_PUSH"
-flat = false
 
 [node name="TextureFrame" type="TextureRect" parent="."]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
 margin_left = 377.0
 margin_top = 118.0
 margin_right = 505.0
 margin_bottom = 203.0
-rect_pivot_offset = Vector2( 0, 0 )
-rect_clip_content = false
-mouse_filter = 1
 size_flags_horizontal = 2
 size_flags_vertical = 2
 texture = ExtResource( 2 )
-stretch_mode = 0
 
 [node name="back" type="Button" parent="."]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
 margin_left = 26.0
 margin_top = 20.0
 margin_right = 150.0
 margin_bottom = 44.0
-rect_pivot_offset = Vector2( 0, 0 )
-rect_clip_content = false
-mouse_filter = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
-toggle_mode = false
-enabled_focus_mode = 2
-shortcut = null
-group = null
 text = "<- back"
-flat = false
 
 [connection signal="pressed" from="back" to="." method="_on_back_pressed"]
-
-

+ 11 - 136
gui/translation/main.tscn

@@ -6,15 +6,9 @@
 [ext_resource path="res://flag_uk.png" type="Texture" id=4]
 [ext_resource path="res://hello_en.wav" type="AudioStream" id=5]
 
-[node name="Panel" type="Panel" index="0"]
-
-anchor_left = 0.0
-anchor_top = 0.0
+[node name="Panel" type="Panel"]
 anchor_right = 1.0
 anchor_bottom = 1.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
 script = ExtResource( 1 )
@@ -22,91 +16,38 @@ __meta__ = {
 "__editor_plugin_screen__": "2D"
 }
 
-[node name="english" type="Button" parent="." index="0"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="english" type="Button" parent="."]
 margin_left = 32.0
 margin_top = 64.0
 margin_right = 192.0
 margin_bottom = 88.0
-rect_pivot_offset = Vector2( 0, 0 )
-focus_mode = 2
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
-toggle_mode = false
-enabled_focus_mode = 2
-shortcut = null
-group = null
 text = "Use English"
-flat = false
-align = 1
 
-[node name="spanish" type="Button" parent="." index="1"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="spanish" type="Button" parent="."]
 margin_left = 32.0
 margin_top = 112.0
 margin_right = 192.0
 margin_bottom = 136.0
-rect_pivot_offset = Vector2( 0, 0 )
-focus_mode = 2
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
-toggle_mode = false
-enabled_focus_mode = 2
-shortcut = null
-group = null
 text = "Use Spanish"
-flat = false
-align = 1
-
-[node name="japanese" type="Button" parent="." index="2"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="japanese" type="Button" parent="."]
 margin_left = 32.0
 margin_top = 160.0
 margin_right = 192.0
 margin_bottom = 184.0
-rect_pivot_offset = Vector2( 0, 0 )
-focus_mode = 2
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
-toggle_mode = false
-enabled_focus_mode = 2
-shortcut = null
-group = null
 text = "Use Japanese"
-flat = false
-align = 1
 
-[node name="description" type="Label" parent="." index="3"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="description" type="Label" parent="."]
 margin_left = 243.0
 margin_top = 42.0
 margin_right = 808.0
 margin_bottom = 312.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 0
 custom_fonts/font = ExtResource( 2 )
@@ -116,111 +57,45 @@ Translations are created in a CSV file and then imported into Godot.
 Using a TTF/OTF font with CJK is required for this demo to run. One is provided
 in the font/ folder for your games.
 
-Godot allows internationalized text to change automatically when locale is
+Godot allows internationalized text to change automatically when the locale is
 modified. Resources can also be set internationalized alternatives and replaced
 automatically on locale change."
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
-_sections_unfolded = [ "custom_fonts" ]
-
-[node name="HSeparator" type="HSeparator" parent="." index="4"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="HSeparator" type="HSeparator" parent="."]
 margin_left = 33.0
 margin_top = 330.0
 margin_right = 1001.0
 margin_bottom = 370.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 0
-mouse_default_cursor_shape = 0
-size_flags_horizontal = 1
-size_flags_vertical = 1
 
-[node name="label" type="Label" parent="." index="5"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="label" type="Label" parent="."]
 margin_left = 246.0
 margin_top = 381.0
 margin_right = 324.0
 margin_bottom = 400.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
-size_flags_horizontal = 1
 size_flags_vertical = 0
 custom_fonts/font = ExtResource( 2 )
 text = "KEY_HELLO"
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
-_sections_unfolded = [ "custom_fonts" ]
-
-[node name="play" type="Button" parent="." index="6"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="play" type="Button" parent="."]
 margin_left = 243.0
 margin_top = 442.0
 margin_right = 475.0
 margin_bottom = 467.0
-rect_pivot_offset = Vector2( 0, 0 )
-focus_mode = 2
-mouse_filter = 0
-mouse_default_cursor_shape = 0
-size_flags_horizontal = 1
-size_flags_vertical = 1
 custom_fonts/font = ExtResource( 2 )
-toggle_mode = false
-enabled_focus_mode = 2
-shortcut = null
-group = null
 text = "KEY_PUSH"
 icon = ExtResource( 3 )
-flat = false
-align = 1
-_sections_unfolded = [ "custom_fonts" ]
 
-[node name="TextureRect" type="TextureRect" parent="." index="7"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="TextureRect" type="TextureRect" parent="."]
 margin_left = 85.0
 margin_top = 382.0
 margin_right = 213.0
 margin_bottom = 467.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 1
-mouse_default_cursor_shape = 0
-size_flags_horizontal = 1
-size_flags_vertical = 1
 texture = ExtResource( 4 )
-stretch_mode = 0
-
-[node name="audio" type="AudioStreamPlayer" parent="." index="8"]
 
+[node name="audio" type="AudioStreamPlayer" parent="."]
 stream = ExtResource( 5 )
-volume_db = 0.0
-autoplay = false
-mix_target = 0
-bus = "Master"
 
 [connection signal="pressed" from="english" to="." method="_on_english_pressed"]
-
 [connection signal="pressed" from="spanish" to="." method="_on_spanish_pressed"]
-
 [connection signal="pressed" from="japanese" to="." method="_on_japanese_pressed"]
-
 [connection signal="pressed" from="play" to="." method="_on_play_pressed"]
-
-

+ 6 - 1
gui/translation/project.godot

@@ -6,7 +6,12 @@
 ;   [section] ; section goes between []
 ;   param=value ; assign values to parameters
 
-config_version=3
+config_version=4
+
+_global_script_classes=[  ]
+_global_script_class_icons={
+
+}
 
 [application]
 

+ 0 - 3
gui/translation/text.csv.import

@@ -8,10 +8,7 @@ type="Translation"
 files=[ "res://text.en.translation", "res://text.es.translation", "res://text.ja.translation" ]
 
 source_file="res://text.csv"
-source_md5="4c02672dcc571d8d3754983a2d06042e"
-
 dest_files=[ "res://text.en.translation", "res://text.es.translation", "res://text.ja.translation" ]
-dest_md5="f710d4f235972e0a916cc4d6ba28aedc"
 
 [params]
 

BIN
gui/translation/text.en.translation


BIN
gui/translation/text.es.translation


BIN
gui/translation/text.ja.translation


+ 12 - 67
mono/DodgeTheCreepsCS/Main.tscn

@@ -8,103 +8,48 @@
 [ext_resource path="res://art/gameover.wav" type="AudioStream" id=6]
 
 [sub_resource type="Curve2D" id=1]
-
-bake_interval = 5.0
 _data = {
 "points": PoolVector2Array( 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 480, 0, 0, 0, 0, 0, 480, 720, 0, 0, 0, 0, 0, 720, 0, 0, 0, 0, 0, 0 )
 }
 
-[node name="Main" type="Node" index="0"]
-
+[node name="Main" type="Node"]
 script = ExtResource( 1 )
 Mob = ExtResource( 2 )
 
-[node name="ColorRect" type="ColorRect" parent="." index="0"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="ColorRect" type="ColorRect" parent="."]
 margin_right = 480.0
 margin_bottom = 720.0
-rect_pivot_offset = Vector2( 0, 0 )
-rect_clip_content = false
-mouse_filter = 0
-mouse_default_cursor_shape = 0
-size_flags_horizontal = 1
-size_flags_vertical = 1
 color = Color( 0.253451, 0.425288, 0.429412, 1 )
 
-[node name="Player" parent="." index="1" instance=ExtResource( 3 )]
+[node name="Player" parent="." instance=ExtResource( 3 )]
 
-[node name="MobTimer" type="Timer" parent="." index="2"]
-
-process_mode = 1
+[node name="MobTimer" type="Timer" parent="."]
 wait_time = 0.5
-one_shot = false
-autostart = false
-
-[node name="ScoreTimer" type="Timer" parent="." index="3"]
 
-process_mode = 1
-wait_time = 1.0
-one_shot = false
-autostart = false
+[node name="ScoreTimer" type="Timer" parent="."]
 
-[node name="StartTimer" type="Timer" parent="." index="4"]
-
-process_mode = 1
+[node name="StartTimer" type="Timer" parent="."]
 wait_time = 2.0
 one_shot = true
-autostart = false
-
-[node name="StartPosition" type="Position2D" parent="." index="5"]
 
+[node name="StartPosition" type="Position2D" parent="."]
 position = Vector2( 240, 450 )
 
-[node name="MobPath" type="Path2D" parent="." index="6"]
-
-self_modulate = Color( 0.5, 0.6, 1, 0.7 )
+[node name="MobPath" type="Path2D" parent="."]
 curve = SubResource( 1 )
 
-[node name="MobSpawnLocation" type="PathFollow2D" parent="MobPath" index="0"]
-
-offset = 0.0
-h_offset = 0.0
-v_offset = 0.0
-rotate = true
-cubic_interp = true
-loop = true
-lookahead = 4.0
+[node name="MobSpawnLocation" type="PathFollow2D" parent="MobPath"]
 
-[node name="HUD" parent="." index="7" instance=ExtResource( 4 )]
-
-[node name="Music" type="AudioStreamPlayer" parent="." index="8"]
+[node name="HUD" parent="." instance=ExtResource( 4 )]
 
+[node name="Music" type="AudioStreamPlayer" parent="."]
 stream = ExtResource( 5 )
-volume_db = 0.0
-pitch_scale = 1.0
-autoplay = false
-mix_target = 0
-bus = "Master"
-
-[node name="DeathSound" type="AudioStreamPlayer" parent="." index="9"]
 
+[node name="DeathSound" type="AudioStreamPlayer" parent="."]
 stream = ExtResource( 6 )
-volume_db = 0.0
-pitch_scale = 1.0
-autoplay = false
-mix_target = 0
-bus = "Master"
 
 [connection signal="Hit" from="Player" to="." method="GameOver"]
-
 [connection signal="timeout" from="MobTimer" to="." method="OnMobTimerTimeout"]
-
 [connection signal="timeout" from="ScoreTimer" to="." method="OnScoreTimerTimeout"]
-
 [connection signal="timeout" from="StartTimer" to="." method="OnStartTimerTimeout"]
-
 [connection signal="StartGame" from="HUD" to="." method="NewGame"]
-
-

+ 4 - 2
mono/DodgeTheCreepsCS/Player.cs

@@ -78,13 +78,15 @@ public class Player : Area2D
     {
         Position = pos;
         Show();
-        GetNode<CollisionShape2D>("CollisionShape2D").Disabled = false;
+        // Must be deferred as we can't change physics properties on a physics callback
+        GetNode<CollisionShape2D>("CollisionShape2D").SetDeferred("Disabled", false);
     }
 
     public void OnPlayerBodyEntered(PhysicsBody2D body)
     {
         Hide(); // Player disappears after being hit.
         EmitSignal("Hit");
-        GetNode<CollisionShape2D>("CollisionShape2D").Disabled = true;
+        // Must be deferred as we can't change physics properties on a physics callback
+        GetNode<CollisionShape2D>("CollisionShape2D").SetDeferred("Disabled", true);
     }
 }

+ 0 - 89
mono/DodgeTheCreepsCS/default_env.tres

@@ -1,101 +1,12 @@
 [gd_resource type="Environment" load_steps=2 format=2]
 
 [sub_resource type="ProceduralSky" id=1]
-
-radiance_size = 4
 sky_top_color = Color( 0.647059, 0.839216, 0.945098, 1 )
 sky_horizon_color = Color( 0.839216, 0.917647, 0.980392, 1 )
-sky_curve = 0.09
-sky_energy = 1.0
 ground_bottom_color = Color( 0.156863, 0.184314, 0.211765, 1 )
 ground_horizon_color = Color( 0.423529, 0.396078, 0.372549, 1 )
-ground_curve = 0.02
-ground_energy = 1.0
-sun_color = Color( 1, 1, 1, 1 )
-sun_latitude = 35.0
-sun_longitude = 0.0
-sun_angle_min = 1.0
-sun_angle_max = 100.0
-sun_curve = 0.05
-sun_energy = 16.0
-texture_size = 2
 
 [resource]
-
 background_mode = 2
 background_sky = SubResource( 1 )
-background_sky_custom_fov = 0.0
-background_color = Color( 0, 0, 0, 1 )
-background_energy = 1.0
-background_canvas_max_layer = 0
-ambient_light_color = Color( 0, 0, 0, 1 )
-ambient_light_energy = 1.0
-ambient_light_sky_contribution = 1.0
-fog_enabled = false
-fog_color = Color( 0.5, 0.6, 0.7, 1 )
-fog_sun_color = Color( 1, 0.9, 0.7, 1 )
-fog_sun_amount = 0.0
-fog_depth_enabled = true
-fog_depth_begin = 10.0
-fog_depth_curve = 1.0
-fog_transmit_enabled = false
-fog_transmit_curve = 1.0
-fog_height_enabled = false
-fog_height_min = 0.0
-fog_height_max = 100.0
-fog_height_curve = 1.0
-tonemap_mode = 0
-tonemap_exposure = 1.0
-tonemap_white = 1.0
-auto_exposure_enabled = false
-auto_exposure_scale = 0.4
-auto_exposure_min_luma = 0.05
-auto_exposure_max_luma = 8.0
-auto_exposure_speed = 0.5
-ss_reflections_enabled = false
-ss_reflections_max_steps = 64
-ss_reflections_fade_in = 0.15
-ss_reflections_fade_out = 2.0
-ss_reflections_depth_tolerance = 0.2
-ss_reflections_roughness = true
-ssao_enabled = false
-ssao_radius = 1.0
-ssao_intensity = 1.0
-ssao_radius2 = 0.0
-ssao_intensity2 = 1.0
-ssao_bias = 0.01
-ssao_light_affect = 0.0
-ssao_color = Color( 0, 0, 0, 1 )
-ssao_quality = 0
-ssao_blur = 3
-ssao_edge_sharpness = 4.0
-dof_blur_far_enabled = false
-dof_blur_far_distance = 10.0
-dof_blur_far_transition = 5.0
-dof_blur_far_amount = 0.1
-dof_blur_far_quality = 1
-dof_blur_near_enabled = false
-dof_blur_near_distance = 2.0
-dof_blur_near_transition = 1.0
-dof_blur_near_amount = 0.1
-dof_blur_near_quality = 1
-glow_enabled = false
-glow_levels/1 = false
-glow_levels/2 = false
-glow_levels/3 = true
-glow_levels/4 = false
-glow_levels/5 = true
-glow_levels/6 = false
-glow_levels/7 = false
-glow_intensity = 0.8
-glow_strength = 1.0
-glow_bloom = 0.0
-glow_blend_mode = 2
-glow_hdr_threshold = 1.0
-glow_hdr_scale = 2.0
-glow_bicubic_upscale = false
-adjustment_enabled = false
-adjustment_brightness = 1.0
-adjustment_contrast = 1.0
-adjustment_saturation = 1.0
 

+ 1 - 1
mono/DodgeTheCreepsCS/project.godot

@@ -6,7 +6,7 @@
 ;   [section] ; section goes between []
 ;   param=value ; assign values to parameters
 
-config_version=3
+config_version=4
 
 _global_script_classes=[  ]
 _global_script_class_icons={

+ 0 - 91
mono/monkey_pong/pong.tscn

@@ -10,177 +10,86 @@
 [ext_resource path="res://CeilingFloor.cs" type="Script" id=8]
 
 [sub_resource type="RectangleShape2D" id=1]
-
-custom_solver_bias = 0.0
 extents = Vector2( 4, 16 )
 
 [sub_resource type="RectangleShape2D" id=2]
-
-custom_solver_bias = 0.0
 extents = Vector2( 4, 4 )
 
 [sub_resource type="RectangleShape2D" id=3]
-
-custom_solver_bias = 0.0
 extents = Vector2( 10, 200 )
 
 [sub_resource type="RectangleShape2D" id=4]
-
-custom_solver_bias = 0.0
 extents = Vector2( 320, 10 )
 
 [node name="game" type="Node2D"]
 
 [node name="left" type="Area2D" parent="."]
-
 position = Vector2( 67.6285, 192.594 )
-input_pickable = true
-gravity_vec = Vector2( 0, 1 )
-gravity = 98.0
-linear_damp = 0.1
-angular_damp = 1.0
-audio_bus_override = false
-audio_bus_name = "Master"
 script = ExtResource( 1 )
-ballDir = 1
 
 [node name="sprite" type="Sprite" parent="left"]
-
 texture = ExtResource( 2 )
-_sections_unfolded = [ "Transform" ]
 
 [node name="collision" type="CollisionShape2D" parent="left"]
-
 shape = SubResource( 1 )
 
 [node name="right" type="Area2D" parent="."]
-
 position = Vector2( 563.815, 188.919 )
-input_pickable = true
-gravity_vec = Vector2( 0, 1 )
-gravity = 98.0
-linear_damp = 0.1
-angular_damp = 1.0
-audio_bus_override = false
-audio_bus_name = "Master"
 script = ExtResource( 1 )
 ballDir = -1
 
 [node name="sprite" type="Sprite" parent="right"]
-
 texture = ExtResource( 3 )
-_sections_unfolded = [ "Transform" ]
 
 [node name="collision" type="CollisionShape2D" parent="right"]
-
 shape = SubResource( 1 )
 
 [node name="ball" type="Area2D" parent="."]
-
 position = Vector2( 320.5, 191.124 )
-input_pickable = true
-gravity_vec = Vector2( 0, 1 )
-gravity = 98.0
-linear_damp = 0.1
-angular_damp = 1.0
-audio_bus_override = false
-audio_bus_name = "Master"
 script = ExtResource( 4 )
 
 [node name="sprite" type="Sprite" parent="ball"]
-
 texture = ExtResource( 5 )
-_sections_unfolded = [ "Transform" ]
 
 [node name="collision" type="CollisionShape2D" parent="ball"]
-
 shape = SubResource( 2 )
 
 [node name="separator" type="Sprite" parent="."]
-
 position = Vector2( 320, 200 )
 texture = ExtResource( 6 )
 
 [node name="left_wall" type="Area2D" parent="."]
-
 position = Vector2( -10, 200 )
-input_pickable = true
-gravity_vec = Vector2( 0, 1 )
-gravity = 98.0
-linear_damp = 0.1
-angular_damp = 1.0
-audio_bus_override = false
-audio_bus_name = "Master"
 script = ExtResource( 7 )
-_sections_unfolded = [ "Transform" ]
 
 [node name="collision" type="CollisionShape2D" parent="left_wall"]
-
 shape = SubResource( 3 )
 
 [node name="right_wall" type="Area2D" parent="."]
-
 position = Vector2( 650, 200 )
-input_pickable = true
-gravity_vec = Vector2( 0, 1 )
-gravity = 98.0
-linear_damp = 0.1
-angular_damp = 1.0
-audio_bus_override = false
-audio_bus_name = "Master"
 script = ExtResource( 7 )
-_sections_unfolded = [ "Transform" ]
 
 [node name="collision" type="CollisionShape2D" parent="right_wall"]
-
 shape = SubResource( 3 )
 
 [node name="ceiling" type="Area2D" parent="."]
-
 position = Vector2( 320, -10 )
-input_pickable = true
-gravity_vec = Vector2( 0, 1 )
-gravity = 98.0
-linear_damp = 0.1
-angular_damp = 1.0
-audio_bus_override = false
-audio_bus_name = "Master"
 script = ExtResource( 8 )
-_sections_unfolded = [ "Transform" ]
-yDirection = 1
 
 [node name="collision" type="CollisionShape2D" parent="ceiling"]
-
 shape = SubResource( 4 )
 
 [node name="floor" type="Area2D" parent="."]
-
 position = Vector2( 320, 410 )
-input_pickable = true
-gravity_vec = Vector2( 0, 1 )
-gravity = 98.0
-linear_damp = 0.1
-angular_damp = 1.0
-audio_bus_override = false
-audio_bus_name = "Master"
 script = ExtResource( 8 )
-_sections_unfolded = [ "Transform" ]
 yDirection = -1
 
 [node name="collision" type="CollisionShape2D" parent="floor"]
-
 shape = SubResource( 4 )
 
 [connection signal="area_entered" from="left" to="left" method="OnAreaEntered"]
-
 [connection signal="area_entered" from="right" to="right" method="OnAreaEntered"]
-
 [connection signal="area_entered" from="left_wall" to="left_wall" method="OnWallAreaEntered"]
-
 [connection signal="area_entered" from="right_wall" to="right_wall" method="OnWallAreaEntered"]
-
 [connection signal="area_entered" from="ceiling" to="ceiling" method="OnAreaEntered"]
-
 [connection signal="area_entered" from="floor" to="floor" method="OnAreaEntered"]
-
-

+ 23 - 5
mono/monkey_pong/project.godot

@@ -6,7 +6,12 @@
 ;   [section] ; section goes between []
 ;   param=value ; assign values to parameters
 
-config_version=3
+config_version=4
+
+_global_script_classes=[  ]
+_global_script_class_icons={
+
+}
 
 [application]
 
@@ -19,6 +24,7 @@ config/icon="res://icon.png"
 window/size/width=640
 window/size/height=400
 window/stretch/mode="2d"
+window/stretch/aspect="keep"
 
 [gdnative]
 
@@ -26,14 +32,26 @@ singletons=[  ]
 
 [input]
 
-left_move_down=[ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":90,"unicode":0,"echo":false,"script":null)
+left_move_down={
+"deadzone": 0.5,
+"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":90,"unicode":0,"echo":false,"script":null)
  ]
-left_move_up=[ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":65,"unicode":0,"echo":false,"script":null)
+}
+left_move_up={
+"deadzone": 0.5,
+"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":65,"unicode":0,"echo":false,"script":null)
  ]
-right_move_down=[ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777234,"unicode":0,"echo":false,"script":null)
+}
+right_move_down={
+"deadzone": 0.5,
+"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777234,"unicode":0,"echo":false,"script":null)
  ]
-right_move_up=[ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777232,"unicode":0,"echo":false,"script":null)
+}
+right_move_up={
+"deadzone": 0.5,
+"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777232,"unicode":0,"echo":false,"script":null)
  ]
+}
 
 [rendering]
 

+ 6 - 99
networking/multiplayer_bomber/bomb.tscn

@@ -5,74 +5,32 @@
 [ext_resource path="res://explosion.png" type="Texture" id=3]
 
 [sub_resource type="RectangleShape2D" id=1]
-
-custom_solver_bias = 0.0
 extents = Vector2( 8, 96 )
 
 [sub_resource type="RectangleShape2D" id=2]
-
-custom_solver_bias = 0.0
 extents = Vector2( 96, 8 )
 
 [sub_resource type="Curve" id=3]
-
-min_value = 0.0
 max_value = 2.0
-bake_resolution = 100
 _data = [ Vector2( 0.00150494, 0.398437 ), 0.0, 0.0, 0, 0, Vector2( 0.0152287, 1.42969 ), 0.0, 0.0, 0, 0, Vector2( 0.478607, 1.30078 ), 0.0, 0.0, 0, 0, Vector2( 1, 0.291016 ), 0.0, 0.0, 0, 0 ]
 
 [sub_resource type="CurveTexture" id=4]
-
-flags = 4
-width = 2048
 curve = SubResource( 3 )
 
 [sub_resource type="ParticlesMaterial" id=5]
-
-render_priority = 0
-trail_divisor = 1
 emission_shape = 2
 emission_box_extents = Vector3( 80, 1, 1 )
-flag_align_y = false
-flag_rotate_y = false
 flag_disable_z = true
-spread = 45.0
-flatness = 0.0
 gravity = Vector3( 0, 0, 0 )
 initial_velocity = 1.0
-initial_velocity_random = 0.0
 angular_velocity = 187.85
 angular_velocity_random = 1.0
 orbit_velocity = 0.0
 orbit_velocity_random = 0.0
-linear_accel = 0.0
-linear_accel_random = 0.0
-radial_accel = 0.0
-radial_accel_random = 0.0
-tangential_accel = 0.0
-tangential_accel_random = 0.0
-damping = 0.0
-damping_random = 0.0
-angle = 0.0
-angle_random = 0.0
-scale = 1.0
-scale_random = 0.0
 scale_curve = SubResource( 4 )
-color = Color( 1, 1, 1, 1 )
-hue_variation = 0.0
-hue_variation_random = 0.0
-anim_speed = 0.0
-anim_speed_random = 0.0
-anim_offset = 0.0
-anim_offset_random = 0.0
-anim_loop = false
-_sections_unfolded = [ "Angular Velocity", "Emission Shape", "Gravity", "Scale" ]
 
 [sub_resource type="Animation" id=6]
-
 length = 4.0
-loop = false
-step = 0.1
 tracks/0/type = "value"
 tracks/0/path = NodePath("sprite:self_modulate")
 tracks/0/interp = 1
@@ -128,90 +86,39 @@ tracks/3/keys = {
 }
 
 [node name="bomb" type="Area2D"]
-
-input_pickable = true
-gravity_vec = Vector2( 0, 1 )
-gravity = 98.0
-linear_damp = 0.1
-angular_damp = 1.0
-audio_bus_override = false
-audio_bus_name = "Master"
 script = ExtResource( 1 )
 
-[node name="sprite" type="Sprite" parent="." index="0"]
-
+[node name="sprite" type="Sprite" parent="."]
 position = Vector2( -2.92606, -2.92606 )
 texture = ExtResource( 2 )
 region_enabled = true
 region_rect = Rect2( 144, 0, 48, 48 )
-_sections_unfolded = [ "Region" ]
-
-[node name="shape1" type="CollisionShape2D" parent="." index="1"]
 
+[node name="shape1" type="CollisionShape2D" parent="."]
 shape = SubResource( 1 )
 
-[node name="shape2" type="CollisionShape2D" parent="." index="2"]
-
+[node name="shape2" type="CollisionShape2D" parent="."]
 shape = SubResource( 2 )
 
-[node name="explosion1" type="Particles2D" parent="." index="3"]
-
+[node name="explosion1" type="Particles2D" parent="."]
 emitting = false
-amount = 8
 lifetime = 0.5
 one_shot = true
-preprocess = 0.0
-speed_scale = 1.0
 explosiveness = 0.95
-randomness = 0.0
-fixed_fps = 0
-fract_delta = true
-visibility_rect = Rect2( -100, -100, 200, 200 )
-local_coords = true
-draw_order = 0
 process_material = SubResource( 5 )
 texture = ExtResource( 3 )
-normal_map = null
-h_frames = 1
-v_frames = 1
-_sections_unfolded = [ "Process Material", "Textures", "Time" ]
-
-[node name="explosion2" type="Particles2D" parent="." index="4"]
 
+[node name="explosion2" type="Particles2D" parent="."]
 rotation = 1.57162
 emitting = false
-amount = 8
-lifetime = 1.0
 one_shot = true
-preprocess = 0.0
-speed_scale = 1.0
 explosiveness = 0.95
-randomness = 0.0
-fixed_fps = 0
-fract_delta = true
-visibility_rect = Rect2( -100, -100, 200, 200 )
-local_coords = true
-draw_order = 0
 process_material = SubResource( 5 )
 texture = ExtResource( 3 )
-normal_map = null
-h_frames = 1
-v_frames = 1
-_sections_unfolded = [ "Process Material", "Textures", "Time" ]
-
-[node name="anim" type="AnimationPlayer" parent="." index="5"]
 
-root_node = NodePath("..")
+[node name="anim" type="AnimationPlayer" parent="."]
 autoplay = "anim"
-playback_process_mode = 1
-playback_default_blend_time = 0.0
-playback_speed = 1.0
 anims/anim = SubResource( 6 )
-blend_times = [  ]
-autoplay = "anim"
 
 [connection signal="body_entered" from="." to="." method="_on_bomb_body_enter"]
-
 [connection signal="body_exited" from="." to="." method="_on_bomb_body_exit"]
-
-

+ 2 - 3
networking/multiplayer_bomber/brickfloor.png.import

@@ -7,16 +7,14 @@ path="res://.import/brickfloor.png-bab1cbace80ab627972eea565951db9e.stex"
 [deps]
 
 source_file="res://brickfloor.png"
-source_md5="58c8113a4c6cb037376fd4c1530b797a"
-
 dest_files=[ "res://.import/brickfloor.png-bab1cbace80ab627972eea565951db9e.stex" ]
-dest_md5="59f392610dd24df206fe041c44ddcdb0"
 
 [params]
 
 compress/mode=0
 compress/lossy_quality=0.7
 compress/hdr_mode=0
+compress/bptc_ldr=0
 compress/normal_map=0
 flags/repeat=0
 flags/filter=true
@@ -26,6 +24,7 @@ flags/srgb=2
 process/fix_alpha_border=true
 process/premult_alpha=false
 process/HDR_as_SRGB=false
+process/invert_color=false
 stream=false
 size_limit=0
 detect_3d=true

+ 2 - 3
networking/multiplayer_bomber/charwalk.png.import

@@ -7,16 +7,14 @@ path="res://.import/charwalk.png-a9f067962a6454cc2f52a6e82832cbc5.stex"
 [deps]
 
 source_file="res://charwalk.png"
-source_md5="7dbd87a40f60dd5882f23731d13e9798"
-
 dest_files=[ "res://.import/charwalk.png-a9f067962a6454cc2f52a6e82832cbc5.stex" ]
-dest_md5="fe50c0fcfde8daf5b933d4e84ae31a9c"
 
 [params]
 
 compress/mode=0
 compress/lossy_quality=0.7
 compress/hdr_mode=0
+compress/bptc_ldr=0
 compress/normal_map=0
 flags/repeat=0
 flags/filter=true
@@ -26,6 +24,7 @@ flags/srgb=2
 process/fix_alpha_border=true
 process/premult_alpha=false
 process/HDR_as_SRGB=false
+process/invert_color=false
 stream=false
 size_limit=0
 detect_3d=true

+ 2 - 3
networking/multiplayer_bomber/explosion.png.import

@@ -7,16 +7,14 @@ path="res://.import/explosion.png-730076d88b39dbfd5c22ad71f1135b01.stex"
 [deps]
 
 source_file="res://explosion.png"
-source_md5="9c7f3018d72fd9e82c868eb5c3fbf0d7"
-
 dest_files=[ "res://.import/explosion.png-730076d88b39dbfd5c22ad71f1135b01.stex" ]
-dest_md5="f279883906fff65cae8669c1489e6336"
 
 [params]
 
 compress/mode=0
 compress/lossy_quality=0.7
 compress/hdr_mode=0
+compress/bptc_ldr=0
 compress/normal_map=0
 flags/repeat=0
 flags/filter=true
@@ -26,6 +24,7 @@ flags/srgb=2
 process/fix_alpha_border=true
 process/premult_alpha=false
 process/HDR_as_SRGB=false
+process/invert_color=false
 stream=false
 size_limit=0
 detect_3d=true

+ 1 - 1
networking/multiplayer_bomber/gamestate.gd

@@ -20,7 +20,7 @@ signal game_ended()
 signal game_error(what)
 
 # Callback from SceneTree
-func _player_connected(id):
+func _player_connected(_id):
 	# This is not used in this demo, because _connected_ok is called for clients
 	# on success and will do the job.
 	pass

+ 0 - 1
networking/multiplayer_bomber/lobby.gd

@@ -53,7 +53,6 @@ func _on_game_ended():
 	get_node("connect").show()
 	get_node("players").hide()
 	get_node("connect/host").disabled = false
-	get_node("connect/join").disabled
 
 func _on_game_error(errtxt):
 	get_node("error").dialog_text = errtxt

+ 14 - 186
networking/multiplayer_bomber/lobby.tscn

@@ -2,298 +2,126 @@
 
 [ext_resource path="res://lobby.gd" type="Script" id=1]
 
-[node name="lobby" type="Control" index="0"]
-
-anchor_left = 0.0
-anchor_top = 0.0
+[node name="lobby" type="Control"]
 anchor_right = 1.0
 anchor_bottom = 1.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
 script = ExtResource( 1 )
 
-[node name="players" type="Panel" parent="." index="0"]
-
+[node name="players" type="Panel" parent="."]
 visible = false
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
 margin_left = 393.0
 margin_top = 113.0
 margin_right = 645.0
 margin_bottom = 468.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
 
-[node name="label" type="Label" parent="players" index="0"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="label" type="Label" parent="players"]
 margin_left = 26.0
 margin_top = 18.0
 margin_right = 142.0
 margin_bottom = 32.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "Awaiting Players..."
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
 
-[node name="start" type="Button" parent="players" index="1"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="start" type="Button" parent="players"]
 margin_left = 68.0
 margin_top = 307.0
 margin_right = 193.0
 margin_bottom = 336.0
-rect_pivot_offset = Vector2( 0, 0 )
-focus_mode = 2
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
-toggle_mode = false
-enabled_focus_mode = 2
-shortcut = null
-group = null
 text = "START!"
-flat = false
-align = 1
-
-[node name="list" type="ItemList" parent="players" index="2"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="list" type="ItemList" parent="players"]
 margin_left = 25.0
 margin_top = 37.0
 margin_right = 229.0
 margin_bottom = 296.0
-rect_pivot_offset = Vector2( 0, 0 )
-rect_clip_content = true
-focus_mode = 2
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
-items = [  ]
-select_mode = 0
-icon_mode = 1
-fixed_icon_size = Vector2( 0, 0 )
 
-[node name="connect" type="Panel" parent="." index="1"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="connect" type="Panel" parent="."]
 margin_left = 370.0
 margin_top = 157.0
 margin_right = 647.0
 margin_bottom = 324.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
 
-[node name="name_label" type="Label" parent="connect" index="0"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="name_label" type="Label" parent="connect"]
 margin_left = 14.0
 margin_top = 11.0
 margin_right = 56.0
 margin_bottom = 25.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "Name:"
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
-
-[node name="name" type="LineEdit" parent="connect" index="1"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="name" type="LineEdit" parent="connect"]
 margin_left = 17.0
 margin_top = 30.0
 margin_right = 173.0
 margin_bottom = 54.0
-rect_pivot_offset = Vector2( 0, 0 )
-focus_mode = 2
-mouse_filter = 0
-mouse_default_cursor_shape = 1
 size_flags_horizontal = 2
 size_flags_vertical = 2
 text = "The Warrior"
-focus_mode = 2
-context_menu_enabled = true
-placeholder_alpha = 0.6
-caret_blink = false
-caret_blink_speed = 0.65
-caret_position = 0
 
-[node name="ip_label" type="Label" parent="connect" index="2"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="ip_label" type="Label" parent="connect"]
 margin_left = 15.0
 margin_top = 66.0
 margin_right = 57.0
 margin_bottom = 80.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "IP:"
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
-
-[node name="ip" type="LineEdit" parent="connect" index="3"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="ip" type="LineEdit" parent="connect"]
 margin_left = 17.0
 margin_top = 85.0
 margin_right = 173.0
 margin_bottom = 109.0
-rect_pivot_offset = Vector2( 0, 0 )
-focus_mode = 2
-mouse_filter = 0
-mouse_default_cursor_shape = 1
 size_flags_horizontal = 2
 size_flags_vertical = 2
 text = "127.0.0.1"
-focus_mode = 2
-context_menu_enabled = true
-placeholder_alpha = 0.6
-caret_blink = false
-caret_blink_speed = 0.65
-caret_position = 0
 
-[node name="host" type="Button" parent="connect" index="4"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="host" type="Button" parent="connect"]
 margin_left = 181.0
 margin_top = 31.0
 margin_right = 246.0
 margin_bottom = 51.0
-rect_pivot_offset = Vector2( 0, 0 )
-focus_mode = 2
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
-toggle_mode = false
-enabled_focus_mode = 2
-shortcut = null
-group = null
 text = "Host"
-flat = false
-align = 1
-
-[node name="join" type="Button" parent="connect" index="5"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="join" type="Button" parent="connect"]
 margin_left = 181.0
 margin_top = 87.0
 margin_right = 246.0
 margin_bottom = 107.0
-rect_pivot_offset = Vector2( 0, 0 )
-focus_mode = 2
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
-toggle_mode = false
-enabled_focus_mode = 2
-shortcut = null
-group = null
 text = "Join"
-flat = false
-align = 1
-
-[node name="error_label" type="Label" parent="connect" index="6"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="error_label" type="Label" parent="connect"]
 margin_left = 15.0
 margin_top = 125.0
 margin_right = 257.0
 margin_bottom = 139.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 0
 custom_colors/font_color = Color( 0.820312, 0.291595, 0.291595, 1 )
 align = 1
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
-
-[node name="error" type="AcceptDialog" parent="." index="2"]
 
-visible = false
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="error" type="AcceptDialog" parent="."]
 margin_right = 55.0
 margin_bottom = 58.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 0
-mouse_default_cursor_shape = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
-popup_exclusive = false
-window_title = "Alert!"
-resizable = false
-dialog_hide_on_ok = true
 
 [connection signal="pressed" from="players/start" to="." method="_on_start_pressed"]
-
 [connection signal="pressed" from="connect/host" to="." method="_on_host_pressed"]
-
 [connection signal="pressed" from="connect/join" to="." method="_on_join_pressed"]
-
-

+ 12 - 12
networking/multiplayer_bomber/player.gd

@@ -2,8 +2,8 @@ extends KinematicBody2D
 
 const MOTION_SPEED = 90.0
 
-slave var slave_pos = Vector2()
-slave var slave_motion = Vector2()
+puppet var puppet_pos = Vector2()
+puppet var puppet_motion = Vector2()
 
 export var stunned = false
 
@@ -20,7 +20,7 @@ var current_anim = ""
 var prev_bombing = false
 var bomb_index = 0
 
-func _physics_process(delta):
+func _physics_process(_delta):
 	var motion = Vector2()
 
 	if is_network_master():
@@ -46,11 +46,11 @@ func _physics_process(delta):
 
 		prev_bombing = bombing
 
-		rset("slave_motion", motion)
-		rset("slave_pos", position)
+		rset("puppet_motion", motion)
+		rset("puppet_pos", position)
 	else:
-		position = slave_pos
-		motion = slave_motion
+		position = puppet_pos
+		motion = puppet_motion
 
 	var new_anim = "standing"
 	if motion.y < 0:
@@ -72,15 +72,15 @@ func _physics_process(delta):
 	# FIXME: Use move_and_slide
 	move_and_slide(motion * MOTION_SPEED)
 	if not is_network_master():
-		slave_pos = position # To avoid jitter
+		puppet_pos = position # To avoid jitter
 
-slave func stun():
+puppet func stun():
 	stunned = true
 
-master func exploded(by_who):
+master func exploded(_by_who):
 	if stunned:
 		return
-	rpc("stun") # Stun slaves
+	rpc("stun") # Stun puppets
 	stun() # Stun master - could use sync to do both at once
 
 func set_player_name(new_name):
@@ -88,4 +88,4 @@ func set_player_name(new_name):
 
 func _ready():
 	stunned = false
-	slave_pos = position
+	puppet_pos = position

+ 8 - 38
networking/multiplayer_bomber/player.tscn

@@ -5,21 +5,18 @@
 [ext_resource path="res://montserrat.otf" type="DynamicFontData" id=3]
 
 [sub_resource type="CircleShape2D" id=1]
-
-custom_solver_bias = 0.0
 radius = 20.0
 
 [sub_resource type="Animation" id=2]
-
 resource_name = "standing"
 length = 0.8
 loop = true
-step = 0.1
 tracks/0/type = "value"
 tracks/0/path = NodePath("sprite:frame")
 tracks/0/interp = 1
 tracks/0/loop_wrap = true
 tracks/0/imported = false
+tracks/0/enabled = true
 tracks/0/keys = {
 "times": PoolRealArray( 0, 0.2, 0.4, 0.6 ),
 "transitions": PoolRealArray( 1, 1, 1, 1 ),
@@ -28,16 +25,14 @@ tracks/0/keys = {
 }
 
 [sub_resource type="Animation" id=3]
-
 resource_name = "stunned"
 length = 1.2
-loop = false
-step = 0.1
 tracks/0/type = "value"
 tracks/0/path = NodePath("sprite:frame")
 tracks/0/interp = 1
 tracks/0/loop_wrap = true
 tracks/0/imported = false
+tracks/0/enabled = true
 tracks/0/keys = {
 "times": PoolRealArray( 0 ),
 "transitions": PoolRealArray( 1 ),
@@ -49,6 +44,7 @@ tracks/1/path = NodePath("sprite:rotation_degrees")
 tracks/1/interp = 1
 tracks/1/loop_wrap = true
 tracks/1/imported = false
+tracks/1/enabled = true
 tracks/1/keys = {
 "times": PoolRealArray( 0, 1, 1.1 ),
 "transitions": PoolRealArray( 1, 0, 1 ),
@@ -60,6 +56,7 @@ tracks/2/path = NodePath(".:stunned")
 tracks/2/interp = 1
 tracks/2/loop_wrap = true
 tracks/2/imported = false
+tracks/2/enabled = true
 tracks/2/keys = {
 "times": PoolRealArray( 1 ),
 "transitions": PoolRealArray( 1 ),
@@ -68,15 +65,14 @@ tracks/2/keys = {
 }
 
 [sub_resource type="Animation" id=4]
-
 length = 0.8
 loop = true
-step = 0.1
 tracks/0/type = "value"
 tracks/0/path = NodePath("sprite:frame")
 tracks/0/interp = 1
 tracks/0/loop_wrap = true
 tracks/0/imported = false
+tracks/0/enabled = true
 tracks/0/keys = {
 "times": PoolRealArray( 0, 0.2, 0.4, 0.6 ),
 "transitions": PoolRealArray( 1, 1, 1, 1 ),
@@ -85,7 +81,6 @@ tracks/0/keys = {
 }
 
 [sub_resource type="Animation" id=5]
-
 length = 0.8
 loop = true
 step = 0.2
@@ -94,6 +89,7 @@ tracks/0/path = NodePath("sprite:frame")
 tracks/0/interp = 1
 tracks/0/loop_wrap = true
 tracks/0/imported = false
+tracks/0/enabled = true
 tracks/0/keys = {
 "times": PoolRealArray( 0, 0.2, 0.4, 0.6 ),
 "transitions": PoolRealArray( 1, 1, 1, 1 ),
@@ -102,7 +98,6 @@ tracks/0/keys = {
 }
 
 [sub_resource type="Animation" id=6]
-
 length = 0.8
 loop = true
 step = 0.2
@@ -111,6 +106,7 @@ tracks/0/path = NodePath("sprite:frame")
 tracks/0/interp = 1
 tracks/0/loop_wrap = true
 tracks/0/imported = false
+tracks/0/enabled = true
 tracks/0/keys = {
 "times": PoolRealArray( 0, 0.2, 0.4, 0.6 ),
 "transitions": PoolRealArray( 1, 1, 1, 1 ),
@@ -119,7 +115,6 @@ tracks/0/keys = {
 }
 
 [sub_resource type="Animation" id=7]
-
 length = 0.8
 loop = true
 step = 0.2
@@ -128,6 +123,7 @@ tracks/0/path = NodePath("sprite:frame")
 tracks/0/interp = 1
 tracks/0/loop_wrap = true
 tracks/0/imported = false
+tracks/0/enabled = true
 tracks/0/keys = {
 "times": PoolRealArray( 0, 0.2, 0.4, 0.6 ),
 "transitions": PoolRealArray( 1, 1, 1, 1 ),
@@ -136,23 +132,13 @@ tracks/0/keys = {
 }
 
 [sub_resource type="DynamicFont" id=8]
-
 size = 14
-use_mipmaps = false
-use_filter = false
 font_data = ExtResource( 3 )
 
 [node name="player" type="KinematicBody2D"]
-
-input_pickable = false
-collision_layer = 1
-collision_mask = 1
-collision/safe_margin = 0.08
 script = ExtResource( 1 )
-stunned = false
 
 [node name="sprite" type="Sprite" parent="."]
-
 position = Vector2( 0.0750351, 6.23615 )
 texture = ExtResource( 2 )
 offset = Vector2( -0.0750351, -6.23615 )
@@ -160,40 +146,24 @@ vframes = 4
 hframes = 4
 
 [node name="shape" type="CollisionShape2D" parent="."]
-
 shape = SubResource( 1 )
 
 [node name="anim" type="AnimationPlayer" parent="."]
-
-playback_process_mode = 1
-playback_default_blend_time = 0.0
-root_node = NodePath("..")
 anims/standing = SubResource( 2 )
 anims/stunned = SubResource( 3 )
 anims/walk_down = SubResource( 4 )
 anims/walk_left = SubResource( 5 )
 anims/walk_right = SubResource( 6 )
 anims/walk_up = SubResource( 7 )
-playback/active = true
-playback/speed = 1.0
-blend_times = [  ]
-autoplay = ""
 
 [node name="label" type="Label" parent="."]
-
 margin_left = -82.0
 margin_top = -35.0
 margin_right = 85.0
 margin_bottom = -14.0
-rect_clip_content = false
-mouse_filter = 2
 size_flags_horizontal = 2
 size_flags_vertical = 0
 custom_fonts/font = SubResource( 8 )
 text = "Player 1"
 align = 1
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
-
 

+ 30 - 6
networking/multiplayer_bomber/project.godot

@@ -6,7 +6,12 @@
 ;   [section] ; section goes between []
 ;   param=value ; assign values to parameters
 
-config_version=3
+config_version=4
+
+_global_script_classes=[  ]
+_global_script_class_icons={
+
+}
 
 [application]
 
@@ -17,6 +22,10 @@ run/main_scene="res://lobby.tscn"
 
 gamestate="*res://gamestate.gd"
 
+[debug]
+
+gdscript/warnings/return_value_discarded=false
+
 [gdnative]
 
 singletons=[  ]
@@ -28,13 +37,28 @@ gen_mipmaps=false
 
 [input]
 
-move_down=[ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777234,"unicode":0,"echo":false,"script":null)
+move_down={
+"deadzone": 0.5,
+"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777234,"unicode":0,"echo":false,"script":null)
  ]
-move_left=[ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777231,"unicode":0,"echo":false,"script":null)
+}
+move_left={
+"deadzone": 0.5,
+"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777231,"unicode":0,"echo":false,"script":null)
  ]
-move_right=[ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777233,"unicode":0,"echo":false,"script":null)
+}
+move_right={
+"deadzone": 0.5,
+"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777233,"unicode":0,"echo":false,"script":null)
  ]
-move_up=[ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777232,"unicode":0,"echo":false,"script":null)
+}
+move_up={
+"deadzone": 0.5,
+"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777232,"unicode":0,"echo":false,"script":null)
  ]
-set_bomb=[ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":32,"unicode":0,"echo":false,"script":null)
+}
+set_bomb={
+"deadzone": 0.5,
+"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":32,"unicode":0,"echo":false,"script":null)
  ]
+}

+ 2 - 2
networking/multiplayer_bomber/rock.gd

@@ -1,11 +1,11 @@
 extends KinematicBody2D
 
 # Sent to everyone else
-slave func do_explosion():
+puppet func do_explosion():
 	get_node("anim").play("explode")
 
 # Received by owner of the rock
 master func exploded(by_who):
-	rpc("do_explosion") # Re-sent to slave rocks
+	rpc("do_explosion") # Re-sent to puppet rocks
 	get_node("../../score").rpc("increase_score", by_who)
 	do_explosion()

+ 3 - 26
networking/multiplayer_bomber/rock.tscn

@@ -4,16 +4,10 @@
 [ext_resource path="res://brickfloor.png" type="Texture" id=2]
 
 [sub_resource type="RectangleShape2D" id=1]
-
-custom_solver_bias = 0.0
 extents = Vector2( 24, 24 )
 
 [sub_resource type="Animation" id=2]
-
 resource_name = "explode"
-length = 1.0
-loop = false
-step = 0.1
 tracks/0/type = "method"
 tracks/0/path = NodePath(".")
 tracks/0/interp = 1
@@ -42,33 +36,16 @@ tracks/1/keys = {
 }
 
 [node name="rock" type="KinematicBody2D"]
-
-input_pickable = false
-collision_layer = 1
-collision_mask = 1
-collision/safe_margin = 0.08
 script = ExtResource( 1 )
 
-[node name="sprite" type="Sprite" parent="." index="0"]
-
+[node name="sprite" type="Sprite" parent="."]
 texture = ExtResource( 2 )
 region_enabled = true
 region_rect = Rect2( 96, 0, 48, 48 )
-_sections_unfolded = [ "Region" ]
-
-[node name="shape" type="CollisionShape2D" parent="." index="1"]
 
+[node name="shape" type="CollisionShape2D" parent="."]
 shape = SubResource( 1 )
 
-[node name="anim" type="AnimationPlayer" parent="." index="2"]
-
-root_node = NodePath("..")
-autoplay = ""
-playback_process_mode = 1
-playback_default_blend_time = 0.0
-playback_speed = 1.0
+[node name="anim" type="AnimationPlayer" parent="."]
 anims/explode = SubResource( 2 )
-blend_times = [  ]
-autoplay = ""
-
 

+ 2 - 3
networking/multiplayer_bomber/rock_bit.png.import

@@ -7,16 +7,14 @@ path="res://.import/rock_bit.png-cd30ec3dce7edf848ee632b29d4d0c95.stex"
 [deps]
 
 source_file="res://rock_bit.png"
-source_md5="72daee59795a6b17ee21df81b712631f"
-
 dest_files=[ "res://.import/rock_bit.png-cd30ec3dce7edf848ee632b29d4d0c95.stex" ]
-dest_md5="81cad6adf308b35e7495206306476fce"
 
 [params]
 
 compress/mode=0
 compress/lossy_quality=0.7
 compress/hdr_mode=0
+compress/bptc_ldr=0
 compress/normal_map=0
 flags/repeat=0
 flags/filter=true
@@ -26,6 +24,7 @@ flags/srgb=2
 process/fix_alpha_border=true
 process/premult_alpha=false
 process/HDR_as_SRGB=false
+process/invert_color=false
 stream=false
 size_limit=0
 detect_3d=true

+ 1 - 1
networking/multiplayer_bomber/score.gd

@@ -2,7 +2,7 @@ extends HBoxContainer
 
 var player_labels = {}
 
-func _process(delta):
+func _process(_delta):
 	var rocks_left = get_node("../rocks").get_child_count()
 	if rocks_left == 0:
 		var winner_name = ""

+ 4 - 18
networking/multiplayer_bomber/tile_scene.tscn

@@ -3,36 +3,22 @@
 [ext_resource path="res://brickfloor.png" type="Texture" id=1]
 
 [sub_resource type="RectangleShape2D" id=1]
-
-custom_solver_bias = 0.0
 extents = Vector2( 24, 24 )
 
 [node name="Node2D" type="Node2D"]
 
-[node name="wall" type="Sprite" parent="." index="0"]
-
+[node name="wall" type="Sprite" parent="."]
 position = Vector2( 24, 24 )
 texture = ExtResource( 1 )
 region_rect = Rect2( 0, 0, 48, 48 )
 
-[node name="col" type="StaticBody2D" parent="wall" index="0"]
-
-input_pickable = false
-collision_layer = 1
-collision_mask = 1
-constant_linear_velocity = Vector2( 0, 0 )
-constant_angular_velocity = 0.0
-friction = 1.0
-bounce = 0.0
-
-[node name="CollisionShape2D" type="CollisionShape2D" parent="wall/col" index="0"]
+[node name="col" type="StaticBody2D" parent="wall"]
 
+[node name="CollisionShape2D" type="CollisionShape2D" parent="wall/col"]
 shape = SubResource( 1 )
 
-[node name="floor" type="Sprite" parent="." index="1"]
-
+[node name="floor" type="Sprite" parent="."]
 position = Vector2( 72, 24 )
 texture = ExtResource( 1 )
 region_rect = Rect2( 48, 0, 48, 48 )
 
-

File diff suppressed because it is too large
+ 1 - 18
networking/multiplayer_bomber/world.tscn


+ 1 - 1
networking/multiplayer_pong/ball.gd

@@ -47,7 +47,7 @@ func _process(delta):
 			get_parent().rpc("update_score", false)
 			rpc("_reset_ball", false)
 	else:
-		# only the slave will decide when the ball is out in the right side (it's own side)
+		# only the puppet will decide when the ball is out in the right side (it's own side)
 		# this makes the game playable even if latency is high and ball is going fast
 		# otherwise ball might be out in the other player's screen but not this one
 		

+ 2 - 3
networking/multiplayer_pong/ball.png.import

@@ -7,16 +7,14 @@ path="res://.import/ball.png-9a4ca347acb7532f6ae347744a6b04f7.stex"
 [deps]
 
 source_file="res://ball.png"
-source_md5="4219e9084f5485c8d1812297700f317d"
-
 dest_files=[ "res://.import/ball.png-9a4ca347acb7532f6ae347744a6b04f7.stex" ]
-dest_md5="c23684a1fd10063a69ecc18f7ccca4c3"
 
 [params]
 
 compress/mode=0
 compress/lossy_quality=0.7
 compress/hdr_mode=0
+compress/bptc_ldr=0
 compress/normal_map=0
 flags/repeat=0
 flags/filter=true
@@ -26,6 +24,7 @@ flags/srgb=2
 process/fix_alpha_border=true
 process/premult_alpha=false
 process/HDR_as_SRGB=false
+process/invert_color=false
 stream=false
 size_limit=0
 detect_3d=true

+ 0 - 13
networking/multiplayer_pong/ball.tscn

@@ -4,27 +4,14 @@
 [ext_resource path="res://ball.png" type="Texture" id=2]
 
 [sub_resource type="CircleShape2D" id=1]
-
-custom_solver_bias = 0.0
 radius = 5.11969
 
 [node name="ball" type="Area2D"]
-
-input_pickable = true
-gravity_vec = Vector2( 0, 1 )
-gravity = 98.0
-linear_damp = 0.1
-angular_damp = 1.0
-audio_bus_override = false
-audio_bus_name = "Master"
 script = ExtResource( 1 )
 
 [node name="sprite" type="Sprite" parent="."]
-
 texture = ExtResource( 2 )
 
 [node name="shape" type="CollisionShape2D" parent="."]
-
 shape = SubResource( 1 )
 
-

+ 2 - 3
networking/multiplayer_pong/icon.png.import

@@ -7,16 +7,14 @@ path="res://.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex"
 [deps]
 
 source_file="res://icon.png"
-source_md5="9be177e863d37787c0836d64924b3503"
-
 dest_files=[ "res://.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex" ]
-dest_md5="6339016da0f704252e68ba6dd6477388"
 
 [params]
 
 compress/mode=0
 compress/lossy_quality=0.7
 compress/hdr_mode=0
+compress/bptc_ldr=0
 compress/normal_map=0
 flags/repeat=0
 flags/filter=true
@@ -26,6 +24,7 @@ flags/srgb=2
 process/fix_alpha_border=true
 process/premult_alpha=false
 process/HDR_as_SRGB=false
+process/invert_color=false
 stream=false
 size_limit=0
 detect_3d=true

+ 2 - 2
networking/multiplayer_pong/lobby.gd

@@ -5,7 +5,7 @@ const DEFAULT_PORT = 8910 # some random number, pick your port properly
 #### Network callbacks from SceneTree ####
 
 # callback from SceneTree
-func _player_connected(id):
+func _player_connected(_id):
 	#someone connected, start the game!
 	var pong = load("res://pong.tscn").instance()
 	pong.connect("game_finished", self, "_end_game", [], CONNECT_DEFERRED) # connect deferred so we can safely erase it from the callback
@@ -13,7 +13,7 @@ func _player_connected(id):
 	get_tree().get_root().add_child(pong)
 	hide()
 
-func _player_disconnected(id):
+func _player_disconnected(_id):
 
 	if get_tree().is_network_server():
 		_end_game("Client disconnected")

+ 0 - 102
networking/multiplayer_pong/lobby.tscn

@@ -3,188 +3,86 @@
 [ext_resource path="res://lobby.gd" type="Script" id=1]
 
 [node name="lobby" type="Control"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
 margin_right = 40.0
 margin_bottom = 40.0
-rect_pivot_offset = Vector2( 0, 0 )
-rect_clip_content = false
-mouse_filter = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
 script = ExtResource( 1 )
 
 [node name="title" type="Label" parent="."]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
 margin_left = 210.0
 margin_top = 40.0
 margin_right = 430.0
 margin_bottom = 80.0
-rect_pivot_offset = Vector2( 0, 0 )
-rect_clip_content = false
-mouse_filter = 2
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "Multiplayer Pong"
 align = 1
 valign = 1
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
 
 [node name="panel" type="Panel" parent="."]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
 margin_left = 210.0
 margin_top = 160.0
 margin_right = 430.0
 margin_bottom = 270.0
-rect_pivot_offset = Vector2( 0, 0 )
-rect_clip_content = false
-mouse_filter = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
 
 [node name="address_label" type="Label" parent="panel"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
 margin_left = 10.0
 margin_top = 10.0
 margin_right = 62.0
 margin_bottom = 24.0
-rect_pivot_offset = Vector2( 0, 0 )
-rect_clip_content = false
-mouse_filter = 2
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "Address"
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
 
 [node name="address" type="LineEdit" parent="panel"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
 margin_left = 10.0
 margin_top = 30.0
 margin_right = 210.0
 margin_bottom = 54.0
-rect_pivot_offset = Vector2( 0, 0 )
-rect_clip_content = false
-mouse_filter = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
 text = "127.0.0.1"
-expand_to_len = false
-focus_mode = 2
-placeholder_alpha = 0.6
-caret_blink = false
-caret_blink_speed = 0.65
 
 [node name="host" type="Button" parent="panel"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
 margin_left = 10.0
 margin_top = 60.0
 margin_right = 90.0
 margin_bottom = 80.0
-rect_pivot_offset = Vector2( 0, 0 )
-rect_clip_content = false
-mouse_filter = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
-toggle_mode = false
-enabled_focus_mode = 2
-shortcut = null
-group = null
 text = "Host"
-flat = false
 
 [node name="join" type="Button" parent="panel"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
 margin_left = 130.0
 margin_top = 60.0
 margin_right = 210.0
 margin_bottom = 80.0
-rect_pivot_offset = Vector2( 0, 0 )
-rect_clip_content = false
-mouse_filter = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
-toggle_mode = false
-enabled_focus_mode = 2
-shortcut = null
-group = null
 text = "Join"
-flat = false
 
 [node name="status_ok" type="Label" parent="panel"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
 margin_left = 10.0
 margin_top = 90.0
 margin_right = 210.0
 margin_bottom = 104.0
-rect_pivot_offset = Vector2( 0, 0 )
-rect_clip_content = false
-mouse_filter = 2
 size_flags_horizontal = 2
 size_flags_vertical = 0
 custom_colors/font_color = Color( 0, 1, 0.015625, 1 )
 align = 1
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
 
 [node name="status_fail" type="Label" parent="panel"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
 margin_left = 10.0
 margin_top = 90.0
 margin_right = 210.0
 margin_bottom = 104.0
-rect_pivot_offset = Vector2( 0, 0 )
-rect_clip_content = false
-mouse_filter = 2
 size_flags_horizontal = 2
 size_flags_vertical = 0
 custom_colors/font_color = Color( 1, 0, 0, 1 )
 align = 1
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
 
 [connection signal="pressed" from="panel/host" to="." method="_on_host_pressed"]
-
 [connection signal="pressed" from="panel/join" to="." method="_on_join_pressed"]
-
-

+ 1 - 1
networking/multiplayer_pong/paddle.gd

@@ -10,7 +10,7 @@ var you_hidden = false
 onready var screen_size = get_viewport_rect().size
 
 #synchronize position and speed to the other peers
-slave func set_pos_and_motion(p_pos, p_motion):
+puppet func set_pos_and_motion(p_pos, p_motion):
 	position = p_pos
 	motion = p_motion
 

+ 2 - 3
networking/multiplayer_pong/paddle.png.import

@@ -7,16 +7,14 @@ path="res://.import/paddle.png-0e798fb0912613386507c9904d5cc01a.stex"
 [deps]
 
 source_file="res://paddle.png"
-source_md5="946d462749230c01dcc1c69371ed119b"
-
 dest_files=[ "res://.import/paddle.png-0e798fb0912613386507c9904d5cc01a.stex" ]
-dest_md5="ed1295225d73ba25982010781ff03d09"
 
 [params]
 
 compress/mode=0
 compress/lossy_quality=0.7
 compress/hdr_mode=0
+compress/bptc_ldr=0
 compress/normal_map=0
 flags/repeat=0
 flags/filter=true
@@ -26,6 +24,7 @@ flags/srgb=2
 process/fix_alpha_border=true
 process/premult_alpha=false
 process/HDR_as_SRGB=false
+process/invert_color=false
 stream=false
 size_limit=0
 detect_3d=true

+ 0 - 26
networking/multiplayer_pong/paddle.tscn

@@ -4,52 +4,26 @@
 [ext_resource path="res://paddle.png" type="Texture" id=2]
 
 [sub_resource type="CapsuleShape2D" id=1]
-
-custom_solver_bias = 0.0
 radius = 4.78568
 height = 23.6064
 
 [node name="paddle" type="Area2D"]
-
-input_pickable = true
-gravity_vec = Vector2( 0, 1 )
-gravity = 98.0
-linear_damp = 0.1
-angular_damp = 1.0
-audio_bus_override = false
-audio_bus_name = "Master"
 script = ExtResource( 1 )
-left = false
 
 [node name="sprite" type="Sprite" parent="."]
-
 texture = ExtResource( 2 )
 
 [node name="shape" type="CollisionShape2D" parent="."]
-
 shape = SubResource( 1 )
 
 [node name="you" type="Label" parent="."]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
 margin_left = -26.0
 margin_top = -33.0
 margin_right = 27.0
 margin_bottom = -19.0
-rect_pivot_offset = Vector2( 0, 0 )
-rect_clip_content = false
-mouse_filter = 2
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "You"
 align = 1
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
 
 [connection signal="area_entered" from="." to="." method="_on_paddle_area_enter"]
-
-

+ 1 - 1
networking/multiplayer_pong/pong.gd

@@ -34,7 +34,7 @@ func _on_exit_game_pressed():
 
 func _ready():
 	# by default, all nodes in server inherit from master
-	# while all nodes in clients inherit from slave
+	# while all nodes in clients inherit from puppet
 	if get_tree().is_network_server():		
 		#if in the server, get control of player 2 to the other peeer, this function is tree recursive by default
 		get_node("player2").set_network_master(get_tree().get_network_connected_peers()[0])

+ 3 - 67
networking/multiplayer_pong/pong.tscn

@@ -6,143 +6,79 @@
 [ext_resource path="res://ball.tscn" type="PackedScene" id=4]
 
 [node name="pong" type="Node2D"]
-
 script = ExtResource( 1 )
 
 [node name="separator" type="Sprite" parent="."]
-
 position = Vector2( 320, 200 )
 texture = ExtResource( 2 )
 
 [node name="player1" parent="." instance=ExtResource( 3 )]
-
 position = Vector2( 32.49, 188.622 )
 
-[node name="sprite" parent="player1"]
-
+[node name="sprite" parent="player1" index="0"]
 self_modulate = Color( 1, 0, 0.960938, 1 )
 
 [node name="player2" parent="." instance=ExtResource( 3 )]
-
 position = Vector2( 608.88, 188.622 )
 
-[node name="sprite" parent="player2"]
-
+[node name="sprite" parent="player2" index="0"]
 self_modulate = Color( 0, 0.929688, 1, 1 )
 
 [node name="ball" parent="." instance=ExtResource( 4 )]
-
 position = Vector2( 320.387, 189.525 )
 
 [node name="score_left" type="Label" parent="."]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
 margin_left = 240.0
 margin_top = 10.0
 margin_right = 280.0
 margin_bottom = 30.0
-rect_pivot_offset = Vector2( 0, 0 )
-rect_clip_content = false
-mouse_filter = 2
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "0"
 align = 1
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
 
 [node name="score_right" type="Label" parent="."]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
 margin_left = 360.0
 margin_top = 10.0
 margin_right = 400.0
 margin_bottom = 30.0
-rect_pivot_offset = Vector2( 0, 0 )
-rect_clip_content = false
-mouse_filter = 2
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "0"
 align = 1
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
 
 [node name="winner_left" type="Label" parent="."]
-
 visible = false
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
 margin_left = 190.0
 margin_top = 170.0
 margin_right = 267.0
 margin_bottom = 184.0
-rect_pivot_offset = Vector2( 0, 0 )
-rect_clip_content = false
-mouse_filter = 2
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "The Winner!"
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
 
 [node name="winner_right" type="Label" parent="."]
-
 visible = false
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
 margin_left = 380.0
 margin_top = 170.0
 margin_right = 457.0
 margin_bottom = 184.0
-rect_pivot_offset = Vector2( 0, 0 )
-rect_clip_content = false
-mouse_filter = 2
 size_flags_horizontal = 2
 size_flags_vertical = 0
 text = "The Winner!"
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
 
 [node name="exit_game" type="Button" parent="."]
-
 visible = false
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
 margin_left = 280.0
 margin_top = 340.0
 margin_right = 360.0
 margin_bottom = 360.0
-rect_pivot_offset = Vector2( 0, 0 )
-rect_clip_content = false
-mouse_filter = 0
 size_flags_horizontal = 2
 size_flags_vertical = 2
-toggle_mode = false
-enabled_focus_mode = 2
-shortcut = null
-group = null
 text = "Exit Game"
-flat = false
 
 [connection signal="pressed" from="exit_game" to="." method="_on_exit_game_pressed"]
 
-
 [editable path="player1"]
+
 [editable path="player2"]

+ 18 - 3
networking/multiplayer_pong/project.godot

@@ -6,7 +6,12 @@
 ;   [section] ; section goes between []
 ;   param=value ; assign values to parameters
 
-config_version=3
+config_version=4
+
+_global_script_classes=[  ]
+_global_script_class_icons={
+
+}
 
 [application]
 
@@ -14,6 +19,10 @@ config/name="Pong Multiplayer"
 run/main_scene="res://lobby.tscn"
 config/icon="res://icon.png"
 
+[debug]
+
+gdscript/warnings/return_value_discarded=false
+
 [display]
 
 window/size/width=640
@@ -26,10 +35,16 @@ singletons=[  ]
 
 [input]
 
-move_down=[ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777234,"unicode":0,"echo":false,"script":null)
+move_down={
+"deadzone": 0.5,
+"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777234,"unicode":0,"echo":false,"script":null)
  ]
-move_up=[ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777232,"unicode":0,"echo":false,"script":null)
+}
+move_up={
+"deadzone": 0.5,
+"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777232,"unicode":0,"echo":false,"script":null)
  ]
+}
 
 [rendering]
 

+ 2 - 3
networking/multiplayer_pong/separator.png.import

@@ -7,16 +7,14 @@ path="res://.import/separator.png-f981c8489b9148e2e1dc63398273da74.stex"
 [deps]
 
 source_file="res://separator.png"
-source_md5="b6234b89455156532bbe1256249fcfd4"
-
 dest_files=[ "res://.import/separator.png-f981c8489b9148e2e1dc63398273da74.stex" ]
-dest_md5="6e27251839594842494c6cd51e3b86cb"
 
 [params]
 
 compress/mode=0
 compress/lossy_quality=0.7
 compress/hdr_mode=0
+compress/bptc_ldr=0
 compress/normal_map=0
 flags/repeat=0
 flags/filter=true
@@ -26,6 +24,7 @@ flags/srgb=2
 process/fix_alpha_border=true
 process/premult_alpha=false
 process/HDR_as_SRGB=false
+process/invert_color=false
 stream=false
 size_limit=0
 detect_3d=true

+ 23 - 456
viewport/2d_in_3d/2D_in_3D.tscn

@@ -9,12 +9,7 @@
 
 [sub_resource type="PlaneMesh" id=1]
 
-size = Vector2( 2, 2 )
-subdivide_width = 0
-subdivide_depth = 0
-
 [sub_resource type="GDScript" id=2]
-
 script/source = "tool
 extends Object
 func e():
@@ -22,80 +17,18 @@ func e():
 "
 
 [sub_resource type="SpatialMaterial" id=3]
-
-render_priority = 0
-flags_transparent = false
-flags_unshaded = false
-flags_vertex_lighting = false
-flags_no_depth_test = false
-flags_use_point_size = false
-flags_world_triplanar = false
-flags_fixed_size = false
-flags_albedo_tex_force_srgb = false
-vertex_color_use_as_albedo = false
-vertex_color_is_srgb = false
-params_diffuse_mode = 0
-params_specular_mode = 0
-params_blend_mode = 0
-params_cull_mode = 0
-params_depth_draw_mode = 0
-params_line_width = 1.0
-params_point_size = 1.0
-params_billboard_mode = 0
-params_grow = false
-params_use_alpha_scissor = false
-albedo_color = Color( 1, 1, 1, 1 )
-metallic = 0.0
-metallic_specular = 0.5
-metallic_texture_channel = 0
 roughness = 0.7
-roughness_texture_channel = 0
-emission_enabled = false
-normal_enabled = false
-rim_enabled = false
-clearcoat_enabled = false
-anisotropy_enabled = false
-ao_enabled = false
-depth_enabled = false
-subsurf_scatter_enabled = false
-transmission_enabled = false
-refraction_enabled = false
-detail_enabled = false
-uv1_scale = Vector3( 1, 1, 1 )
-uv1_offset = Vector3( 0, 0, 0 )
-uv1_triplanar = false
-uv1_triplanar_sharpness = 1.0
-uv2_scale = Vector3( 1, 1, 1 )
-uv2_offset = Vector3( 0, 0, 0 )
-uv2_triplanar = false
-uv2_triplanar_sharpness = 1.0
-proximity_fade_enable = false
-distance_fade_enable = false
 script = SubResource( 2 )
-_sections_unfolded = [ "Roughness" ]
 
 [sub_resource type="ProceduralSky" id=4]
-
-radiance_size = 4
 sky_top_color = Color( 0.0470588, 0.454902, 0.976471, 1 )
 sky_horizon_color = Color( 0.556863, 0.823529, 0.909804, 1 )
 sky_curve = 0.25
-sky_energy = 1.0
 ground_bottom_color = Color( 0.101961, 0.145098, 0.188235, 1 )
 ground_horizon_color = Color( 0.482353, 0.788235, 0.952941, 1 )
 ground_curve = 0.01
-ground_energy = 1.0
-sun_color = Color( 1, 1, 1, 1 )
-sun_latitude = 35.0
-sun_longitude = 0.0
-sun_angle_min = 1.0
-sun_angle_max = 100.0
-sun_curve = 0.05
-sun_energy = 16.0
-texture_size = 2
 
 [sub_resource type="GDScript" id=5]
-
 script/source = "tool
 extends Object
 func e():
@@ -103,147 +36,21 @@ func e():
 "
 
 [sub_resource type="Environment" id=6]
-
 background_mode = 2
 background_sky = SubResource( 4 )
-background_sky_custom_fov = 0.0
 background_color = Color( 0.445312, 0.445312, 0.445312, 1 )
-background_energy = 1.0
-background_canvas_max_layer = 0
 ambient_light_color = Color( 0.511719, 0.511719, 0.511719, 1 )
-ambient_light_energy = 1.0
 ambient_light_sky_contribution = 0.4
-fog_enabled = false
-fog_color = Color( 0.5, 0.6, 0.7, 1 )
-fog_sun_color = Color( 1, 0.9, 0.7, 1 )
-fog_sun_amount = 0.0
-fog_depth_enabled = true
-fog_depth_begin = 10.0
-fog_depth_curve = 1.0
-fog_transmit_enabled = false
-fog_transmit_curve = 1.0
-fog_height_enabled = false
-fog_height_min = 0.0
-fog_height_max = 100.0
-fog_height_curve = 1.0
-tonemap_mode = 0
-tonemap_exposure = 1.0
-tonemap_white = 1.0
-auto_exposure_enabled = false
-auto_exposure_scale = 0.4
-auto_exposure_min_luma = 0.05
-auto_exposure_max_luma = 8.0
-auto_exposure_speed = 0.5
-ss_reflections_enabled = false
-ss_reflections_max_steps = 64
-ss_reflections_fade_in = 0.15
-ss_reflections_fade_out = 2.0
-ss_reflections_depth_tolerance = 0.2
-ss_reflections_roughness = true
-ssao_enabled = false
-ssao_radius = 1.0
-ssao_intensity = 1.0
-ssao_radius2 = 0.0
-ssao_intensity2 = 1.0
-ssao_bias = 0.01
-ssao_light_affect = 0.0
-ssao_color = Color( 0, 0, 0, 1 )
-ssao_quality = 0
 ssao_blur = 1
-ssao_edge_sharpness = 4.0
-dof_blur_far_enabled = false
-dof_blur_far_distance = 10.0
-dof_blur_far_transition = 5.0
-dof_blur_far_amount = 0.1
-dof_blur_far_quality = 1
-dof_blur_near_enabled = false
-dof_blur_near_distance = 2.0
-dof_blur_near_transition = 1.0
-dof_blur_near_amount = 0.1
-dof_blur_near_quality = 1
-glow_enabled = false
-glow_levels/1 = false
-glow_levels/2 = false
-glow_levels/3 = true
-glow_levels/4 = false
-glow_levels/5 = true
-glow_levels/6 = false
-glow_levels/7 = false
-glow_intensity = 0.8
-glow_strength = 1.0
-glow_bloom = 0.0
-glow_blend_mode = 2
-glow_hdr_threshold = 1.0
-glow_hdr_scale = 2.0
-glow_bicubic_upscale = false
-adjustment_enabled = false
-adjustment_brightness = 1.0
-adjustment_contrast = 1.0
-adjustment_saturation = 1.0
 script = SubResource( 5 )
-_sections_unfolded = [ "Ambient Light", "Background" ]
 
 [sub_resource type="CubeMesh" id=7]
 
-size = Vector3( 2, 2, 2 )
-subdivide_width = 0
-subdivide_height = 0
-subdivide_depth = 0
-
 [sub_resource type="SpatialMaterial" id=8]
-
-render_priority = 0
-flags_transparent = false
-flags_unshaded = false
-flags_vertex_lighting = false
-flags_no_depth_test = false
-flags_use_point_size = false
-flags_world_triplanar = false
-flags_fixed_size = false
-flags_albedo_tex_force_srgb = false
-vertex_color_use_as_albedo = false
-vertex_color_is_srgb = false
-params_diffuse_mode = 0
-params_specular_mode = 0
-params_blend_mode = 0
-params_cull_mode = 0
-params_depth_draw_mode = 0
-params_line_width = 1.0
-params_point_size = 1.0
-params_billboard_mode = 0
-params_grow = false
-params_use_alpha_scissor = false
 albedo_color = Color( 0.652344, 0.652344, 0.652344, 1 )
-metallic = 0.0
-metallic_specular = 0.5
-metallic_texture_channel = 0
 roughness = 0.0
-roughness_texture_channel = 0
-emission_enabled = false
-normal_enabled = false
-rim_enabled = false
-clearcoat_enabled = false
-anisotropy_enabled = false
-ao_enabled = false
-depth_enabled = false
-subsurf_scatter_enabled = false
-transmission_enabled = false
-refraction_enabled = false
-detail_enabled = false
-uv1_scale = Vector3( 1, 1, 1 )
-uv1_offset = Vector3( 0, 0, 0 )
-uv1_triplanar = false
-uv1_triplanar_sharpness = 1.0
-uv2_scale = Vector3( 1, 1, 1 )
-uv2_offset = Vector3( 0, 0, 0 )
-uv2_triplanar = false
-uv2_triplanar_sharpness = 1.0
-proximity_fade_enable = false
-distance_fade_enable = false
-_sections_unfolded = [ "Albedo" ]
 
 [sub_resource type="GDScript" id=9]
-
 script/source = "tool
 extends Object
 func e():
@@ -251,7 +58,6 @@ func e():
 "
 
 [sub_resource type="GDScript" id=10]
-
 script/source = "tool
 extends Object
 func e():
@@ -259,7 +65,6 @@ func e():
 "
 
 [sub_resource type="GDScript" id=11]
-
 script/source = "tool
 extends Object
 func e():
@@ -267,353 +72,115 @@ func e():
 "
 
 [sub_resource type="CubeMesh" id=12]
-
 size = Vector3( 1.1, 0.8, 0.1 )
-subdivide_width = 0
-subdivide_height = 0
-subdivide_depth = 0
 script = SubResource( 11 )
 
 [sub_resource type="SpatialMaterial" id=13]
 
-render_priority = 0
-flags_transparent = false
-flags_unshaded = false
-flags_vertex_lighting = false
-flags_no_depth_test = false
-flags_use_point_size = false
-flags_world_triplanar = false
-flags_fixed_size = false
-flags_albedo_tex_force_srgb = false
-vertex_color_use_as_albedo = false
-vertex_color_is_srgb = false
-params_diffuse_mode = 0
-params_specular_mode = 0
-params_blend_mode = 0
-params_cull_mode = 0
-params_depth_draw_mode = 0
-params_line_width = 1.0
-params_point_size = 1.0
-params_billboard_mode = 0
-params_grow = false
-params_use_alpha_scissor = false
-albedo_color = Color( 1, 1, 1, 1 )
-metallic = 0.0
-metallic_specular = 0.5
-metallic_texture_channel = 0
-roughness = 1.0
-roughness_texture_channel = 0
-emission_enabled = false
-normal_enabled = false
-rim_enabled = false
-clearcoat_enabled = false
-anisotropy_enabled = false
-ao_enabled = false
-depth_enabled = false
-subsurf_scatter_enabled = false
-transmission_enabled = false
-refraction_enabled = false
-detail_enabled = false
-uv1_scale = Vector3( 1, 1, 1 )
-uv1_offset = Vector3( 0, 0, 0 )
-uv1_triplanar = false
-uv1_triplanar_sharpness = 1.0
-uv2_scale = Vector3( 1, 1, 1 )
-uv2_offset = Vector3( 0, 0, 0 )
-uv2_triplanar = false
-uv2_triplanar_sharpness = 1.0
-proximity_fade_enable = false
-distance_fade_enable = false
-
-[node name="2D_in_3D" type="Spatial" index="0"]
-
+[node name="2D_in_3D" type="Spatial"]
 script = ExtResource( 1 )
 
-[node name="Camera" type="Camera" parent="." index="0"]
-
+[node name="Camera" type="Camera" parent="."]
 transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.26906, -1.2526 )
-keep_aspect = 1
-cull_mask = 1048575
-environment = null
-h_offset = 0.0
-v_offset = 0.0
-doppler_tracking = 0
-projection = 0
-current = false
 fov = 74.0
-size = 1.0
 near = 0.1
-far = 100.0
-
-[node name="Floor" type="MeshInstance" parent="." index="1"]
 
+[node name="Floor" type="MeshInstance" parent="."]
 transform = Transform( 4, 0, 0, 0, 4, 0, 0, 0, 4, 0, -1, -4 )
-layers = 1
-material_override = null
-cast_shadow = 1
-extra_cull_margin = 0.0
-use_in_baked_light = false
-lod_min_distance = 0.0
-lod_min_hysteresis = 0.0
-lod_max_distance = 0.0
-lod_max_hysteresis = 0.0
 mesh = SubResource( 1 )
-skeleton = NodePath("..")
 material/0 = SubResource( 3 )
-_sections_unfolded = [ "Geometry", "Transform", "material" ]
-
-[node name="WorldEnvironment" type="WorldEnvironment" parent="." index="2"]
 
+[node name="WorldEnvironment" type="WorldEnvironment" parent="."]
 environment = SubResource( 6 )
 
-[node name="Pillar" type="Spatial" parent="." index="3"]
-
+[node name="Pillar" type="Spatial" parent="."]
 editor/display_folded = true
 transform = Transform( 0.6, 0, 0, 0, 0.6, 0, 0, 0, 0.6, -3, -0.255171, -5 )
-_sections_unfolded = [ "Transform" ]
-
-[node name="Pillar_bottom" type="MeshInstance" parent="Pillar" index="0"]
 
+[node name="Pillar_bottom" type="MeshInstance" parent="Pillar"]
 transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.242229, 0 )
-layers = 1
-material_override = null
-cast_shadow = 1
-extra_cull_margin = 0.0
-use_in_baked_light = false
-lod_min_distance = 0.0
-lod_min_hysteresis = 0.0
-lod_max_distance = 0.0
-lod_max_hysteresis = 0.0
 mesh = SubResource( 7 )
-skeleton = NodePath("..")
 material/0 = SubResource( 8 )
 script = SubResource( 9 )
-_sections_unfolded = [ "Transform", "material" ]
-
-[node name="Pillar_top" type="MeshInstance" parent="Pillar" index="1"]
 
+[node name="Pillar_top" type="MeshInstance" parent="Pillar"]
 transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 5.48747, 0 )
-layers = 1
-material_override = null
-cast_shadow = 1
-extra_cull_margin = 0.0
-use_in_baked_light = false
-lod_min_distance = 0.0
-lod_min_hysteresis = 0.0
-lod_max_distance = 0.0
-lod_max_hysteresis = 0.0
 mesh = SubResource( 7 )
-skeleton = NodePath("..")
 material/0 = SubResource( 8 )
 script = SubResource( 9 )
-_sections_unfolded = [ "Transform", "material" ]
-
-[node name="Pillar_middle" type="MeshInstance" parent="Pillar" index="2"]
 
+[node name="Pillar_middle" type="MeshInstance" parent="Pillar"]
 transform = Transform( 0.7, 0, 0, 0, 2, 0, 0, 0, 0.7, 0, 2.65279, 0 )
-layers = 1
-material_override = null
-cast_shadow = 1
-extra_cull_margin = 0.0
-use_in_baked_light = false
-lod_min_distance = 0.0
-lod_min_hysteresis = 0.0
-lod_max_distance = 0.0
-lod_max_hysteresis = 0.0
 mesh = SubResource( 7 )
-skeleton = NodePath("..")
 material/0 = SubResource( 8 )
 script = SubResource( 10 )
-_sections_unfolded = [ "Transform", "material" ]
-
-[node name="Pillar2" type="Spatial" parent="." index="4"]
 
+[node name="Pillar2" type="Spatial" parent="."]
 editor/display_folded = true
 transform = Transform( 0.6, 0, 0, 0, 0.6, 0, 0, 0, 0.6, 3, -0.255171, -5 )
-_sections_unfolded = [ "Transform" ]
-
-[node name="Pillar_bottom" type="MeshInstance" parent="Pillar2" index="0"]
 
+[node name="Pillar_bottom" type="MeshInstance" parent="Pillar2"]
 transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.242229, 0 )
-layers = 1
-material_override = null
-cast_shadow = 1
-extra_cull_margin = 0.0
-use_in_baked_light = false
-lod_min_distance = 0.0
-lod_min_hysteresis = 0.0
-lod_max_distance = 0.0
-lod_max_hysteresis = 0.0
 mesh = SubResource( 7 )
-skeleton = NodePath("..")
 material/0 = SubResource( 8 )
 script = SubResource( 9 )
-_sections_unfolded = [ "Transform", "material" ]
-
-[node name="Pillar_top" type="MeshInstance" parent="Pillar2" index="1"]
 
+[node name="Pillar_top" type="MeshInstance" parent="Pillar2"]
 transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 5.48747, 0 )
-layers = 1
-material_override = null
-cast_shadow = 1
-extra_cull_margin = 0.0
-use_in_baked_light = false
-lod_min_distance = 0.0
-lod_min_hysteresis = 0.0
-lod_max_distance = 0.0
-lod_max_hysteresis = 0.0
 mesh = SubResource( 7 )
-skeleton = NodePath("..")
 material/0 = SubResource( 8 )
 script = SubResource( 9 )
-_sections_unfolded = [ "Transform", "material" ]
-
-[node name="Pillar_middle" type="MeshInstance" parent="Pillar2" index="2"]
 
+[node name="Pillar_middle" type="MeshInstance" parent="Pillar2"]
 transform = Transform( 0.7, 0, 0, 0, 2, 0, 0, 0, 0.7, 0, 2.65279, 0 )
-layers = 1
-material_override = null
-cast_shadow = 1
-extra_cull_margin = 0.0
-use_in_baked_light = false
-lod_min_distance = 0.0
-lod_min_hysteresis = 0.0
-lod_max_distance = 0.0
-lod_max_hysteresis = 0.0
 mesh = SubResource( 7 )
-skeleton = NodePath("..")
 material/0 = SubResource( 8 )
 script = SubResource( 10 )
-_sections_unfolded = [ "Transform", "material" ]
-
-[node name="Pillar_back" type="MeshInstance" parent="." index="5"]
 
+[node name="Pillar_back" type="MeshInstance" parent="."]
 transform = Transform( 4, 0, 0, 0, 4, 0, 0, 0, 4, 0, 1.22418, -5.48399 )
-layers = 1
-material_override = null
-cast_shadow = 1
-extra_cull_margin = 0.0
-use_in_baked_light = false
-lod_min_distance = 0.0
-lod_min_hysteresis = 0.0
-lod_max_distance = 0.0
-lod_max_hysteresis = 0.0
 mesh = SubResource( 12 )
-skeleton = NodePath("..")
 material/0 = SubResource( 8 )
-_sections_unfolded = [ "Transform", "material" ]
-
-[node name="DirectionalLight" type="DirectionalLight" parent="." index="6"]
 
+[node name="DirectionalLight" type="DirectionalLight" parent="."]
 transform = Transform( 0.623013, -0.733525, 0.271654, 0.321394, 0.55667, 0.766044, -0.713134, -0.389948, 0.582563, 9.02684, 0, 1.28613 )
-layers = 1
-light_color = Color( 1, 1, 1, 1 )
-light_energy = 1.0
-light_indirect_energy = 1.0
-light_negative = false
-light_specular = 0.5
-light_bake_mode = 1
-light_cull_mask = -1
 shadow_enabled = true
-shadow_color = Color( 0, 0, 0, 1 )
-shadow_bias = 0.1
-shadow_contact = 0.0
-shadow_reverse_cull_face = false
-editor_only = false
-directional_shadow_mode = 2
-directional_shadow_split_1 = 0.1
-directional_shadow_split_2 = 0.2
-directional_shadow_split_3 = 0.5
 directional_shadow_blend_splits = true
 directional_shadow_normal_bias = 0.2
-directional_shadow_bias_split_scale = 0.25
-directional_shadow_depth_range = 0
-directional_shadow_max_distance = 200.0
-_sections_unfolded = [ "Directional Shadow" ]
-
-[node name="Viewport_quad" type="MeshInstance" parent="." index="7"]
 
+[node name="Viewport_quad" type="MeshInstance" parent="."]
 transform = Transform( -2, 8.74228e-08, 0, 7.64274e-15, 4.37114e-08, 1.333, 1.74846e-07, 1, -5.82673e-08, 0, 1.20996, -5.25875 )
-layers = 1
 material_override = SubResource( 13 )
-cast_shadow = 1
-extra_cull_margin = 0.0
-use_in_baked_light = false
-lod_min_distance = 0.0
-lod_min_hysteresis = 0.0
-lod_max_distance = 0.0
-lod_max_hysteresis = 0.0
 mesh = SubResource( 1 )
-skeleton = NodePath("..")
 material/0 = null
-_sections_unfolded = [ "Geometry", "Transform", "material" ]
-
-[node name="Viewport" type="Viewport" parent="." index="8"]
 
-arvr = false
+[node name="Viewport" type="Viewport" parent="."]
 size = Vector2( 600, 400 )
-own_world = false
-world = null
-transparent_bg = false
-msaa = 0
 hdr = false
-disable_3d = false
 usage = 0
-debug_draw = 0
 render_target_v_flip = true
-render_target_clear_mode = 0
-render_target_update_mode = 2
-audio_listener_enable_2d = false
-audio_listener_enable_3d = false
-physics_object_picking = false
-gui_disable_input = false
-gui_snap_controls_to_pixels = true
-shadow_atlas_size = 0
-shadow_atlas_quad_0 = 2
-shadow_atlas_quad_1 = 2
-shadow_atlas_quad_2 = 3
-shadow_atlas_quad_3 = 4
-_sections_unfolded = [ "Render Target" ]
-
-[node name="2D_World" type="Node2D" parent="Viewport" index="0"]
 
+[node name="2D_World" type="Node2D" parent="Viewport"]
 editor/display_folded = true
 script = ExtResource( 2 )
 
-[node name="BG" type="Panel" parent="Viewport/2D_World" index="0"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="BG" type="Panel" parent="Viewport/2D_World"]
 margin_right = 600.0
 margin_bottom = 400.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 0
-mouse_default_cursor_shape = 0
-size_flags_horizontal = 1
-size_flags_vertical = 1
-
-[node name="ball" type="Sprite" parent="Viewport/2D_World" index="1"]
 
+[node name="ball" type="Sprite" parent="Viewport/2D_World"]
 position = Vector2( 300, 200 )
 texture = ExtResource( 3 )
-_sections_unfolded = [ "Transform" ]
-
-[node name="left" type="Sprite" parent="Viewport/2D_World" index="2"]
 
+[node name="left" type="Sprite" parent="Viewport/2D_World"]
 position = Vector2( 20, 200 )
 texture = ExtResource( 4 )
-_sections_unfolded = [ "Transform" ]
-
-[node name="right" type="Sprite" parent="Viewport/2D_World" index="3"]
 
+[node name="right" type="Sprite" parent="Viewport/2D_World"]
 position = Vector2( 580, 200 )
 texture = ExtResource( 5 )
-_sections_unfolded = [ "Transform" ]
-
-[node name="separator" type="Sprite" parent="Viewport/2D_World" index="4"]
 
+[node name="separator" type="Sprite" parent="Viewport/2D_World"]
 position = Vector2( 298, 200 )
 texture = ExtResource( 6 )
-_sections_unfolded = [ "Transform" ]
+

+ 2 - 3
viewport/2d_in_3d/ball.png.import

@@ -7,16 +7,14 @@ path="res://.import/ball.png-9a4ca347acb7532f6ae347744a6b04f7.stex"
 [deps]
 
 source_file="res://ball.png"
-source_md5="4219e9084f5485c8d1812297700f317d"
-
 dest_files=[ "res://.import/ball.png-9a4ca347acb7532f6ae347744a6b04f7.stex" ]
-dest_md5="91f57141ffceed4f9c2aadd8d8fd5ca0"
 
 [params]
 
 compress/mode=0
 compress/lossy_quality=0.7
 compress/hdr_mode=0
+compress/bptc_ldr=0
 compress/normal_map=0
 flags/repeat=0
 flags/filter=false
@@ -26,6 +24,7 @@ flags/srgb=2
 process/fix_alpha_border=true
 process/premult_alpha=false
 process/HDR_as_SRGB=false
+process/invert_color=false
 stream=false
 size_limit=0
 detect_3d=true

+ 0 - 86
viewport/2d_in_3d/default_env.tres

@@ -1,101 +1,15 @@
 [gd_resource type="Environment" load_steps=2 format=2]
 
 [sub_resource type="ProceduralSky" id=1]
-
-radiance_size = 4
 sky_top_color = Color( 0.0470588, 0.454902, 0.976471, 1 )
 sky_horizon_color = Color( 0.556863, 0.823529, 0.909804, 1 )
 sky_curve = 0.25
-sky_energy = 1.0
 ground_bottom_color = Color( 0.101961, 0.145098, 0.188235, 1 )
 ground_horizon_color = Color( 0.482353, 0.788235, 0.952941, 1 )
 ground_curve = 0.01
-ground_energy = 1.0
-sun_color = Color( 1, 1, 1, 1 )
-sun_latitude = 35.0
-sun_longitude = 0.0
-sun_angle_min = 1.0
-sun_angle_max = 100.0
-sun_curve = 0.05
-sun_energy = 16.0
-texture_size = 2
 
 [resource]
-
 background_mode = 2
 background_sky = SubResource( 1 )
-background_sky_custom_fov = 0.0
-background_color = Color( 0, 0, 0, 1 )
-background_energy = 1.0
-background_canvas_max_layer = 0
-ambient_light_color = Color( 0, 0, 0, 1 )
-ambient_light_energy = 1.0
-ambient_light_sky_contribution = 1.0
-fog_enabled = false
-fog_color = Color( 0.5, 0.6, 0.7, 1 )
-fog_sun_color = Color( 1, 0.9, 0.7, 1 )
-fog_sun_amount = 0.0
-fog_depth_enabled = true
-fog_depth_begin = 10.0
-fog_depth_curve = 1.0
-fog_transmit_enabled = false
-fog_transmit_curve = 1.0
-fog_height_enabled = false
-fog_height_min = 0.0
-fog_height_max = 100.0
-fog_height_curve = 1.0
-tonemap_mode = 0
-tonemap_exposure = 1.0
-tonemap_white = 1.0
-auto_exposure_enabled = false
-auto_exposure_scale = 0.4
-auto_exposure_min_luma = 0.05
-auto_exposure_max_luma = 8.0
-auto_exposure_speed = 0.5
-ss_reflections_enabled = false
-ss_reflections_max_steps = 64
-ss_reflections_fade_in = 0.15
-ss_reflections_fade_out = 2.0
-ss_reflections_depth_tolerance = 0.2
-ss_reflections_roughness = true
-ssao_enabled = false
-ssao_radius = 1.0
-ssao_intensity = 1.0
-ssao_radius2 = 0.0
-ssao_intensity2 = 1.0
-ssao_bias = 0.01
-ssao_light_affect = 0.0
-ssao_color = Color( 0, 0, 0, 1 )
-ssao_quality = 0
 ssao_blur = 1
-ssao_edge_sharpness = 4.0
-dof_blur_far_enabled = false
-dof_blur_far_distance = 10.0
-dof_blur_far_transition = 5.0
-dof_blur_far_amount = 0.1
-dof_blur_far_quality = 1
-dof_blur_near_enabled = false
-dof_blur_near_distance = 2.0
-dof_blur_near_transition = 1.0
-dof_blur_near_amount = 0.1
-dof_blur_near_quality = 1
-glow_enabled = false
-glow_levels/1 = false
-glow_levels/2 = false
-glow_levels/3 = true
-glow_levels/4 = false
-glow_levels/5 = true
-glow_levels/6 = false
-glow_levels/7 = false
-glow_intensity = 0.8
-glow_strength = 1.0
-glow_bloom = 0.0
-glow_blend_mode = 2
-glow_hdr_threshold = 1.0
-glow_hdr_scale = 2.0
-glow_bicubic_upscale = false
-adjustment_enabled = false
-adjustment_brightness = 1.0
-adjustment_contrast = 1.0
-adjustment_saturation = 1.0
 

+ 2 - 3
viewport/2d_in_3d/icon.png.import

@@ -7,16 +7,14 @@ path="res://.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex"
 [deps]
 
 source_file="res://icon.png"
-source_md5="e7ac148f851212c3a05eef07783e1c0f"
-
 dest_files=[ "res://.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex" ]
-dest_md5="52b37083b9086ccbd84d6c0c418662ad"
 
 [params]
 
 compress/mode=0
 compress/lossy_quality=0.7
 compress/hdr_mode=0
+compress/bptc_ldr=0
 compress/normal_map=0
 flags/repeat=0
 flags/filter=true
@@ -26,6 +24,7 @@ flags/srgb=2
 process/fix_alpha_border=true
 process/premult_alpha=false
 process/HDR_as_SRGB=false
+process/invert_color=false
 stream=false
 size_limit=0
 detect_3d=true

+ 2 - 3
viewport/2d_in_3d/left_pallete.png.import

@@ -7,16 +7,14 @@ path="res://.import/left_pallete.png-bc33611074a0f886142e37c77bd2545a.stex"
 [deps]
 
 source_file="res://left_pallete.png"
-source_md5="df76627349499ad47ebf48a7ca947cca"
-
 dest_files=[ "res://.import/left_pallete.png-bc33611074a0f886142e37c77bd2545a.stex" ]
-dest_md5="d6c1a2e71044d865ecf599009c3535f9"
 
 [params]
 
 compress/mode=0
 compress/lossy_quality=0.7
 compress/hdr_mode=0
+compress/bptc_ldr=0
 compress/normal_map=0
 flags/repeat=0
 flags/filter=false
@@ -26,6 +24,7 @@ flags/srgb=2
 process/fix_alpha_border=true
 process/premult_alpha=false
 process/HDR_as_SRGB=false
+process/invert_color=false
 stream=false
 size_limit=0
 detect_3d=true

+ 22 - 5
viewport/2d_in_3d/project.godot

@@ -6,7 +6,12 @@
 ;   [section] ; section goes between []
 ;   param=value ; assign values to parameters
 
-config_version=3
+config_version=4
+
+_global_script_classes=[  ]
+_global_script_class_icons={
+
+}
 
 [application]
 
@@ -20,14 +25,26 @@ singletons=[  ]
 
 [input]
 
-left_move_up=[ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":87,"unicode":0,"echo":false,"script":null)
+left_move_up={
+"deadzone": 0.5,
+"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":87,"unicode":0,"echo":false,"script":null)
  ]
-left_move_down=[ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":83,"unicode":0,"echo":false,"script":null)
+}
+left_move_down={
+"deadzone": 0.5,
+"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":83,"unicode":0,"echo":false,"script":null)
  ]
-right_move_up=[ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777232,"unicode":0,"echo":false,"script":null)
+}
+right_move_up={
+"deadzone": 0.5,
+"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777232,"unicode":0,"echo":false,"script":null)
  ]
-right_move_down=[ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777234,"unicode":0,"echo":false,"script":null)
+}
+right_move_down={
+"deadzone": 0.5,
+"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777234,"unicode":0,"echo":false,"script":null)
  ]
+}
 
 [rendering]
 

+ 2 - 3
viewport/2d_in_3d/right_pallete.png.import

@@ -7,16 +7,14 @@ path="res://.import/right_pallete.png-fc6e4a6a7c8197834656482b94708e47.stex"
 [deps]
 
 source_file="res://right_pallete.png"
-source_md5="d46f647d3f045dbee4d786089c309868"
-
 dest_files=[ "res://.import/right_pallete.png-fc6e4a6a7c8197834656482b94708e47.stex" ]
-dest_md5="7117a0b411d33197a041e42b2248a0fb"
 
 [params]
 
 compress/mode=0
 compress/lossy_quality=0.7
 compress/hdr_mode=0
+compress/bptc_ldr=0
 compress/normal_map=0
 flags/repeat=0
 flags/filter=false
@@ -26,6 +24,7 @@ flags/srgb=2
 process/fix_alpha_border=true
 process/premult_alpha=false
 process/HDR_as_SRGB=false
+process/invert_color=false
 stream=false
 size_limit=0
 detect_3d=true

+ 2 - 3
viewport/2d_in_3d/separator.png.import

@@ -7,16 +7,14 @@ path="res://.import/separator.png-f981c8489b9148e2e1dc63398273da74.stex"
 [deps]
 
 source_file="res://separator.png"
-source_md5="b6234b89455156532bbe1256249fcfd4"
-
 dest_files=[ "res://.import/separator.png-f981c8489b9148e2e1dc63398273da74.stex" ]
-dest_md5="c0b4370815bb5757200fc92c71e46313"
 
 [params]
 
 compress/mode=0
 compress/lossy_quality=0.7
 compress/hdr_mode=0
+compress/bptc_ldr=0
 compress/normal_map=0
 flags/repeat=0
 flags/filter=false
@@ -26,6 +24,7 @@ flags/srgb=2
 process/fix_alpha_border=true
 process/premult_alpha=false
 process/HDR_as_SRGB=false
+process/invert_color=false
 stream=false
 size_limit=0
 detect_3d=true

+ 5 - 51
viewport/3d_in_2d/3D_in_2D.tscn

@@ -4,77 +4,31 @@
 [ext_resource path="res://robot_demo.png" type="Texture" id=2]
 [ext_resource path="res://player.scn" type="PackedScene" id=3]
 
-[node name="3D_in_2D" type="Node2D" index="0"]
-
+[node name="3D_in_2D" type="Node2D"]
 script = ExtResource( 1 )
 
-[node name="Sprite" type="Sprite" parent="." index="0"]
-
+[node name="Sprite" type="Sprite" parent="."]
 position = Vector2( 339.942, 311.204 )
 scale = Vector2( 3, 3 )
 texture = ExtResource( 2 )
 vframes = 2
 hframes = 16
 frame = 4
-_sections_unfolded = [ "Animation", "Transform" ]
-
-[node name="Viewport_Sprite" type="Sprite" parent="." index="1"]
 
+[node name="Viewport_Sprite" type="Sprite" parent="."]
 position = Vector2( 600, 320 )
 rotation = 3.14159
-_sections_unfolded = [ "Transform" ]
 
-[node name="Viewport" type="Viewport" parent="." index="2"]
-
-arvr = false
+[node name="Viewport" type="Viewport" parent="."]
 size = Vector2( 300, 300 )
 own_world = true
-world = null
 transparent_bg = true
-msaa = 0
 hdr = false
-disable_3d = false
-usage = 2
-debug_draw = 0
-render_target_v_flip = false
-render_target_clear_mode = 0
-render_target_update_mode = 2
-audio_listener_enable_2d = false
-audio_listener_enable_3d = false
-physics_object_picking = false
-gui_disable_input = false
-gui_snap_controls_to_pixels = true
-shadow_atlas_size = 0
-shadow_atlas_quad_0 = 2
-shadow_atlas_quad_1 = 2
-shadow_atlas_quad_2 = 3
-shadow_atlas_quad_3 = 4
-_sections_unfolded = [ "Rendering" ]
-
-[node name="player" parent="Viewport" index="0" instance=ExtResource( 3 )]
 
-axis_lock_linear_x = false
-axis_lock_linear_y = false
-axis_lock_linear_z = false
-axis_lock_angular_x = false
-axis_lock_angular_y = false
-axis_lock_angular_z = false
+[node name="player" parent="Viewport" instance=ExtResource( 3 )]
 
 [node name="Camera" parent="Viewport/player" index="1"]
-
-doppler_tracking = 0
 current = true
-size = 1.0
-
-[node name="OmniLight" parent="Viewport/player" index="2"]
-
-light_indirect_energy = 1.0
-light_bake_mode = 1
-
-[node name="OmniLight2" parent="Viewport/player" index="3"]
-
-light_indirect_energy = 1.0
-light_bake_mode = 1
 
 
 [editable path="Viewport/player"]

+ 0 - 88
viewport/3d_in_2d/default_env.tres

@@ -1,103 +1,15 @@
 [gd_resource type="Environment" load_steps=2 format=2]
 
 [sub_resource type="ProceduralSky" id=1]
-
-radiance_size = 4
 sky_top_color = Color( 0.0470588, 0.454902, 0.976471, 1 )
 sky_horizon_color = Color( 0.556863, 0.823529, 0.909804, 1 )
 sky_curve = 0.25
-sky_energy = 1.0
 ground_bottom_color = Color( 0.34375, 0.287406, 0.167847, 1 )
 ground_horizon_color = Color( 0.482353, 0.788235, 0.952941, 1 )
 ground_curve = 0.01
-ground_energy = 1.0
-sun_color = Color( 1, 1, 1, 1 )
-sun_latitude = 35.0
-sun_longitude = 0.0
-sun_angle_min = 1.0
-sun_angle_max = 100.0
-sun_curve = 0.05
-sun_energy = 16.0
-texture_size = 2
-_sections_unfolded = [ "Ground" ]
 
 [resource]
-
 background_mode = 2
 background_sky = SubResource( 1 )
-background_sky_custom_fov = 0.0
-background_color = Color( 0, 0, 0, 1 )
-background_energy = 1.0
-background_canvas_max_layer = 0
-ambient_light_color = Color( 0, 0, 0, 1 )
-ambient_light_energy = 1.0
-ambient_light_sky_contribution = 1.0
-fog_enabled = false
-fog_color = Color( 0.5, 0.6, 0.7, 1 )
-fog_sun_color = Color( 1, 0.9, 0.7, 1 )
-fog_sun_amount = 0.0
-fog_depth_enabled = true
-fog_depth_begin = 10.0
-fog_depth_curve = 1.0
-fog_transmit_enabled = false
-fog_transmit_curve = 1.0
-fog_height_enabled = false
-fog_height_min = 0.0
-fog_height_max = 100.0
-fog_height_curve = 1.0
-tonemap_mode = 0
-tonemap_exposure = 1.0
-tonemap_white = 1.0
-auto_exposure_enabled = false
-auto_exposure_scale = 0.4
-auto_exposure_min_luma = 0.05
-auto_exposure_max_luma = 8.0
-auto_exposure_speed = 0.5
-ss_reflections_enabled = false
-ss_reflections_max_steps = 64
-ss_reflections_fade_in = 0.15
-ss_reflections_fade_out = 2.0
-ss_reflections_depth_tolerance = 0.2
-ss_reflections_roughness = true
-ssao_enabled = false
-ssao_radius = 1.0
-ssao_intensity = 1.0
-ssao_radius2 = 0.0
-ssao_intensity2 = 1.0
-ssao_bias = 0.01
-ssao_light_affect = 0.0
-ssao_color = Color( 0, 0, 0, 1 )
-ssao_quality = 0
 ssao_blur = 1
-ssao_edge_sharpness = 4.0
-dof_blur_far_enabled = false
-dof_blur_far_distance = 10.0
-dof_blur_far_transition = 5.0
-dof_blur_far_amount = 0.1
-dof_blur_far_quality = 1
-dof_blur_near_enabled = false
-dof_blur_near_distance = 2.0
-dof_blur_near_transition = 1.0
-dof_blur_near_amount = 0.1
-dof_blur_near_quality = 1
-glow_enabled = false
-glow_levels/1 = false
-glow_levels/2 = false
-glow_levels/3 = true
-glow_levels/4 = false
-glow_levels/5 = true
-glow_levels/6 = false
-glow_levels/7 = false
-glow_intensity = 0.8
-glow_strength = 1.0
-glow_bloom = 0.0
-glow_blend_mode = 2
-glow_hdr_threshold = 1.0
-glow_hdr_scale = 2.0
-glow_bicubic_upscale = false
-adjustment_enabled = false
-adjustment_brightness = 1.0
-adjustment_contrast = 1.0
-adjustment_saturation = 1.0
-_sections_unfolded = [ "Background" ]
 

+ 2 - 3
viewport/3d_in_2d/icon.png.import

@@ -7,16 +7,14 @@ path="res://.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex"
 [deps]
 
 source_file="res://icon.png"
-source_md5="f40bb4b4a5a2bb0fb17a9fe2ffaf7dbc"
-
 dest_files=[ "res://.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex" ]
-dest_md5="c5c5c8e2efdfcc4a75ef8be0cb5f4a0f"
 
 [params]
 
 compress/mode=0
 compress/lossy_quality=0.7
 compress/hdr_mode=0
+compress/bptc_ldr=0
 compress/normal_map=0
 flags/repeat=0
 flags/filter=true
@@ -26,6 +24,7 @@ flags/srgb=2
 process/fix_alpha_border=true
 process/premult_alpha=false
 process/HDR_as_SRGB=false
+process/invert_color=false
 stream=false
 size_limit=0
 detect_3d=true

BIN
viewport/3d_in_2d/player.scn


+ 6 - 1
viewport/3d_in_2d/project.godot

@@ -6,7 +6,12 @@
 ;   [section] ; section goes between []
 ;   param=value ; assign values to parameters
 
-config_version=3
+config_version=4
+
+_global_script_classes=[  ]
+_global_script_class_icons={
+
+}
 
 [application]
 

+ 2 - 3
viewport/3d_in_2d/robot_demo.png.import

@@ -7,16 +7,14 @@ path="res://.import/robot_demo.png-8502817e0037b3f31eaca3dae49dcfc5.stex"
 [deps]
 
 source_file="res://robot_demo.png"
-source_md5="2a19cb85548217b26700914bd42617b4"
-
 dest_files=[ "res://.import/robot_demo.png-8502817e0037b3f31eaca3dae49dcfc5.stex" ]
-dest_md5="a8591e098e3f1315468e7318da46cbb7"
 
 [params]
 
 compress/mode=0
 compress/lossy_quality=0.7
 compress/hdr_mode=0
+compress/bptc_ldr=0
 compress/normal_map=0
 flags/repeat=0
 flags/filter=false
@@ -26,6 +24,7 @@ flags/srgb=2
 process/fix_alpha_border=true
 process/premult_alpha=false
 process/HDR_as_SRGB=false
+process/invert_color=false
 stream=false
 size_limit=0
 detect_3d=true

+ 24 - 400
viewport/gui_in_3d/Gui_in_3D.tscn

@@ -4,75 +4,18 @@
 
 [sub_resource type="PlaneMesh" id=1]
 
-size = Vector2( 2, 2 )
-subdivide_width = 0
-subdivide_depth = 0
-
 [sub_resource type="ViewportTexture" id=2]
-
-resource_local_to_scene = true
 flags = 5
 viewport_path = NodePath("Viewport")
 
 [sub_resource type="SpatialMaterial" id=3]
-
 resource_local_to_scene = true
-render_priority = 0
-flags_transparent = false
 flags_unshaded = true
-flags_vertex_lighting = false
-flags_no_depth_test = false
-flags_use_point_size = false
-flags_world_triplanar = false
-flags_fixed_size = false
 flags_albedo_tex_force_srgb = true
-vertex_color_use_as_albedo = false
-vertex_color_is_srgb = false
 params_diffuse_mode = 1
-params_specular_mode = 0
-params_blend_mode = 0
-params_cull_mode = 0
-params_depth_draw_mode = 0
-params_line_width = 1.0
-params_point_size = 1.0
-params_billboard_mode = 0
-params_grow = false
-params_use_alpha_scissor = false
-albedo_color = Color( 1, 1, 1, 1 )
 albedo_texture = SubResource( 2 )
-metallic = 0.0
-metallic_specular = 0.5
-metallic_texture_channel = 0
-roughness = 0.0
-roughness_texture_channel = 0
-emission_enabled = true
-emission = Color( 0, 0, 0, 1 )
-emission_energy = 1.0
-emission_operator = 0
-emission_on_uv2 = false
-normal_enabled = false
-rim_enabled = false
-clearcoat_enabled = false
-anisotropy_enabled = false
-ao_enabled = false
-depth_enabled = false
-subsurf_scatter_enabled = false
-transmission_enabled = false
-refraction_enabled = false
-detail_enabled = false
-uv1_scale = Vector3( 1, 1, 1 )
-uv1_offset = Vector3( 0, 0, 0 )
-uv1_triplanar = false
-uv1_triplanar_sharpness = 1.0
-uv2_scale = Vector3( 1, 1, 1 )
-uv2_offset = Vector3( 0, 0, 0 )
-uv2_triplanar = false
-uv2_triplanar_sharpness = 1.0
-proximity_fade_enable = false
-distance_fade_enable = false
 
 [sub_resource type="GDScript" id=4]
-
 script/source = "tool
 extends Object
 func e():
@@ -80,15 +23,12 @@ func e():
 "
 
 [sub_resource type="BoxShape" id=5]
-
 extents = Vector3( 1, 1, 0.01 )
 script = SubResource( 4 )
 
 [sub_resource type="Animation" id=6]
-
 length = 6.0
 loop = true
-step = 0.1
 tracks/0/type = "value"
 tracks/0/path = NodePath("Camera:transform")
 tracks/0/interp = 1
@@ -104,12 +44,7 @@ tracks/0/keys = {
 
 [sub_resource type="PlaneMesh" id=7]
 
-size = Vector2( 2, 2 )
-subdivide_width = 0
-subdivide_depth = 0
-
 [sub_resource type="GDScript" id=8]
-
 script/source = "tool
 extends Object
 func e():
@@ -117,7 +52,6 @@ func e():
 "
 
 [sub_resource type="GDScript" id=9]
-
 script/source = "tool
 extends Object
 func e():
@@ -125,7 +59,6 @@ func e():
 "
 
 [sub_resource type="GDScript" id=10]
-
 script/source = "tool
 extends Object
 func e():
@@ -134,436 +67,127 @@ func e():
 
 [sub_resource type="CubeMesh" id=11]
 
-size = Vector3( 2, 2, 2 )
-subdivide_width = 0
-subdivide_height = 0
-subdivide_depth = 0
-
 [sub_resource type="SpatialMaterial" id=12]
-
-render_priority = 0
-flags_transparent = false
-flags_unshaded = false
-flags_vertex_lighting = false
-flags_no_depth_test = false
-flags_use_point_size = false
-flags_world_triplanar = false
-flags_fixed_size = false
-flags_albedo_tex_force_srgb = false
-vertex_color_use_as_albedo = false
-vertex_color_is_srgb = false
-params_diffuse_mode = 0
-params_specular_mode = 0
-params_blend_mode = 0
-params_cull_mode = 0
-params_depth_draw_mode = 0
-params_line_width = 1.0
-params_point_size = 1.0
-params_billboard_mode = 0
-params_grow = false
-params_use_alpha_scissor = false
 albedo_color = Color( 0.722656, 0.791992, 1, 1 )
-metallic = 0.0
-metallic_specular = 0.5
-metallic_texture_channel = 0
 roughness = 0.0
-roughness_texture_channel = 0
-emission_enabled = false
-normal_enabled = false
-rim_enabled = false
-clearcoat_enabled = false
-anisotropy_enabled = false
-ao_enabled = false
-depth_enabled = false
-subsurf_scatter_enabled = false
-transmission_enabled = false
-refraction_enabled = false
-detail_enabled = false
-uv1_scale = Vector3( 1, 1, 1 )
-uv1_offset = Vector3( 0, 0, 0 )
-uv1_triplanar = false
-uv1_triplanar_sharpness = 1.0
-uv2_scale = Vector3( 1, 1, 1 )
-uv2_offset = Vector3( 0, 0, 0 )
-uv2_triplanar = false
-uv2_triplanar_sharpness = 1.0
-proximity_fade_enable = false
-distance_fade_enable = false
-_sections_unfolded = [ "Albedo" ]
 
 [sub_resource type="GDScript" id=13]
-
 script/source = "tool
 extends Object
 func e():
 	return 0
 "
 
-[node name="Gui_in_3D" type="Spatial" index="0"]
-
+[node name="Gui_in_3D" type="Spatial"]
 script = ExtResource( 1 )
 
-[node name="Viewport" type="Viewport" parent="." index="0"]
-
+[node name="Viewport" type="Viewport" parent="."]
 editor/display_folded = true
-arvr = false
 size = Vector2( 180, 180 )
-own_world = false
-world = null
 transparent_bg = true
-msaa = 0
 hdr = false
-disable_3d = false
 usage = 0
-debug_draw = 0
 render_target_v_flip = true
-render_target_clear_mode = 0
-render_target_update_mode = 2
-audio_listener_enable_2d = false
-audio_listener_enable_3d = false
-physics_object_picking = false
-gui_disable_input = false
-gui_snap_controls_to_pixels = true
-shadow_atlas_size = 0
-shadow_atlas_quad_0 = 2
-shadow_atlas_quad_1 = 2
-shadow_atlas_quad_2 = 3
-shadow_atlas_quad_3 = 4
-_sections_unfolded = [ "Render Target", "Rendering" ]
-
-[node name="GUI" type="Control" parent="Viewport" index="0"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+
+[node name="GUI" type="Control" parent="Viewport"]
 margin_right = 40.0
 margin_bottom = 40.0
-rect_pivot_offset = Vector2( 0, 0 )
 mouse_filter = 1
-mouse_default_cursor_shape = 0
-size_flags_horizontal = 1
-size_flags_vertical = 1
-_sections_unfolded = [ "Mouse" ]
 
-[node name="Label" type="Label" parent="Viewport/GUI" index="0"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="Label" type="Label" parent="Viewport/GUI"]
 margin_left = 44.0
 margin_top = 27.0
 margin_right = 121.0
 margin_bottom = 41.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 2
-mouse_default_cursor_shape = 0
-size_flags_horizontal = 1
-size_flags_vertical = 4
 text = "Hello world!"
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
-
-[node name="Button" type="Button" parent="Viewport/GUI" index="1"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="Button" type="Button" parent="Viewport/GUI"]
 margin_left = 18.0
 margin_top = 46.0
 margin_right = 155.0
 margin_bottom = 73.0
-rect_pivot_offset = Vector2( 0, 0 )
-focus_mode = 2
-mouse_filter = 0
-mouse_default_cursor_shape = 0
-size_flags_horizontal = 1
-size_flags_vertical = 1
-toggle_mode = false
-enabled_focus_mode = 2
-shortcut = null
-group = null
 text = "A button!"
-flat = false
-align = 1
-
-[node name="HSlider" type="HSlider" parent="Viewport/GUI" index="2"]
 
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="HSlider" type="HSlider" parent="Viewport/GUI"]
 margin_left = 14.0
 margin_top = 118.0
 margin_right = 157.0
 margin_bottom = 134.0
-rect_pivot_offset = Vector2( 0, 0 )
-focus_mode = 2
-mouse_filter = 0
-mouse_default_cursor_shape = 0
-size_flags_horizontal = 1
-size_flags_vertical = 0
-min_value = 0.0
-max_value = 100.0
-step = 1.0
-page = 0.0
-value = 0.0
-exp_edit = false
-rounded = false
-editable = true
-tick_count = 0
-ticks_on_borders = false
-focus_mode = 2
-
-[node name="TextEdit" type="LineEdit" parent="Viewport/GUI" index="3"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+
+[node name="TextEdit" type="LineEdit" parent="Viewport/GUI"]
 margin_left = 18.0
 margin_top = 87.0
 margin_right = 156.0
 margin_bottom = 111.0
-rect_pivot_offset = Vector2( 0, 0 )
-focus_mode = 2
-mouse_filter = 0
-mouse_default_cursor_shape = 1
-size_flags_horizontal = 1
-size_flags_vertical = 1
-focus_mode = 2
-context_menu_enabled = true
-placeholder_alpha = 0.6
-caret_blink = false
-caret_blink_speed = 0.65
-caret_position = 0
-
-[node name="Area" type="Area" parent="." index="1"]
 
+[node name="Area" type="Area" parent="."]
 input_ray_pickable = true
 input_capture_on_drag = true
-space_override = 0
-gravity_point = false
-gravity_distance_scale = 0.0
-gravity_vec = Vector3( 0, -1, 0 )
-gravity = 9.8
-linear_damp = 0.1
-angular_damp = 1.0
-priority = 0.0
-monitoring = true
-monitorable = true
-collision_layer = 1
-collision_mask = 1
-audio_bus_override = false
-audio_bus_name = "Master"
-reverb_bus_enable = false
-reverb_bus_name = "Master"
-reverb_bus_amount = 0.0
-reverb_bus_uniformity = 0.0
-_sections_unfolded = [ "Transform" ]
-
-[node name="Quad" type="MeshInstance" parent="Area" index="0"]
 
+[node name="Quad" type="MeshInstance" parent="Area"]
 transform = Transform( -1, 8.74228e-08, -4.37114e-08, -4.37114e-08, 1.91069e-15, 1, 8.74228e-08, 1, 1.91069e-15, 0, 0, 0 )
-layers = 1
-material_override = null
-cast_shadow = 1
-extra_cull_margin = 0.0
-use_in_baked_light = false
-lod_min_distance = 0.0
-lod_min_hysteresis = 0.0
-lod_max_distance = 0.0
-lod_max_hysteresis = 0.0
 mesh = SubResource( 1 )
-skeleton = NodePath("..")
 material/0 = SubResource( 3 )
-_sections_unfolded = [ "Geometry", "Transform", "material" ]
-
-[node name="CollisionShape" type="CollisionShape" parent="Area" index="1"]
 
+[node name="CollisionShape" type="CollisionShape" parent="Area"]
 shape = SubResource( 5 )
-disabled = false
-
-[node name="Camera" type="Camera" parent="." index="2"]
 
+[node name="Camera" type="Camera" parent="."]
 transform = Transform( 0.994592, 0, 0.103856, 0, 1, 0, -0.103856, 0, 0.994592, 0.465682, 0, 1.78523 )
-keep_aspect = 1
-cull_mask = 1048575
-environment = null
-h_offset = 0.0
-v_offset = 0.0
-doppler_tracking = 0
-projection = 0
-current = false
 fov = 74.0
-size = 1.0
 near = 0.1
-far = 100.0
-_sections_unfolded = [ "Transform" ]
-
-[node name="OmniLight" type="OmniLight" parent="." index="3"]
 
+[node name="OmniLight" type="OmniLight" parent="."]
 transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 1.38866, 1.2413, 2.72141 )
-layers = 1
-light_color = Color( 1, 1, 1, 1 )
-light_energy = 1.0
-light_indirect_energy = 1.0
-light_negative = false
-light_specular = 0.5
-light_bake_mode = 1
-light_cull_mask = -1
 shadow_enabled = true
-shadow_color = Color( 0, 0, 0, 1 )
-shadow_bias = 0.15
-shadow_contact = 0.0
-shadow_reverse_cull_face = false
-editor_only = false
 omni_range = 10.0
-omni_attenuation = 1.0
-omni_shadow_mode = 1
-omni_shadow_detail = 1
-_sections_unfolded = [ "Light", "Omni", "Shadow" ]
 
-[node name="Camera_Move" type="AnimationPlayer" parent="." index="4"]
-
-root_node = NodePath("..")
+[node name="Camera_Move" type="AnimationPlayer" parent="."]
 autoplay = "Move_camera"
-playback_process_mode = 1
-playback_default_blend_time = 0.0
-playback_speed = 1.0
 anims/Move_camera = SubResource( 6 )
-blend_times = [  ]
-autoplay = "Move_camera"
-
-[node name="3D_background" type="Spatial" parent="." index="5"]
 
+[node name="3D_background" type="Spatial" parent="."]
 editor/display_folded = true
 
-[node name="Wall" type="MeshInstance" parent="3D_background" index="0"]
-
+[node name="Wall" type="MeshInstance" parent="3D_background"]
 transform = Transform( 4, 0, 0, 0, -1.74846e-07, -4, 0, 4, -1.74846e-07, -2.60819, 0.589247, -2.08943 )
-layers = 1
-material_override = null
-cast_shadow = 1
-extra_cull_margin = 0.0
-use_in_baked_light = false
-lod_min_distance = 0.0
-lod_min_hysteresis = 0.0
-lod_max_distance = 0.0
-lod_max_hysteresis = 0.0
 mesh = SubResource( 7 )
-skeleton = NodePath("..")
 material/0 = null
 script = SubResource( 8 )
-_sections_unfolded = [ "Transform" ]
-
-[node name="Wall2" type="MeshInstance" parent="3D_background" index="1"]
 
+[node name="Wall2" type="MeshInstance" parent="3D_background"]
 transform = Transform( 4, 0, 0, 0, -1.74846e-07, -4, 0, 4, -1.74846e-07, 5.08055, 0.589247, -2.08943 )
-layers = 1
-material_override = null
-cast_shadow = 1
-extra_cull_margin = 0.0
-use_in_baked_light = false
-lod_min_distance = 0.0
-lod_min_hysteresis = 0.0
-lod_max_distance = 0.0
-lod_max_hysteresis = 0.0
 mesh = SubResource( 7 )
-skeleton = NodePath("..")
 material/0 = null
 script = SubResource( 8 )
-_sections_unfolded = [ "Transform" ]
-
-[node name="Wall3" type="MeshInstance" parent="3D_background" index="2"]
 
+[node name="Wall3" type="MeshInstance" parent="3D_background"]
 transform = Transform( -1.74846e-07, -4, 0, -1.74846e-07, 7.64274e-15, -4, 4, -1.74846e-07, -1.74846e-07, 9.04446, 0.589247, 1.62058 )
-layers = 1
-material_override = null
-cast_shadow = 1
-extra_cull_margin = 0.0
-use_in_baked_light = false
-lod_min_distance = 0.0
-lod_min_hysteresis = 0.0
-lod_max_distance = 0.0
-lod_max_hysteresis = 0.0
 mesh = SubResource( 7 )
-skeleton = NodePath("..")
 material/0 = null
 script = SubResource( 9 )
-_sections_unfolded = [ "Transform" ]
-
-[node name="Floor" type="MeshInstance" parent="3D_background" index="3"]
 
+[node name="Floor" type="MeshInstance" parent="3D_background"]
 transform = Transform( 4, 0, 0, 0, 4, 0, 0, 0, 4, -2.60819, -2.68765, 1.46502 )
-layers = 1
-material_override = null
-cast_shadow = 1
-extra_cull_margin = 0.0
-use_in_baked_light = false
-lod_min_distance = 0.0
-lod_min_hysteresis = 0.0
-lod_max_distance = 0.0
-lod_max_hysteresis = 0.0
 mesh = SubResource( 7 )
-skeleton = NodePath("..")
 material/0 = null
 script = SubResource( 10 )
-_sections_unfolded = [ "Transform" ]
-
-[node name="Floor2" type="MeshInstance" parent="3D_background" index="4"]
 
+[node name="Floor2" type="MeshInstance" parent="3D_background"]
 transform = Transform( 4, 0, 0, 0, 4, 0, 0, 0, 4, 5.08055, -2.68765, 1.46502 )
-layers = 1
-material_override = null
-cast_shadow = 1
-extra_cull_margin = 0.0
-use_in_baked_light = false
-lod_min_distance = 0.0
-lod_min_hysteresis = 0.0
-lod_max_distance = 0.0
-lod_max_hysteresis = 0.0
 mesh = SubResource( 7 )
-skeleton = NodePath("..")
 material/0 = null
 script = SubResource( 10 )
-_sections_unfolded = [ "Transform" ]
-
-[node name="Cube" type="MeshInstance" parent="3D_background" index="5"]
 
+[node name="Cube" type="MeshInstance" parent="3D_background"]
 transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 4.25901, -0.598608, 0.374871 )
-layers = 1
-material_override = null
-cast_shadow = 1
-extra_cull_margin = 0.0
-use_in_baked_light = false
-lod_min_distance = 0.0
-lod_min_hysteresis = 0.0
-lod_max_distance = 0.0
-lod_max_hysteresis = 0.0
 mesh = SubResource( 11 )
-skeleton = NodePath("..")
 material/0 = SubResource( 12 )
 script = SubResource( 13 )
-_sections_unfolded = [ "Transform" ]
-
-[node name="Cube2" type="MeshInstance" parent="3D_background" index="6"]
 
+[node name="Cube2" type="MeshInstance" parent="3D_background"]
 transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 2.88761, 2.01326, 0.374871 )
-layers = 1
-material_override = null
-cast_shadow = 1
-extra_cull_margin = 0.0
-use_in_baked_light = false
-lod_min_distance = 0.0
-lod_min_hysteresis = 0.0
-lod_max_distance = 0.0
-lod_max_hysteresis = 0.0
 mesh = SubResource( 11 )
-skeleton = NodePath("..")
 material/0 = SubResource( 12 )
 script = SubResource( 13 )
-_sections_unfolded = [ "Transform" ]
+

+ 0 - 86
viewport/gui_in_3d/default_env.tres

@@ -1,28 +1,14 @@
 [gd_resource type="Environment" load_steps=3 format=2]
 
 [sub_resource type="ProceduralSky" id=1]
-
-radiance_size = 4
 sky_top_color = Color( 0.0375977, 0.322787, 0.6875, 1 )
 sky_horizon_color = Color( 0.262024, 0.533321, 0.621094, 1 )
 sky_curve = 0.25
-sky_energy = 1.0
 ground_bottom_color = Color( 0.101961, 0.145098, 0.188235, 1 )
 ground_horizon_color = Color( 0.482353, 0.788235, 0.952941, 1 )
 ground_curve = 0.01
-ground_energy = 1.0
-sun_color = Color( 1, 1, 1, 1 )
-sun_latitude = 35.0
-sun_longitude = 0.0
-sun_angle_min = 1.0
-sun_angle_max = 100.0
-sun_curve = 0.05
-sun_energy = 16.0
-texture_size = 2
-_sections_unfolded = [ "Sky" ]
 
 [sub_resource type="GDScript" id=2]
-
 script/source = "tool
 extends Object
 func e():
@@ -30,83 +16,11 @@ func e():
 "
 
 [resource]
-
 background_mode = 2
 background_sky = SubResource( 1 )
-background_sky_custom_fov = 0.0
-background_color = Color( 0, 0, 0, 1 )
-background_energy = 1.0
-background_canvas_max_layer = 0
 ambient_light_color = Color( 1, 1, 1, 1 )
 ambient_light_energy = 0.28
 ambient_light_sky_contribution = 0.0
-fog_enabled = false
-fog_color = Color( 0.5, 0.6, 0.7, 1 )
-fog_sun_color = Color( 1, 0.9, 0.7, 1 )
-fog_sun_amount = 0.0
-fog_depth_enabled = true
-fog_depth_begin = 10.0
-fog_depth_curve = 1.0
-fog_transmit_enabled = false
-fog_transmit_curve = 1.0
-fog_height_enabled = false
-fog_height_min = 0.0
-fog_height_max = 100.0
-fog_height_curve = 1.0
-tonemap_mode = 0
-tonemap_exposure = 1.0
-tonemap_white = 1.0
-auto_exposure_enabled = false
-auto_exposure_scale = 0.4
-auto_exposure_min_luma = 0.05
-auto_exposure_max_luma = 8.0
-auto_exposure_speed = 0.5
-ss_reflections_enabled = false
-ss_reflections_max_steps = 64
-ss_reflections_fade_in = 0.15
-ss_reflections_fade_out = 2.0
-ss_reflections_depth_tolerance = 0.2
-ss_reflections_roughness = true
-ssao_enabled = false
-ssao_radius = 1.0
-ssao_intensity = 1.0
-ssao_radius2 = 0.0
-ssao_intensity2 = 1.0
-ssao_bias = 0.01
-ssao_light_affect = 0.0
-ssao_color = Color( 0, 0, 0, 1 )
-ssao_quality = 0
 ssao_blur = 1
-ssao_edge_sharpness = 4.0
-dof_blur_far_enabled = false
-dof_blur_far_distance = 10.0
-dof_blur_far_transition = 5.0
-dof_blur_far_amount = 0.1
-dof_blur_far_quality = 1
-dof_blur_near_enabled = false
-dof_blur_near_distance = 2.0
-dof_blur_near_transition = 1.0
-dof_blur_near_amount = 0.1
-dof_blur_near_quality = 1
-glow_enabled = false
-glow_levels/1 = false
-glow_levels/2 = false
-glow_levels/3 = true
-glow_levels/4 = false
-glow_levels/5 = true
-glow_levels/6 = false
-glow_levels/7 = false
-glow_intensity = 0.8
-glow_strength = 1.0
-glow_bloom = 0.0
-glow_blend_mode = 2
-glow_hdr_threshold = 1.0
-glow_hdr_scale = 2.0
-glow_bicubic_upscale = false
-adjustment_enabled = false
-adjustment_brightness = 1.0
-adjustment_contrast = 1.0
-adjustment_saturation = 1.0
 script = SubResource( 2 )
-_sections_unfolded = [ "Ambient Light" ]
 

+ 1 - 1
viewport/gui_in_3d/gui_3d.gd

@@ -21,7 +21,7 @@ func _input(event):
 
 
 # Mouse events for Area
-func _on_area_input_event(camera, event, click_pos, click_normal, shape_idx):
+func _on_area_input_event(_camera, event, click_pos, _click_normal, _shape_idx):
 	# Use click pos (click in 3d space, convert to area space)
 	var pos = get_node("Area").get_global_transform().affine_inverse()
 	# the click pos is not zero, then use it to convert from 3D space to area space

+ 10 - 1
viewport/gui_in_3d/project.godot

@@ -6,7 +6,12 @@
 ;   [section] ; section goes between []
 ;   param=value ; assign values to parameters
 
-config_version=3
+config_version=4
+
+_global_script_classes=[  ]
+_global_script_class_icons={
+
+}
 
 [application]
 
@@ -14,6 +19,10 @@ config/name="GUI in 3D"
 run/main_scene="res://Gui_in_3D.tscn"
 config/icon="res://icon.png"
 
+[debug]
+
+gdscript/warnings/return_value_discarded=false
+
 [gdnative]
 
 singletons=[  ]

+ 4 - 51
viewport/screen_capture/capture_screen.tscn

@@ -3,45 +3,22 @@
 [ext_resource path="res://screen_capture.gd" type="Script" id=1]
 [ext_resource path="res://mountains.png" type="Texture" id=2]
 
-[node name="Control" type="Control" index="0"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="Control" type="Control"]
 margin_right = 40.0
 margin_bottom = 40.0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 0
-mouse_default_cursor_shape = 0
-size_flags_horizontal = 1
-size_flags_vertical = 1
 script = ExtResource( 1 )
 
-[node name="BG" type="TextureRect" parent="." index="0"]
-
-anchor_left = 0.0
-anchor_top = 0.0
+[node name="BG" type="TextureRect" parent="."]
 anchor_right = 1.0
 anchor_bottom = 1.0
 margin_right = 986.0
 margin_bottom = 560.0
 grow_horizontal = 0
 grow_vertical = 0
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 1
-mouse_default_cursor_shape = 0
-size_flags_horizontal = 1
-size_flags_vertical = 1
 texture = ExtResource( 2 )
 expand = true
-stretch_mode = 0
-_sections_unfolded = [ "Anchor" ]
-
-[node name="capture" type="TextureRect" parent="." index="1"]
 
-anchor_left = 0.0
-anchor_top = 0.0
+[node name="capture" type="TextureRect" parent="."]
 anchor_right = 1.0
 anchor_bottom = 1.0
 margin_right = 2013.0
@@ -49,37 +26,13 @@ margin_bottom = 1162.0
 grow_horizontal = 0
 grow_vertical = 0
 rect_scale = Vector2( 0.5, 0.5 )
-rect_pivot_offset = Vector2( 0, 0 )
-mouse_filter = 1
-mouse_default_cursor_shape = 0
-size_flags_horizontal = 1
-size_flags_vertical = 1
 expand = true
 stretch_mode = 4
 
-[node name="Button" type="Button" parent="." index="2"]
-
-anchor_left = 0.0
-anchor_top = 0.0
-anchor_right = 0.0
-anchor_bottom = 0.0
+[node name="Button" type="Button" parent="."]
 margin_left = 48.0
 margin_top = 53.0
 margin_right = 188.0
 margin_bottom = 113.0
-rect_pivot_offset = Vector2( 0, 0 )
-focus_mode = 2
-mouse_filter = 0
-mouse_default_cursor_shape = 0
-size_flags_horizontal = 1
-size_flags_vertical = 1
-toggle_mode = false
-enabled_focus_mode = 2
-shortcut = null
-group = null
 text = "Capture screen"
-flat = false
-align = 1
-_sections_unfolded = [ "Rect" ]
-
 

+ 0 - 86
viewport/screen_capture/default_env.tres

@@ -1,101 +1,15 @@
 [gd_resource type="Environment" load_steps=2 format=2]
 
 [sub_resource type="ProceduralSky" id=1]
-
-radiance_size = 4
 sky_top_color = Color( 0.0470588, 0.454902, 0.976471, 1 )
 sky_horizon_color = Color( 0.556863, 0.823529, 0.909804, 1 )
 sky_curve = 0.25
-sky_energy = 1.0
 ground_bottom_color = Color( 0.101961, 0.145098, 0.188235, 1 )
 ground_horizon_color = Color( 0.482353, 0.788235, 0.952941, 1 )
 ground_curve = 0.01
-ground_energy = 1.0
-sun_color = Color( 1, 1, 1, 1 )
-sun_latitude = 35.0
-sun_longitude = 0.0
-sun_angle_min = 1.0
-sun_angle_max = 100.0
-sun_curve = 0.05
-sun_energy = 16.0
-texture_size = 2
 
 [resource]
-
 background_mode = 2
 background_sky = SubResource( 1 )
-background_sky_custom_fov = 0.0
-background_color = Color( 0, 0, 0, 1 )
-background_energy = 1.0
-background_canvas_max_layer = 0
-ambient_light_color = Color( 0, 0, 0, 1 )
-ambient_light_energy = 1.0
-ambient_light_sky_contribution = 1.0
-fog_enabled = false
-fog_color = Color( 0.5, 0.6, 0.7, 1 )
-fog_sun_color = Color( 1, 0.9, 0.7, 1 )
-fog_sun_amount = 0.0
-fog_depth_enabled = true
-fog_depth_begin = 10.0
-fog_depth_curve = 1.0
-fog_transmit_enabled = false
-fog_transmit_curve = 1.0
-fog_height_enabled = false
-fog_height_min = 0.0
-fog_height_max = 100.0
-fog_height_curve = 1.0
-tonemap_mode = 0
-tonemap_exposure = 1.0
-tonemap_white = 1.0
-auto_exposure_enabled = false
-auto_exposure_scale = 0.4
-auto_exposure_min_luma = 0.05
-auto_exposure_max_luma = 8.0
-auto_exposure_speed = 0.5
-ss_reflections_enabled = false
-ss_reflections_max_steps = 64
-ss_reflections_fade_in = 0.15
-ss_reflections_fade_out = 2.0
-ss_reflections_depth_tolerance = 0.2
-ss_reflections_roughness = true
-ssao_enabled = false
-ssao_radius = 1.0
-ssao_intensity = 1.0
-ssao_radius2 = 0.0
-ssao_intensity2 = 1.0
-ssao_bias = 0.01
-ssao_light_affect = 0.0
-ssao_color = Color( 0, 0, 0, 1 )
-ssao_quality = 0
 ssao_blur = 1
-ssao_edge_sharpness = 4.0
-dof_blur_far_enabled = false
-dof_blur_far_distance = 10.0
-dof_blur_far_transition = 5.0
-dof_blur_far_amount = 0.1
-dof_blur_far_quality = 1
-dof_blur_near_enabled = false
-dof_blur_near_distance = 2.0
-dof_blur_near_transition = 1.0
-dof_blur_near_amount = 0.1
-dof_blur_near_quality = 1
-glow_enabled = false
-glow_levels/1 = false
-glow_levels/2 = false
-glow_levels/3 = true
-glow_levels/4 = false
-glow_levels/5 = true
-glow_levels/6 = false
-glow_levels/7 = false
-glow_intensity = 0.8
-glow_strength = 1.0
-glow_bloom = 0.0
-glow_blend_mode = 2
-glow_hdr_threshold = 1.0
-glow_hdr_scale = 2.0
-glow_bicubic_upscale = false
-adjustment_enabled = false
-adjustment_brightness = 1.0
-adjustment_contrast = 1.0
-adjustment_saturation = 1.0
 

+ 2 - 3
viewport/screen_capture/icon.png.import

@@ -7,16 +7,14 @@ path="res://.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex"
 [deps]
 
 source_file="res://icon.png"
-source_md5="71dbfbd9db1b88e8d729c2009427b7f6"
-
 dest_files=[ "res://.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex" ]
-dest_md5="4330ec3e316be795892551964cdca11c"
 
 [params]
 
 compress/mode=0
 compress/lossy_quality=0.7
 compress/hdr_mode=0
+compress/bptc_ldr=0
 compress/normal_map=0
 flags/repeat=0
 flags/filter=true
@@ -26,6 +24,7 @@ flags/srgb=2
 process/fix_alpha_border=true
 process/premult_alpha=false
 process/HDR_as_SRGB=false
+process/invert_color=false
 stream=false
 size_limit=0
 detect_3d=true

+ 2 - 3
viewport/screen_capture/mountains.png.import

@@ -7,16 +7,14 @@ path="res://.import/mountains.png-03f302fbd9195711fc86ea8f28ca435e.stex"
 [deps]
 
 source_file="res://mountains.png"
-source_md5="cd668b794fb4cfeb602258757b79ef0d"
-
 dest_files=[ "res://.import/mountains.png-03f302fbd9195711fc86ea8f28ca435e.stex" ]
-dest_md5="942af6591a343f789f7450f2d5706f8a"
 
 [params]
 
 compress/mode=0
 compress/lossy_quality=0.7
 compress/hdr_mode=0
+compress/bptc_ldr=0
 compress/normal_map=0
 flags/repeat=0
 flags/filter=true
@@ -26,6 +24,7 @@ flags/srgb=2
 process/fix_alpha_border=true
 process/premult_alpha=false
 process/HDR_as_SRGB=false
+process/invert_color=false
 stream=false
 size_limit=0
 detect_3d=true

+ 10 - 1
viewport/screen_capture/project.godot

@@ -6,7 +6,12 @@
 ;   [section] ; section goes between []
 ;   param=value ; assign values to parameters
 
-config_version=3
+config_version=4
+
+_global_script_classes=[  ]
+_global_script_class_icons={
+
+}
 
 [application]
 
@@ -14,6 +19,10 @@ config/name="Screen Capture"
 run/main_scene="res://capture_screen.tscn"
 config/icon="res://icon.png"
 
+[debug]
+
+gdscript/warnings/return_value_discarded=false
+
 [gdnative]
 
 singletons=[  ]

Some files were not shown because too many files changed in this diff