Convert all VisualShaders to plain Shaders; clean editor noise

Godot 4 emits two unavoidable warnings every time it reconstructs a
Godot-3-authored VisualShader graph: 'graph_offset property is
deprecated' (the editor's pan position, removed in 4.x) and
'connect_nodes_forced: Index p_from_port = 1 is out of bounds'
(node-graph ports that no longer line up). The compiled GLSL inside
each ShaderMaterial is correct; only the graph reconstruction is
broken.

scripts/devisualize_shaders.gd walks every .material, .tres, and
.mesh under res:// and replaces ShaderMaterial.shader from
VisualShader to a plain Shader carrying the same .code. 15 materials
converted (font outline, dissolve, color tints, book/candle/godet/
growler/parchment/rock-floor/stool/table). Godot now loads the
compiled shader directly with no graph reconstruction → both
warnings gone, rendering identical.

Also:
- scripts/resave_scenes.gd: load + re-save every .tscn so inline
  ArrayMesh sub-resources (notably WarCraft.tscn::17, the baked
  floor) move from Godot-3 PoolByteArray to Godot-4 PackedByteArray
  surface format. Silences 'Mesh uses old surface format'.
- scripts/find_visualshaders.gd: companion audit tool that lists
  every Resource still backed by a VisualShader. Useful if new
  legacy materials get added.
- Drop the now-orphan inline VisualShader / ShaderMaterial sub-
  resources (id 1..17) from Summary.tscn. The PanelWood lost its
  screen-blend tint material; a plain Panel renders fine and the
  effect can be re-authored as a hand-written shader if wanted.
- Add releases/.gdignore and tighten .gitignore so Godot stops
  warning 'Detected another project.godot at res://releases'. The
  releases/ directory has its own placeholder project.godot which
  Godot would otherwise flag at every editor open.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
Vaillant Jeremy
2026-05-16 21:42:28 +02:00
parent 81e6ceb003
commit ca67fc6ec3
43 changed files with 673 additions and 725 deletions
+3 -1
View File
@@ -67,7 +67,9 @@ $RECYCLE.BIN/
# End of https://www.toptal.com/developers/gitignore/api/godot,linux,windows # End of https://www.toptal.com/developers/gitignore/api/godot,linux,windows
# Ignore folders releases and build Android # Ignore folders releases and build Android
releases # (the .gdignore marker is tracked so Godot skips scanning this directory)
releases/*
!releases/.gdignore
# Ignore override godot # Ignore override godot
override.cfg override.cfg
Binary file not shown.
Binary file not shown.
+9 -23
View File
@@ -1,38 +1,24 @@
[gd_resource type="ShaderMaterial" load_steps=3 format=2] [gd_resource type="ShaderMaterial" format=3]
[sub_resource type="VisualShaderNodeColorConstant" id=1] [sub_resource type="Shader" id="Shader_6qnue"]
constant = Color( 0.117188, 0.0709553, 0.0709553, 1 )
[sub_resource type="VisualShader" id=2]
code = "shader_type spatial; code = "shader_type spatial;
render_mode specular_schlick_ggx; render_mode blend_mix, depth_draw_opaque, depth_test_default, cull_back, diffuse_lambert, specular_schlick_ggx;
void vertex() {
// Output:0
}
void fragment() { void fragment() {
// Color:3 // ColorConstant:3
vec3 n_out3p0 = vec3(0.117188, 0.070955, 0.070955); vec4 n_out3p0 = vec4(0.117188, 0.070955, 0.070955, 1.000000);
float n_out3p1 = 1.000000;
// Output:0 // Output:0
ALBEDO = n_out3p0; ALBEDO = vec3(n_out3p0.xyz);
}
void light() {
// Output:0
} }
" "
nodes/fragment/3/node = SubResource( 1 )
nodes/fragment/3/position = Vector2( 0, 140 )
nodes/fragment/connections = PackedInt32Array( 3, 0, 0, 0 )
[resource] [resource]
shader = SubResource( 2 ) render_priority = 0
shader = SubResource("Shader_6qnue")
+10 -24
View File
@@ -1,40 +1,26 @@
[gd_resource type="ShaderMaterial" load_steps=3 format=2] [gd_resource type="ShaderMaterial" format=3]
[sub_resource type="VisualShaderNodeColorParameter" id=1] [sub_resource type="Shader" id="Shader_iwepy"]
uniform_name = "BaseColor"
[sub_resource type="VisualShader" id=2]
code = "shader_type spatial; code = "shader_type spatial;
render_mode specular_schlick_ggx; render_mode blend_mix, depth_draw_opaque, depth_test_default, cull_back, diffuse_lambert, specular_schlick_ggx;
uniform vec4 BaseColor : source_color; uniform vec4 BaseColor : source_color;
void vertex() {
// Output:0
}
void fragment() { void fragment() {
// ColorUniform:5 // ColorParameter:5
vec3 n_out5p0 = BaseColor.rgb; vec4 n_out5p0 = BaseColor;
float n_out5p1 = BaseColor.a;
// Output:0 // Output:0
ALBEDO = n_out5p0; ALBEDO = vec3(n_out5p0.xyz);
}
void light() {
// Output:0
} }
" "
nodes/fragment/5/node = SubResource( 1 )
nodes/fragment/5/position = Vector2( 180, 140 )
nodes/fragment/connections = PackedInt32Array( 5, 0, 0, 0 )
[resource] [resource]
shader = SubResource( 2 ) render_priority = 0
shader_param/BaseColor = Color( 0.313726, 1, 0, 1 ) shader = SubResource("Shader_iwepy")
shader_parameter/BaseColor = Color(0.313726, 1, 0, 1)
+10 -24
View File
@@ -1,40 +1,26 @@
[gd_resource type="ShaderMaterial" load_steps=3 format=2] [gd_resource type="ShaderMaterial" format=3]
[sub_resource type="VisualShaderNodeColorParameter" id=1] [sub_resource type="Shader" id="Shader_b630w"]
uniform_name = "BaseColor"
[sub_resource type="VisualShader" id=2]
code = "shader_type spatial; code = "shader_type spatial;
render_mode specular_schlick_ggx; render_mode blend_mix, depth_draw_opaque, depth_test_default, cull_back, diffuse_lambert, specular_schlick_ggx;
uniform vec4 BaseColor : source_color; uniform vec4 BaseColor : source_color;
void vertex() {
// Output:0
}
void fragment() { void fragment() {
// ColorUniform:5 // ColorParameter:5
vec3 n_out5p0 = BaseColor.rgb; vec4 n_out5p0 = BaseColor;
float n_out5p1 = BaseColor.a;
// Output:0 // Output:0
ALBEDO = n_out5p0; ALBEDO = vec3(n_out5p0.xyz);
}
void light() {
// Output:0
} }
" "
nodes/fragment/5/node = SubResource( 1 )
nodes/fragment/5/position = Vector2( 180, 140 )
nodes/fragment/connections = PackedInt32Array( 5, 0, 0, 0 )
[resource] [resource]
shader = SubResource( 2 ) render_priority = 0
shader_param/BaseColor = Color( 1, 0, 0, 1 ) shader = SubResource("Shader_b630w")
shader_parameter/BaseColor = Color(1, 0, 0, 1)
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
+2 -2
View File
@@ -1,6 +1,6 @@
[gd_scene format=3 uid="uid://demg4xk7vofmg"] [gd_scene format=3]
[ext_resource type="Script" uid="uid://by2coyg8u0u67" path="res://scenes/Main.gd" id="1"] [ext_resource type="Script" path="res://scenes/Main.gd" id="1"]
[ext_resource type="PackedScene" path="res://scenes/UI/background/Background.tscn" id="5"] [ext_resource type="PackedScene" path="res://scenes/UI/background/Background.tscn" id="5"]
[ext_resource type="PackedScene" path="res://scenes/UI/summary/Summary.tscn" id="8"] [ext_resource type="PackedScene" path="res://scenes/UI/summary/Summary.tscn" id="8"]
+1 -1
View File
@@ -1,4 +1,4 @@
[gd_scene load_steps=2 format=3] [gd_scene format=3]
[ext_resource type="Texture2D" path="res://assets/ui/themes/bck.jpg" id="1"] [ext_resource type="Texture2D" path="res://assets/ui/themes/bck.jpg" id="1"]
+1 -1
View File
@@ -1,4 +1,4 @@
[gd_scene load_steps=3 format=3] [gd_scene format=3]
[ext_resource type="Script" path="res://scenes/UI/choose_scenes/ChooseScene.gd" id="1"] [ext_resource type="Script" path="res://scenes/UI/choose_scenes/ChooseScene.gd" id="1"]
+25 -24
View File
@@ -1,25 +1,26 @@
[gd_scene load_steps=10 format=2] [gd_scene format=3]
[ext_resource path="res://assets/fonts/kirsty/kirsty_base.tres" type="FontFile" id=1] [ext_resource type="FontVariation" path="res://assets/fonts/kirsty/kirsty_base.tres" id="1"]
[ext_resource path="res://assets/ui/themes/tab_select/UI-Button-Reset-hover.png" type="Texture2D" id=2] [ext_resource type="Texture2D" path="res://assets/ui/themes/tab_select/UI-Button-Reset-hover.png" id="2"]
[ext_resource path="res://assets/ui/themes/tab_select/UI-Button-Reset-disabled.png" type="Texture2D" id=3] [ext_resource type="Texture2D" path="res://assets/ui/themes/tab_select/UI-Button-Reset-disabled.png" id="3"]
[ext_resource path="res://assets/ui/themes/tab_select/UI-Button-Count-hover.png" type="Texture2D" id=4] [ext_resource type="Texture2D" path="res://assets/ui/themes/tab_select/UI-Button-Count-hover.png" id="4"]
[ext_resource path="res://assets/ui/themes/tab_select/UI-Button-Reset.png" type="Texture2D" id=5] [ext_resource type="Texture2D" path="res://assets/ui/themes/tab_select/UI-Button-Reset.png" id="5"]
[ext_resource path="res://assets/ui/themes/tab_select/UI-Button-Count.png" type="Texture2D" id=6] [ext_resource type="Texture2D" path="res://assets/ui/themes/tab_select/UI-Button-Count.png" id="6"]
[ext_resource path="res://assets/ui/themes/tab_select/UI-level-btn-shadow.png" type="Texture2D" id=7] [ext_resource type="Texture2D" path="res://assets/ui/themes/tab_select/UI-level-btn-shadow.png" id="7"]
[ext_resource path="res://assets/ui/themes/tab_select/UI-level-btn-leather.png" type="Texture2D" id=8] [ext_resource type="Texture2D" path="res://assets/ui/themes/tab_select/UI-level-btn-leather.png" id="8"]
[sub_resource type="Animation" id=1] [sub_resource type="Animation" id="1"]
resource_name = "SlideReset" resource_name = "SlideReset"
tracks/0/type = "bezier" tracks/0/type = "bezier"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("MarginContainer/CenterAlign/MainButton/TabAlign/ButtonReset:position:y") tracks/0/path = NodePath("MarginContainer/CenterAlign/MainButton/TabAlign/ButtonReset:position:y")
tracks/0/interp = 1 tracks/0/interp = 1
tracks/0/loop_wrap = true tracks/0/loop_wrap = true
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/keys = { tracks/0/keys = {
"points": PackedFloat32Array( 0, -0.25, 0, 0.506539, 0.5, -40, -0.236722, -22.5, 0.25, 0 ), "handle_modes": PackedInt32Array(0, 0),
"times": PackedFloat32Array( 0, 1 ) "points": PackedFloat32Array(0, -0.25, 0, 0.506539, 0.5, -40, -0.236722, -22.5, 0.25, 0),
"times": PackedFloat32Array(0, 1)
} }
[node name="TilePuzzle" type="Control"] [node name="TilePuzzle" type="Control"]
@@ -39,7 +40,7 @@ anchor_right = 0.5
offset_left = -114.0 offset_left = -114.0
offset_right = 115.0 offset_right = 115.0
offset_bottom = 456.0 offset_bottom = 456.0
texture = ExtResource( 7 ) texture = ExtResource("7")
__meta__ = { __meta__ = {
"_edit_use_anchors_": false "_edit_use_anchors_": false
} }
@@ -68,7 +69,7 @@ theme_override_constants/separation = 0
offset_right = 209.0 offset_right = 209.0
offset_bottom = 208.0 offset_bottom = 208.0
mouse_default_cursor_shape = 2 mouse_default_cursor_shape = 2
texture_normal = ExtResource( 8 ) texture_normal = ExtResource("8")
__meta__ = { __meta__ = {
"_edit_use_anchors_": false "_edit_use_anchors_": false
} }
@@ -126,9 +127,9 @@ offset_left = 1.0
offset_right = 90.0 offset_right = 90.0
offset_bottom = 57.0 offset_bottom = 57.0
size_flags_vertical = 0 size_flags_vertical = 0
texture_normal = ExtResource( 5 ) texture_normal = ExtResource("5")
texture_hover = ExtResource( 2 ) texture_hover = ExtResource("2")
texture_disabled = ExtResource( 3 ) texture_disabled = ExtResource("3")
[node name="ButtonCount" type="TextureButton" parent="MarginContainer/CenterAlign/MainButton/TabAlign"] [node name="ButtonCount" type="TextureButton" parent="MarginContainer/CenterAlign/MainButton/TabAlign"]
offset_left = 94.0 offset_left = 94.0
@@ -136,9 +137,9 @@ offset_right = 207.0
offset_bottom = 57.0 offset_bottom = 57.0
mouse_default_cursor_shape = 2 mouse_default_cursor_shape = 2
size_flags_vertical = 0 size_flags_vertical = 0
texture_normal = ExtResource( 6 ) texture_normal = ExtResource("6")
texture_hover = ExtResource( 4 ) texture_hover = ExtResource("4")
texture_focused = ExtResource( 4 ) texture_focused = ExtResource("4")
[node name="MarginBottom" type="MarginContainer" parent="MarginContainer/CenterAlign/MainButton/TabAlign/ButtonCount"] [node name="MarginBottom" type="MarginContainer" parent="MarginContainer/CenterAlign/MainButton/TabAlign/ButtonCount"]
anchor_right = 1.0 anchor_right = 1.0
@@ -153,7 +154,7 @@ offset_right = 113.0
offset_bottom = 47.0 offset_bottom = 47.0
size_flags_horizontal = 3 size_flags_horizontal = 3
size_flags_vertical = 7 size_flags_vertical = 7
theme_override_fonts/font = ExtResource( 1 ) theme_override_fonts/font = ExtResource("1")
text = "X / 10" text = "X / 10"
horizontal_alignment = 1 horizontal_alignment = 1
vertical_alignment = 1 vertical_alignment = 1
@@ -162,4 +163,4 @@ __meta__ = {
} }
[node name="AnimationPlayer" type="AnimationPlayer" parent="."] [node name="AnimationPlayer" type="AnimationPlayer" parent="."]
anims/SlideReset = SubResource( 1 ) anims/SlideReset = SubResource("1")
+25 -12
View File
@@ -1,19 +1,32 @@
[gd_scene load_steps=5 format=2] [gd_scene format=3]
[ext_resource path="res://scenes/UI/ending/Ending.gd" type="Script" id=1] [ext_resource type="Script" path="res://scenes/UI/ending/Ending.gd" id="1"]
[ext_resource path="res://assets/sounds/victory.ogg" type="AudioStream" id=2] [ext_resource type="AudioStream" path="res://assets/sounds/victory.ogg" id="2"]
[ext_resource path="res://assets/fonts/MKX Title.ttf" type="FontFile" id=3] [ext_resource type="FontFile" path="res://assets/fonts/MKX Title.ttf" id="3"]
[sub_resource type="FontFile" id=1] [sub_resource type="FontFile" id="1"]
size = 35 fallbacks = Array[Font]([ExtResource("3")])
font_data = ExtResource( 3 ) cache/0/variation_coordinates = {}
cache/0/face_index = 0
cache/0/embolden = 0.0
cache/0/transform = Transform2D(1, 0, 0, 1, 0, 0)
cache/0/spacing_top = 0
cache/0/spacing_bottom = 0
cache/0/spacing_space = 0
cache/0/spacing_glyph = 0
cache/0/baseline_offset = 0.0
cache/0/16/0/ascent = 0.0
cache/0/16/0/descent = 0.0
cache/0/16/0/underline_position = 0.0
cache/0/16/0/underline_thickness = 0.0
cache/0/16/0/scale = 1.0
[node name="CenterContainer" type="CenterContainer"] [node name="CenterContainer" type="CenterContainer"]
anchor_right = 1.0 anchor_right = 1.0
anchor_bottom = 1.0 anchor_bottom = 1.0
size_flags_horizontal = 3 size_flags_horizontal = 3
size_flags_vertical = 3 size_flags_vertical = 3
script = ExtResource( 1 ) script = ExtResource("1")
__meta__ = { __meta__ = {
"_edit_use_anchors_": false "_edit_use_anchors_": false
} }
@@ -27,14 +40,14 @@ grow_horizontal = 0
grow_vertical = 0 grow_vertical = 0
size_flags_horizontal = 3 size_flags_horizontal = 3
size_flags_vertical = 3 size_flags_vertical = 3
color = Color( 0, 0, 0, 1 ) color = Color(0, 0, 0, 1)
[node name="Timer" type="Timer" parent="."] [node name="Timer" type="Timer" parent="."]
wait_time = 4.31 wait_time = 4.31
autostart = true autostart = true
[node name="AudioStreamPlayer" type="AudioStreamPlayer" parent="."] [node name="AudioStreamPlayer" type="AudioStreamPlayer" parent="."]
stream = ExtResource( 2 ) stream = ExtResource("2")
volume_db = -29.411 volume_db = -29.411
[node name="Label" type="Label" parent="."] [node name="Label" type="Label" parent="."]
@@ -42,8 +55,8 @@ offset_left = 477.0
offset_top = 275.0 offset_top = 275.0
offset_right = 802.0 offset_right = 802.0
offset_bottom = 444.0 offset_bottom = 444.0
theme_override_fonts/font = SubResource( 1 ) theme_override_fonts/font = SubResource("1")
theme_override_colors/font_color = Color( 1, 1, 1, 1 ) theme_override_colors/font_color = Color(1, 1, 1, 1)
text = "aHog !!! text = "aHog !!!
+19 -17
View File
@@ -1,30 +1,32 @@
[gd_scene load_steps=5 format=2] [gd_scene format=3]
[ext_resource path="res://scenes/UI/loading/parts/LoadingBare.tscn" type="PackedScene" id=1] [ext_resource type="PackedScene" path="res://scenes/UI/loading/parts/LoadingBare.tscn" id="1"]
[ext_resource path="res://scenes/UI/loading/parts/TopPart.tscn" type="PackedScene" id=2] [ext_resource type="PackedScene" path="res://scenes/UI/loading/parts/TopPart.tscn" id="2"]
[ext_resource path="res://scenes/UI/background/Background.tscn" type="PackedScene" id=3] [ext_resource type="PackedScene" path="res://scenes/UI/background/Background.tscn" id="3"]
[sub_resource type="Animation" id=1] [sub_resource type="Animation" id="1"]
resource_name = "BorderAnim" resource_name = "BorderAnim"
tracks/0/type = "bezier" tracks/0/type = "bezier"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("LoadingTopBorder:position:y") tracks/0/path = NodePath("LoadingTopBorder:position:y")
tracks/0/interp = 1 tracks/0/interp = 1
tracks/0/loop_wrap = true tracks/0/loop_wrap = true
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/keys = { tracks/0/keys = {
"points": PackedFloat32Array( -768, -0.25, 0, 1.01154, 306.838, -160.174, -1.02203, -283.071, 0.439946, 60.9141, -27.6065, -0.45336, -19.562, 0.536352, 17.1993, 0.362091, -0.538766, -0.968613, 0.25, 0 ), "handle_modes": PackedInt32Array(0, 0, 0, 0),
"times": PackedFloat32Array( 0.1, 0.3, 0.6, 0.9 ) "points": PackedFloat32Array(-768, -0.25, 0, 1.01154, 306.838, -160.174, -1.02203, -283.071, 0.439946, 60.9141, -27.6065, -0.45336, -19.562, 0.536352, 17.1993, 0.362091, -0.538766, -0.968613, 0.25, 0),
"times": PackedFloat32Array(0.1, 0.3, 0.6, 0.9)
} }
tracks/1/type = "bezier" tracks/1/type = "bezier"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("LoadingBare:modulate:a") tracks/1/path = NodePath("LoadingBare:modulate:a")
tracks/1/interp = 1 tracks/1/interp = 1
tracks/1/loop_wrap = true tracks/1/loop_wrap = true
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/keys = { tracks/1/keys = {
"points": PackedFloat32Array( 0, -0.25, 0, 1.10651, 0.716757, 1, -1.59408, -0.0328361, 0.25, 0 ), "handle_modes": PackedInt32Array(0, 0),
"times": PackedFloat32Array( 0, 0.4 ) "points": PackedFloat32Array(0, -0.25, 0, 1.10651, 0.716757, 1, -1.59408, -0.0328361, 0.25, 0),
"times": PackedFloat32Array(0, 0.4)
} }
[node name="Control" type="Control"] [node name="Control" type="Control"]
@@ -34,19 +36,19 @@ __meta__ = {
"_edit_use_anchors_": false "_edit_use_anchors_": false
} }
[node name="BackgroundPicture" parent="." instance=ExtResource( 3 )] [node name="BackgroundPicture" parent="." instance=ExtResource("3")]
layout_mode = 1 layout_mode = 1
anchors_preset = 15 anchors_preset = 15
anchor_right = 1.0 anchor_right = 1.0
anchor_bottom = 1.0 anchor_bottom = 1.0
[node name="LoadingTopBorder" parent="." instance=ExtResource( 2 )] [node name="LoadingTopBorder" parent="." instance=ExtResource("2")]
offset_top = 0.362091 offset_top = 0.362091
offset_bottom = 0.362061 offset_bottom = 0.362061
[node name="LoadingBare" parent="." instance=ExtResource( 1 )] [node name="LoadingBare" parent="." instance=ExtResource("1")]
offset_top = 360.0 offset_top = 360.0
[node name="AnimLoading" type="AnimationPlayer" parent="."] [node name="AnimLoading" type="AnimationPlayer" parent="."]
method_call_mode = 1 method_call_mode = 1
anims/BorderAnim = SubResource( 1 ) anims/BorderAnim = SubResource("1")
+3 -3
View File
@@ -1,4 +1,4 @@
[gd_scene format=2] [gd_scene format=3]
[node name="Tile" type="VBoxContainer"] [node name="Tile" type="VBoxContainer"]
anchor_right = 1.0 anchor_right = 1.0
@@ -15,10 +15,10 @@ size_flags_vertical = 3
offset_top = 241.0 offset_top = 241.0
offset_right = 1280.0 offset_right = 1280.0
offset_bottom = 478.0 offset_bottom = 478.0
custom_minimum_size = Vector2( 0, 8 ) custom_minimum_size = Vector2(0, 8)
size_flags_horizontal = 3 size_flags_horizontal = 3
size_flags_vertical = 3 size_flags_vertical = 3
color = Color( 0.74902, 0.701961, 0.65098, 1 ) color = Color(0.74902, 0.701961, 0.65098, 1)
[node name="MarginContainer2" type="MarginContainer" parent="."] [node name="MarginContainer2" type="MarginContainer" parent="."]
offset_top = 482.0 offset_top = 482.0
+6 -6
View File
@@ -1,7 +1,7 @@
[gd_scene load_steps=3 format=2] [gd_scene format=3]
[ext_resource path="res://assets/fonts/kirsty/kirsty_title.tres" type="FontFile" id=1] [ext_resource type="FontVariation" path="res://assets/fonts/kirsty/kirsty_title.tres" id="1"]
[ext_resource path="res://scenes/UI/loading/Loading.gd" type="Script" id=2] [ext_resource type="Script" path="res://scenes/UI/loading/Loading.gd" id="2"]
[node name="VBoxLoading" type="VBoxContainer"] [node name="VBoxLoading" type="VBoxContainer"]
anchor_left = 0.5 anchor_left = 0.5
@@ -16,7 +16,7 @@ size_flags_horizontal = 0
size_flags_vertical = 0 size_flags_vertical = 0
theme_override_constants/separation = 0 theme_override_constants/separation = 0
alignment = 1 alignment = 1
script = ExtResource( 2 ) script = ExtResource("2")
__meta__ = { __meta__ = {
"_edit_use_anchors_": false "_edit_use_anchors_": false
} }
@@ -24,9 +24,9 @@ __meta__ = {
[node name="LabelLoading" type="Label" parent="."] [node name="LabelLoading" type="Label" parent="."]
offset_right = 193.0 offset_right = 193.0
offset_bottom = 56.0 offset_bottom = 56.0
theme_override_fonts/font = ExtResource( 1 ) theme_override_fonts/font = ExtResource("1")
theme_override_font_sizes/font_size = 46 theme_override_font_sizes/font_size = 46
theme_override_colors/font_color = Color( 0.74902, 0.701961, 0.65098, 1 ) theme_override_colors/font_color = Color(0.74902, 0.701961, 0.65098, 1)
text = "loading" text = "loading"
horizontal_alignment = 1 horizontal_alignment = 1
vertical_alignment = 2 vertical_alignment = 2
+3 -3
View File
@@ -1,6 +1,6 @@
[gd_scene load_steps=2 format=2] [gd_scene format=3]
[ext_resource path="res://assets/ui/themes/leather.theme" type="Theme" id=1] [ext_resource type="Theme" path="res://assets/ui/themes/leather.theme" id="1"]
[node name="LoadingBare" type="Control"] [node name="LoadingBare" type="Control"]
anchor_right = 1.0 anchor_right = 1.0
@@ -41,7 +41,7 @@ offset_right = 1037.0
offset_bottom = 237.0 offset_bottom = 237.0
size_flags_horizontal = 3 size_flags_horizontal = 3
size_flags_vertical = 3 size_flags_vertical = 3
theme = ExtResource( 1 ) theme = ExtResource("1")
max_value = 1.0 max_value = 1.0
step = 0.1 step = 0.1
rounded = true rounded = true
+9 -9
View File
@@ -1,8 +1,8 @@
[gd_scene load_steps=4 format=2] [gd_scene format=3]
[ext_resource path="res://scenes/UI/loading/parts/LabelLoading.tscn" type="PackedScene" id=1] [ext_resource type="PackedScene" path="res://scenes/UI/loading/parts/LabelLoading.tscn" id="1"]
[ext_resource path="res://scenes/UI/loading/parts/BorderColor.tscn" type="PackedScene" id=2] [ext_resource type="PackedScene" path="res://scenes/UI/loading/parts/BorderColor.tscn" id="2"]
[ext_resource path="res://assets/ui/themes/bck-hrz-grd.png" type="Texture2D" id=3] [ext_resource type="Texture2D" path="res://assets/ui/themes/bck-hrz-grd.png" id="3"]
[node name="LoadingBorder" type="Control"] [node name="LoadingBorder" type="Control"]
anchor_right = 1.0 anchor_right = 1.0
@@ -28,7 +28,7 @@ offset_right = 1280.0
offset_bottom = 240.0 offset_bottom = 240.0
size_flags_horizontal = 3 size_flags_horizontal = 3
size_flags_vertical = 3 size_flags_vertical = 3
color = Color( 0, 0, 0, 1 ) color = Color(0, 0, 0, 1)
[node name="ColorRect" type="TextureRect" parent="BackgroundGradient"] [node name="ColorRect" type="TextureRect" parent="BackgroundGradient"]
offset_top = 240.0 offset_top = 240.0
@@ -36,7 +36,7 @@ offset_right = 1280.0
offset_bottom = 480.0 offset_bottom = 480.0
size_flags_horizontal = 3 size_flags_horizontal = 3
size_flags_vertical = 3 size_flags_vertical = 3
texture = ExtResource( 3 ) texture = ExtResource("3")
expand_mode = 1 expand_mode = 1
__meta__ = { __meta__ = {
"_edit_use_anchors_": false "_edit_use_anchors_": false
@@ -63,13 +63,13 @@ __meta__ = {
"_edit_use_anchors_": false "_edit_use_anchors_": false
} }
[node name="BorderLeft" parent="LabelAndBorder" instance=ExtResource( 2 )] [node name="BorderLeft" parent="LabelAndBorder" instance=ExtResource("2")]
anchor_right = 0.0 anchor_right = 0.0
anchor_bottom = 0.0 anchor_bottom = 0.0
offset_right = 523.0 offset_right = 523.0
offset_bottom = 60.0 offset_bottom = 60.0
[node name="LabelLoading" parent="LabelAndBorder" instance=ExtResource( 1 )] [node name="LabelLoading" parent="LabelAndBorder" instance=ExtResource("1")]
anchor_left = 0.0 anchor_left = 0.0
anchor_top = 0.0 anchor_top = 0.0
anchor_right = 0.0 anchor_right = 0.0
@@ -79,7 +79,7 @@ offset_top = 0.0
offset_right = 736.0 offset_right = 736.0
offset_bottom = 56.0 offset_bottom = 56.0
[node name="BorderRight" parent="LabelAndBorder" instance=ExtResource( 2 )] [node name="BorderRight" parent="LabelAndBorder" instance=ExtResource("2")]
anchor_right = 0.0 anchor_right = 0.0
anchor_bottom = 0.0 anchor_bottom = 0.0
offset_left = 756.0 offset_left = 756.0
+4 -4
View File
@@ -1,13 +1,13 @@
[gd_scene load_steps=2 format=2] [gd_scene format=3]
[ext_resource path="res://scenes/UI/settings/Settings.gd" type="Script" id=1] [ext_resource type="Script" path="res://scenes/UI/settings/Settings.gd" id="1"]
[node name="Settings" type="CenterContainer"] [node name="Settings" type="CenterContainer"]
anchor_right = 1.0 anchor_right = 1.0
anchor_bottom = 1.0 anchor_bottom = 1.0
offset_left = -1.12244 offset_left = -1.12244
offset_right = -1.12244 offset_right = -1.12244
script = ExtResource( 1 ) script = ExtResource("1")
__meta__ = { __meta__ = {
"_edit_use_anchors_": false "_edit_use_anchors_": false
} }
@@ -45,7 +45,7 @@ focus_mode = 0
auto_height = true auto_height = true
max_columns = 2 max_columns = 2
same_column_width = true same_column_width = true
fixed_icon_size = Vector2( 32, 32 ) fixed_icon_size = Vector2(32, 32)
[node name="HBoxContainer" type="HBoxContainer" parent="VBoxContainer/langue"] [node name="HBoxContainer" type="HBoxContainer" parent="VBoxContainer/langue"]
offset_left = 92.0 offset_left = 92.0
+34 -191
View File
@@ -1,169 +1,13 @@
[gd_scene load_steps=27 format=2] [gd_scene format=3]
[ext_resource path="res://assets/ui/themes/button-summary-hover.jpg" type="Texture2D" id=1] [ext_resource type="Texture2D" path="res://assets/ui/themes/button-summary-hover.jpg" id="1"]
[ext_resource path="res://assets/ui/themes/button-summary.jpg" type="Texture2D" id=2] [ext_resource type="Texture2D" path="res://assets/ui/themes/button-summary.jpg" id="2"]
[ext_resource path="res://assets/fonts/kirsty/kirsty_base.tres" type="FontFile" id=3] [ext_resource type="FontVariation" path="res://assets/fonts/kirsty/kirsty_base.tres" id="3"]
[ext_resource path="res://assets/fonts/kirsty/kirsty_title.tres" type="FontFile" id=4] [ext_resource type="FontVariation" path="res://assets/fonts/kirsty/kirsty_title.tres" id="4"]
[ext_resource path="res://assets/ui/icones/treasure.png" type="Texture2D" id=5] [ext_resource type="Texture2D" path="res://assets/ui/icones/treasure.png" id="5"]
[ext_resource path="res://assets/ui/icones/treasure-hover.png" type="Texture2D" id=7] [ext_resource type="Texture2D" path="res://assets/ui/icones/treasure-hover.png" id="7"]
[ext_resource path="res://assets/ui/themes/bck-vert-grd.png" type="Texture2D" id=8] [ext_resource type="Texture2D" path="res://assets/ui/themes/bck-vert-grd.png" id="8"]
[ext_resource path="res://assets/ui/themes/wood-tile.jpg" type="Texture2D" id=9] [ext_resource type="Texture2D" path="res://assets/ui/themes/wood-tile.jpg" id="9"]
[sub_resource type="VisualShaderNodeVectorOp" id=1]
operator = 3
[sub_resource type="VisualShaderNodeInput" id=2]
input_name = "screen_uv"
[sub_resource type="VisualShaderNodeVectorDecompose" id=3]
output_port_for_preview = 1
[sub_resource type="VisualShaderNodeMix" id=4]
[sub_resource type="VisualShaderNodeColorConstant" id=5]
constant = Color( 0.2, 0.155, 0.11, 1 )
[sub_resource type="VisualShaderNodeColorOp" id=6]
[sub_resource type="VisualShaderNodeMix" id=7]
[sub_resource type="VisualShaderNodeFloatOp" id=8]
default_input_values = [ 0, 0.0, 1, 0.2 ]
operator = 2
[sub_resource type="VisualShaderNodeFloatOp" id=9]
default_input_values = [ 0, 0.0, 1, -1.0 ]
operator = 2
[sub_resource type="VisualShaderNodeInput" id=10]
input_name = "screen_uv"
[sub_resource type="VisualShaderNodeTexture" id=11]
texture = ExtResource( 9 )
texture_type = 1
[sub_resource type="VisualShaderNodeVectorCompose" id=12]
default_input_values = [ 0, 0.0, 1, 0.0, 2, 1.0 ]
[sub_resource type="VisualShaderNodeFloatConstant" id=13]
constant = 0.4
[sub_resource type="VisualShaderNodeVectorDecompose" id=14]
[sub_resource type="VisualShaderNodeFloatOp" id=15]
default_input_values = [ 0, 0.0, 1, 1.6 ]
operator = 3
[sub_resource type="VisualShader" id=16]
code = "shader_type canvas_item;
uniform sampler2D tex_frg_4 : source_color;
void vertex() {
// Output:0
}
void fragment() {
// Input:3
vec3 n_out3p0 = vec3(SCREEN_UV, 0.0);
// Scalar:6
float n_out6p0 = 0.400000;
// VectorOp:11
vec3 n_out11p0 = n_out3p0 / vec3(n_out6p0);
// VectorDecompose:7
float n_out7p0 = n_out11p0.x;
float n_out7p1 = n_out11p0.y;
float n_out7p2 = n_out11p0.z;
// ScalarOp:8
float n_in8p1 = 1.60000;
float n_out8p0 = n_out7p1 / n_in8p1;
// VectorCompose:5
float n_in5p2 = 1.00000;
vec3 n_out5p0 = vec3(n_out7p0, n_out8p0, n_in5p2);
// Texture:4
vec4 tex_frg_4_read = texture(tex_frg_4, n_out5p0.xy);
vec3 n_out4p0 = tex_frg_4_read.rgb;
float n_out4p1 = tex_frg_4_read.a;
// ScalarOp:22
float n_in22p1 = 0.20000;
float n_out22p0 = dot(n_out4p0, vec3(0.333333, 0.333333, 0.333333)) * n_in22p1;
// Color:18
vec3 n_out18p0 = vec3(0.200000, 0.155000, 0.110000);
float n_out18p1 = 1.000000;
// ColorOp:19
vec3 n_out19p0 = vec3(1.0) - (vec3(1.0) - n_out18p0) * (vec3(1.0) - n_out4p0);
// Input:14
vec3 n_out14p0 = vec3(SCREEN_UV, 0.0);
// VectorDecompose:15
float n_out15p0 = n_out14p0.x;
float n_out15p1 = n_out14p0.y;
float n_out15p2 = n_out14p0.z;
// VectorScalarMix:17
vec3 n_out17p0 = mix(n_out4p0, n_out19p0, n_out15p1);
// VectorScalarMix:20
vec3 n_out20p0 = mix(vec3(n_out22p0), n_out17p0, n_out15p1);
// Output:0
COLOR.rgb = n_out20p0;
}
void light() {
// Output:0
}
"
mode = 1
flags/light_only = false
nodes/fragment/0/position = Vector2( 2300, 540 )
nodes/fragment/3/node = SubResource( 10 )
nodes/fragment/3/position = Vector2( -2320, 660 )
nodes/fragment/4/node = SubResource( 11 )
nodes/fragment/4/position = Vector2( 60, 160 )
nodes/fragment/5/node = SubResource( 12 )
nodes/fragment/5/position = Vector2( -580, 720 )
nodes/fragment/6/node = SubResource( 13 )
nodes/fragment/6/position = Vector2( -2300, 800 )
nodes/fragment/7/node = SubResource( 14 )
nodes/fragment/7/position = Vector2( -1480, 700 )
nodes/fragment/8/node = SubResource( 15 )
nodes/fragment/8/position = Vector2( -960, 820 )
nodes/fragment/11/node = SubResource( 1 )
nodes/fragment/11/position = Vector2( -1860, 700 )
nodes/fragment/14/node = SubResource( 2 )
nodes/fragment/14/position = Vector2( 140, 980 )
nodes/fragment/15/node = SubResource( 3 )
nodes/fragment/15/position = Vector2( 580, 960 )
nodes/fragment/17/node = SubResource( 4 )
nodes/fragment/17/position = Vector2( 1240, 560 )
nodes/fragment/18/node = SubResource( 5 )
nodes/fragment/18/position = Vector2( 520, 620 )
nodes/fragment/19/node = SubResource( 6 )
nodes/fragment/19/position = Vector2( 840, 580 )
nodes/fragment/20/node = SubResource( 7 )
nodes/fragment/20/position = Vector2( 1780, 660 )
nodes/fragment/22/node = SubResource( 8 )
nodes/fragment/22/position = Vector2( 1260, 780 )
nodes/fragment/23/node = SubResource( 9 )
nodes/fragment/23/position = Vector2( 1080, 1080 )
[sub_resource type="ShaderMaterial" id=17]
shader = SubResource( 16 )
[node name="Summary" type="HBoxContainer"] [node name="Summary" type="HBoxContainer"]
anchor_bottom = 1.0 anchor_bottom = 1.0
@@ -174,10 +18,9 @@ __meta__ = {
} }
[node name="PanelWood" type="Panel" parent="."] [node name="PanelWood" type="Panel" parent="."]
material = SubResource( 17 )
offset_right = 350.0 offset_right = 350.0
offset_bottom = 1080.0 offset_bottom = 1080.0
custom_minimum_size = Vector2( 350, 0 ) custom_minimum_size = Vector2(350, 0)
size_flags_vertical = 3 size_flags_vertical = 3
[node name="VBoxContainer" type="VBoxContainer" parent="PanelWood"] [node name="VBoxContainer" type="VBoxContainer" parent="PanelWood"]
@@ -205,9 +48,9 @@ offset_bottom = 199.0
mouse_default_cursor_shape = 2 mouse_default_cursor_shape = 2
size_flags_horizontal = 4 size_flags_horizontal = 4
size_flags_vertical = 4 size_flags_vertical = 4
texture_normal = ExtResource( 5 ) texture_normal = ExtResource("5")
texture_hover = ExtResource( 7 ) texture_hover = ExtResource("7")
texture_focused = ExtResource( 7 ) texture_focused = ExtResource("7")
stretch_mode = 3 stretch_mode = 3
[node name="ButtonPuzzle" type="TextureButton" parent="PanelWood/VBoxContainer"] [node name="ButtonPuzzle" type="TextureButton" parent="PanelWood/VBoxContainer"]
@@ -217,9 +60,9 @@ offset_bottom = 378.0
mouse_default_cursor_shape = 2 mouse_default_cursor_shape = 2
size_flags_horizontal = 0 size_flags_horizontal = 0
size_flags_vertical = 0 size_flags_vertical = 0
texture_normal = ExtResource( 2 ) texture_normal = ExtResource("2")
texture_hover = ExtResource( 1 ) texture_hover = ExtResource("1")
texture_focused = ExtResource( 1 ) texture_focused = ExtResource("1")
__meta__ = { __meta__ = {
"_editor_description_": "" "_editor_description_": ""
} }
@@ -233,7 +76,7 @@ offset_left = 0.0
offset_top = 0.0 offset_top = 0.0
offset_right = 0.0 offset_right = 0.0
offset_bottom = 0.0 offset_bottom = 0.0
theme_override_fonts/font = ExtResource( 4 ) theme_override_fonts/font = ExtResource("4")
theme_override_font_sizes/font_size = 46 theme_override_font_sizes/font_size = 46
text = "Puzzles" text = "Puzzles"
horizontal_alignment = 1 horizontal_alignment = 1
@@ -246,9 +89,9 @@ offset_bottom = 485.0
mouse_default_cursor_shape = 2 mouse_default_cursor_shape = 2
size_flags_horizontal = 0 size_flags_horizontal = 0
size_flags_vertical = 0 size_flags_vertical = 0
texture_normal = ExtResource( 2 ) texture_normal = ExtResource("2")
texture_hover = ExtResource( 1 ) texture_hover = ExtResource("1")
texture_focused = ExtResource( 1 ) texture_focused = ExtResource("1")
__meta__ = { __meta__ = {
"_edit_use_anchors_": false "_edit_use_anchors_": false
} }
@@ -260,9 +103,9 @@ anchor_right = 1.0
anchor_bottom = 1.0 anchor_bottom = 1.0
size_flags_horizontal = 7 size_flags_horizontal = 7
size_flags_vertical = 3 size_flags_vertical = 3
theme_override_fonts/font = ExtResource( 4 ) theme_override_fonts/font = ExtResource("4")
theme_override_font_sizes/font_size = 46 theme_override_font_sizes/font_size = 46
theme_override_colors/font_color = Color( 0, 0, 0, 1 ) theme_override_colors/font_color = Color(0, 0, 0, 1)
text = "Paramètres" text = "Paramètres"
horizontal_alignment = 1 horizontal_alignment = 1
vertical_alignment = 1 vertical_alignment = 1
@@ -278,9 +121,9 @@ offset_bottom = 592.0
mouse_default_cursor_shape = 2 mouse_default_cursor_shape = 2
size_flags_horizontal = 0 size_flags_horizontal = 0
size_flags_vertical = 0 size_flags_vertical = 0
texture_normal = ExtResource( 2 ) texture_normal = ExtResource("2")
texture_hover = ExtResource( 1 ) texture_hover = ExtResource("1")
texture_focused = ExtResource( 1 ) texture_focused = ExtResource("1")
__meta__ = { __meta__ = {
"_edit_use_anchors_": false "_edit_use_anchors_": false
} }
@@ -292,9 +135,9 @@ anchor_right = 1.0
anchor_bottom = 1.0 anchor_bottom = 1.0
size_flags_horizontal = 7 size_flags_horizontal = 7
size_flags_vertical = 3 size_flags_vertical = 3
theme_override_fonts/font = ExtResource( 4 ) theme_override_fonts/font = ExtResource("4")
theme_override_font_sizes/font_size = 46 theme_override_font_sizes/font_size = 46
theme_override_colors/font_color = Color( 0, 0, 0, 1 ) theme_override_colors/font_color = Color(0, 0, 0, 1)
text = "Crédits" text = "Crédits"
horizontal_alignment = 1 horizontal_alignment = 1
vertical_alignment = 1 vertical_alignment = 1
@@ -316,8 +159,8 @@ offset_bottom = 1000.0
mouse_default_cursor_shape = 2 mouse_default_cursor_shape = 2
size_flags_horizontal = 0 size_flags_horizontal = 0
size_flags_vertical = 0 size_flags_vertical = 0
texture_normal = ExtResource( 2 ) texture_normal = ExtResource("2")
texture_hover = ExtResource( 1 ) texture_hover = ExtResource("1")
__meta__ = { __meta__ = {
"_editor_description_": "" "_editor_description_": ""
} }
@@ -329,9 +172,9 @@ anchor_right = 1.0
anchor_bottom = 1.0 anchor_bottom = 1.0
size_flags_horizontal = 7 size_flags_horizontal = 7
size_flags_vertical = 3 size_flags_vertical = 3
theme_override_fonts/font = ExtResource( 4 ) theme_override_fonts/font = ExtResource("4")
theme_override_font_sizes/font_size = 46 theme_override_font_sizes/font_size = 46
theme_override_colors/font_color = Color( 0, 0, 0, 1 ) theme_override_colors/font_color = Color(0, 0, 0, 1)
text = "Quit" text = "Quit"
horizontal_alignment = 1 horizontal_alignment = 1
vertical_alignment = 1 vertical_alignment = 1
@@ -355,8 +198,8 @@ offset_left = 287.0
offset_right = 334.0 offset_right = 334.0
offset_bottom = 20.0 offset_bottom = 20.0
size_flags_vertical = 0 size_flags_vertical = 0
theme_override_fonts/font = ExtResource( 3 ) theme_override_fonts/font = ExtResource("3")
theme_override_colors/font_color = Color( 0.741176, 0.478431, 0.372549, 1 ) theme_override_colors/font_color = Color(0.741176, 0.478431, 0.372549, 1)
text = "v 0.0.0" text = "v 0.0.0"
horizontal_alignment = 2 horizontal_alignment = 2
@@ -380,7 +223,7 @@ offset_bottom = 1080.0
clip_contents = true clip_contents = true
size_flags_horizontal = 11 size_flags_horizontal = 11
size_flags_vertical = 3 size_flags_vertical = 3
texture = ExtResource( 8 ) texture = ExtResource("8")
stretch_mode = 1 stretch_mode = 1
__meta__ = { __meta__ = {
"_edit_use_anchors_": false "_edit_use_anchors_": false
+4 -4
View File
@@ -1,11 +1,11 @@
[gd_scene load_steps=2 format=2] [gd_scene format=3]
[ext_resource path="res://assets/ui/themes/game-title.png" type="Texture2D" id=1] [ext_resource type="Texture2D" path="res://assets/ui/themes/game-title.png" id="1"]
[node name="Control" type="CenterContainer"] [node name="Control" type="CenterContainer"]
anchor_right = 1.0 anchor_right = 1.0
anchor_bottom = 1.0 anchor_bottom = 1.0
pivot_offset = Vector2( -656.735, -331.043 ) pivot_offset = Vector2(-656.735, -331.043)
__meta__ = { __meta__ = {
"_edit_use_anchors_": false "_edit_use_anchors_": false
} }
@@ -15,4 +15,4 @@ offset_left = 305.0
offset_top = 282.0 offset_top = 282.0
offset_right = 974.0 offset_right = 974.0
offset_bottom = 438.0 offset_bottom = 438.0
texture = ExtResource( 1 ) texture = ExtResource("1")
+9 -9
View File
@@ -1,19 +1,19 @@
[gd_scene load_steps=5 format=2] [gd_scene format=3]
[ext_resource path="res://scenes/levels/Levels.gd" type="Script" id=1] [ext_resource type="Script" path="res://scenes/levels/Levels.gd" id="1"]
[ext_resource path="res://assets/sounds/ambient-sound-level-warcraft.ogg" type="AudioStream" id=2] [ext_resource type="AudioStream" path="res://assets/sounds/ambient-sound-level-warcraft.ogg" id="2"]
[ext_resource path="res://scenes/levels/parts/Back.tscn" type="PackedScene" id=3] [ext_resource type="PackedScene" path="res://scenes/levels/parts/Back.tscn" id="3"]
[ext_resource path="res://scenes/levels/parts/ListObjects.tscn" type="PackedScene" id=4] [ext_resource type="PackedScene" path="res://scenes/levels/parts/ListObjects.tscn" id="4"]
[node name="Node3D" type="Node3D"] [node name="Node3D" type="Node3D"]
script = ExtResource( 1 ) script = ExtResource("1")
[node name="ListObjects" parent="." instance=ExtResource( 4 )] [node name="ListObjects" parent="." instance=ExtResource("4")]
[node name="Quit" parent="." instance=ExtResource( 3 )] [node name="Quit" parent="." instance=ExtResource("3")]
[node name="AmbientSound" type="AudioStreamPlayer" parent="."] [node name="AmbientSound" type="AudioStreamPlayer" parent="."]
stream = ExtResource( 2 ) stream = ExtResource("2")
volume_db = -15.0 volume_db = -15.0
stream_paused = true stream_paused = true
+19 -20
View File
@@ -1,35 +1,34 @@
[gd_scene load_steps=5 format=2] [gd_scene format=3]
[ext_resource path="res://scenes/levels/Levels.tscn" type="PackedScene" id=1] [ext_resource type="PackedScene" path="res://scenes/levels/Levels.tscn" id="1"]
[ext_resource path="res://assets/hdri/tx_night_place.hdr" type="Texture2D" id=2]
[sub_resource type="Sky" id=1] [sub_resource type="Sky" id="1"]
panorama = ExtResource( 2 )
[sub_resource type="Environment" id=2] [sub_resource type="Environment" id="2"]
background_mode = 2 background_mode = 2
sky = SubResource( 1 ) background_color = Color(0.188235, 0.133333, 0.133333, 1)
background_color = Color( 0.188235, 0.133333, 0.133333, 1 )
background_energy_multiplier = 0.6 background_energy_multiplier = 0.6
ambient_light_color = Color( 0.694118, 0.168627, 0.67451, 1 ) sky = SubResource("1")
ambient_light_energy = 0.4 ambient_light_color = Color(0.694118, 0.168627, 0.67451, 1)
ambient_light_sky_contribution = 0.5 ambient_light_sky_contribution = 0.5
fog_enabled = true ambient_light_energy = 0.4
fog_mode = 1
fog_light_color = Color( 0.562167, 0.29, 1, 0.941176 )
fog_depth_begin = 0.0
fog_depth_end = 60.0
fog_depth_curve = 1.10957
fog_height = 2.0
tonemap_mode = 2 tonemap_mode = 2
ssr_enabled = true ssr_enabled = true
glow_enabled = true glow_enabled = true
fog_enabled = true
fog_mode = 1
fog_light_color = Color(0.562167, 0.29, 1, 0.941176)
fog_density = 1.0
fog_height = 2.0
fog_depth_curve = 1.10957
fog_depth_begin = 0.0
fog_depth_end = 60.0
[node name="Home" instance=ExtResource( 1 )] [node name="Home" instance=ExtResource("1")]
[node name="MainCamera" type="Camera3D" parent="." index="4"] [node name="MainCamera" type="Camera3D" parent="." index="4"]
transform = Transform3D( 0.160708, -0.25632, 0.953138, 0, 0.96569, 0.259696, -0.987002, -0.0417351, 0.155194, 1.84336, 1.66169, 0.663199 ) transform = Transform3D(0.160708, -0.25632, 0.953138, 0, 0.96569, 0.259696, -0.987002, -0.0417351, 0.155194, 1.84336, 1.66169, 0.663199)
environment = SubResource( 2 ) environment = SubResource("2")
fov = 38.5632 fov = 38.5632
__meta__ = { __meta__ = {
"_editor_description_": "" "_editor_description_": ""
+6 -6
View File
@@ -1,7 +1,7 @@
[gd_scene load_steps=3 format=2] [gd_scene format=3]
[ext_resource path="res://assets/ui/themes/UI-Button-Back.png" type="Texture2D" id=1] [ext_resource type="Texture2D" path="res://assets/ui/themes/UI-Button-Back.png" id="1"]
[ext_resource path="res://assets/ui/themes/UI-Button-Back-Overlay.png" type="Texture2D" id=2] [ext_resource type="Texture2D" path="res://assets/ui/themes/UI-Button-Back-Overlay.png" id="2"]
[node name="Control" type="Control"] [node name="Control" type="Control"]
offset_right = 1440.0 offset_right = 1440.0
@@ -14,9 +14,9 @@ __meta__ = {
offset_right = 40.0 offset_right = 40.0
offset_bottom = 40.0 offset_bottom = 40.0
mouse_default_cursor_shape = 2 mouse_default_cursor_shape = 2
texture_normal = ExtResource( 1 ) texture_normal = ExtResource("1")
texture_hover = ExtResource( 2 ) texture_hover = ExtResource("2")
texture_focused = ExtResource( 2 ) texture_focused = ExtResource("2")
__meta__ = { __meta__ = {
"_edit_use_anchors_": false "_edit_use_anchors_": false
} }
+27 -25
View File
@@ -1,34 +1,36 @@
[gd_scene load_steps=8 format=2] [gd_scene format=3]
[ext_resource path="res://assets/ui/themes/leather.theme" type="Theme" id=2] [ext_resource type="Theme" path="res://assets/ui/themes/leather.theme" id="2"]
[ext_resource path="res://assets/fonts/kirsty/kirsty_base.tres" type="FontFile" id=3] [ext_resource type="FontVariation" path="res://assets/fonts/kirsty/kirsty_base.tres" id="3"]
[ext_resource path="res://assets/ui/icones/skull.png" type="Texture2D" id=4] [ext_resource type="Texture2D" path="res://assets/ui/icones/skull.png" id="4"]
[ext_resource path="res://assets/ui/themes/UI-Button-ItemsList-last-hover.png" type="Texture2D" id=6] [ext_resource type="Texture2D" path="res://assets/ui/themes/UI-Button-ItemsList-last-hover.png" id="6"]
[ext_resource path="res://assets/ui/themes/UI-Button-ItemsList-last.png" type="Texture2D" id=8] [ext_resource type="Texture2D" path="res://assets/ui/themes/UI-Button-ItemsList-last.png" id="8"]
[sub_resource type="Animation" id=1] [sub_resource type="Animation" id="1"]
resource_name = "ObjectFind" resource_name = "ObjectFind"
tracks/0/type = "bezier" tracks/0/type = "bezier"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("ListContainer/TextureButtonLast/Label:position:x") tracks/0/path = NodePath("ListContainer/TextureButtonLast/Label:position:x")
tracks/0/interp = 1 tracks/0/interp = 1
tracks/0/loop_wrap = true tracks/0/loop_wrap = true
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/keys = { tracks/0/keys = {
"points": PackedFloat32Array( 0, -0.25, 0, 0, 78.1, 34.9, -0.25, 0, 0, -66, 12.1, 0, 73.2, 0, -124.8, -41.9, -0.0948485, 109.2, 0.0619706, -58.8, 13.3, -0.187989, 93.6, 0.196425, 104.4, 0, -0.154843, -135.5, 0.25, 0 ), "handle_modes": PackedInt32Array(0, 0, 0, 0, 0, 0),
"times": PackedFloat32Array( 0, 0.2, 0.4, 0.6, 0.8, 1 ) "points": PackedFloat32Array(0, -0.25, 0, 0, 78.1, 34.9, -0.25, 0, 0, -66, 12.1, 0, 73.2, 0, -124.8, -41.9, -0.0948485, 109.2, 0.0619706, -58.8, 13.3, -0.187989, 93.6, 0.196425, 104.4, 0, -0.154843, -135.5, 0.25, 0),
"times": PackedFloat32Array(0, 0.2, 0.4, 0.6, 0.8, 1)
} }
[sub_resource type="Animation" id=2] [sub_resource type="Animation" id="2"]
tracks/0/type = "bezier" tracks/0/type = "bezier"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("ListContainer/TextureButtonLast:position:x") tracks/0/path = NodePath("ListContainer/TextureButtonLast:position:x")
tracks/0/interp = 1 tracks/0/interp = 1
tracks/0/loop_wrap = true tracks/0/loop_wrap = true
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/keys = { tracks/0/keys = {
"points": PackedFloat32Array( 0, -0.25, 0, 0.0305311, 190.492, 170, -0.349132, 2.57608, 0.25, 0 ), "handle_modes": PackedInt32Array(0, 0),
"times": PackedFloat32Array( 0, 1 ) "points": PackedFloat32Array(0, -0.25, 0, 0.0305311, 190.492, 170, -0.349132, 2.57608, 0.25, 0),
"times": PackedFloat32Array(0, 1)
} }
[node name="Control" type="MarginContainer"] [node name="Control" type="MarginContainer"]
@@ -49,7 +51,7 @@ __meta__ = {
[node name="ListContainer" type="VBoxContainer" parent="."] [node name="ListContainer" type="VBoxContainer" parent="."]
offset_right = 196.0 offset_right = 196.0
offset_bottom = 900.0 offset_bottom = 900.0
custom_minimum_size = Vector2( 196, 900 ) custom_minimum_size = Vector2(196, 900)
size_flags_horizontal = 3 size_flags_horizontal = 3
size_flags_vertical = 3 size_flags_vertical = 3
theme_override_constants/separation = -14 theme_override_constants/separation = -14
@@ -61,15 +63,15 @@ offset_top = 409.0
offset_right = 196.0 offset_right = 196.0
offset_bottom = 490.0 offset_bottom = 490.0
focus_mode = 0 focus_mode = 0
texture_normal = ExtResource( 8 ) texture_normal = ExtResource("8")
texture_hover = ExtResource( 6 ) texture_hover = ExtResource("6")
texture_focused = ExtResource( 6 ) texture_focused = ExtResource("6")
[node name="Label" type="Label" parent="ListContainer/TextureButtonLast"] [node name="Label" type="Label" parent="ListContainer/TextureButtonLast"]
anchor_right = 1.0 anchor_right = 1.0
anchor_bottom = 1.0 anchor_bottom = 1.0
theme = ExtResource( 2 ) theme = ExtResource("2")
theme_override_fonts/font = ExtResource( 3 ) theme_override_fonts/font = ExtResource("3")
text = "Last" text = "Last"
horizontal_alignment = 1 horizontal_alignment = 1
vertical_alignment = 1 vertical_alignment = 1
@@ -88,8 +90,8 @@ alignment = 1
offset_left = 34.0 offset_left = 34.0
offset_right = 162.0 offset_right = 162.0
offset_bottom = 128.0 offset_bottom = 128.0
texture_normal = ExtResource( 4 ) texture_normal = ExtResource("4")
[node name="AnimationPlayer" type="AnimationPlayer" parent="."] [node name="AnimationPlayer" type="AnimationPlayer" parent="."]
anims/ObjectFind = SubResource( 1 ) anims/ObjectFind = SubResource("1")
anims/ObjectFindAll = SubResource( 2 ) anims/ObjectFindAll = SubResource("2")
+8 -8
View File
@@ -1,15 +1,15 @@
[gd_scene load_steps=4 format=2] [gd_scene format=3]
[ext_resource path="res://assets/ui/themes/UI-Button-ItemsList-first-hover.png" type="Texture2D" id=1] [ext_resource type="Texture2D" path="res://assets/ui/themes/UI-Button-ItemsList-first-hover.png" id="1"]
[ext_resource path="res://assets/fonts/kirsty/kirsty_base.tres" type="FontFile" id=2] [ext_resource type="FontVariation" path="res://assets/fonts/kirsty/kirsty_base.tres" id="2"]
[ext_resource path="res://assets/ui/themes/UI-Button-ItemsList-first.png" type="Texture2D" id=3] [ext_resource type="Texture2D" path="res://assets/ui/themes/UI-Button-ItemsList-first.png" id="3"]
[node name="TextureButton" type="TextureButton"] [node name="TextureButton" type="TextureButton"]
offset_right = 196.0 offset_right = 196.0
offset_bottom = 81.0 offset_bottom = 81.0
texture_normal = ExtResource( 3 ) texture_normal = ExtResource("3")
texture_hover = ExtResource( 1 ) texture_hover = ExtResource("1")
texture_focused = ExtResource( 1 ) texture_focused = ExtResource("1")
__meta__ = { __meta__ = {
"_edit_use_anchors_": false, "_edit_use_anchors_": false,
"_editor_description_": "" "_editor_description_": ""
@@ -19,7 +19,7 @@ __meta__ = {
anchor_right = 1.0 anchor_right = 1.0
anchor_bottom = 1.0 anchor_bottom = 1.0
offset_right = -3.05176e-05 offset_right = -3.05176e-05
theme_override_fonts/font = ExtResource( 2 ) theme_override_fonts/font = ExtResource("2")
text = "First Entry" text = "First Entry"
horizontal_alignment = 1 horizontal_alignment = 1
vertical_alignment = 1 vertical_alignment = 1
+10 -10
View File
@@ -1,16 +1,16 @@
[gd_scene load_steps=5 format=2] [gd_scene format=3]
[ext_resource path="res://assets/ui/themes/leather.theme" type="Theme" id=1] [ext_resource type="Theme" path="res://assets/ui/themes/leather.theme" id="1"]
[ext_resource path="res://assets/fonts/kirsty/kirsty_base.tres" type="FontFile" id=2] [ext_resource type="FontVariation" path="res://assets/fonts/kirsty/kirsty_base.tres" id="2"]
[ext_resource path="res://assets/ui/themes/UI-Button-ItemsList-last-hover.png" type="Texture2D" id=3] [ext_resource type="Texture2D" path="res://assets/ui/themes/UI-Button-ItemsList-last-hover.png" id="3"]
[ext_resource path="res://assets/ui/themes/UI-Button-ItemsList-last.png" type="Texture2D" id=4] [ext_resource type="Texture2D" path="res://assets/ui/themes/UI-Button-ItemsList-last.png" id="4"]
[node name="TextureButton" type="TextureButton"] [node name="TextureButton" type="TextureButton"]
offset_right = 196.0 offset_right = 196.0
offset_bottom = 81.0 offset_bottom = 81.0
texture_normal = ExtResource( 4 ) texture_normal = ExtResource("4")
texture_hover = ExtResource( 3 ) texture_hover = ExtResource("3")
texture_focused = ExtResource( 3 ) texture_focused = ExtResource("3")
__meta__ = { __meta__ = {
"_edit_use_anchors_": false, "_edit_use_anchors_": false,
"_editor_description_": "" "_editor_description_": ""
@@ -19,8 +19,8 @@ __meta__ = {
[node name="Label" type="Label" parent="."] [node name="Label" type="Label" parent="."]
anchor_right = 1.0 anchor_right = 1.0
anchor_bottom = 1.0 anchor_bottom = 1.0
theme = ExtResource( 1 ) theme = ExtResource("1")
theme_override_fonts/font = ExtResource( 2 ) theme_override_fonts/font = ExtResource("2")
text = "Last" text = "Last"
horizontal_alignment = 1 horizontal_alignment = 1
vertical_alignment = 1 vertical_alignment = 1
+8 -8
View File
@@ -1,15 +1,15 @@
[gd_scene load_steps=4 format=2] [gd_scene format=3]
[ext_resource path="res://assets/fonts/kirsty/kirsty_base.tres" type="FontFile" id=1] [ext_resource type="FontVariation" path="res://assets/fonts/kirsty/kirsty_base.tres" id="1"]
[ext_resource path="res://assets/ui/themes/UI-Button-ItemsList.png" type="Texture2D" id=2] [ext_resource type="Texture2D" path="res://assets/ui/themes/UI-Button-ItemsList.png" id="2"]
[ext_resource path="res://assets/ui/themes/UI-Button-ItemsList-hover.png" type="Texture2D" id=3] [ext_resource type="Texture2D" path="res://assets/ui/themes/UI-Button-ItemsList-hover.png" id="3"]
[node name="TextureButton" type="TextureButton"] [node name="TextureButton" type="TextureButton"]
offset_right = 196.0 offset_right = 196.0
offset_bottom = 81.0 offset_bottom = 81.0
texture_normal = ExtResource( 2 ) texture_normal = ExtResource("2")
texture_hover = ExtResource( 3 ) texture_hover = ExtResource("3")
texture_focused = ExtResource( 3 ) texture_focused = ExtResource("3")
__meta__ = { __meta__ = {
"_edit_use_anchors_": false, "_edit_use_anchors_": false,
"_editor_description_": "" "_editor_description_": ""
@@ -18,7 +18,7 @@ __meta__ = {
[node name="Label" type="Label" parent="."] [node name="Label" type="Label" parent="."]
anchor_right = 1.0 anchor_right = 1.0
anchor_bottom = 1.0 anchor_bottom = 1.0
theme_override_fonts/font = ExtResource( 1 ) theme_override_fonts/font = ExtResource("1")
text = "Middle" text = "Middle"
horizontal_alignment = 1 horizontal_alignment = 1
vertical_alignment = 1 vertical_alignment = 1
File diff suppressed because one or more lines are too long
+57
View File
@@ -0,0 +1,57 @@
@tool
extends SceneTree
# Replace every VisualShader in the project with a plain Shader carrying the
# same compiled code. Godot 4 spams "graph_offset deprecated" and "p_from_port
# out of bounds" warnings every time it reconstructs a Godot-3 VisualShader
# graph; converting to plain Shader bypasses the graph reconstruction entirely.
func _init() -> void:
var fixed := 0
for path in _walk("res://"):
if not (path.ends_with(".material") or path.ends_with(".tres") or path.ends_with(".mesh")):
continue
var res = ResourceLoader.load(path, "", ResourceLoader.CACHE_MODE_IGNORE)
if res == null:
continue
var dirty := false
if res is ShaderMaterial and res.shader is VisualShader:
res.shader = _to_plain(res.shader)
dirty = true
if res is ArrayMesh:
for i in range(res.get_surface_count()):
var m = res.surface_get_material(i)
if m is ShaderMaterial and m.shader is VisualShader:
m.shader = _to_plain(m.shader)
res.surface_set_material(i, m)
dirty = true
if dirty:
if ResourceSaver.save(res, path) == OK:
fixed += 1
print("FIXED ", path)
else:
push_error("Failed to save " + path)
print("Done. fixed=", fixed)
quit()
func _to_plain(vs: VisualShader) -> Shader:
var plain := Shader.new()
plain.code = vs.code
return plain
func _walk(p: String) -> Array:
var out := []
var d = DirAccess.open(p)
if d == null: return out
d.list_dir_begin()
var n = d.get_next()
while n != "":
if n != "." and n != ".." and n != "android" and not n.begins_with("."):
var sub = p if p.ends_with("/") else (p + "/")
sub += n
if d.current_is_dir():
out.append_array(_walk(sub))
else:
out.append(sub)
n = d.get_next()
return out
+1
View File
@@ -0,0 +1 @@
uid://cr456dqaoxcfh
+39
View File
@@ -0,0 +1,39 @@
@tool
extends SceneTree
func _init() -> void:
for path in _walk("res://"):
if path.ends_with(".material") or path.ends_with(".tres") or path.ends_with(".mesh"):
var res = ResourceLoader.load(path, "", ResourceLoader.CACHE_MODE_IGNORE)
_check(res, path)
quit()
func _check(res, path: String) -> void:
if res == null: return
if res is ShaderMaterial:
if res.shader is VisualShader:
print("VS: ", path)
elif res.shader is Shader:
pass
if res is ArrayMesh:
for i in range(res.get_surface_count()):
var m = res.surface_get_material(i)
if m is ShaderMaterial and m.shader is VisualShader:
print("VS-embed: ", path, " surf=", i)
func _walk(p: String) -> Array:
var out := []
var d = DirAccess.open(p)
if d == null: return out
d.list_dir_begin()
var n = d.get_next()
while n != "":
if n != "." and n != ".." and n != "android" and not n.begins_with("."):
var sub = p if p.ends_with("/") else (p + "/")
sub += n
if d.current_is_dir():
out.append_array(_walk(sub))
else:
out.append(sub)
n = d.get_next()
return out
+1
View File
@@ -0,0 +1 @@
uid://br08uppmwhvjg
+30
View File
@@ -0,0 +1,30 @@
@tool
extends SceneTree
# Load and re-save every .tscn so embedded sub-resources (inline ArrayMesh,
# etc.) are rewritten in the current Godot 4 format.
func _init() -> void:
for path in _find("res://scenes", ".tscn"):
var res = ResourceLoader.load(path, "", ResourceLoader.CACHE_MODE_IGNORE)
if res is PackedScene:
if ResourceSaver.save(res, path) == OK:
print("RESAVED ", path)
quit()
func _find(dir_path: String, ext: String) -> Array:
var result := []
var dir = DirAccess.open(dir_path)
if dir == null:
return result
dir.list_dir_begin()
var name = dir.get_next()
while name != "":
if name != "." and name != "..":
var sub = dir_path + "/" + name
if dir.current_is_dir():
result.append_array(_find(sub, ext))
elif name.ends_with(ext):
result.append(sub)
name = dir.get_next()
return result
+1
View File
@@ -0,0 +1 @@
uid://lnln55ich8ac