diff --git a/assets/characters/npc.tscn b/assets/characters/npc.tscn index a78f45b..4bfe66a 100644 --- a/assets/characters/npc.tscn +++ b/assets/characters/npc.tscn @@ -5,7 +5,7 @@ [ext_resource type="Script" path="res://src/spine_sprite.gd" id="5_f351d"] [ext_resource type="SpineSkeletonFileResource" uid="uid://dy0llktw1x7i6" path="res://assets/characters/pasadena/spine.skel" id="5_k5je5"] -[sub_resource type="ViewportTexture" id="ViewportTexture_6ixgq"] +[sub_resource type="ViewportTexture" id="ViewportTexture_5dikh"] viewport_path = NodePath("MeshInstance3D/SubViewport") [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_a31vv"] @@ -16,7 +16,7 @@ diffuse_mode = 3 specular_mode = 1 disable_fog = true vertex_color_use_as_albedo = true -albedo_texture = SubResource("ViewportTexture_6ixgq") +albedo_texture = SubResource("ViewportTexture_5dikh") billboard_mode = 1 [sub_resource type="QuadMesh" id="QuadMesh_iwcmf"] @@ -44,6 +44,7 @@ axis_lock_angular_z = true [node name="MeshInstance3D" type="MeshInstance3D" parent="."] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.1, 0) +layers = 4 material_override = SubResource("StandardMaterial3D_a31vv") cast_shadow = 0 gi_mode = 0 diff --git a/assets/characters/player.tscn b/assets/characters/player.tscn index 1002359..8e22620 100644 --- a/assets/characters/player.tscn +++ b/assets/characters/player.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=11 format=3 uid="uid://b2maarsg7u3po"] +[gd_scene load_steps=12 format=3 uid="uid://b2maarsg7u3po"] [ext_resource type="Script" path="res://assets/characters/player.gd" id="1_fwkda"] [ext_resource type="Script" path="res://src/viewport.gd" id="2_0d00w"] @@ -6,12 +6,16 @@ [ext_resource type="Script" path="res://src/camera_3d.gd" id="2_cjtsr"] [ext_resource type="Script" path="res://src/spine_sprite.gd" id="4_bwb5d"] -[sub_resource type="ViewportTexture" id="ViewportTexture_d2fqw"] +[sub_resource type="ViewportTexture" id="ViewportTexture_472lm"] viewport_path = NodePath("MeshInstance3D/SubViewport") +[sub_resource type="ShaderMaterial" id="ShaderMaterial_5xxpu"] + [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_a31vv"] +next_pass = SubResource("ShaderMaterial_5xxpu") transparency = 1 -albedo_texture = SubResource("ViewportTexture_d2fqw") +diffuse_mode = 3 +albedo_texture = SubResource("ViewportTexture_472lm") [sub_resource type="QuadMesh" id="QuadMesh_iwcmf"] @@ -30,12 +34,13 @@ script = ExtResource("1_fwkda") transform = Transform3D(0.999987, -0.00490892, -0.00171441, 0.00514322, 0.982274, 0.187381, 0.000764184, -0.187388, 0.982286, -0.015, 1.154, 5.342) current = true fov = 19.0 -size = 2.0 +size = 1.5 far = 1000.0 script = ExtResource("2_cjtsr") [node name="MeshInstance3D" type="MeshInstance3D" parent="."] transform = Transform3D(0.999996, 0.0005929, -0.00274461, 0, 0.977453, 0.211152, 0.00280793, -0.211152, 0.977449, 0, 0, 0) +layers = 2 material_override = SubResource("StandardMaterial3D_a31vv") cast_shadow = 0 mesh = SubResource("QuadMesh_iwcmf") diff --git a/assets/characters/player_outline.gdshader b/assets/characters/player_outline.gdshader index 1b70f10..8c3dd30 100644 --- a/assets/characters/player_outline.gdshader +++ b/assets/characters/player_outline.gdshader @@ -33,29 +33,29 @@ void fragment() { gradient_to_edge = gradient_to_edge * Distortion; gradient_to_edge = 1.0 - gradient_to_edge; vec2 rotaded_uv = rotate_uv(UV, vec2(0.5, 0.5), Rotation_deg, true); - + float remapped_position; { float output_range = Position_Max - Position_Min; remapped_position = Position_Min + output_range * Position; } - + float remapped_time = TIME * Speed + remapped_position; remapped_time = fract(remapped_time); { remapped_time = -2.0 + 4.0 * remapped_time; } - + vec2 offset_uv = vec2(rotaded_uv.xy) + vec2(remapped_time, 0.0); float line = vec3(offset_uv, 0.0).x; line = abs(line); line = gradient_to_edge * line; line = sqrt(line); - + float line_smoothness = clamp(Line_Smoothness, 0.001, 1.0); float offset_plus = Line_Width + line_smoothness; float offset_minus = Line_Width - line_smoothness; - + float remapped_line; { float input_range = offset_minus - offset_plus; @@ -63,7 +63,7 @@ void fragment() { } remapped_line *= Brightness; remapped_line = min(remapped_line, Alpha); - + vec4 surface_tex = texture(surface, UV); COLOR.rgba *= vec4(remapped_line) * surface_tex.a; } \ No newline at end of file diff --git a/assets/levels/level1.tscn b/assets/levels/level1.tscn index f3724a4..610e02f 100644 --- a/assets/levels/level1.tscn +++ b/assets/levels/level1.tscn @@ -1,27 +1,21 @@ -[gd_scene load_steps=21 format=3 uid="uid://b2b0sgltiefki"] +[gd_scene load_steps=22 format=3 uid="uid://b2b0sgltiefki"] [ext_resource type="Script" path="res://assets/levels/level_1.gd" id="1_4n7jv"] [ext_resource type="Texture2D" uid="uid://h04a4ju855bp" path="res://assets/objects/kenney_prototype-textures/PNG/Dark/texture_02.png" id="1_xris1"] [ext_resource type="PackedScene" uid="uid://hylwpibwtg0c" path="res://assets/objects/box/box.tscn" id="2_8p87y"] [ext_resource type="PackedScene" uid="uid://s1ftlvvluili" path="res://assets/objects/box_small/box_small.tscn" id="2_ml88v"] [ext_resource type="PackedScene" uid="uid://bs6cfck1f4yp5" path="res://assets/objects/transition.tscn" id="5_if8du"] +[ext_resource type="PackedScene" uid="uid://b2hrbmuimfxj8" path="res://assets/levels/level2.tscn" id="6_cjkey"] [ext_resource type="Script" path="res://src/viewport.gd" id="6_uuo0x"] [ext_resource type="Texture2D" uid="uid://x60cxv42nmsa" path="res://assets/bubbles.png" id="7_el3mb"] +[ext_resource type="PackedScene" uid="uid://bh6be020myw3t" path="res://assets/levels/level3.tscn" id="7_n0sps"] [ext_resource type="Shader" path="res://assets/levels/test.gdshader" id="8_68tud"] [ext_resource type="PackedScene" uid="uid://cbfoxxoamehgg" path="res://assets/characters/npc.tscn" id="9_kit50"] - -[sub_resource type="ProceduralSkyMaterial" id="ProceduralSkyMaterial_ulx7c"] -sky_top_color = Color(0.129, 0.129, 0.129, 1) -sky_horizon_color = Color(0.129, 0.129, 0.129, 1) -ground_bottom_color = Color(0.129, 0.129, 0.129, 1) -ground_horizon_color = Color(0.129, 0.129, 0.129, 1) - -[sub_resource type="Sky" id="Sky_rnwem"] -sky_material = SubResource("ProceduralSkyMaterial_ulx7c") +[ext_resource type="PackedScene" uid="uid://ck73aacpkronl" path="res://assets/objects/wall/wall.tscn" id="10_dy0n7"] [sub_resource type="Environment" id="Environment_06i34"] background_mode = 2 -sky = SubResource("Sky_rnwem") +sky_custom_fov = 1.5 tonemap_mode = 2 [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_er7pi"] @@ -36,14 +30,14 @@ size = Vector2(10, 5) [sub_resource type="ConcavePolygonShape3D" id="ConcavePolygonShape3D_flcen"] data = PackedVector3Array(5, 0, 5, -5, 0, 5, 5, 0, -5, -5, 0, 5, -5, 0, -5, 5, 0, -5) -[sub_resource type="ViewportTexture" id="ViewportTexture_puele"] +[sub_resource type="ViewportTexture" id="ViewportTexture_udj7f"] viewport_path = NodePath("MeshInstance3D/SubViewport") [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_mdr1l"] transparency = 2 alpha_scissor_threshold = 0.5 alpha_antialiasing_mode = 0 -albedo_texture = SubResource("ViewportTexture_puele") +albedo_texture = SubResource("ViewportTexture_udj7f") [sub_resource type="ShaderMaterial" id="ShaderMaterial_lrfyr"] @@ -67,8 +61,12 @@ environment = SubResource("Environment_06i34") [node name="DirectionalLight3D" type="DirectionalLight3D" parent="."] transform = Transform3D(0.990369, 0.119902, -0.0692252, 0, 0.499998, 0.866027, 0.138451, -0.857686, 0.495183, 0, 3.47491, 2.77581) -light_energy = 0.454 -shadow_enabled = true +layers = 0 +light_cull_mask = 4293918720 +shadow_reverse_cull_face = true +shadow_opacity = 0.0 +shadow_blur = 0.0 +directional_shadow_mode = 0 directional_shadow_max_distance = 54.0 [node name="Floor" type="MeshInstance3D" parent="."] @@ -88,7 +86,12 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.31663, 0.5, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.61149, 0.132777, -0.890927) [node name="Transition" parent="." instance=ExtResource("5_if8du")] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -3, 0.0325054, 1) +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -5, 0.0325054, 0) +to_ = ExtResource("7_n0sps") + +[node name="Transition2" parent="." instance=ExtResource("5_if8du")] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 4.51772, 0.0276638, 0.00178146) +to_ = ExtResource("6_cjkey") [node name="CanvasLayer" type="CanvasLayer" parent="."] @@ -103,9 +106,21 @@ script = ExtResource("6_uuo0x") [node name="SubViewport" type="SubViewport" parent="MeshInstance3D"] [node name="ColorRect" type="ColorRect" parent="MeshInstance3D/SubViewport"] +light_mask = 0 material = SubResource("ShaderMaterial_d4amb") offset_right = 512.0 offset_bottom = 512.0 [node name="NPC" parent="." instance=ExtResource("9_kit50")] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.565993, 0.48192, -0.421152) + +[node name="Wall" parent="." instance=ExtResource("10_dy0n7")] +transform = Transform3D(-7.52286e-09, 0, 1, 0, 1, 0, -0.172103, 0, -4.37114e-08, -2, 0, -2) + +[node name="DirectionalLight3D2" type="DirectionalLight3D" parent="."] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -4, 1, 0) +visible = false +layers = 0 +light_energy = 0.831 +light_bake_mode = 0 +light_cull_mask = 4294443008 diff --git a/assets/levels/level2.tscn b/assets/levels/level2.tscn index 54facea..aa19892 100644 --- a/assets/levels/level2.tscn +++ b/assets/levels/level2.tscn @@ -1,7 +1,9 @@ -[gd_scene load_steps=9 format=3 uid="uid://b2hrbmuimfxj8"] +[gd_scene load_steps=11 format=3 uid="uid://b2hrbmuimfxj8"] [ext_resource type="Texture2D" uid="uid://h04a4ju855bp" path="res://assets/objects/kenney_prototype-textures/PNG/Dark/texture_02.png" id="1_54j28"] [ext_resource type="PackedScene" uid="uid://hylwpibwtg0c" path="res://assets/objects/box/box.tscn" id="2_owuk1"] +[ext_resource type="PackedScene" uid="uid://bs6cfck1f4yp5" path="res://assets/objects/transition.tscn" id="3_p5ecg"] +[ext_resource type="PackedScene" uid="uid://b2b0sgltiefki" path="res://assets/levels/level1.tscn" id="4_sk633"] [sub_resource type="ProceduralSkyMaterial" id="ProceduralSkyMaterial_tp8ku"] sky_top_color = Color(0.129, 0.129, 0.129, 1) @@ -55,4 +57,8 @@ shape = SubResource("ConcavePolygonShape3D_w1gda") transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.00805, 0.25778, -0.993837) [node name="Box2" parent="." instance=ExtResource("2_owuk1")] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.447608, 0.258858, -0.51353) +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.447608, 0.258858, -2.72201) + +[node name="Transition" parent="." instance=ExtResource("3_p5ecg")] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 3.55105, 0.0474857, -0.0136185) +to_ = ExtResource("4_sk633") diff --git a/assets/levels/level3.tscn b/assets/levels/level3.tscn new file mode 100644 index 0000000..c87ca67 --- /dev/null +++ b/assets/levels/level3.tscn @@ -0,0 +1,64 @@ +[gd_scene load_steps=11 format=3 uid="uid://bh6be020myw3t"] + +[ext_resource type="Texture2D" uid="uid://h04a4ju855bp" path="res://assets/objects/kenney_prototype-textures/PNG/Dark/texture_02.png" id="1_trws4"] +[ext_resource type="PackedScene" uid="uid://hylwpibwtg0c" path="res://assets/objects/box/box.tscn" id="2_fn56u"] +[ext_resource type="PackedScene" uid="uid://bs6cfck1f4yp5" path="res://assets/objects/transition.tscn" id="3_36sk0"] +[ext_resource type="PackedScene" uid="uid://b2b0sgltiefki" path="res://assets/levels/level1.tscn" id="4_7w3pv"] + +[sub_resource type="ProceduralSkyMaterial" id="ProceduralSkyMaterial_tp8ku"] +sky_top_color = Color(0.129, 0.129, 0.129, 1) +sky_horizon_color = Color(0.129, 0.129, 0.129, 1) +ground_bottom_color = Color(0.129, 0.129, 0.129, 1) +ground_horizon_color = Color(0.129, 0.129, 0.129, 1) + +[sub_resource type="Sky" id="Sky_shl8g"] +sky_material = SubResource("ProceduralSkyMaterial_tp8ku") + +[sub_resource type="Environment" id="Environment_d3cpo"] +background_mode = 2 +sky = SubResource("Sky_shl8g") +tonemap_mode = 2 + +[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_t7r8y"] +albedo_texture = ExtResource("1_trws4") +uv1_triplanar = true + +[sub_resource type="PlaneMesh" id="PlaneMesh_ka7wb"] +lightmap_size_hint = Vector2i(52, 52) +material = SubResource("StandardMaterial3D_t7r8y") +size = Vector2(50, 50) + +[sub_resource type="ConcavePolygonShape3D" id="ConcavePolygonShape3D_w1gda"] +data = PackedVector3Array(5, 0, 5, -5, 0, 5, 5, 0, -5, -5, 0, 5, -5, 0, -5, 5, 0, -5) + +[node name="Level" type="Node3D"] + +[node name="WorldEnvironment" type="WorldEnvironment" parent="."] +environment = SubResource("Environment_d3cpo") + +[node name="DirectionalLight3D" type="DirectionalLight3D" parent="."] +transform = Transform3D(0.990369, 0.119902, -0.0692252, 0, 0.499998, 0.866027, 0.138451, -0.857686, 0.495183, 0, 3.47491, 2.77581) +light_energy = 0.454 +shadow_enabled = true +directional_shadow_max_distance = 54.0 + +[node name="Floor" type="MeshInstance3D" parent="."] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.00175023, -5.96046e-08, 0.00229335) +mesh = SubResource("PlaneMesh_ka7wb") +skeleton = NodePath("../DirectionalLight3D") + +[node name="StaticBody3D" type="StaticBody3D" parent="Floor"] + +[node name="CollisionShape3D" type="CollisionShape3D" parent="Floor/StaticBody3D"] +transform = Transform3D(5, 0, 0, 0, 5, 0, 0, 0, 5, 0, 0, 0) +shape = SubResource("ConcavePolygonShape3D_w1gda") + +[node name="Box" parent="." instance=ExtResource("2_fn56u")] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.00805, 0.25778, -1.99384) + +[node name="Box2" parent="." instance=ExtResource("2_fn56u")] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -3.88343, 0.258858, -3.32785) + +[node name="Transition" parent="." instance=ExtResource("3_36sk0")] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -5.76062, 0.0104516, -0.702033) +to_ = ExtResource("4_7w3pv") diff --git a/assets/main.tscn b/assets/main.tscn index a1c7ade..38aeb1a 100644 --- a/assets/main.tscn +++ b/assets/main.tscn @@ -32,5 +32,3 @@ script = ExtResource("6_xklu3") [node name="CameraManager" type="Node" parent="."] script = ExtResource("7_i2npv") - -[node name="MainCamera" type="Camera3D" parent="CameraManager"] diff --git a/assets/objects/box/box.tscn b/assets/objects/box/box.tscn index 88ca939..1e9f2e5 100644 --- a/assets/objects/box/box.tscn +++ b/assets/objects/box/box.tscn @@ -21,4 +21,5 @@ shape = SubResource("BoxShape3D_w7cyf") [node name="MeshInstance3D" type="MeshInstance3D" parent="StaticBody3D"] transform = Transform3D(0.5, 0, 0, 0, 0.5, 0, 0, 0, 0.5, 0, 0, 0) +layers = 524288 mesh = SubResource("BoxMesh_u56mx") diff --git a/assets/objects/transition.gd b/assets/objects/transition.gd index 7b675fe..8021819 100644 --- a/assets/objects/transition.gd +++ b/assets/objects/transition.gd @@ -1,17 +1,17 @@ extends Node3D -@export var to_: Node = null; +@export var to_: Resource = null -# Called when the node enters the scene tree for the first time. func _ready() -> void: - pass # Replace with function body. + pass - -# Called every frame. 'delta' is the elapsed time since the previous frame. func _process(delta: float) -> void: pass - func _on_area_3d_area_entered(area: Area3D) -> void: - #emit_signal() - pass + if "Player" in area.get_groups(): + print("Player stepped on transition to " + str(to_)) + if not to_: + print_debug("No scene specified in transition" + str(self)) + print(to_) + Messagebus.CHANGE_SCENE.emit(to_) diff --git a/assets/objects/wall/wall.tscn b/assets/objects/wall/wall.tscn new file mode 100644 index 0000000..2bd27df --- /dev/null +++ b/assets/objects/wall/wall.tscn @@ -0,0 +1,1232 @@ +[gd_scene load_steps=123 format=3 uid="uid://ck73aacpkronl"] + +[ext_resource type="Script" path="res://addons/cyclops_level_builder/nodes/cyclops_block.gd" id="1_75fxy"] +[ext_resource type="Script" path="res://addons/cyclops_level_builder/resources/data_vector_byte.gd" id="2_h5xn7"] +[ext_resource type="Script" path="res://addons/cyclops_level_builder/resources/data_vector_int.gd" id="3_aaen4"] +[ext_resource type="Script" path="res://addons/cyclops_level_builder/resources/data_vector_float.gd" id="4_htcj8"] +[ext_resource type="Script" path="res://addons/cyclops_level_builder/resources/mesh_vector_data.gd" id="5_26lc5"] + +[sub_resource type="Resource" id="Resource_oiybb"] +script = ExtResource("2_h5xn7") +data = PackedByteArray(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0) +name = &"selected" +category = "" +data_type = 0 +stride = 1 + +[sub_resource type="Resource" id="Resource_ytokv"] +script = ExtResource("3_aaen4") +data = PackedInt32Array(-1, -1, -1, -1, -1, -1) +name = &"material_index" +category = "" +data_type = 1 +stride = 1 + +[sub_resource type="Resource" id="Resource_5eqde"] +script = ExtResource("2_h5xn7") +data = PackedByteArray(1, 1, 1, 1, 1, 1) +name = &"visible" +category = "" +data_type = 0 +stride = 1 + +[sub_resource type="Resource" id="Resource_ujvg5"] +script = ExtResource("4_htcj8") +data = PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1) +name = &"color" +category = "" +data_type = 4 +stride = 4 + +[sub_resource type="Resource" id="Resource_isd4t"] +script = ExtResource("4_htcj8") +data = PackedFloat32Array(1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0) +name = &"uv_transform" +category = "" +data_type = 8 +stride = 6 + +[sub_resource type="Resource" id="Resource_ctuuw"] +script = ExtResource("2_h5xn7") +data = PackedByteArray(0, 0, 0, 0, 0, 0) +name = &"selected" +category = "" +data_type = 0 +stride = 1 + +[sub_resource type="Resource" id="Resource_b6ux6"] +script = ExtResource("3_aaen4") +data = PackedInt32Array(0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5) +name = &"face_index" +category = "" +data_type = 1 +stride = 1 + +[sub_resource type="Resource" id="Resource_fguet"] +script = ExtResource("3_aaen4") +data = PackedInt32Array(0, 1, 2, 3, 7, 6, 5, 4, 1, 0, 4, 5, 2, 1, 5, 6, 3, 2, 6, 7, 0, 3, 7, 4) +name = &"vertex_index" +category = "" +data_type = 1 +stride = 1 + +[sub_resource type="Resource" id="Resource_1ljwf"] +script = ExtResource("4_htcj8") +data = PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1) +name = &"color" +category = "" +data_type = 4 +stride = 4 + +[sub_resource type="Resource" id="Resource_tvqgt"] +script = ExtResource("4_htcj8") +data = PackedFloat32Array(-1, 0, 0, -1, 0, 0, -1, 0, 0, -1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, -1, 0, 0, -1, 0, 0, -1, 0, 0, -1, 0, 0, 0, -1, 0, 0, -1, 0, 0, -1, 0, 0, -1) +name = &"normal" +category = "" +data_type = 6 +stride = 3 + +[sub_resource type="Resource" id="Resource_8gl8n"] +script = ExtResource("4_htcj8") +data = PackedFloat32Array(0, 1, 0, 0, 1, 1, 0, 0, 1, 0, 0, 0, 1, 1, 0, 1, 1, 1, 1, 0, 1, 1, 0, 0) +name = &"position" +category = "" +data_type = 6 +stride = 3 + +[sub_resource type="Resource" id="Resource_6cmhk"] +script = ExtResource("2_h5xn7") +data = PackedByteArray(0, 0, 0, 0, 0, 0, 0, 0) +name = &"selected" +category = "" +data_type = 0 +stride = 1 + +[sub_resource type="Resource" id="Resource_ubfna"] +script = ExtResource("5_26lc5") +num_vertices = 8 +num_edges = 12 +num_faces = 6 +num_face_vertices = 24 +active_vertex = -1 +active_edge = -1 +active_face = -1 +active_face_vertex = -1 +edge_vertex_indices = PackedInt32Array(0, 1, 1, 2, 2, 3, 3, 0, 7, 6, 6, 5, 5, 4, 4, 7, 0, 4, 5, 1, 6, 2, 7, 3) +edge_face_indices = PackedInt32Array(0, 2, 0, 3, 0, 4, 0, 5, 1, 4, 1, 3, 1, 2, 1, 5, 2, 5, 2, 3, 3, 4, 4, 5) +face_vertex_count = PackedInt32Array(4, 4, 4, 4, 4, 4) +face_vertex_indices = PackedInt32Array(0, 1, 2, 3, 7, 6, 5, 4, 1, 0, 4, 5, 2, 1, 5, 6, 3, 2, 6, 7, 0, 3, 7, 4) +vertex_data = { +"position": SubResource("Resource_8gl8n"), +"selected": SubResource("Resource_6cmhk") +} +edge_data = { +"selected": SubResource("Resource_oiybb") +} +face_data = { +"color": SubResource("Resource_ujvg5"), +"material_index": SubResource("Resource_ytokv"), +"selected": SubResource("Resource_ctuuw"), +"uv_transform": SubResource("Resource_isd4t"), +"visible": SubResource("Resource_5eqde") +} +face_vertex_data = { +"color": SubResource("Resource_1ljwf"), +"face_index": SubResource("Resource_b6ux6"), +"normal": SubResource("Resource_tvqgt"), +"vertex_index": SubResource("Resource_fguet") +} + +[sub_resource type="Resource" id="Resource_ae8ig"] +script = ExtResource("2_h5xn7") +data = PackedByteArray(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0) +name = &"selected" +category = "" +data_type = 0 +stride = 1 + +[sub_resource type="Resource" id="Resource_ajui6"] +script = ExtResource("3_aaen4") +data = PackedInt32Array(-1, -1, -1, -1, -1, -1) +name = &"material_index" +category = "" +data_type = 1 +stride = 1 + +[sub_resource type="Resource" id="Resource_2d67w"] +script = ExtResource("2_h5xn7") +data = PackedByteArray(1, 1, 1, 1, 1, 1) +name = &"visible" +category = "" +data_type = 0 +stride = 1 + +[sub_resource type="Resource" id="Resource_uujd2"] +script = ExtResource("4_htcj8") +data = PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1) +name = &"color" +category = "" +data_type = 4 +stride = 4 + +[sub_resource type="Resource" id="Resource_ey1v3"] +script = ExtResource("4_htcj8") +data = PackedFloat32Array(1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0) +name = &"uv_transform" +category = "" +data_type = 8 +stride = 6 + +[sub_resource type="Resource" id="Resource_dtpmu"] +script = ExtResource("2_h5xn7") +data = PackedByteArray(0, 0, 0, 0, 0, 0) +name = &"selected" +category = "" +data_type = 0 +stride = 1 + +[sub_resource type="Resource" id="Resource_0bkcf"] +script = ExtResource("3_aaen4") +data = PackedInt32Array(0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5) +name = &"face_index" +category = "" +data_type = 1 +stride = 1 + +[sub_resource type="Resource" id="Resource_37dmh"] +script = ExtResource("3_aaen4") +data = PackedInt32Array(0, 1, 2, 3, 7, 6, 5, 4, 1, 0, 4, 5, 2, 1, 5, 6, 3, 2, 6, 7, 0, 3, 7, 4) +name = &"vertex_index" +category = "" +data_type = 1 +stride = 1 + +[sub_resource type="Resource" id="Resource_oan1v"] +script = ExtResource("4_htcj8") +data = PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1) +name = &"color" +category = "" +data_type = 4 +stride = 4 + +[sub_resource type="Resource" id="Resource_ck43r"] +script = ExtResource("4_htcj8") +data = PackedFloat32Array(-1, 0, 0, -1, 0, 0, -1, 0, 0, -1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, -1, 0, 0, -1, 0, 0, -1, 0, 0, -1, 0, 0, 0, -1, 0, 0, -1, 0, 0, -1, 0, 0, -1) +name = &"normal" +category = "" +data_type = 6 +stride = 3 + +[sub_resource type="Resource" id="Resource_e48xi"] +script = ExtResource("4_htcj8") +data = PackedFloat32Array(0, 2, 0, 0, 2, 3, 0, 0, 3, 0, 0, 0, 1, 2, 0, 1, 2, 3, 1, 0, 3, 1, 0, 0) +name = &"position" +category = "" +data_type = 6 +stride = 3 + +[sub_resource type="Resource" id="Resource_1jmnt"] +script = ExtResource("2_h5xn7") +data = PackedByteArray(0, 0, 0, 0, 0, 0, 0, 0) +name = &"selected" +category = "" +data_type = 0 +stride = 1 + +[sub_resource type="Resource" id="Resource_v5ln2"] +script = ExtResource("5_26lc5") +num_vertices = 8 +num_edges = 12 +num_faces = 6 +num_face_vertices = 24 +active_vertex = -1 +active_edge = -1 +active_face = -1 +active_face_vertex = -1 +edge_vertex_indices = PackedInt32Array(0, 1, 1, 2, 2, 3, 3, 0, 7, 6, 6, 5, 5, 4, 4, 7, 0, 4, 5, 1, 6, 2, 7, 3) +edge_face_indices = PackedInt32Array(0, 2, 0, 3, 0, 4, 0, 5, 1, 4, 1, 3, 1, 2, 1, 5, 2, 5, 2, 3, 3, 4, 4, 5) +face_vertex_count = PackedInt32Array(4, 4, 4, 4, 4, 4) +face_vertex_indices = PackedInt32Array(0, 1, 2, 3, 7, 6, 5, 4, 1, 0, 4, 5, 2, 1, 5, 6, 3, 2, 6, 7, 0, 3, 7, 4) +vertex_data = { +"position": SubResource("Resource_e48xi"), +"selected": SubResource("Resource_1jmnt") +} +edge_data = { +"selected": SubResource("Resource_ae8ig") +} +face_data = { +"color": SubResource("Resource_uujd2"), +"material_index": SubResource("Resource_ajui6"), +"selected": SubResource("Resource_dtpmu"), +"uv_transform": SubResource("Resource_ey1v3"), +"visible": SubResource("Resource_2d67w") +} +face_vertex_data = { +"color": SubResource("Resource_oan1v"), +"face_index": SubResource("Resource_0bkcf"), +"normal": SubResource("Resource_ck43r"), +"vertex_index": SubResource("Resource_37dmh") +} + +[sub_resource type="Resource" id="Resource_md1ex"] +script = ExtResource("2_h5xn7") +data = PackedByteArray(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0) +name = &"selected" +category = "" +data_type = 0 +stride = 1 + +[sub_resource type="Resource" id="Resource_40g8v"] +script = ExtResource("3_aaen4") +data = PackedInt32Array(-1, -1, -1, -1, -1, -1) +name = &"material_index" +category = "" +data_type = 1 +stride = 1 + +[sub_resource type="Resource" id="Resource_funey"] +script = ExtResource("2_h5xn7") +data = PackedByteArray(1, 1, 1, 1, 1, 1) +name = &"visible" +category = "" +data_type = 0 +stride = 1 + +[sub_resource type="Resource" id="Resource_3h2ws"] +script = ExtResource("4_htcj8") +data = PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1) +name = &"color" +category = "" +data_type = 4 +stride = 4 + +[sub_resource type="Resource" id="Resource_n088n"] +script = ExtResource("4_htcj8") +data = PackedFloat32Array(1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0) +name = &"uv_transform" +category = "" +data_type = 8 +stride = 6 + +[sub_resource type="Resource" id="Resource_nsfh1"] +script = ExtResource("2_h5xn7") +data = PackedByteArray(0, 0, 0, 0, 0, 0) +name = &"selected" +category = "" +data_type = 0 +stride = 1 + +[sub_resource type="Resource" id="Resource_kt582"] +script = ExtResource("3_aaen4") +data = PackedInt32Array(0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5) +name = &"face_index" +category = "" +data_type = 1 +stride = 1 + +[sub_resource type="Resource" id="Resource_ne0mi"] +script = ExtResource("3_aaen4") +data = PackedInt32Array(0, 1, 2, 3, 7, 6, 5, 4, 1, 0, 4, 5, 2, 1, 5, 6, 3, 2, 6, 7, 0, 3, 7, 4) +name = &"vertex_index" +category = "" +data_type = 1 +stride = 1 + +[sub_resource type="Resource" id="Resource_rhq4k"] +script = ExtResource("4_htcj8") +data = PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1) +name = &"color" +category = "" +data_type = 4 +stride = 4 + +[sub_resource type="Resource" id="Resource_710o8"] +script = ExtResource("4_htcj8") +data = PackedFloat32Array(0, -1, 0, 0, -1, 0, 0, -1, 0, 0, -1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0.707107, 0, -0.707107, 0.707107, 0, -0.707107, 0.707107, 0, -0.707107, 0.707107, 0, -0.707107, 0, 0, -1, 0, 0, -1, 0, 0, -1, 0, 0, -1, -0.707107, 0, 0.707107, -0.707107, 0, 0.707107, -0.707107, 0, 0.707107, -0.707107, 0, 0.707107) +name = &"normal" +category = "" +data_type = 6 +stride = 3 + +[sub_resource type="Resource" id="Resource_mj3sx"] +script = ExtResource("4_htcj8") +data = PackedFloat32Array(0, 0, 0, 0, 0, -1, -1, 0, -2, -2, 0, -2, 0, 2, 0, 0, 2, -1, -1, 2, -2, -2, 2, -2) +name = &"position" +category = "" +data_type = 6 +stride = 3 + +[sub_resource type="Resource" id="Resource_gnj26"] +script = ExtResource("2_h5xn7") +data = PackedByteArray(0, 0, 0, 0, 0, 0, 0, 0) +name = &"selected" +category = "" +data_type = 0 +stride = 1 + +[sub_resource type="Resource" id="Resource_qlr0m"] +script = ExtResource("5_26lc5") +num_vertices = 8 +num_edges = 12 +num_faces = 6 +num_face_vertices = 24 +active_vertex = -1 +active_edge = -1 +active_face = -1 +active_face_vertex = -1 +edge_vertex_indices = PackedInt32Array(0, 1, 1, 2, 2, 3, 3, 0, 7, 6, 6, 5, 5, 4, 4, 7, 0, 4, 5, 1, 6, 2, 7, 3) +edge_face_indices = PackedInt32Array(0, 2, 0, 3, 0, 4, 0, 5, 1, 4, 1, 3, 1, 2, 1, 5, 2, 5, 2, 3, 3, 4, 4, 5) +face_vertex_count = PackedInt32Array(4, 4, 4, 4, 4, 4) +face_vertex_indices = PackedInt32Array(0, 1, 2, 3, 7, 6, 5, 4, 1, 0, 4, 5, 2, 1, 5, 6, 3, 2, 6, 7, 0, 3, 7, 4) +vertex_data = { +"position": SubResource("Resource_mj3sx"), +"selected": SubResource("Resource_gnj26") +} +edge_data = { +"selected": SubResource("Resource_md1ex") +} +face_data = { +"color": SubResource("Resource_3h2ws"), +"material_index": SubResource("Resource_40g8v"), +"selected": SubResource("Resource_nsfh1"), +"uv_transform": SubResource("Resource_n088n"), +"visible": SubResource("Resource_funey") +} +face_vertex_data = { +"color": SubResource("Resource_rhq4k"), +"face_index": SubResource("Resource_kt582"), +"normal": SubResource("Resource_710o8"), +"vertex_index": SubResource("Resource_ne0mi") +} + +[sub_resource type="Resource" id="Resource_ceev7"] +script = ExtResource("2_h5xn7") +data = PackedByteArray(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0) +name = &"selected" +category = "" +data_type = 0 +stride = 1 + +[sub_resource type="Resource" id="Resource_0x1fa"] +script = ExtResource("3_aaen4") +data = PackedInt32Array(-1, -1, -1, -1, -1, -1) +name = &"material_index" +category = "" +data_type = 1 +stride = 1 + +[sub_resource type="Resource" id="Resource_fmisc"] +script = ExtResource("2_h5xn7") +data = PackedByteArray(1, 1, 1, 1, 1, 1) +name = &"visible" +category = "" +data_type = 0 +stride = 1 + +[sub_resource type="Resource" id="Resource_4uthv"] +script = ExtResource("4_htcj8") +data = PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1) +name = &"color" +category = "" +data_type = 4 +stride = 4 + +[sub_resource type="Resource" id="Resource_3r24c"] +script = ExtResource("4_htcj8") +data = PackedFloat32Array(1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0) +name = &"uv_transform" +category = "" +data_type = 8 +stride = 6 + +[sub_resource type="Resource" id="Resource_0pbjr"] +script = ExtResource("2_h5xn7") +data = PackedByteArray(0, 0, 0, 0, 0, 0) +name = &"selected" +category = "" +data_type = 0 +stride = 1 + +[sub_resource type="Resource" id="Resource_wm0hk"] +script = ExtResource("3_aaen4") +data = PackedInt32Array(0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5) +name = &"face_index" +category = "" +data_type = 1 +stride = 1 + +[sub_resource type="Resource" id="Resource_v76qk"] +script = ExtResource("3_aaen4") +data = PackedInt32Array(0, 1, 2, 3, 7, 6, 5, 4, 1, 0, 4, 5, 2, 1, 5, 6, 3, 2, 6, 7, 0, 3, 7, 4) +name = &"vertex_index" +category = "" +data_type = 1 +stride = 1 + +[sub_resource type="Resource" id="Resource_i1lac"] +script = ExtResource("4_htcj8") +data = PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1) +name = &"color" +category = "" +data_type = 4 +stride = 4 + +[sub_resource type="Resource" id="Resource_4kd3p"] +script = ExtResource("4_htcj8") +data = PackedFloat32Array(0, -1, 0, 0, -1, 0, 0, -1, 0, 0, -1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0, -1, 0, 0, -1, 0, 0, -1, 0, 0, -1, -1, 0, 0, -1, 0, 0, -1, 0, 0, -1, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0) +name = &"normal" +category = "" +data_type = 6 +stride = 3 + +[sub_resource type="Resource" id="Resource_ws0y6"] +script = ExtResource("4_htcj8") +data = PackedFloat32Array(0, 0, -0.5, -1, 0, -0.5, -1, 0, 0, 0, 0, 0, 0, 3, -0.5, -1, 3, -0.5, -1, 3, 0, 0, 3, 0) +name = &"position" +category = "" +data_type = 6 +stride = 3 + +[sub_resource type="Resource" id="Resource_0itk0"] +script = ExtResource("2_h5xn7") +data = PackedByteArray(0, 0, 0, 0, 0, 0, 0, 0) +name = &"selected" +category = "" +data_type = 0 +stride = 1 + +[sub_resource type="Resource" id="Resource_xmi0n"] +script = ExtResource("5_26lc5") +num_vertices = 8 +num_edges = 12 +num_faces = 6 +num_face_vertices = 24 +active_vertex = -1 +active_edge = -1 +active_face = -1 +active_face_vertex = -1 +edge_vertex_indices = PackedInt32Array(0, 1, 1, 2, 2, 3, 3, 0, 7, 6, 6, 5, 5, 4, 4, 7, 0, 4, 5, 1, 6, 2, 7, 3) +edge_face_indices = PackedInt32Array(0, 2, 0, 3, 0, 4, 0, 5, 1, 4, 1, 3, 1, 2, 1, 5, 2, 5, 2, 3, 3, 4, 4, 5) +face_vertex_count = PackedInt32Array(4, 4, 4, 4, 4, 4) +face_vertex_indices = PackedInt32Array(0, 1, 2, 3, 7, 6, 5, 4, 1, 0, 4, 5, 2, 1, 5, 6, 3, 2, 6, 7, 0, 3, 7, 4) +vertex_data = { +"position": SubResource("Resource_ws0y6"), +"selected": SubResource("Resource_0itk0") +} +edge_data = { +"selected": SubResource("Resource_ceev7") +} +face_data = { +"color": SubResource("Resource_4uthv"), +"material_index": SubResource("Resource_0x1fa"), +"selected": SubResource("Resource_0pbjr"), +"uv_transform": SubResource("Resource_3r24c"), +"visible": SubResource("Resource_fmisc") +} +face_vertex_data = { +"color": SubResource("Resource_i1lac"), +"face_index": SubResource("Resource_wm0hk"), +"normal": SubResource("Resource_4kd3p"), +"vertex_index": SubResource("Resource_v76qk") +} + +[sub_resource type="Resource" id="Resource_m4wpv"] +script = ExtResource("2_h5xn7") +data = PackedByteArray(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0) +name = &"selected" +category = "" +data_type = 0 +stride = 1 + +[sub_resource type="Resource" id="Resource_arbb0"] +script = ExtResource("3_aaen4") +data = PackedInt32Array(-1, -1, -1, -1, -1, -1) +name = &"material_index" +category = "" +data_type = 1 +stride = 1 + +[sub_resource type="Resource" id="Resource_2jqw3"] +script = ExtResource("2_h5xn7") +data = PackedByteArray(1, 1, 1, 1, 1, 1) +name = &"visible" +category = "" +data_type = 0 +stride = 1 + +[sub_resource type="Resource" id="Resource_jeynr"] +script = ExtResource("4_htcj8") +data = PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1) +name = &"color" +category = "" +data_type = 4 +stride = 4 + +[sub_resource type="Resource" id="Resource_bghwa"] +script = ExtResource("4_htcj8") +data = PackedFloat32Array(1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0) +name = &"uv_transform" +category = "" +data_type = 8 +stride = 6 + +[sub_resource type="Resource" id="Resource_goqwm"] +script = ExtResource("2_h5xn7") +data = PackedByteArray(0, 0, 0, 0, 0, 0) +name = &"selected" +category = "" +data_type = 0 +stride = 1 + +[sub_resource type="Resource" id="Resource_v0pui"] +script = ExtResource("3_aaen4") +data = PackedInt32Array(0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5) +name = &"face_index" +category = "" +data_type = 1 +stride = 1 + +[sub_resource type="Resource" id="Resource_qcjhj"] +script = ExtResource("3_aaen4") +data = PackedInt32Array(0, 1, 2, 3, 7, 6, 5, 4, 1, 0, 4, 5, 2, 1, 5, 6, 3, 2, 6, 7, 0, 3, 7, 4) +name = &"vertex_index" +category = "" +data_type = 1 +stride = 1 + +[sub_resource type="Resource" id="Resource_rnyok"] +script = ExtResource("4_htcj8") +data = PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1) +name = &"color" +category = "" +data_type = 4 +stride = 4 + +[sub_resource type="Resource" id="Resource_rr4dc"] +script = ExtResource("4_htcj8") +data = PackedFloat32Array(0, -1, 0, 0, -1, 0, 0, -1, 0, 0, -1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0, -1, 0, 0, -1, 0, 0, -1, 0, 0, -1, -1, 0, 0, -1, 0, 0, -1, 0, 0, -1, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0) +name = &"normal" +category = "" +data_type = 6 +stride = 3 + +[sub_resource type="Resource" id="Resource_1alc0"] +script = ExtResource("4_htcj8") +data = PackedFloat32Array(0, 0, -0.5, -1, 0, -0.5, -1, 0, 0, 0, 0, 0, 0, 2.75, -0.5, -1, 2.75, -0.5, -1, 2.75, 0, 0, 2.75, 0) +name = &"position" +category = "" +data_type = 6 +stride = 3 + +[sub_resource type="Resource" id="Resource_aepcw"] +script = ExtResource("2_h5xn7") +data = PackedByteArray(0, 0, 0, 0, 0, 0, 0, 0) +name = &"selected" +category = "" +data_type = 0 +stride = 1 + +[sub_resource type="Resource" id="Resource_gjkr8"] +script = ExtResource("5_26lc5") +num_vertices = 8 +num_edges = 12 +num_faces = 6 +num_face_vertices = 24 +active_vertex = -1 +active_edge = -1 +active_face = -1 +active_face_vertex = -1 +edge_vertex_indices = PackedInt32Array(0, 1, 1, 2, 2, 3, 3, 0, 7, 6, 6, 5, 5, 4, 4, 7, 0, 4, 5, 1, 6, 2, 7, 3) +edge_face_indices = PackedInt32Array(0, 2, 0, 3, 0, 4, 0, 5, 1, 4, 1, 3, 1, 2, 1, 5, 2, 5, 2, 3, 3, 4, 4, 5) +face_vertex_count = PackedInt32Array(4, 4, 4, 4, 4, 4) +face_vertex_indices = PackedInt32Array(0, 1, 2, 3, 7, 6, 5, 4, 1, 0, 4, 5, 2, 1, 5, 6, 3, 2, 6, 7, 0, 3, 7, 4) +vertex_data = { +"position": SubResource("Resource_1alc0"), +"selected": SubResource("Resource_aepcw") +} +edge_data = { +"selected": SubResource("Resource_m4wpv") +} +face_data = { +"color": SubResource("Resource_jeynr"), +"material_index": SubResource("Resource_arbb0"), +"selected": SubResource("Resource_goqwm"), +"uv_transform": SubResource("Resource_bghwa"), +"visible": SubResource("Resource_2jqw3") +} +face_vertex_data = { +"color": SubResource("Resource_rnyok"), +"face_index": SubResource("Resource_v0pui"), +"normal": SubResource("Resource_rr4dc"), +"vertex_index": SubResource("Resource_qcjhj") +} + +[sub_resource type="Resource" id="Resource_1l1gx"] +script = ExtResource("2_h5xn7") +data = PackedByteArray(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0) +name = &"selected" +category = "" +data_type = 0 +stride = 1 + +[sub_resource type="Resource" id="Resource_vklaa"] +script = ExtResource("3_aaen4") +data = PackedInt32Array(-1, -1, -1, -1, -1, -1) +name = &"material_index" +category = "" +data_type = 1 +stride = 1 + +[sub_resource type="Resource" id="Resource_jaqp8"] +script = ExtResource("2_h5xn7") +data = PackedByteArray(1, 1, 1, 1, 1, 1) +name = &"visible" +category = "" +data_type = 0 +stride = 1 + +[sub_resource type="Resource" id="Resource_7cawl"] +script = ExtResource("4_htcj8") +data = PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1) +name = &"color" +category = "" +data_type = 4 +stride = 4 + +[sub_resource type="Resource" id="Resource_4hdeh"] +script = ExtResource("4_htcj8") +data = PackedFloat32Array(1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0) +name = &"uv_transform" +category = "" +data_type = 8 +stride = 6 + +[sub_resource type="Resource" id="Resource_wxt7u"] +script = ExtResource("2_h5xn7") +data = PackedByteArray(0, 0, 0, 0, 0, 0) +name = &"selected" +category = "" +data_type = 0 +stride = 1 + +[sub_resource type="Resource" id="Resource_5if65"] +script = ExtResource("3_aaen4") +data = PackedInt32Array(0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5) +name = &"face_index" +category = "" +data_type = 1 +stride = 1 + +[sub_resource type="Resource" id="Resource_47ela"] +script = ExtResource("3_aaen4") +data = PackedInt32Array(0, 1, 2, 3, 7, 6, 5, 4, 1, 0, 4, 5, 2, 1, 5, 6, 3, 2, 6, 7, 0, 3, 7, 4) +name = &"vertex_index" +category = "" +data_type = 1 +stride = 1 + +[sub_resource type="Resource" id="Resource_ef6iv"] +script = ExtResource("4_htcj8") +data = PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1) +name = &"color" +category = "" +data_type = 4 +stride = 4 + +[sub_resource type="Resource" id="Resource_c7v8n"] +script = ExtResource("4_htcj8") +data = PackedFloat32Array(0, -1, 0, 0, -1, 0, 0, -1, 0, 0, -1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0, -1, 0, 0, -1, 0, 0, -1, 0, 0, -1, -1, 0, 0, -1, 0, 0, -1, 0, 0, -1, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0) +name = &"normal" +category = "" +data_type = 6 +stride = 3 + +[sub_resource type="Resource" id="Resource_83qgw"] +script = ExtResource("4_htcj8") +data = PackedFloat32Array(0, 0, -0.5, -1, 0, -0.5, -1, 0, 0, 0, 0, 0, 0, 2.5, -0.5, -1, 2.5, -0.5, -1, 2.5, 0, 0, 2.5, 0) +name = &"position" +category = "" +data_type = 6 +stride = 3 + +[sub_resource type="Resource" id="Resource_o53br"] +script = ExtResource("2_h5xn7") +data = PackedByteArray(0, 0, 0, 0, 0, 0, 0, 0) +name = &"selected" +category = "" +data_type = 0 +stride = 1 + +[sub_resource type="Resource" id="Resource_cbnf8"] +script = ExtResource("5_26lc5") +num_vertices = 8 +num_edges = 12 +num_faces = 6 +num_face_vertices = 24 +active_vertex = -1 +active_edge = -1 +active_face = -1 +active_face_vertex = -1 +edge_vertex_indices = PackedInt32Array(0, 1, 1, 2, 2, 3, 3, 0, 7, 6, 6, 5, 5, 4, 4, 7, 0, 4, 5, 1, 6, 2, 7, 3) +edge_face_indices = PackedInt32Array(0, 2, 0, 3, 0, 4, 0, 5, 1, 4, 1, 3, 1, 2, 1, 5, 2, 5, 2, 3, 3, 4, 4, 5) +face_vertex_count = PackedInt32Array(4, 4, 4, 4, 4, 4) +face_vertex_indices = PackedInt32Array(0, 1, 2, 3, 7, 6, 5, 4, 1, 0, 4, 5, 2, 1, 5, 6, 3, 2, 6, 7, 0, 3, 7, 4) +vertex_data = { +"position": SubResource("Resource_83qgw"), +"selected": SubResource("Resource_o53br") +} +edge_data = { +"selected": SubResource("Resource_1l1gx") +} +face_data = { +"color": SubResource("Resource_7cawl"), +"material_index": SubResource("Resource_vklaa"), +"selected": SubResource("Resource_wxt7u"), +"uv_transform": SubResource("Resource_4hdeh"), +"visible": SubResource("Resource_jaqp8") +} +face_vertex_data = { +"color": SubResource("Resource_ef6iv"), +"face_index": SubResource("Resource_5if65"), +"normal": SubResource("Resource_c7v8n"), +"vertex_index": SubResource("Resource_47ela") +} + +[sub_resource type="Resource" id="Resource_a6xso"] +script = ExtResource("2_h5xn7") +data = PackedByteArray(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0) +name = &"selected" +category = "" +data_type = 0 +stride = 1 + +[sub_resource type="Resource" id="Resource_n2ue6"] +script = ExtResource("3_aaen4") +data = PackedInt32Array(-1, -1, -1, -1, -1, -1) +name = &"material_index" +category = "" +data_type = 1 +stride = 1 + +[sub_resource type="Resource" id="Resource_mhn57"] +script = ExtResource("2_h5xn7") +data = PackedByteArray(1, 1, 1, 1, 1, 1) +name = &"visible" +category = "" +data_type = 0 +stride = 1 + +[sub_resource type="Resource" id="Resource_du3ns"] +script = ExtResource("4_htcj8") +data = PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1) +name = &"color" +category = "" +data_type = 4 +stride = 4 + +[sub_resource type="Resource" id="Resource_3bxk4"] +script = ExtResource("4_htcj8") +data = PackedFloat32Array(1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0) +name = &"uv_transform" +category = "" +data_type = 8 +stride = 6 + +[sub_resource type="Resource" id="Resource_38een"] +script = ExtResource("2_h5xn7") +data = PackedByteArray(0, 0, 0, 0, 0, 0) +name = &"selected" +category = "" +data_type = 0 +stride = 1 + +[sub_resource type="Resource" id="Resource_fbe2l"] +script = ExtResource("3_aaen4") +data = PackedInt32Array(0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5) +name = &"face_index" +category = "" +data_type = 1 +stride = 1 + +[sub_resource type="Resource" id="Resource_33ob6"] +script = ExtResource("3_aaen4") +data = PackedInt32Array(0, 1, 2, 3, 7, 6, 5, 4, 1, 0, 4, 5, 2, 1, 5, 6, 3, 2, 6, 7, 0, 3, 7, 4) +name = &"vertex_index" +category = "" +data_type = 1 +stride = 1 + +[sub_resource type="Resource" id="Resource_tk76p"] +script = ExtResource("4_htcj8") +data = PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1) +name = &"color" +category = "" +data_type = 4 +stride = 4 + +[sub_resource type="Resource" id="Resource_lt4y4"] +script = ExtResource("4_htcj8") +data = PackedFloat32Array(0, -1, 0, 0, -1, 0, 0, -1, 0, 0, -1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0, -1, 0, 0, -1, 0, 0, -1, 0, 0, -1, -1, 0, 0, -1, 0, 0, -1, 0, 0, -1, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0) +name = &"normal" +category = "" +data_type = 6 +stride = 3 + +[sub_resource type="Resource" id="Resource_8n82f"] +script = ExtResource("4_htcj8") +data = PackedFloat32Array(0, 0, -0.5, -1, 0, -0.5, -1, 0, 0, 0, 0, 0, 0, 2.25, -0.5, -1, 2.25, -0.5, -1, 2.25, 0, 0, 2.25, 0) +name = &"position" +category = "" +data_type = 6 +stride = 3 + +[sub_resource type="Resource" id="Resource_18s55"] +script = ExtResource("2_h5xn7") +data = PackedByteArray(0, 0, 0, 0, 0, 0, 0, 0) +name = &"selected" +category = "" +data_type = 0 +stride = 1 + +[sub_resource type="Resource" id="Resource_ur30r"] +script = ExtResource("5_26lc5") +num_vertices = 8 +num_edges = 12 +num_faces = 6 +num_face_vertices = 24 +active_vertex = -1 +active_edge = -1 +active_face = -1 +active_face_vertex = -1 +edge_vertex_indices = PackedInt32Array(0, 1, 1, 2, 2, 3, 3, 0, 7, 6, 6, 5, 5, 4, 4, 7, 0, 4, 5, 1, 6, 2, 7, 3) +edge_face_indices = PackedInt32Array(0, 2, 0, 3, 0, 4, 0, 5, 1, 4, 1, 3, 1, 2, 1, 5, 2, 5, 2, 3, 3, 4, 4, 5) +face_vertex_count = PackedInt32Array(4, 4, 4, 4, 4, 4) +face_vertex_indices = PackedInt32Array(0, 1, 2, 3, 7, 6, 5, 4, 1, 0, 4, 5, 2, 1, 5, 6, 3, 2, 6, 7, 0, 3, 7, 4) +vertex_data = { +"position": SubResource("Resource_8n82f"), +"selected": SubResource("Resource_18s55") +} +edge_data = { +"selected": SubResource("Resource_a6xso") +} +face_data = { +"color": SubResource("Resource_du3ns"), +"material_index": SubResource("Resource_n2ue6"), +"selected": SubResource("Resource_38een"), +"uv_transform": SubResource("Resource_3bxk4"), +"visible": SubResource("Resource_mhn57") +} +face_vertex_data = { +"color": SubResource("Resource_tk76p"), +"face_index": SubResource("Resource_fbe2l"), +"normal": SubResource("Resource_lt4y4"), +"vertex_index": SubResource("Resource_33ob6") +} + +[sub_resource type="Resource" id="Resource_o53nc"] +script = ExtResource("2_h5xn7") +data = PackedByteArray(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0) +name = &"selected" +category = "" +data_type = 0 +stride = 1 + +[sub_resource type="Resource" id="Resource_nqvpv"] +script = ExtResource("3_aaen4") +data = PackedInt32Array(-1, -1, -1, -1, -1, -1) +name = &"material_index" +category = "" +data_type = 1 +stride = 1 + +[sub_resource type="Resource" id="Resource_eevcd"] +script = ExtResource("2_h5xn7") +data = PackedByteArray(1, 1, 1, 1, 1, 1) +name = &"visible" +category = "" +data_type = 0 +stride = 1 + +[sub_resource type="Resource" id="Resource_uaco4"] +script = ExtResource("4_htcj8") +data = PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1) +name = &"color" +category = "" +data_type = 4 +stride = 4 + +[sub_resource type="Resource" id="Resource_i32es"] +script = ExtResource("4_htcj8") +data = PackedFloat32Array(1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0) +name = &"uv_transform" +category = "" +data_type = 8 +stride = 6 + +[sub_resource type="Resource" id="Resource_s32hc"] +script = ExtResource("2_h5xn7") +data = PackedByteArray(0, 0, 0, 0, 0, 0) +name = &"selected" +category = "" +data_type = 0 +stride = 1 + +[sub_resource type="Resource" id="Resource_er6xy"] +script = ExtResource("3_aaen4") +data = PackedInt32Array(0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5) +name = &"face_index" +category = "" +data_type = 1 +stride = 1 + +[sub_resource type="Resource" id="Resource_oorv7"] +script = ExtResource("3_aaen4") +data = PackedInt32Array(0, 1, 2, 3, 7, 6, 5, 4, 1, 0, 4, 5, 2, 1, 5, 6, 3, 2, 6, 7, 0, 3, 7, 4) +name = &"vertex_index" +category = "" +data_type = 1 +stride = 1 + +[sub_resource type="Resource" id="Resource_ohjh0"] +script = ExtResource("4_htcj8") +data = PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1) +name = &"color" +category = "" +data_type = 4 +stride = 4 + +[sub_resource type="Resource" id="Resource_ydrgk"] +script = ExtResource("4_htcj8") +data = PackedFloat32Array(0, -1, 0, 0, -1, 0, 0, -1, 0, 0, -1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0, -1, 0, 0, -1, 0, 0, -1, 0, 0, -1, -1, 0, 0, -1, 0, 0, -1, 0, 0, -1, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0) +name = &"normal" +category = "" +data_type = 6 +stride = 3 + +[sub_resource type="Resource" id="Resource_dq6wy"] +script = ExtResource("4_htcj8") +data = PackedFloat32Array(0, 0, -0.5, -1, 0, -0.5, -1, 0, 0, 0, 0, 0, 0, 2, -0.5, -1, 2, -0.5, -1, 2, 0, 0, 2, 0) +name = &"position" +category = "" +data_type = 6 +stride = 3 + +[sub_resource type="Resource" id="Resource_u3opy"] +script = ExtResource("2_h5xn7") +data = PackedByteArray(0, 0, 0, 0, 0, 0, 0, 0) +name = &"selected" +category = "" +data_type = 0 +stride = 1 + +[sub_resource type="Resource" id="Resource_sjuis"] +script = ExtResource("5_26lc5") +num_vertices = 8 +num_edges = 12 +num_faces = 6 +num_face_vertices = 24 +active_vertex = -1 +active_edge = -1 +active_face = -1 +active_face_vertex = -1 +edge_vertex_indices = PackedInt32Array(0, 1, 1, 2, 2, 3, 3, 0, 7, 6, 6, 5, 5, 4, 4, 7, 0, 4, 5, 1, 6, 2, 7, 3) +edge_face_indices = PackedInt32Array(0, 2, 0, 3, 0, 4, 0, 5, 1, 4, 1, 3, 1, 2, 1, 5, 2, 5, 2, 3, 3, 4, 4, 5) +face_vertex_count = PackedInt32Array(4, 4, 4, 4, 4, 4) +face_vertex_indices = PackedInt32Array(0, 1, 2, 3, 7, 6, 5, 4, 1, 0, 4, 5, 2, 1, 5, 6, 3, 2, 6, 7, 0, 3, 7, 4) +vertex_data = { +"position": SubResource("Resource_dq6wy"), +"selected": SubResource("Resource_u3opy") +} +edge_data = { +"selected": SubResource("Resource_o53nc") +} +face_data = { +"color": SubResource("Resource_uaco4"), +"material_index": SubResource("Resource_nqvpv"), +"selected": SubResource("Resource_s32hc"), +"uv_transform": SubResource("Resource_i32es"), +"visible": SubResource("Resource_eevcd") +} +face_vertex_data = { +"color": SubResource("Resource_ohjh0"), +"face_index": SubResource("Resource_er6xy"), +"normal": SubResource("Resource_ydrgk"), +"vertex_index": SubResource("Resource_oorv7") +} + +[sub_resource type="Resource" id="Resource_h4a0k"] +script = ExtResource("2_h5xn7") +data = PackedByteArray(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0) +name = &"selected" +category = "" +data_type = 0 +stride = 1 + +[sub_resource type="Resource" id="Resource_11bra"] +script = ExtResource("3_aaen4") +data = PackedInt32Array(-1, -1, -1, -1, -1, -1) +name = &"material_index" +category = "" +data_type = 1 +stride = 1 + +[sub_resource type="Resource" id="Resource_fpkxb"] +script = ExtResource("2_h5xn7") +data = PackedByteArray(1, 1, 1, 1, 1, 1) +name = &"visible" +category = "" +data_type = 0 +stride = 1 + +[sub_resource type="Resource" id="Resource_6rsgp"] +script = ExtResource("4_htcj8") +data = PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1) +name = &"color" +category = "" +data_type = 4 +stride = 4 + +[sub_resource type="Resource" id="Resource_1xh7h"] +script = ExtResource("4_htcj8") +data = PackedFloat32Array(1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0) +name = &"uv_transform" +category = "" +data_type = 8 +stride = 6 + +[sub_resource type="Resource" id="Resource_vo3hd"] +script = ExtResource("2_h5xn7") +data = PackedByteArray(0, 0, 0, 0, 0, 0) +name = &"selected" +category = "" +data_type = 0 +stride = 1 + +[sub_resource type="Resource" id="Resource_vc7sn"] +script = ExtResource("3_aaen4") +data = PackedInt32Array(0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5) +name = &"face_index" +category = "" +data_type = 1 +stride = 1 + +[sub_resource type="Resource" id="Resource_kfc0v"] +script = ExtResource("3_aaen4") +data = PackedInt32Array(0, 1, 2, 3, 7, 6, 5, 4, 1, 0, 4, 5, 2, 1, 5, 6, 3, 2, 6, 7, 0, 3, 7, 4) +name = &"vertex_index" +category = "" +data_type = 1 +stride = 1 + +[sub_resource type="Resource" id="Resource_a32bu"] +script = ExtResource("4_htcj8") +data = PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1) +name = &"color" +category = "" +data_type = 4 +stride = 4 + +[sub_resource type="Resource" id="Resource_5txlc"] +script = ExtResource("4_htcj8") +data = PackedFloat32Array(0, -1, 0, 0, -1, 0, 0, -1, 0, 0, -1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0, -1, 0, 0, -1, 0, 0, -1, 0, 0, -1, -1, 0, 0, -1, 0, 0, -1, 0, 0, -1, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0) +name = &"normal" +category = "" +data_type = 6 +stride = 3 + +[sub_resource type="Resource" id="Resource_b5nb6"] +script = ExtResource("4_htcj8") +data = PackedFloat32Array(0, 0, -0.5, -1, 0, -0.5, -1, 0, 0, 0, 0, 0, 0, 1.75, -0.5, -1, 1.75, -0.5, -1, 1.75, 0, 0, 1.75, 0) +name = &"position" +category = "" +data_type = 6 +stride = 3 + +[sub_resource type="Resource" id="Resource_phrqg"] +script = ExtResource("2_h5xn7") +data = PackedByteArray(0, 0, 0, 0, 0, 0, 0, 0) +name = &"selected" +category = "" +data_type = 0 +stride = 1 + +[sub_resource type="Resource" id="Resource_2swb2"] +script = ExtResource("5_26lc5") +num_vertices = 8 +num_edges = 12 +num_faces = 6 +num_face_vertices = 24 +active_vertex = -1 +active_edge = -1 +active_face = -1 +active_face_vertex = -1 +edge_vertex_indices = PackedInt32Array(0, 1, 1, 2, 2, 3, 3, 0, 7, 6, 6, 5, 5, 4, 4, 7, 0, 4, 5, 1, 6, 2, 7, 3) +edge_face_indices = PackedInt32Array(0, 2, 0, 3, 0, 4, 0, 5, 1, 4, 1, 3, 1, 2, 1, 5, 2, 5, 2, 3, 3, 4, 4, 5) +face_vertex_count = PackedInt32Array(4, 4, 4, 4, 4, 4) +face_vertex_indices = PackedInt32Array(0, 1, 2, 3, 7, 6, 5, 4, 1, 0, 4, 5, 2, 1, 5, 6, 3, 2, 6, 7, 0, 3, 7, 4) +vertex_data = { +"position": SubResource("Resource_b5nb6"), +"selected": SubResource("Resource_phrqg") +} +edge_data = { +"selected": SubResource("Resource_h4a0k") +} +face_data = { +"color": SubResource("Resource_6rsgp"), +"material_index": SubResource("Resource_11bra"), +"selected": SubResource("Resource_vo3hd"), +"uv_transform": SubResource("Resource_1xh7h"), +"visible": SubResource("Resource_fpkxb") +} +face_vertex_data = { +"color": SubResource("Resource_a32bu"), +"face_index": SubResource("Resource_vc7sn"), +"normal": SubResource("Resource_5txlc"), +"vertex_index": SubResource("Resource_kfc0v") +} + +[node name="Wall" type="Node3D"] + +[node name="block0" type="Node3D" parent="."] +script = ExtResource("1_75fxy") +mesh_vector_data = SubResource("Resource_ubfna") + +[node name="Block_0" type="Node3D" parent="."] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -1, 1) +script = ExtResource("1_75fxy") +mesh_vector_data = SubResource("Resource_v5ln2") + +[node name="Block_1" type="Node3D" parent="."] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0, 0) +script = ExtResource("1_75fxy") +mesh_vector_data = SubResource("Resource_qlr0m") + +[node name="Block_2" type="Node3D" parent="."] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -3, 0, 3) +script = ExtResource("1_75fxy") +mesh_vector_data = SubResource("Resource_xmi0n") + +[node name="Block_3" type="Node3D" parent="."] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -3, 0, 2.5) +script = ExtResource("1_75fxy") +mesh_vector_data = SubResource("Resource_gjkr8") + +[node name="Block_4" type="Node3D" parent="."] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -3, 0, 2) +script = ExtResource("1_75fxy") +mesh_vector_data = SubResource("Resource_cbnf8") + +[node name="Block_5" type="Node3D" parent="."] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -3, 0, 1.5) +script = ExtResource("1_75fxy") +mesh_vector_data = SubResource("Resource_ur30r") + +[node name="Block_6" type="Node3D" parent="."] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -3, 0, 1) +script = ExtResource("1_75fxy") +mesh_vector_data = SubResource("Resource_sjuis") + +[node name="Block_7" type="Node3D" parent="."] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -3, 0, 0.5) +script = ExtResource("1_75fxy") +mesh_vector_data = SubResource("Resource_2swb2") diff --git a/assets/ui/main_ui.tscn b/assets/ui/main_ui.tscn new file mode 100644 index 0000000..bfe7526 --- /dev/null +++ b/assets/ui/main_ui.tscn @@ -0,0 +1,18 @@ +[gd_scene format=3 uid="uid://sq6kut2r2bqx"] + +[node name="MainUi" type="CanvasLayer"] + +[node name="Control" type="Control" parent="."] +layout_mode = 3 +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +size_flags_horizontal = 3 +size_flags_vertical = 3 + +[node name="MarginContainer" type="MarginContainer" parent="Control"] +layout_mode = 0 +offset_right = 40.0 +offset_bottom = 40.0 diff --git a/project.godot b/project.godot index f8ca83e..db433e8 100644 --- a/project.godot +++ b/project.godot @@ -21,6 +21,8 @@ config/icon="res://icon.svg" Console="*res://addons/console/console.gd" GDRx="*res://addons/reactivex/__gdrxsingleton__.gd" +CyclopsAutoload="*res://addons/cyclops_level_builder/cyclops_global_scene.tscn" +Messagebus="*res://src/messagebus.gd" [display] @@ -36,7 +38,7 @@ project/assembly_name="Test Project" [editor_plugins] -enabled=PackedStringArray("res://addons/Todo_Manager/plugin.cfg", "res://addons/console/plugin.cfg", "res://addons/reactivex/plugin.cfg", "res://addons/script-ide/plugin.cfg") +enabled=PackedStringArray("res://addons/Todo_Manager/plugin.cfg", "res://addons/console/plugin.cfg", "res://addons/cyclops_level_builder/plugin.cfg", "res://addons/reactivex/plugin.cfg", "res://addons/script-ide/plugin.cfg") [input] diff --git a/src/level_manager.gd b/src/level_manager.gd index 5481d7f..0d96c85 100644 --- a/src/level_manager.gd +++ b/src/level_manager.gd @@ -1,19 +1,38 @@ extends Node -signal scene_transition - var CURRENT_LEVEL: Node3D = null var CURRENT_PLAYER: CharacterBody3D = null +var combined_signal : Observable +var prop = ReactiveProperty.new(42) + +signal TestSignal func _ready() -> void: - var lvl = load("res://assets/levels/level1.tscn") - var player = load("res://assets/characters/player.tscn") + var lvl: Resource = load("res://assets/levels/level1.tscn") + var player: Resource = load("res://assets/characters/player.tscn") CURRENT_LEVEL = lvl.instantiate() CURRENT_PLAYER = player.instantiate() CURRENT_PLAYER.transform.origin = Vector3(0, 1, 0) add_child(CURRENT_LEVEL) CURRENT_LEVEL.add_child(CURRENT_PLAYER) - #CURRENT_LEVEL.remove_child() + combined_signal = GDRx.from_signal(Messagebus.CHANGE_SCENE)\ + .first()\ + .debounce(1) + combined_signal.subscribe(transition_to).dispose_with(self) + #prop.subscribe(func(i): print(">> ", i)) + +func transition_to(scene: PackedScene): + print(">>>>>>>"+str(scene)) + CURRENT_LEVEL.remove_child(CURRENT_PLAYER) + remove_child(CURRENT_LEVEL) + var lvl = load(scene.resource_path) + var new_level = lvl.instantiate() + new_level.add_child(CURRENT_PLAYER) + CURRENT_PLAYER.transform.origin = Vector3(0, 1, 0) + CURRENT_PLAYER.set_owner(new_level) + add_child(new_level) + print("Transitioned to "+str(scene)) + CURRENT_LEVEL = new_level func _process(delta: float) -> void: if (CURRENT_PLAYER.global_position.y) < -5: diff --git a/src/main.gd b/src/main.gd index a58e757..bdbcc92 100644 --- a/src/main.gd +++ b/src/main.gd @@ -1,11 +1,11 @@ extends Node @export var test := 100 -signal showMenu func _ready() -> void: GDRx.start_periodic_timer(1.0) \ .subscribe(func(i): print("Tick: ", i)) \ .dispose_with(self) + func move() -> void: pass diff --git a/src/messagebus.gd b/src/messagebus.gd new file mode 100644 index 0000000..99b43b3 --- /dev/null +++ b/src/messagebus.gd @@ -0,0 +1,3 @@ +extends Node + +signal CHANGE_SCENE(scene) diff --git a/src/viewport.gd b/src/viewport.gd index 3e6bfcb..3332349 100644 --- a/src/viewport.gd +++ b/src/viewport.gd @@ -1,8 +1,6 @@ @tool extends MeshInstance3D -@onready var camera = $"../Camera3D" - func _ready(): if material_override != null: material_override.albedo_texture = $SubViewport.get_texture()