123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196 |
- [gd_scene load_steps=2 format=3 uid="uid://ca0d8q5aicxfr"]
- [ext_resource type="Script" path="res://runtime_save_load.gd" id="1_2gu2h"]
- [node name="RuntimeLoadSave" type="Control"]
- layout_mode = 3
- anchors_preset = 15
- anchor_right = 1.0
- anchor_bottom = 1.0
- grow_horizontal = 2
- grow_vertical = 2
- script = ExtResource("1_2gu2h")
- [node name="MarginContainer" type="MarginContainer" parent="."]
- layout_mode = 1
- anchors_preset = 15
- anchor_right = 1.0
- anchor_bottom = 1.0
- grow_horizontal = 2
- grow_vertical = 2
- theme_override_constants/margin_left = 20
- theme_override_constants/margin_top = 20
- theme_override_constants/margin_right = 20
- theme_override_constants/margin_bottom = 20
- [node name="VBoxContainer" type="VBoxContainer" parent="MarginContainer"]
- layout_mode = 2
- theme_override_constants/separation = 10
- [node name="Help" type="Label" parent="MarginContainer/VBoxContainer"]
- layout_mode = 2
- theme_override_colors/font_color = Color(1, 1, 1, 0.752941)
- text = "This project showcases how to load and save various file types without going through Godot's resource importing system.
- This is useful to load/save images, sounds, 3D scenes and ZIP archives at run-time such as user-generated content,
- without requiring users to generate a PCK file through Godot."
- autowrap_mode = 2
- [node name="Instructions" type="Label" parent="MarginContainer/VBoxContainer"]
- layout_mode = 2
- text = "Select a file to load (look in the \"examples\" folder):"
- autowrap_mode = 2
- [node name="HBoxContainer" type="HBoxContainer" parent="MarginContainer/VBoxContainer"]
- layout_mode = 2
- [node name="FilePath" type="LineEdit" parent="MarginContainer/VBoxContainer/HBoxContainer"]
- layout_mode = 2
- size_flags_horizontal = 3
- placeholder_text = "Click \"Browse\" on the right or enter path to file"
- [node name="Browse" type="Button" parent="MarginContainer/VBoxContainer/HBoxContainer"]
- custom_minimum_size = Vector2(100, 0)
- layout_mode = 2
- text = "Browse"
- [node name="FileDialog" type="FileDialog" parent="MarginContainer/VBoxContainer/HBoxContainer"]
- title = "Open a File"
- size = Vector2i(392, 159)
- ok_button_text = "Open"
- file_mode = 0
- access = 2
- [node name="Result" type="CenterContainer" parent="MarginContainer/VBoxContainer"]
- custom_minimum_size = Vector2(0, 400)
- layout_mode = 2
- [node name="PlainTextViewer" type="ScrollContainer" parent="MarginContainer/VBoxContainer/Result"]
- visible = false
- custom_minimum_size = Vector2(1050, 400)
- layout_mode = 2
- horizontal_scroll_mode = 0
- [node name="Label" type="Label" parent="MarginContainer/VBoxContainer/Result/PlainTextViewer"]
- custom_minimum_size = Vector2(1050, 400)
- layout_mode = 2
- theme_override_colors/font_color = Color(1, 0.941176, 0.627451, 1)
- autowrap_mode = 2
- [node name="TextureViewer" type="TextureRect" parent="MarginContainer/VBoxContainer/Result"]
- visible = false
- custom_minimum_size = Vector2(0, 400)
- layout_mode = 2
- expand_mode = 3
- [node name="AudioPlayer" type="Button" parent="MarginContainer/VBoxContainer/Result"]
- visible = false
- layout_mode = 2
- theme_override_font_sizes/font_size = 24
- text = "Play Audio"
- [node name="AudioStreamPlayer" type="AudioStreamPlayer" parent="MarginContainer/VBoxContainer/Result/AudioPlayer"]
- volume_db = -10.0
- [node name="SceneViewer" type="SubViewportContainer" parent="MarginContainer/VBoxContainer/Result"]
- visible = false
- custom_minimum_size = Vector2(1050, 400)
- layout_mode = 2
- stretch = true
- [node name="SubViewport" type="SubViewport" parent="MarginContainer/VBoxContainer/Result/SceneViewer"]
- handle_input_locally = false
- msaa_3d = 2
- size = Vector2i(1050, 400)
- render_target_update_mode = 0
- [node name="Camera3D" type="Camera3D" parent="MarginContainer/VBoxContainer/Result/SceneViewer/SubViewport"]
- transform = Transform3D(0.877582, -0.229849, 0.420736, 0, 0.877582, 0.479426, -0.479426, -0.420736, 0.770151, 26.1772, 30.2846, 47.917)
- projection = 1
- size = 1.2
- near = 0.001
- far = 100.0
- [node name="KeyLight" type="DirectionalLight3D" parent="MarginContainer/VBoxContainer/Result/SceneViewer/SubViewport"]
- transform = Transform3D(0.775472, 0.453626, -0.439166, 0, 0.695563, 0.718465, 0.631382, -0.557149, 0.53939, -2.78761, 4.56046, 3.42378)
- shadow_enabled = true
- directional_shadow_mode = 0
- directional_shadow_fade_start = 1.0
- directional_shadow_max_distance = 20.0
- [node name="FillLight" type="DirectionalLight3D" parent="MarginContainer/VBoxContainer/Result/SceneViewer/SubViewport"]
- transform = Transform3D(-0.775472, -0.453626, 0.439166, 4.2942e-09, 0.695563, 0.718465, -0.631382, 0.557149, -0.53939, -2.78761, 2.56046, 3.42378)
- light_energy = 0.3
- shadow_bias = 0.04
- directional_shadow_mode = 0
- directional_shadow_max_distance = 30.0
- [node name="BackLight" type="DirectionalLight3D" parent="MarginContainer/VBoxContainer/Result/SceneViewer/SubViewport"]
- transform = Transform3D(1, 0, 0, 0, -4.37114e-08, -1, 0, 1, -4.37114e-08, -2.78761, 0.56046, 3.42378)
- light_energy = 0.1
- shadow_bias = 0.04
- directional_shadow_mode = 0
- directional_shadow_max_distance = 30.0
- [node name="Zoom" type="HSlider" parent="MarginContainer/VBoxContainer/Result/SceneViewer"]
- custom_minimum_size = Vector2(1050, 0)
- layout_mode = 2
- min_value = -100.0
- max_value = -0.1
- step = 0.0
- value = -1.2
- [node name="FontViewer" type="Label" parent="MarginContainer/VBoxContainer/Result"]
- visible = false
- custom_minimum_size = Vector2(1050, 400)
- layout_mode = 2
- theme_override_font_sizes/font_size = 48
- text = "abcdefghijklmnopqrstuvwxyz
- ABCDEFGHIJKLM
- NOPQRSTUVWXYZ
- 1234567890
- ()[]{}<> -+:!?$&#@ éàç ×÷±≠ø ↔"
- horizontal_alignment = 1
- vertical_alignment = 1
- [node name="ZIPViewer" type="HSplitContainer" parent="MarginContainer/VBoxContainer/Result"]
- visible = false
- custom_minimum_size = Vector2(1050, 400)
- layout_mode = 2
- split_offset = 525
- [node name="FileList" type="ItemList" parent="MarginContainer/VBoxContainer/Result/ZIPViewer"]
- custom_minimum_size = Vector2(150, 0)
- layout_mode = 2
- [node name="FilePreview" type="Label" parent="MarginContainer/VBoxContainer/Result/ZIPViewer"]
- custom_minimum_size = Vector2(150, 0)
- layout_mode = 2
- size_flags_horizontal = 3
- size_flags_vertical = 1
- theme_override_colors/font_color = Color(0.631373, 0.862745, 1, 1)
- autowrap_mode = 2
- text_overrun_behavior = 3
- [node name="ErrorLabel" type="Label" parent="MarginContainer/VBoxContainer/Result"]
- visible = false
- layout_mode = 2
- theme_override_colors/font_color = Color(1, 0.501961, 0.501961, 1)
- theme_override_font_sizes/font_size = 24
- [node name="Export" type="Button" parent="MarginContainer/VBoxContainer"]
- layout_mode = 2
- text = "Export"
- [node name="FileDialog" type="FileDialog" parent="MarginContainer/VBoxContainer/Export"]
- title = "Export File"
- access = 2
- [connection signal="text_submitted" from="MarginContainer/VBoxContainer/HBoxContainer/FilePath" to="." method="_on_file_path_text_submitted"]
- [connection signal="pressed" from="MarginContainer/VBoxContainer/HBoxContainer/Browse" to="." method="_on_browse_pressed"]
- [connection signal="file_selected" from="MarginContainer/VBoxContainer/HBoxContainer/FileDialog" to="." method="_on_file_dialog_file_selected"]
- [connection signal="pressed" from="MarginContainer/VBoxContainer/Result/AudioPlayer" to="." method="_on_audio_player_pressed"]
- [connection signal="value_changed" from="MarginContainer/VBoxContainer/Result/SceneViewer/Zoom" to="." method="_on_scene_viewer_zoom_value_changed"]
- [connection signal="item_selected" from="MarginContainer/VBoxContainer/Result/ZIPViewer/FileList" to="." method="_on_zip_viewer_item_selected"]
- [connection signal="pressed" from="MarginContainer/VBoxContainer/Export" to="." method="_on_export_pressed"]
- [connection signal="file_selected" from="MarginContainer/VBoxContainer/Export/FileDialog" to="." method="_on_export_file_dialog_file_selected"]
|