diff --git a/Level_Select_Banner.png b/Level_Select_Banner.png new file mode 100644 index 0000000..2269af5 Binary files /dev/null and b/Level_Select_Banner.png differ diff --git a/Level_Select_Banner.png.import b/Level_Select_Banner.png.import new file mode 100644 index 0000000..cc27aa2 --- /dev/null +++ b/Level_Select_Banner.png.import @@ -0,0 +1,40 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://drvs8v3bvlw18" +path="res://.godot/imported/Level_Select_Banner.png-02be576872c60775ba554cde1d52fb99.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Level_Select_Banner.png" +dest_files=["res://.godot/imported/Level_Select_Banner.png-02be576872c60775ba554cde1d52fb99.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/Scenes/FlowField/flow_field_editor.gd b/Scenes/FlowField/flow_field_editor.gd new file mode 100644 index 0000000..c720f49 --- /dev/null +++ b/Scenes/FlowField/flow_field_editor.gd @@ -0,0 +1,13 @@ +class_name FlowFieldEditor +extends Node + +@export var flow_field: FlowField + + +func create_grid(x: int, y: int, gap: int) -> Array[FlowNode]: + #return flow_field.create_grid(x, y, gap) + return [] + + +func create_node(pos: Vector3 = Vector3.ZERO, grid_id: int = -1, grid_x: int = 0, grid_y: int = 0) -> FlowNode: + return flow_field.create_node(pos, grid_id, grid_x, grid_y) diff --git a/Scenes/FlowField/flow_field_editor.gd.uid b/Scenes/FlowField/flow_field_editor.gd.uid new file mode 100644 index 0000000..f0170ee --- /dev/null +++ b/Scenes/FlowField/flow_field_editor.gd.uid @@ -0,0 +1 @@ +uid://d348pxbcsomw4 diff --git a/Shaders/wireframe.gdshader b/Shaders/wireframe.gdshader new file mode 100644 index 0000000..b47da6a --- /dev/null +++ b/Shaders/wireframe.gdshader @@ -0,0 +1,43 @@ +shader_type spatial; + +render_mode unshaded; + +uniform vec4 modelColor : source_color; +uniform vec4 wireframeColor : source_color; + +uniform float width : hint_range(0.0, 15.) = 1.; +uniform float modelOpacity : hint_range(0.0, 1.0) = 1.; + +uniform bool filtered = false; + +const vec3 vectors[3] = { + vec3(1.0, 0.0 ,0.0), + vec3(0.0, 1.0 ,0.0), + vec3(0.0, 0.0 ,1.0) +}; + +varying vec3 baryCoord; + +void vertex() +{ + baryCoord = vectors[VERTEX_ID % 3]; +} + +void fragment() { + vec3 dBaryCoordX = dFdx(baryCoord); + vec3 dBaryCoordY = dFdy(baryCoord); + vec3 dBaryCoord = sqrt(dBaryCoordX*dBaryCoordX + dBaryCoordY*dBaryCoordY); + + vec3 remap = smoothstep( + vec3(0.0), + dBaryCoord * width, + baryCoord + ); + + remap = filtered ? remap : step(.5, remap); + + float closestEdge = min(min(remap.x, remap.y), remap.z); + + ALBEDO = mix(wireframeColor, modelColor, closestEdge).xyz; + ALPHA = mix(1., modelOpacity, closestEdge); +} \ No newline at end of file diff --git a/Shaders/wireframe.gdshader.uid b/Shaders/wireframe.gdshader.uid new file mode 100644 index 0000000..ee4e2e8 --- /dev/null +++ b/Shaders/wireframe.gdshader.uid @@ -0,0 +1 @@ +uid://d35rx6xpni7ai diff --git a/Shaders/wireframe1.tres b/Shaders/wireframe1.tres new file mode 100644 index 0000000..4aa4617 --- /dev/null +++ b/Shaders/wireframe1.tres @@ -0,0 +1,12 @@ +[gd_resource type="ShaderMaterial" format=3 uid="uid://wr1vi6yfhxhg"] + +[ext_resource type="Shader" uid="uid://d35rx6xpni7ai" path="res://Shaders/wireframe.gdshader" id="1_jt35h"] + +[resource] +render_priority = 0 +shader = ExtResource("1_jt35h") +shader_parameter/modelColor = Color(0, 0, 0, 1) +shader_parameter/wireframeColor = Color(0, 0.92156863, 0, 1) +shader_parameter/width = 2.814000133665 +shader_parameter/modelOpacity = 0.0 +shader_parameter/filtered = false diff --git a/Shaders/wireframe2.tres b/Shaders/wireframe2.tres new file mode 100644 index 0000000..ba078f6 --- /dev/null +++ b/Shaders/wireframe2.tres @@ -0,0 +1,12 @@ +[gd_resource type="ShaderMaterial" format=3 uid="uid://dvvs2q42dl4od"] + +[ext_resource type="Shader" uid="uid://d35rx6xpni7ai" path="res://Shaders/wireframe.gdshader" id="1_wyinq"] + +[resource] +render_priority = 0 +shader = ExtResource("1_wyinq") +shader_parameter/modelColor = Color(1, 0, 0.016666412, 1) +shader_parameter/wireframeColor = Color(0.92, 0, 0, 1) +shader_parameter/width = 1.0 +shader_parameter/modelOpacity = 1.0 +shader_parameter/filtered = false diff --git a/Shaders/wireframetest.tscn b/Shaders/wireframetest.tscn new file mode 100644 index 0000000..6ad5116 --- /dev/null +++ b/Shaders/wireframetest.tscn @@ -0,0 +1,265 @@ +[gd_scene format=4 uid="uid://cdwjmtw3w72ll"] + +[ext_resource type="ArrayMesh" uid="uid://dqu02w1dgudyq" path="res://brdigett.obj" id="1_e1ilk"] +[ext_resource type="Material" uid="uid://wr1vi6yfhxhg" path="res://Shaders/wireframe1.tres" id="2_uicd7"] +[ext_resource type="PackedScene" uid="uid://cxarqns8onckw" path="res://crt.glb" id="3_yfpqh"] +[ext_resource type="Shader" uid="uid://dq04j2s5foo2f" path="res://Shaders/mightyduke_ps1.gdshader" id="4_hm4ft"] +[ext_resource type="ArrayMesh" uid="uid://bfmuypokxn5la" path="res://cube.obj" id="5_yfpqh"] +[ext_resource type="Material" uid="uid://dvvs2q42dl4od" path="res://Shaders/wireframe2.tres" id="6_bemc8"] + +[sub_resource type="ProceduralSkyMaterial" id="ProceduralSkyMaterial_yfpqh"] +sky_horizon_color = Color(0.66224277, 0.6717428, 0.6867428, 1) +ground_horizon_color = Color(0.66224277, 0.6717428, 0.6867428, 1) + +[sub_resource type="Sky" id="Sky_bemc8"] +sky_material = SubResource("ProceduralSkyMaterial_yfpqh") + +[sub_resource type="Environment" id="Environment_gg6m7"] +background_mode = 2 +sky = SubResource("Sky_bemc8") +tonemap_mode = 2 +glow_enabled = true + +[sub_resource type="ViewportTexture" id="ViewportTexture_gg6m7"] +viewport_path = NodePath("SubViewport") + +[sub_resource type="ViewportTexture" id="ViewportTexture_myma4"] +viewport_path = NodePath("SubViewport2") + +[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_ke55h"] +resource_name = "Material" +cull_mode = 2 +albedo_color = Color(0.9063318, 0.9063318, 0.9063318, 1) +roughness = 0.5 + +[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_0i4ne"] +resource_name = "Screen" +cull_mode = 2 +albedo_color = Color(0.9063355, 0.30744696, 0.84215224, 1) +roughness = 0.5 + +[sub_resource type="ArrayMesh" id="ArrayMesh_02qwi"] +_surfaces = [{ +"aabb": AABB(-0.23222329, -0.2910274, -0.24000001, 0.43629748, 0.4710274, 0.48000002), +"format": 34359742465, +"index_count": 264, +"index_data": PackedByteArray("AAABAAIAAAADAAEABAABAAMABQADAAAABAAGAAEABgACAAEABwAEAAMABwADAAUABQAIAAcABwAIAAkABQAKAAgABwAJAAsACwAEAAcACwAJAAwADQAKAAUABQAAAA0ADQAOAAoADQAAAA8ADwAAAAIAEAAOAA0ADQAPABAAEAARAA4AEgARABAAEgATABEAEAAPABQAEAAUABIADwACABUAFAAPABUAFgAVAAIAFAAVABcABgAWAAIAGAATABIAGAAZABMAEgAUABoAEgAaABgAGwAaABQAGwAUABcAGAAaABwAHQAZABgAGAAcAB0AHQAeABkAHwAXABUAHwAbABcAFgAfABUAIAAaABsAIAAcABoAIQAbAB8AIQAgABsAIgAfABYAIgAhAB8AIAAjABwAJAAiABYAJAAWAAYAIQAlACAAIAAlACMAIgAmACEAIQAmACUAJAAnACIAIgAnACYAJQAoACMAJQAmACgAHAAjACgAJAApACcAHAAoACoAJgArACgAJgAnACsAKgAoACsAHQAcACoAJwApACwAJwAsACsALQApACQALQAsACkALQAkAAYALQAGAAQACwAtAAQALgArACwALgAsAC0AKgArAC4ALwAtAAsALwAuAC0ACwAMAC8ALwAMADAAMQAuAC8AMQAqAC4ALwAwADEAHQAqADEAMQAwAB4AMQAeAB0A"), +"name": "Material", +"primitive": 3, +"uv_scale": Vector4(0, 0, 0, 0), +"vertex_count": 50, +"vertex_data": PackedByteArray("1PhQPuxROD4K16M98cttvuxROD6QwnU+8cttvuxROD4K16M92z9BPuxROD6QwnU+7sxHPgAAAACQwnU+2z9BPoddIT4szl4+8cttvgAAAACQwnU+7sxHPgAAAAAszl4+mIokPgAAAAAszl4+hv0dPoddIb4szl4+hv0dPoddIT4szl4+2z9BPoddIb4szl4+f7YtPoddIb5yiZQ91PhQPoddIT5yiZQ9f7YtPoddIT5yiZQ91PhQPuxROD4K16O91PhQPoddIT5yiZS9f7YtPoddIT5yiZS92z9BPoddIT4szl6+hv0dPoddIT4szl6+2z9BPuxROD6QwnW+8cttvuxROD4K16O98cttvgAAAAAK16M98cttvuxROD6QwnW+7sxHPgAAAAAszl6+mIokPgAAAAAszl6+7sxHPgAAAACQwnW+8cttvgAAAACQwnW+2z9BPuxROL6QwnW+2z9BPoddIb4szl6+hv0dPoddIb4szl6+8cttvgAAAAAK16O98cttvuxROL6QwnW+8cttvuxROL4K16O98cttvuxROL4K16M92z9BPosBlb6QwnW+8cttvuxROL6QwnU+8cttvosBlb6QwnW+8cttvosBlb4K16O98cttvosBlb4K16M91PhQPosBlb4K16O98cttvosBlb6QwnU+1PhQPuxROL4K16O91PhQPosBlb4K16M92z9BPosBlb6QwnU+2z9BPuxROL6QwnU+1PhQPuxROL4K16M91PhQPoddIb5yiZQ9f7YtPoddIb5yiZS91PhQPoddIb5yiZS9") +}, { +"aabb": AABB(0.15428743, -0.15758334, -0.21758336, 0.021751568, 0.31516668, 0.43516672), +"format": 34896613377, +"index_count": 36, +"index_data": PackedByteArray("AAABAAIAAAADAAEABAADAAAABAAFAAMABgAEAAAABwAAAAIABgAAAAcACAAGAAcABwACAAkACAAHAAoACgAHAAkACgAJAAsA"), +"name": "Screen", +"primitive": 3, +"uv_scale": Vector4(0, 0, 0, 0), +"vertex_count": 12, +"vertex_data": PackedByteArray("////f6mqAAAAAP////8AALS0//+pqgAASkv/f///AAC0tAAAqaoAAAAAAAD//wAAtLQAAFVVAAD///9/VVUAAAAAAAAAAAAAtLT//1VVAABKS/9/AAAAAAAA//8AAAAA") +}] +blend_shape_mode = 0 + +[sub_resource type="ArrayMesh" id="ArrayMesh_vgnnb"] +resource_name = "crt_Cube" +_surfaces = [{ +"aabb": AABB(-0.23222329, -0.2910274, -0.24000001, 0.43629748, 0.4710274, 0.48000002), +"attribute_data": PackedByteArray("AAAgP6yqqj4AAGA/AACAPgAAYD+sqqo+AAAgPwAAgD4AACA/VlXVPgAAYD9WVdU+AAAgPwAAAD8AAGA/AAAAPwAAAD8AAIA+AAAgPwAAAAAAACA/AACAPgAAAD8AAAAAAADAPgAAgD4AAMA+AAAAAAAAwD4AAAAAAADAPgAAgD4AAAA/VlVVPwAAID8AAEA/AAAgP1VVVT8AAAA/AABAPwAAAD+rqmo/AAAgP6uqaj8AAAA/AACAPwAAID8AAIA/AADAPgAAgD8AAMA+VlVVPwAAwD4AAEA/AADAPgAAQD8AAMA+VlVVPwAAwD6rqmo/AADAPquqaj8AAMA+AACAPwAAwD5WVdU+AADAPqyqqj4AAMA+rKqqPgAAwD5WVdU+avjHPjxX0z5q+Mc+xqisPmr4xz48V9M+avjHPrIF+j5q+Mc+sgX6Pmr4xz48V9M+avjHPsaorD5q+Mc+xqisPmr4xz5Q+oU+avjHPlD6hT4AAAA/AABAPwAAID8AAAA/AAAgPwAAQD8AAAA/AAAAPwAAwD4AAEA/AADAPgAAAD8AAMA+AAAAPwAAwD4AAEA/AAAAP7AF+j4AAMA+AAAAP2r4xz6yBfo+AAAAPwAAAD8AAAA/UPqFPgAAID8AAIA+ywMcP076hT4AAAA/AACAPssDHD88V9M+AAAgPwAAAD/LAxw/sAX6PgAAID9WVdU+avjHPsaorD4AAMA+AACAPmr4xz5Q+oU+AADAPqyqqj4AAAA/UPqFPmr4xz5Q+oU+avjHPlD6hT4AAAA/UPqFPssDHD9O+oU+ywMcP076hT7LAxw/xKisPssDHD9O+oU+ywMcP076hT7LAxw/xKisPssDHD88V9M+ywMcPzxX0z7LAxw/sAX6PssDHD+wBfo+AAAAP7AF+j7LAxw/sAX6PssDHD+wBfo+AAAAP7AF+j5q+Mc+sgX6Pmr4xz6yBfo+avjHPrIF+j4AAMA+VlXVPmr4xz48V9M+AADAPgAAAD/LAxw/TvqFPgAAID+sqqo+ywMcP8SorD4AACA/AACAPssDHD/EqKw+AAAgP1ZV1T7LAxw/PFfTPgAAID+sqqo+avjHPlD6hT4AAAA/AACAPgAAAD9Q+oU+AADAPgAAgD7LAxw/sAX6PgAAAD8AAAA/AAAAP7AF+j4AACA/AAAAPwAAAD6sqqo+AADAPgAAgD4AAMA+rKqqPgAAAD4AAIA+AAAAPlZV1T4AAMA+VlXVPgAAAD4AAAA/AADAPgAAAD8AAMA+AAAAPwAAwD5WVdU+AADAPlZV1T4AAMA+AAAAPwAAwD6sqqo+AADAPgAAgD4AAMA+AACAPgAAwD6sqqo+"), +"format": 34359742487, +"index_count": 264, +"index_data": PackedByteArray("AAABAAIAAAADAAEABAAAAAIABAACAAUABgAEAAUABgAFAAcACAAJAAoACAALAAkADAALAAgADAANAAsADAAOAA0ADAAPAA4AEAARABIAEAATABEAFAAQABIAFAASABUAFgAUABUAFgAVABcAGAAUABYAGQATABAAGQAaABMAGQAbABoAGQAcABsAHQAZABAAHQAcABkAHQAQABQAGAAdABQAHQAeABwAGAAeAB0AGAAfAB4AIAAhACIAIAAjACEAJAAgACIAJAAiACUAJgAnACgAJgApACcAKgApACYAKgArACkALAArACoALAAtACsALgAvADAALgAxAC8AMgAxAC4AMgAzADEAMgA0ADMAMgA1ADQANgA3ADgANgA5ADcAOgA7ADwAOgA9ADsAPgA/AEAAPgBBAD8AQgBDAEQAQgBFAEMARgBHAEgARgBJAEcASgBJAEYASgBLAEkATABNAE4ATABPAE0AUABPAEwAUABRAE8AUgBRAFAAUgBTAFEAVABVAFYAVABXAFUAWABXAFQAWABZAFcAWgBbAFwAWgBdAFsAXgBfAGAAXgBhAF8AYgBjAGQAYgBlAGMAZgBnAGgAZgBpAGcAagBrAGwAagBtAGsAbgBvAHAAbgBxAG8AcgBuAHAAcgBwAHMAdAByAHMAdABzAHUAdgB3AHgAdgB5AHcAegB7AHwAegB9AHsA"), +"material": SubResource("StandardMaterial3D_ke55h"), +"name": "Material", +"primitive": 3, +"uv_scale": Vector4(0, 0, 0, 0), +"vertex_count": 126, +"vertex_data": PackedByteArray("1PhQPuxROD4K16M98cttvuxROD6QwnU+8cttvuxROD4K16M92z9BPuxROD6QwnU+1PhQPuxROD4K16O98cttvuxROD4K16O92z9BPuxROD6QwnW+8cttvuxROD6QwnW+7sxHPgAAAACQwnU+8cttvuxROD6QwnU+2z9BPuxROD6QwnU+8cttvgAAAACQwnU+2z9BPuxROL6QwnU+8cttvuxROL6QwnU+8cttvosBlb6QwnU+2z9BPosBlb6QwnU+8cttvgAAAAAK16O98cttvuxROD6QwnW+8cttvuxROD4K16O98cttvgAAAACQwnW+8cttvgAAAAAK16M98cttvuxROD4K16M98cttvgAAAACQwnU+8cttvuxROD6QwnU+8cttvuxROL6QwnU+8cttvuxROL4K16O98cttvuxROL6QwnW+8cttvosBlb6QwnW+8cttvosBlb4K16O98cttvuxROL4K16M98cttvosBlb4K16M98cttvosBlb6QwnU+1PhQPuxROL4K16O91PhQPosBlb4K16M91PhQPuxROL4K16M91PhQPosBlb4K16O91PhQPoddIb5yiZS91PhQPoddIb5yiZQ91PhQPoddIb5yiZS9hv0dPoddIb4szl6+2z9BPoddIb4szl6+f7YtPoddIb5yiZS91PhQPoddIb5yiZQ9f7YtPoddIb5yiZQ92z9BPoddIb4szl4+hv0dPoddIb4szl4+8cttvgAAAACQwnW+2z9BPuxROD6QwnW+8cttvuxROD6QwnW+7sxHPgAAAACQwnW+8cttvuxROL6QwnW+2z9BPuxROL6QwnW+2z9BPosBlb6QwnW+8cttvosBlb6QwnW+7sxHPgAAAAAszl6+2z9BPuxROL6QwnW+2z9BPoddIb4szl6+7sxHPgAAAACQwnW+7sxHPgAAAAAszl4+2z9BPuxROD6QwnU+2z9BPoddIT4szl4+7sxHPgAAAACQwnU+1PhQPoddIT5yiZS92z9BPuxROD6QwnW+2z9BPoddIT4szl6+1PhQPuxROD4K16O91PhQPoddIb5yiZQ92z9BPuxROL6QwnU+2z9BPoddIb4szl4+1PhQPuxROL4K16M97sxHPgAAAAAszl4+hv0dPoddIb4szl4+2z9BPoddIb4szl4+mIokPgAAAAAszl4+2z9BPoddIT4szl4+hv0dPoddIT4szl4+1PhQPoddIT5yiZQ9hv0dPoddIT4szl4+2z9BPoddIT4szl4+f7YtPoddIT5yiZQ91PhQPoddIT5yiZS9f7YtPoddIT5yiZS92z9BPoddIT4szl6+hv0dPoddIT4szl6+7sxHPgAAAAAszl6+hv0dPoddIT4szl6+2z9BPoddIT4szl6+mIokPgAAAAAszl6+2z9BPoddIb4szl6+hv0dPoddIb4szl6+2z9BPoddIb4szl6+1PhQPuxROL4K16O91PhQPoddIb5yiZS92z9BPuxROL6QwnW+2z9BPoddIT4szl4+1PhQPuxROD4K16M91PhQPoddIT5yiZQ92z9BPuxROD6QwnU+1PhQPoddIT5yiZQ91PhQPuxROD4K16O91PhQPoddIT5yiZS91PhQPuxROD4K16M92z9BPoddIb4szl4+7sxHPgAAAACQwnU+7sxHPgAAAAAszl4+2z9BPuxROL6QwnU+2z9BPoddIT4szl6+7sxHPgAAAACQwnW+7sxHPgAAAAAszl6+2z9BPuxROD6QwnW+8cttvosBlb4K16M92z9BPosBlb6QwnU+1PhQPosBlb4K16M98cttvosBlb6QwnU+8cttvosBlb4K16O91PhQPosBlb4K16O98cttvosBlb6QwnW+2z9BPosBlb6QwnW+2z9BPuxROL6QwnW+1PhQPosBlb4K16O91PhQPuxROL4K16O92z9BPosBlb6QwnW+1PhQPuxROL4K16M92z9BPosBlb6QwnU+2z9BPuxROL6QwnU+1PhQPosBlb4K16M9/3///wAA/7//f///AAD/v/9///8AAP+//3///wAA/7//f///AAD/v/9///8AAP+//3///wAA/7//f///AAD/v/9//3+VgLP//3//f9p+bP//f/9/mnvM/f9//3+UgLT//3//f1CDVv7/f/9//3////9//3////8//3//f////z8AAP9//3/+/wAA/3//f/7/AAD/f/9//v8AAP9//3///wAA/3//f///AAD/f/9///8AAP9//3///wAA/3//f///AAD/f/9///8AAP9//3///wAA/3//f///AAD/f////78AAP9/////vwAA/3//f///AAD/f////78AAP9/////v////3//f/7/////f////7////9//3///////3////+/////f/9//v////9//3////9///////+//3///////7//f///////v/9///////+//3///////7//f///////v/9///////+//3///////7//////an+0//////+ufFb+//////9/////////aX+z//////8kgWz//////2SEzP3/////////v/////////+/HPlne62Ep/0c+Wd7roSo/Rz5Z3uuhKj9HPlne62Ep/1m++KGUXun/Wb74oZQe6j9ZvvihlB7qP1m++KGUnun/aT4nW1RiP/7pPidbQ2Iz/uk+J1tD4i8+6T4nW1liAH8nO1Zh613//uc7VmH8XfP+5ztWYfvd7z7nO1Zh5l3Afz/////////v/////////+//////////7//////////v/////////+//////////7//fwAA////v/9/AAD///+//38AAP///7//fwAA////v/9/AAD///+//38AAP///7//fwAA////v/9/AAD///+//3//f////z//f/9/////P/9//3////8//3//f////z//f/9/////P/9//3////8/pPhhkqZ39/uk+GGSAHjW+6T4YZICeND7pPhhkpl39/uc7aV4WIj3+5ztpXj+h9b7nO2lePyH0Puc7aV4ZYj3+////3//f/7/////f/9///////9//3///////3//f/7/Zvscea6EqP1m+xx5rYSn/Wb7HHmthKf9Zvscea6EqP0c+ZeEUHuo/Rz5l4RRe6f9HPmXhFF7p/0c+ZeEUHuo/f9/AAD///+//38AAP///7//fwAA////v/9/AAD///+//38AAP///7//fwAA////v/9/AAD///+//38AAP///7///zSL////v///NIv///+///80i////7///zSL////v8r0/3////8/yvT/f////z/K9P9/////P8r0/3////8/") +}, { +"aabb": AABB(0.15428743, -0.15758334, -0.21758336, 0.021751568, 0.31516668, 0.43516672), +"attribute_data": PackedByteArray("VFX/fwAAAABUVQAAAAD/f////3+pqgAA//8AAKmq/3+pqv9/VFUAAKmqAABUVf9/qar//1RV/3+pqv9/VFX///////+pqv9/////f6mq//9UVf//AAD/f1RV/38AAP//"), +"format": 34896613399, +"index_count": 36, +"index_data": PackedByteArray("AAABAAIAAAADAAEABAAFAAYABAAHAAUACAAJAAoACAALAAkADAANAA4ADAAPAA0AEAARABIAEAATABEAFAAVABYAFAAXABUA"), +"material": SubResource("StandardMaterial3D_0i4ne"), +"name": "Screen", +"primitive": 3, +"uv_scale": Vector4(0, 0, 0, 0), +"vertex_count": 24, +"vertex_data": PackedByteArray("////f6mqt7sAAP////+3u7S0//+pqre7Skv/f///t7tKS/9/AABPxLS0//9VVU/EAAD//wAAT8T///9/VVVPxP///39VVQPAtLT//6mqA8C0tP//VVUDwP///3+pqgPAtLQAAFVVA8D///9/qaoDwP///39VVQPAtLQAAKmqA8AAAAAAAABPxP///39VVU/ESkv/fwAAT8S0tAAAVVVPxLS0AACpqre7Skv/f///t7v///9/qaq3uwAAAAD//7e7OYXAAjmFwAI5hcACOYXAAriEPAK4hDwCuIQ8AriEPAL+hH8C/oR/Av6EfwL+hH8CgH3+BIB9/gSAff4EgH3+BMN9uATDfbgEw324BMN9uAQ/fTkFP305BT99OQU/fTkF") +}] +blend_shape_mode = 0 +shadow_mesh = SubResource("ArrayMesh_02qwi") + +[sub_resource type="ViewportTexture" id="ViewportTexture_yfpqh"] +viewport_path = NodePath("SubViewport3") + +[sub_resource type="ShaderMaterial" id="ShaderMaterial_bemc8"] +resource_local_to_scene = true +render_priority = 0 +shader = ExtResource("4_hm4ft") +shader_parameter/albedo = SubResource("ViewportTexture_yfpqh") +shader_parameter/jitter_z_coordinate = true +shader_parameter/jitter_depth_independent = true +shader_parameter/alpha_scissor = 1.0 + +[node name="Node3D" type="Node3D" unique_id=1786088061] + +[node name="Scene" type="Node3D" parent="." unique_id=1533098042] + +[node name="WorldEnvironment" type="WorldEnvironment" parent="." unique_id=1350446878] +environment = SubResource("Environment_gg6m7") + +[node name="DirectionalLight3D" type="DirectionalLight3D" parent="." unique_id=362020946] +transform = Transform3D(-0.8660254, -0.43301278, 0.25, 0, 0.49999997, 0.86602545, -0.50000006, 0.75, -0.43301266, 0, 0, 0) +shadow_enabled = true +directional_shadow_max_distance = 1.0 + +[node name="CSGMesh3D" type="CSGMesh3D" parent="." unique_id=1679858116] +layers = 8 +mesh = ExtResource("1_e1ilk") +material = ExtResource("2_uicd7") + +[node name="SubViewport" type="SubViewport" parent="." unique_id=1993539768] +transparent_bg = true +size = Vector2i(320, 240) + +[node name="Camera3D" type="Camera3D" parent="SubViewport" unique_id=165137694] +transform = Transform3D(-0.7255305, -0.40619677, 0.55552644, -2.5359103e-08, 0.80722827, 0.59023935, -0.68819, 0.4282367, -0.5856688, 12.024443, 12.675274, -16.443657) +cull_mask = 1047560 +projection = 1 +size = 46.279 + +[node name="SubViewport2" type="SubViewport" parent="." unique_id=1201223922] +transparent_bg = true +size = Vector2i(320, 240) + +[node name="Camera3D" type="Camera3D" parent="SubViewport2" unique_id=1732616409] +transform = Transform3D(-0.7255305, -0.40619677, 0.55552644, -2.5359103e-08, 0.80722827, 0.59023935, -0.68819, 0.4282367, -0.5856688, 12.024443, 12.675274, -16.443657) +cull_mask = 1047568 +projection = 1 +size = 46.279 + +[node name="SubViewport3" type="SubViewport" parent="." unique_id=2135320534] +size = Vector2i(320, 240) + +[node name="TextureRect" type="TextureRect" parent="SubViewport3" unique_id=828173881] +offset_right = 40.0 +offset_bottom = 40.0 +texture = SubResource("ViewportTexture_gg6m7") + +[node name="TextureRect2" type="TextureRect" parent="SubViewport3" unique_id=1787937781] +offset_right = 40.0 +offset_bottom = 40.0 +texture = SubResource("ViewportTexture_myma4") + +[node name="crt" parent="." unique_id=160903959 instance=ExtResource("3_yfpqh")] + +[node name="Cube" parent="crt" index="0" unique_id=354048758] +visible = false +layers = 16 + +[node name="Camera" parent="crt" index="1" unique_id=893808235] +cull_mask = 1047568 + +[node name="Cube_002" parent="crt" index="2" unique_id=980601324] +layers = 16 + +[node name="Cube_003" parent="crt" index="3" unique_id=159882388] +layers = 16 + +[node name="Cube_004" parent="crt" index="4" unique_id=1709101676] +layers = 16 + +[node name="Cube_005" parent="crt" index="5" unique_id=326657677] +layers = 16 + +[node name="Plane" parent="crt" index="6" unique_id=1575857192] +layers = 16 + +[node name="Cube_006" parent="crt" index="7" unique_id=1005745260] +layers = 16 + +[node name="Cube_007" parent="crt" index="8" unique_id=1370352225] +layers = 16 + +[node name="CSGMesh3D2" type="CSGMesh3D" parent="." unique_id=435094222] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -5.2234993, 0, -3.9383547) +layers = 16 +mesh = ExtResource("5_yfpqh") +material = ExtResource("6_bemc8") + +[node name="CSGMesh3D4" type="CSGMesh3D" parent="." unique_id=1491056449] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.3316536, 0, -3.8139849) +layers = 16 +mesh = ExtResource("5_yfpqh") +material = ExtResource("6_bemc8") + +[node name="CSGMesh3D6" type="CSGMesh3D" parent="." unique_id=2061347890] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -8.042532, 0, -3.979811) +layers = 16 +mesh = ExtResource("5_yfpqh") +material = ExtResource("6_bemc8") + +[node name="CSGMesh3D8" type="CSGMesh3D" parent="." unique_id=2036193578] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 8.291277, 0, -3.7725298) +layers = 16 +mesh = ExtResource("5_yfpqh") +material = ExtResource("6_bemc8") + +[node name="CSGMesh3D34" type="CSGMesh3D" parent="." unique_id=1862208915] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -8.042532, 0, -9.749714) +layers = 16 +mesh = ExtResource("5_yfpqh") +material = ExtResource("6_bemc8") + +[node name="CSGMesh3D36" type="CSGMesh3D" parent="." unique_id=699572748] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 8.291277, 0, -9.542433) +layers = 16 +mesh = ExtResource("5_yfpqh") +material = ExtResource("6_bemc8") + +[node name="CSGMesh3D15" type="CSGMesh3D" parent="." unique_id=517123821] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 8.291277, 0, 1.843663) +layers = 16 +mesh = ExtResource("5_yfpqh") +material = ExtResource("6_bemc8") + +[node name="CSGMesh3D19" type="CSGMesh3D" parent="." unique_id=366796490] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 3.0263176, 0, 7.898925) +layers = 16 +mesh = ExtResource("5_yfpqh") +material = ExtResource("6_bemc8") + +[node name="CSGMesh3D21" type="CSGMesh3D" parent="." unique_id=1362275418] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 5.5966144, 0, 7.898926) +layers = 16 +mesh = ExtResource("5_yfpqh") +material = ExtResource("6_bemc8") + +[node name="CSGMesh3D23" type="CSGMesh3D" parent="." unique_id=990271930] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -5.2234993, 0, 12.744411) +layers = 16 +mesh = ExtResource("5_yfpqh") +material = ExtResource("6_bemc8") + +[node name="CSGMesh3D25" type="CSGMesh3D" parent="." unique_id=1974128882] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.3316536, 0, 12.868781) +layers = 16 +mesh = ExtResource("5_yfpqh") +material = ExtResource("6_bemc8") + +[node name="CSGMesh3D29" type="CSGMesh3D" parent="." unique_id=1403086199] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 8.291277, 0, 12.910236) +layers = 16 +mesh = ExtResource("5_yfpqh") +material = ExtResource("6_bemc8") + +[node name="Cube" type="MeshInstance3D" parent="." unique_id=679301436] +transform = Transform3D(0.9332891, 0, -0.35912594, 0, 1, 0, 0.35912594, 0, 0.9332891, -0.021253854, 0, -0.11329776) +layers = 16 +mesh = SubResource("ArrayMesh_vgnnb") +surface_material_override/1 = SubResource("ShaderMaterial_bemc8") + +[editable path="crt"] diff --git a/Worlds/GreenPlanet/Levels/Bridge/bridge_widget.glb b/Worlds/GreenPlanet/Levels/Bridge/bridge_widget.glb new file mode 100644 index 0000000..7de8618 Binary files /dev/null and b/Worlds/GreenPlanet/Levels/Bridge/bridge_widget.glb differ diff --git a/Worlds/GreenPlanet/Levels/Bridge/bridge_widget.glb.import b/Worlds/GreenPlanet/Levels/Bridge/bridge_widget.glb.import new file mode 100644 index 0000000..6a5dee0 --- /dev/null +++ b/Worlds/GreenPlanet/Levels/Bridge/bridge_widget.glb.import @@ -0,0 +1,50 @@ +[remap] + +importer="scene" +importer_version=1 +type="PackedScene" +uid="uid://dxyx6rhy6fkc2" +path="res://.godot/imported/bridge_widget.glb-ac80e4548395483ae360d6203e10a1c2.scn" + +[deps] + +source_file="res://Worlds/GreenPlanet/Levels/Bridge/bridge_widget.glb" +dest_files=["res://.godot/imported/bridge_widget.glb-ac80e4548395483ae360d6203e10a1c2.scn"] + +[params] + +nodes/root_type="" +nodes/root_name="" +nodes/root_script=null +nodes/apply_root_scale=true +nodes/root_scale=1.0 +nodes/import_as_skeleton_bones=false +nodes/use_name_suffixes=true +nodes/use_node_type_suffixes=true +meshes/ensure_tangents=true +meshes/generate_lods=false +meshes/create_shadow_meshes=true +meshes/light_baking=1 +meshes/lightmap_texel_size=0.2 +meshes/force_disable_compression=false +skins/use_named_skins=true +animation/import=true +animation/fps=30 +animation/trimming=false +animation/remove_immutable_tracks=true +animation/import_rest_as_RESET=false +import_script/path="" +materials/extract=0 +materials/extract_format=0 +materials/extract_path="" +_subresources={ +"materials": { +"Material.001": { +"use_external/enabled": true, +"use_external/fallback_path": "res://Shaders/wireframe1.tres", +"use_external/path": "uid://wr1vi6yfhxhg" +} +} +} +gltf/naming_version=2 +gltf/embedded_image_handling=1 diff --git a/brdigett.mtl b/brdigett.mtl new file mode 100644 index 0000000..1ea88df --- /dev/null +++ b/brdigett.mtl @@ -0,0 +1,12 @@ +# Blender 5.0.1 MTL File: 'brdigett.blend' +# www.blender.org + +newmtl Material.001 +Ns 250.000000 +Ka 1.000000 1.000000 1.000000 +Kd 0.800000 0.800000 0.800000 +Ks 0.500000 0.500000 0.500000 +Ke 0.000000 0.000000 0.000000 +Ni 1.500000 +d 1.000000 +illum 2 diff --git a/brdigett.obj b/brdigett.obj new file mode 100644 index 0000000..4ffd7c9 --- /dev/null +++ b/brdigett.obj @@ -0,0 +1,1543 @@ +# Blender 5.0.1 +# www.blender.org +mtllib brdigett.mtl +o Bridgett +v -14.784871 -2.968069 23.146152 +v -14.784871 -2.609267 23.146152 +v -14.784871 -2.968069 -30.926582 +v -14.784871 -2.609267 -30.926582 +v 14.784871 -2.968069 23.146152 +v 14.784871 -2.609267 23.146152 +v 14.784871 -2.968069 -30.926582 +v 14.784871 -2.609267 -30.926582 +v -14.784871 -2.968069 -22.530415 +v -14.784871 -2.968069 14.749989 +v -14.784871 -0.968069 14.749985 +v -14.784871 -0.968069 -22.530418 +v 14.784871 -2.968069 14.749985 +v 14.784871 -2.968069 -22.530418 +v 14.784871 -0.968069 -22.530415 +v 14.784871 -0.968069 14.749989 +v 8.762853 -2.968069 -30.926582 +v -8.762853 -2.968069 -30.926582 +v -8.762853 -2.609267 -30.926582 +v 8.762853 -2.609267 -30.926582 +v -8.762853 -2.968069 23.146152 +v 8.762853 -2.968069 23.146152 +v 8.762853 -2.609267 23.146152 +v -8.762853 -2.609267 23.146152 +v -8.762853 -0.968069 -22.530416 +v 8.762853 -0.968069 -22.530416 +v -8.762853 -0.968069 14.749987 +v 8.762853 -0.968069 14.749987 +v 8.762853 -2.968069 -22.530416 +v -8.762853 -2.968069 -22.530416 +v 8.762853 -2.968069 14.749987 +v -8.762853 -2.968069 14.749987 +v -11.773862 -2.968069 -30.926582 +v -11.773862 -2.609267 23.146152 +v -11.773862 -2.968069 -22.530416 +v -11.773862 -2.968069 14.749987 +v -11.773862 -2.609267 -30.926582 +v -11.773862 -2.968069 23.146152 +v -11.773862 -0.968069 -22.530416 +v -11.773862 -0.968069 14.749987 +v 11.773862 -2.609267 -30.926582 +v 11.773862 -2.968069 23.146152 +v 11.773862 -0.968069 -22.530416 +v 11.773862 -0.968069 14.749987 +v 11.773862 -2.968069 -30.926582 +v 11.773862 -2.609267 23.146152 +v 11.773862 -2.968069 -22.530416 +v 11.773862 -2.968069 14.749987 +v -14.784871 6.445646 12.486265 +v -14.784871 6.445646 -20.266697 +v 14.784871 6.445646 -20.266695 +v 14.784871 6.445646 12.486267 +v 11.773862 6.445646 -20.266697 +v 11.773862 6.445646 12.486267 +v -11.773862 6.445646 -20.266697 +v -11.773862 6.445646 12.486267 +v -11.773862 1.602019 -21.745661 +v -8.762853 1.657597 -21.619753 +v -11.773862 1.602019 13.965231 +v -8.762853 1.657597 13.839323 +v 8.762853 1.657597 -21.619753 +v 8.762853 1.657597 13.839323 +v 11.773862 1.589649 -21.749437 +v 11.773862 1.589649 13.969007 +v 14.784871 1.589649 -21.749435 +v 14.784871 1.589649 13.969009 +v -14.784871 1.602019 13.965227 +v -14.784871 1.602019 -21.745661 +v -14.784871 -2.968069 -13.210314 +v -14.784871 -2.968069 -3.890213 +v -14.784871 -2.968069 5.429888 +v -14.784871 -0.968069 5.429884 +v -14.784871 -0.968069 -3.890217 +v -14.784871 -0.968069 -13.210318 +v 14.784871 -2.968069 5.429884 +v 14.784871 -2.968069 -3.890217 +v 14.784871 -2.968069 -13.210318 +v 14.784871 -0.968069 -13.210314 +v 14.784871 -0.968069 -3.890213 +v 14.784871 -0.968069 5.429888 +v -8.762853 -2.968069 -13.210316 +v -8.762853 -2.968069 -3.890215 +v -8.762853 -2.968069 5.429886 +v 8.762853 -2.968069 -13.210316 +v 8.762853 -2.968069 -3.890215 +v 8.762853 -2.968069 5.429886 +v 8.762853 -0.968069 -13.210316 +v 8.762853 -0.968069 -3.890215 +v 8.762853 -0.968069 5.429886 +v -8.762853 -0.968069 -13.210316 +v -8.762853 -0.968069 -3.890215 +v -8.762853 -0.968069 5.429886 +v -11.773862 -2.968069 -13.210316 +v -11.773862 -2.968069 -3.890215 +v -11.773862 -2.968069 5.429886 +v 11.773862 -2.968069 -13.210316 +v 11.773862 -2.968069 -3.890215 +v 11.773862 -2.968069 5.429886 +v -14.784871 6.445646 4.298025 +v -14.784871 6.445646 -3.890216 +v -14.784871 6.445646 -12.078456 +v 14.784871 6.445646 -12.078455 +v 14.784871 6.445646 -3.890214 +v 14.784871 6.445646 4.298026 +v -11.773862 6.445646 -12.078456 +v -11.773862 6.445646 -3.890214 +v -11.773862 6.445646 4.298026 +v 11.773862 6.445646 -12.078456 +v 11.773862 6.445646 -3.890214 +v 11.773862 6.445646 4.298026 +v 8.762853 1.657597 -12.754984 +v 8.762853 1.657597 -3.890215 +v 8.762853 1.657597 4.974554 +v -8.762853 1.657597 -12.754984 +v -8.762853 1.657597 -3.890215 +v -8.762853 1.657597 4.974554 +v -11.773862 1.602019 -12.817938 +v -11.773862 1.602019 -3.890215 +v -11.773862 1.602019 5.037508 +v 11.773862 1.589649 -12.819826 +v 11.773862 1.589649 -3.890215 +v 11.773862 1.589649 5.039396 +v 14.784871 1.589649 -12.819824 +v 14.784871 1.589649 -3.890213 +v 14.784871 1.589649 5.039398 +v -14.784871 1.602019 5.037505 +v -14.784871 1.602019 -3.890217 +v -14.784871 1.602019 -12.817939 +v 0.000000 -2.968069 -30.926582 +v 0.000000 -2.609267 -30.926582 +v 0.000000 -2.968069 23.146152 +v 0.000000 -2.609267 23.146152 +v 0.000000 -0.968069 -22.530416 +v 0.000000 -0.968069 14.749987 +v 0.000000 -2.968069 -22.530416 +v 0.000000 -2.968069 14.749987 +v 0.000000 -0.968069 -13.210316 +v 0.000000 -0.968069 -3.890215 +v 0.000000 -0.968069 5.429886 +v 0.000000 -2.968069 -13.210316 +v 0.000000 -2.968069 -3.890215 +v 0.000000 -2.968069 5.429886 +v -14.784871 -2.968069 18.948071 +v 14.784871 -1.788668 18.948071 +v -14.784871 -1.788668 18.948069 +v 14.784871 -2.968069 18.948069 +v 8.762853 -1.788668 18.948069 +v -8.762853 -1.788668 18.948069 +v -8.762853 -2.968069 18.948069 +v 8.762853 -2.968069 18.948069 +v -11.773862 -2.968069 18.948069 +v -11.773862 -1.788668 18.948069 +v 11.773862 -1.788668 18.948069 +v 11.773862 -2.968069 18.948069 +v 0.000000 -2.968069 18.948069 +v 0.000000 -1.788668 18.948069 +v -14.784871 -1.788668 -26.728500 +v 14.784871 -2.968069 -26.728500 +v -14.784871 -2.968069 -26.728498 +v 14.784871 -1.788668 -26.728498 +v -8.762853 -2.968069 -26.728498 +v 8.762853 -2.968069 -26.728498 +v 8.762853 -1.788668 -26.728498 +v -8.762853 -1.788668 -26.728498 +v -11.773862 -2.968069 -26.728498 +v -11.773862 -1.788668 -26.728498 +v 11.773862 -1.788668 -26.728498 +v 11.773862 -2.968069 -26.728498 +v 0.000000 -1.788668 -26.728498 +v 0.000000 -2.968069 -26.728498 +v -14.784871 -2.968069 18.948071 +v -14.784871 -2.968069 18.948071 +v -14.784871 -2.968069 18.948071 +v -14.784871 -2.968069 23.146152 +v -14.784871 -2.968069 23.146152 +v -14.784871 -2.609267 23.146152 +v -14.784871 -2.609267 23.146152 +v -14.784871 -1.788668 -26.728500 +v -14.784871 -1.788668 -26.728500 +v -14.784871 -1.788668 -26.728500 +v -14.784871 -2.609267 -30.926582 +v -14.784871 -2.609267 -30.926582 +v -14.784871 -2.968069 -30.926582 +v -14.784871 -2.968069 -30.926582 +v -11.773862 -2.968069 -30.926582 +v -11.773862 -2.968069 -30.926582 +v -11.773862 -2.968069 -30.926582 +v 11.773862 -2.609267 -30.926582 +v 11.773862 -2.609267 -30.926582 +v 11.773862 -2.609267 -30.926582 +v 14.784871 -2.609267 -30.926582 +v 14.784871 -2.609267 -30.926582 +v 14.784871 -2.968069 -30.926582 +v 14.784871 -2.968069 -30.926582 +v 14.784871 -2.968069 -26.728500 +v 14.784871 -2.968069 -26.728500 +v 14.784871 -2.968069 -26.728500 +v 14.784871 -1.788668 18.948071 +v 14.784871 -1.788668 18.948071 +v 14.784871 -1.788668 18.948071 +v 14.784871 -2.609267 23.146152 +v 14.784871 -2.609267 23.146152 +v 14.784871 -2.968069 23.146152 +v 14.784871 -2.968069 23.146152 +v 11.773862 -2.968069 23.146152 +v 11.773862 -2.968069 23.146152 +v 11.773862 -2.968069 23.146152 +v -11.773862 -2.609267 23.146152 +v -11.773862 -2.609267 23.146152 +v -11.773862 -2.609267 23.146152 +v -14.784871 -2.968069 -26.728498 +v -14.784871 -2.968069 -26.728498 +v -14.784871 -2.968069 -26.728498 +v -14.784871 -2.968069 -22.530415 +v -14.784871 -2.968069 -22.530415 +v -14.784871 -2.968069 -22.530415 +v -14.784871 -2.968069 5.429888 +v -14.784871 -2.968069 5.429888 +v -14.784871 -2.968069 5.429888 +v -14.784871 -2.968069 14.749989 +v -14.784871 -2.968069 14.749989 +v -14.784871 -2.968069 14.749989 +v -14.784871 -1.788668 18.948069 +v -14.784871 -1.788668 18.948069 +v -14.784871 -1.788668 18.948069 +v -14.784871 -0.968069 14.749985 +v -14.784871 -0.968069 14.749985 +v -14.784871 -0.968069 14.749985 +v -14.784871 -0.968069 14.749985 +v -14.784871 -0.968069 -13.210318 +v -14.784871 -0.968069 -13.210318 +v -14.784871 -0.968069 -13.210318 +v -14.784871 -0.968069 -22.530418 +v -14.784871 -0.968069 -22.530418 +v -14.784871 -0.968069 -22.530418 +v -14.784871 -0.968069 -22.530418 +v 14.784871 -2.968069 18.948069 +v 14.784871 -2.968069 18.948069 +v 14.784871 -2.968069 18.948069 +v 14.784871 -2.968069 14.749985 +v 14.784871 -2.968069 14.749985 +v 14.784871 -2.968069 14.749985 +v 14.784871 -2.968069 -13.210318 +v 14.784871 -2.968069 -13.210318 +v 14.784871 -2.968069 -13.210318 +v 14.784871 -2.968069 -22.530418 +v 14.784871 -2.968069 -22.530418 +v 14.784871 -2.968069 -22.530418 +v 14.784871 -1.788668 -26.728498 +v 14.784871 -1.788668 -26.728498 +v 14.784871 -1.788668 -26.728498 +v 14.784871 -0.968069 -22.530415 +v 14.784871 -0.968069 -22.530415 +v 14.784871 -0.968069 -22.530415 +v 14.784871 -0.968069 -22.530415 +v 14.784871 -0.968069 5.429888 +v 14.784871 -0.968069 5.429888 +v 14.784871 -0.968069 5.429888 +v 14.784871 -0.968069 14.749989 +v 14.784871 -0.968069 14.749989 +v 14.784871 -0.968069 14.749989 +v 14.784871 -0.968069 14.749989 +v 11.773862 -0.968069 -22.530416 +v 11.773862 -0.968069 -22.530416 +v 11.773862 -0.968069 -22.530416 +v 11.773862 -0.968069 14.749987 +v 11.773862 -0.968069 14.749987 +v 11.773862 -0.968069 14.749987 +v -11.773862 -2.968069 -22.530416 +v -11.773862 -2.968069 -22.530416 +v -11.773862 -2.968069 -22.530416 +v -11.773862 -2.968069 14.749987 +v -11.773862 -2.968069 14.749987 +v -11.773862 -2.968069 14.749987 +v 11.773862 -2.968069 -30.926582 +v 11.773862 -2.968069 -30.926582 +v 11.773862 -2.968069 -30.926582 +v 8.762853 -2.968069 -30.926582 +v 8.762853 -2.968069 -30.926582 +v 8.762853 -2.968069 -30.926582 +v 0.000000 -2.968069 -30.926582 +v 0.000000 -2.968069 -30.926582 +v 0.000000 -2.968069 -30.926582 +v -8.762853 -2.968069 -30.926582 +v -8.762853 -2.968069 -30.926582 +v -8.762853 -2.968069 -30.926582 +v -11.773862 -2.609267 -30.926582 +v -11.773862 -2.609267 -30.926582 +v -11.773862 -2.609267 -30.926582 +v -8.762853 -2.609267 -30.926582 +v -8.762853 -2.609267 -30.926582 +v -8.762853 -2.609267 -30.926582 +v 0.000000 -2.609267 -30.926582 +v 0.000000 -2.609267 -30.926582 +v 0.000000 -2.609267 -30.926582 +v 8.762853 -2.609267 -30.926582 +v 8.762853 -2.609267 -30.926582 +v 8.762853 -2.609267 -30.926582 +v -11.773862 -2.968069 23.146152 +v -11.773862 -2.968069 23.146152 +v -11.773862 -2.968069 23.146152 +v -8.762853 -2.968069 23.146152 +v -8.762853 -2.968069 23.146152 +v -8.762853 -2.968069 23.146152 +v 0.000000 -2.968069 23.146152 +v 0.000000 -2.968069 23.146152 +v 0.000000 -2.968069 23.146152 +v 8.762853 -2.968069 23.146152 +v 8.762853 -2.968069 23.146152 +v 8.762853 -2.968069 23.146152 +v 11.773862 -2.609267 23.146152 +v 11.773862 -2.609267 23.146152 +v 11.773862 -2.609267 23.146152 +v 8.762853 -2.609267 23.146152 +v 8.762853 -2.609267 23.146152 +v 8.762853 -2.609267 23.146152 +v 0.000000 -2.609267 23.146152 +v 0.000000 -2.609267 23.146152 +v 0.000000 -2.609267 23.146152 +v -8.762853 -2.609267 23.146152 +v -8.762853 -2.609267 23.146152 +v -8.762853 -2.609267 23.146152 +v -11.773862 -0.968069 -22.530416 +v -11.773862 -0.968069 -22.530416 +v -11.773862 -0.968069 -22.530416 +v -8.762853 -0.968069 -22.530416 +v -8.762853 -0.968069 -22.530416 +v -8.762853 -0.968069 -22.530416 +v -8.762853 -0.968069 -22.530416 +v 0.000000 -0.968069 -22.530416 +v 0.000000 -0.968069 -22.530416 +v 0.000000 -0.968069 -22.530416 +v 8.762853 -0.968069 -22.530416 +v 8.762853 -0.968069 -22.530416 +v 8.762853 -0.968069 -22.530416 +v 8.762853 -0.968069 -22.530416 +v -11.773862 -0.968069 14.749987 +v -11.773862 -0.968069 14.749987 +v -11.773862 -0.968069 14.749987 +v -8.762853 -0.968069 14.749987 +v -8.762853 -0.968069 14.749987 +v -8.762853 -0.968069 14.749987 +v -8.762853 -0.968069 14.749987 +v 0.000000 -0.968069 14.749987 +v 0.000000 -0.968069 14.749987 +v 0.000000 -0.968069 14.749987 +v 8.762853 -0.968069 14.749987 +v 8.762853 -0.968069 14.749987 +v 8.762853 -0.968069 14.749987 +v 8.762853 -0.968069 14.749987 +v 11.773862 -2.968069 -22.530416 +v 11.773862 -2.968069 -22.530416 +v 11.773862 -2.968069 -22.530416 +v 8.762853 -2.968069 -22.530416 +v 8.762853 -2.968069 -22.530416 +v 8.762853 -2.968069 -22.530416 +v 0.000000 -2.968069 -22.530416 +v 0.000000 -2.968069 -22.530416 +v 0.000000 -2.968069 -22.530416 +v -8.762853 -2.968069 -22.530416 +v -8.762853 -2.968069 -22.530416 +v -8.762853 -2.968069 -22.530416 +v 11.773862 -2.968069 14.749987 +v 11.773862 -2.968069 14.749987 +v 11.773862 -2.968069 14.749987 +v 8.762853 -2.968069 14.749987 +v 8.762853 -2.968069 14.749987 +v 8.762853 -2.968069 14.749987 +v 0.000000 -2.968069 14.749987 +v 0.000000 -2.968069 14.749987 +v 0.000000 -2.968069 14.749987 +v -8.762853 -2.968069 14.749987 +v -8.762853 -2.968069 14.749987 +v -8.762853 -2.968069 14.749987 +v -8.762853 -2.968069 5.429886 +v -8.762853 -2.968069 5.429886 +v -8.762853 -2.968069 5.429886 +v 8.762853 -2.968069 5.429886 +v 8.762853 -2.968069 5.429886 +v 8.762853 -2.968069 5.429886 +v -8.762853 -2.968069 -26.728498 +v -8.762853 -2.968069 -26.728498 +v -8.762853 -2.968069 -26.728498 +v 8.762853 -2.968069 -26.728498 +v 8.762853 -2.968069 -26.728498 +v 8.762853 -2.968069 -26.728498 +v 8.762853 -0.968069 5.429886 +v 8.762853 -0.968069 5.429886 +v 8.762853 -0.968069 5.429886 +v -8.762853 -0.968069 5.429886 +v -8.762853 -0.968069 5.429886 +v -8.762853 -0.968069 5.429886 +v 8.762853 -1.788668 -26.728498 +v 8.762853 -1.788668 -26.728498 +v 8.762853 -1.788668 -26.728498 +v -8.762853 -1.788668 -26.728498 +v -8.762853 -1.788668 -26.728498 +v -8.762853 -1.788668 -26.728498 +v 8.762853 -1.788668 18.948069 +v 8.762853 -1.788668 18.948069 +v 8.762853 -1.788668 18.948069 +v -8.762853 -1.788668 18.948069 +v -8.762853 -1.788668 18.948069 +v -8.762853 -1.788668 18.948069 +v -8.762853 -2.968069 18.948069 +v -8.762853 -2.968069 18.948069 +v -8.762853 -2.968069 18.948069 +v 8.762853 -2.968069 18.948069 +v 8.762853 -2.968069 18.948069 +v 8.762853 -2.968069 18.948069 +v -11.773862 -2.968069 18.948069 +v -11.773862 -2.968069 18.948069 +v -11.773862 -2.968069 18.948069 +v -11.773862 -2.968069 -26.728498 +v -11.773862 -2.968069 -26.728498 +v -11.773862 -2.968069 -26.728498 +v -11.773862 -2.968069 5.429886 +v -11.773862 -2.968069 5.429886 +v -11.773862 -2.968069 5.429886 +v -11.773862 -1.788668 -26.728498 +v -11.773862 -1.788668 -26.728498 +v -11.773862 -1.788668 -26.728498 +v -11.773862 -1.788668 18.948069 +v -11.773862 -1.788668 18.948069 +v -11.773862 -1.788668 18.948069 +v 11.773862 -1.788668 18.948069 +v 11.773862 -1.788668 18.948069 +v 11.773862 -1.788668 18.948069 +v 11.773862 -1.788668 -26.728498 +v 11.773862 -1.788668 -26.728498 +v 11.773862 -1.788668 -26.728498 +v 11.773862 -2.968069 5.429886 +v 11.773862 -2.968069 5.429886 +v 11.773862 -2.968069 5.429886 +v 11.773862 -2.968069 -26.728498 +v 11.773862 -2.968069 -26.728498 +v 11.773862 -2.968069 -26.728498 +v 11.773862 -2.968069 18.948069 +v 11.773862 -2.968069 18.948069 +v 11.773862 -2.968069 18.948069 +v -14.784871 6.445646 -12.078456 +v -14.784871 6.445646 -12.078456 +v -14.784871 6.445646 -12.078456 +v -14.784871 6.445646 -20.266697 +v -14.784871 6.445646 -20.266697 +v 14.784871 6.445646 4.298026 +v 14.784871 6.445646 4.298026 +v 14.784871 6.445646 4.298026 +v 14.784871 6.445646 12.486267 +v 14.784871 6.445646 12.486267 +v 11.773862 6.445646 -20.266697 +v 11.773862 6.445646 -20.266697 +v 14.784871 6.445646 -20.266695 +v 14.784871 6.445646 -20.266695 +v 11.773862 6.445646 12.486267 +v 11.773862 6.445646 12.486267 +v -11.773862 6.445646 -20.266697 +v -11.773862 6.445646 -20.266697 +v -14.784871 6.445646 12.486265 +v -14.784871 6.445646 12.486265 +v -11.773862 6.445646 12.486267 +v -11.773862 6.445646 12.486267 +v -11.773862 6.445646 4.298026 +v -11.773862 6.445646 4.298026 +v -11.773862 6.445646 4.298026 +v 11.773862 6.445646 4.298026 +v 11.773862 6.445646 4.298026 +v 11.773862 6.445646 4.298026 +v 14.784871 1.589649 -21.749435 +v 14.784871 1.589649 -21.749435 +v 14.784871 1.589649 -21.749435 +v -14.784871 1.602019 13.965227 +v -14.784871 1.602019 13.965227 +v -14.784871 1.602019 13.965227 +v 14.784871 1.589649 13.969009 +v 14.784871 1.589649 13.969009 +v 14.784871 1.589649 13.969009 +v -14.784871 1.602019 -21.745661 +v -14.784871 1.602019 -21.745661 +v -14.784871 1.602019 -21.745661 +v -11.773862 1.602019 -21.745661 +v -11.773862 1.602019 -21.745661 +v -11.773862 1.602019 -21.745661 +v -11.773862 1.602019 -21.745661 +v -8.762853 1.657597 -21.619753 +v -8.762853 1.657597 -21.619753 +v -11.773862 1.602019 13.965231 +v -11.773862 1.602019 13.965231 +v -11.773862 1.602019 13.965231 +v -11.773862 1.602019 13.965231 +v -8.762853 1.657597 13.839323 +v -8.762853 1.657597 13.839323 +v 8.762853 1.657597 4.974554 +v 8.762853 1.657597 4.974554 +v 8.762853 1.657597 4.974554 +v 8.762853 1.657597 13.839323 +v 8.762853 1.657597 13.839323 +v -8.762853 1.657597 4.974554 +v -8.762853 1.657597 4.974554 +v -8.762853 1.657597 4.974554 +v -11.773862 1.602019 5.037508 +v -11.773862 1.602019 5.037508 +v -11.773862 1.602019 5.037508 +v 8.762853 1.657597 -21.619753 +v 8.762853 1.657597 -21.619753 +v 11.773862 1.589649 -21.749437 +v 11.773862 1.589649 -21.749437 +v 11.773862 1.589649 -21.749437 +v 11.773862 1.589649 -21.749437 +v 11.773862 1.589649 13.969007 +v 11.773862 1.589649 13.969007 +v 11.773862 1.589649 13.969007 +v 11.773862 1.589649 13.969007 +v 11.773862 1.589649 5.039396 +v 11.773862 1.589649 5.039396 +v 11.773862 1.589649 5.039396 +v 14.784871 1.589649 5.039398 +v 14.784871 1.589649 5.039398 +v 14.784871 1.589649 5.039398 +v -14.784871 1.602019 -12.817939 +v -14.784871 1.602019 -12.817939 +v -14.784871 1.602019 -12.817939 +v -14.784871 -2.968069 -13.210314 +v -14.784871 -2.968069 -13.210314 +v -14.784871 -2.968069 -13.210314 +v -14.784871 -2.968069 -3.890213 +v -14.784871 -2.968069 -3.890213 +v -14.784871 -2.968069 -3.890213 +v -14.784871 -0.968069 5.429884 +v -14.784871 -0.968069 5.429884 +v -14.784871 -0.968069 5.429884 +v -14.784871 -0.968069 -3.890217 +v -14.784871 -0.968069 -3.890217 +v -14.784871 -0.968069 -3.890217 +v 14.784871 -2.968069 5.429884 +v 14.784871 -2.968069 5.429884 +v 14.784871 -2.968069 5.429884 +v 14.784871 -2.968069 -3.890217 +v 14.784871 -2.968069 -3.890217 +v 14.784871 -2.968069 -3.890217 +v 14.784871 -0.968069 -13.210314 +v 14.784871 -0.968069 -13.210314 +v 14.784871 -0.968069 -13.210314 +v 14.784871 -0.968069 -3.890213 +v 14.784871 -0.968069 -3.890213 +v 14.784871 -0.968069 -3.890213 +v -8.762853 -2.968069 -13.210316 +v -8.762853 -2.968069 -13.210316 +v -8.762853 -2.968069 -13.210316 +v -8.762853 -2.968069 -3.890215 +v -8.762853 -2.968069 -3.890215 +v -8.762853 -2.968069 -3.890215 +v 8.762853 -2.968069 -13.210316 +v 8.762853 -2.968069 -13.210316 +v 8.762853 -2.968069 -13.210316 +v 8.762853 -2.968069 -3.890215 +v 8.762853 -2.968069 -3.890215 +v 8.762853 -2.968069 -3.890215 +v 8.762853 -0.968069 -13.210316 +v 8.762853 -0.968069 -13.210316 +v 8.762853 -0.968069 -13.210316 +v 8.762853 -0.968069 -3.890215 +v 8.762853 -0.968069 -3.890215 +v 8.762853 -0.968069 -3.890215 +v -8.762853 -0.968069 -13.210316 +v -8.762853 -0.968069 -13.210316 +v -8.762853 -0.968069 -13.210316 +v -8.762853 -0.968069 -3.890215 +v -8.762853 -0.968069 -3.890215 +v -8.762853 -0.968069 -3.890215 +v -11.773862 -2.968069 -13.210316 +v -11.773862 -2.968069 -13.210316 +v -11.773862 -2.968069 -13.210316 +v -11.773862 -2.968069 -3.890215 +v -11.773862 -2.968069 -3.890215 +v -11.773862 -2.968069 -3.890215 +v 11.773862 -2.968069 -13.210316 +v 11.773862 -2.968069 -13.210316 +v 11.773862 -2.968069 -13.210316 +v 11.773862 -2.968069 -3.890215 +v 11.773862 -2.968069 -3.890215 +v 11.773862 -2.968069 -3.890215 +v -14.784871 6.445646 4.298025 +v -14.784871 6.445646 4.298025 +v -14.784871 6.445646 4.298025 +v -14.784871 6.445646 -3.890216 +v -14.784871 6.445646 -3.890216 +v -14.784871 6.445646 -3.890216 +v 14.784871 6.445646 -12.078455 +v 14.784871 6.445646 -12.078455 +v 14.784871 6.445646 -12.078455 +v 14.784871 6.445646 -3.890214 +v 14.784871 6.445646 -3.890214 +v 14.784871 6.445646 -3.890214 +v -11.773862 6.445646 -12.078456 +v -11.773862 6.445646 -12.078456 +v -11.773862 6.445646 -12.078456 +v -11.773862 6.445646 -3.890214 +v -11.773862 6.445646 -3.890214 +v -11.773862 6.445646 -3.890214 +v 11.773862 6.445646 -12.078456 +v 11.773862 6.445646 -12.078456 +v 11.773862 6.445646 -12.078456 +v 11.773862 6.445646 -3.890214 +v 11.773862 6.445646 -3.890214 +v 11.773862 6.445646 -3.890214 +v 8.762853 1.657597 -12.754984 +v 8.762853 1.657597 -12.754984 +v 8.762853 1.657597 -12.754984 +v 8.762853 1.657597 -3.890215 +v 8.762853 1.657597 -3.890215 +v 8.762853 1.657597 -3.890215 +v -8.762853 1.657597 -12.754984 +v -8.762853 1.657597 -12.754984 +v -8.762853 1.657597 -12.754984 +v -8.762853 1.657597 -3.890215 +v -8.762853 1.657597 -3.890215 +v -8.762853 1.657597 -3.890215 +v -11.773862 1.602019 -12.817938 +v -11.773862 1.602019 -12.817938 +v -11.773862 1.602019 -12.817938 +v -11.773862 1.602019 -3.890215 +v -11.773862 1.602019 -3.890215 +v -11.773862 1.602019 -3.890215 +v 11.773862 1.589649 -12.819826 +v 11.773862 1.589649 -12.819826 +v 11.773862 1.589649 -12.819826 +v 11.773862 1.589649 -3.890215 +v 11.773862 1.589649 -3.890215 +v 11.773862 1.589649 -3.890215 +v 14.784871 1.589649 -12.819824 +v 14.784871 1.589649 -12.819824 +v 14.784871 1.589649 -12.819824 +v 14.784871 1.589649 -3.890213 +v 14.784871 1.589649 -3.890213 +v 14.784871 1.589649 -3.890213 +v -14.784871 1.602019 5.037505 +v -14.784871 1.602019 5.037505 +v -14.784871 1.602019 5.037505 +v -14.784871 1.602019 -3.890217 +v -14.784871 1.602019 -3.890217 +v -14.784871 1.602019 -3.890217 +v 0.000000 -0.968069 -13.210316 +v 0.000000 -0.968069 -13.210316 +v 0.000000 -0.968069 -13.210316 +v 0.000000 -0.968069 -3.890215 +v 0.000000 -0.968069 -3.890215 +v 0.000000 -0.968069 -3.890215 +v 0.000000 -0.968069 5.429886 +v 0.000000 -0.968069 5.429886 +v 0.000000 -0.968069 5.429886 +v 0.000000 -2.968069 -13.210316 +v 0.000000 -2.968069 -13.210316 +v 0.000000 -2.968069 -13.210316 +v 0.000000 -2.968069 -3.890215 +v 0.000000 -2.968069 -3.890215 +v 0.000000 -2.968069 -3.890215 +v 0.000000 -2.968069 5.429886 +v 0.000000 -2.968069 5.429886 +v 0.000000 -2.968069 5.429886 +v 0.000000 -2.968069 18.948069 +v 0.000000 -2.968069 18.948069 +v 0.000000 -2.968069 18.948069 +v 0.000000 -1.788668 18.948069 +v 0.000000 -1.788668 18.948069 +v 0.000000 -1.788668 18.948069 +v 0.000000 -1.788668 -26.728498 +v 0.000000 -1.788668 -26.728498 +v 0.000000 -1.788668 -26.728498 +v 0.000000 -2.968069 -26.728498 +v 0.000000 -2.968069 -26.728498 +v 0.000000 -2.968069 -26.728498 +v -14.784871 -2.968069 18.948071 +v -14.784871 -2.968069 23.146152 +v -14.784871 -2.609267 -30.926582 +v -11.773862 -2.968069 -30.926582 +v 11.773862 -2.609267 -30.926582 +v 14.784871 -2.968069 -30.926582 +v 14.784871 -2.968069 -26.728500 +v 14.784871 -2.609267 23.146152 +v 11.773862 -2.968069 23.146152 +v -11.773862 -2.609267 23.146152 +v -14.784871 -2.968069 -26.728498 +v -14.784871 -2.968069 5.429888 +v -14.784871 -1.788668 18.948069 +v -14.784871 -0.968069 -13.210318 +v 14.784871 -2.968069 18.948069 +v 14.784871 -2.968069 -13.210318 +v 14.784871 -1.788668 -26.728498 +v 14.784871 -0.968069 5.429888 +v 11.773862 -0.968069 -22.530416 +v 14.784871 -0.968069 14.749989 +v -11.773862 -2.968069 -22.530416 +v -11.773862 -2.968069 14.749987 +v 14.784871 -2.968069 -22.530418 +v 14.784871 -2.968069 14.749985 +v -14.784871 -2.968069 14.749989 +v -14.784871 -2.968069 -22.530415 +v 11.773862 -2.968069 -30.926582 +v 0.000000 -2.968069 -30.926582 +v -11.773862 -2.609267 -30.926582 +v 0.000000 -2.609267 -30.926582 +v -11.773862 -2.968069 23.146152 +v 0.000000 -2.968069 23.146152 +v 11.773862 -2.609267 23.146152 +v 0.000000 -2.609267 23.146152 +v -8.762853 -0.968069 -22.530416 +v 0.000000 -0.968069 -22.530416 +v -8.762853 -0.968069 14.749987 +v 8.762853 -0.968069 14.749987 +v 8.762853 -2.968069 -22.530416 +v 0.000000 -2.968069 -22.530416 +v 8.762853 -2.968069 14.749987 +v -8.762853 -2.968069 14.749987 +v -8.762853 -2.968069 5.429886 +v 8.762853 -2.968069 5.429886 +v -8.762853 -2.968069 -26.728498 +v 8.762853 -2.968069 -26.728498 +v 8.762853 -0.968069 5.429886 +v -8.762853 -0.968069 5.429886 +v 8.762853 -1.788668 -26.728498 +v -8.762853 -1.788668 -26.728498 +v 8.762853 -1.788668 18.948069 +v -8.762853 -1.788668 18.948069 +v -8.762853 -2.968069 18.948069 +v 8.762853 -2.968069 18.948069 +v 8.762853 -2.968069 23.146152 +v -8.762853 -2.968069 23.146152 +v -8.762853 -2.968069 -30.926582 +v 8.762853 -2.968069 -30.926582 +v -8.762853 -2.609267 23.146152 +v -11.773862 -2.968069 -22.530416 +v -11.773862 -2.968069 14.749987 +v -14.784871 -2.609267 -30.926582 +v -14.784871 -0.968069 -22.530418 +v -11.773862 -0.968069 14.749987 +v -11.773862 -1.788668 -26.728498 +v -11.773862 -2.609267 23.146152 +v 8.762853 -2.609267 -30.926582 +v 11.773862 -0.968069 -22.530416 +v 8.762853 -0.968069 14.749987 +v 14.784871 -2.609267 23.146152 +v 14.784871 -2.968069 -22.530418 +v 14.784871 -2.968069 14.749985 +v 11.773862 -2.609267 23.146152 +v 11.773862 -2.968069 5.429886 +v 11.773862 -2.968069 -26.728498 +v -14.784871 6.445646 -20.266697 +v 14.784871 6.445646 12.486267 +v 11.773862 6.445646 -20.266697 +v -11.773862 6.445646 -20.266697 +v -11.773862 6.445646 12.486267 +v -11.773862 6.445646 4.298026 +v 11.773862 6.445646 4.298026 +v 14.784871 1.589649 -21.749435 +v -14.784871 1.602019 13.965227 +v 14.784871 1.589649 13.969009 +v -14.784871 -0.968069 -22.530418 +v -11.773862 1.602019 -21.745661 +v -11.773862 1.602019 13.965231 +v 8.762853 1.657597 13.839323 +v -8.762853 1.657597 13.839323 +v -11.773862 1.602019 5.037508 +v 11.773862 1.589649 -21.749437 +v 11.773862 1.589649 5.039396 +v -8.762853 1.657597 -21.619753 +v 8.762853 -0.968069 -22.530416 +v 11.773862 1.589649 13.969007 +v 8.762853 1.657597 13.839323 +v 14.784871 1.589649 -21.749435 +v -14.784871 1.602019 13.965227 +v 14.784871 1.589649 13.969009 +v -14.784871 1.602019 -21.745661 +v -14.784871 1.602019 -21.745661 +v -11.773862 6.445646 -20.266697 +v 11.773862 6.445646 12.486267 +v -14.784871 -2.968069 -13.210314 +v -14.784871 -2.968069 -3.890213 +v -14.784871 -0.968069 5.429884 +v -14.784871 -0.968069 -3.890217 +v -14.784871 -0.968069 -3.890217 +v 14.784871 -2.968069 5.429884 +v 14.784871 -2.968069 -3.890217 +v 14.784871 -0.968069 -13.210314 +v 14.784871 -0.968069 -3.890213 +v 14.784871 -0.968069 -3.890213 +v -8.762853 -2.968069 -22.530416 +v -8.762853 -2.968069 -13.210316 +v -8.762853 -2.968069 -3.890215 +v 8.762853 -2.968069 -13.210316 +v 8.762853 -2.968069 -3.890215 +v 8.762853 -2.968069 5.429886 +v 8.762853 -0.968069 -13.210316 +v 8.762853 -0.968069 -3.890215 +v 8.762853 -0.968069 -3.890215 +v -8.762853 -0.968069 -13.210316 +v -8.762853 -0.968069 -13.210316 +v -8.762853 -0.968069 -3.890215 +v -11.773862 -2.968069 -13.210316 +v -11.773862 -2.968069 -3.890215 +v -11.773862 -2.968069 5.429886 +v 11.773862 -2.968069 -22.530416 +v 11.773862 -2.968069 -13.210316 +v 11.773862 -2.968069 -3.890215 +v -14.784871 6.445646 12.486265 +v -14.784871 6.445646 4.298025 +v -14.784871 6.445646 -12.078456 +v 14.784871 6.445646 -20.266695 +v 14.784871 6.445646 -12.078455 +v 14.784871 6.445646 4.298026 +v -11.773862 6.445646 -12.078456 +v -11.773862 6.445646 4.298026 +v 11.773862 6.445646 -20.266697 +v 11.773862 6.445646 -12.078456 +v 11.773862 6.445646 4.298026 +v 8.762853 1.657597 -21.619753 +v 8.762853 1.657597 -12.754984 +v 8.762853 1.657597 4.974554 +v -8.762853 1.657597 -12.754984 +v -8.762853 1.657597 4.974554 +v -11.773862 1.602019 -12.817938 +v -11.773862 1.602019 -3.890215 +v -11.773862 1.602019 -3.890215 +v 11.773862 1.589649 -12.819826 +v 11.773862 1.589649 -3.890215 +v 11.773862 1.589649 -3.890215 +v 14.784871 1.589649 -12.819824 +v 14.784871 1.589649 -12.819824 +v 14.784871 1.589649 5.039398 +v -14.784871 1.602019 5.037505 +v -14.784871 1.602019 5.037505 +v -14.784871 1.602019 -12.817939 +v -14.784871 -0.968069 -13.210318 +v 14.784871 -0.968069 5.429888 +v -11.773862 1.602019 -12.817938 +v 11.773862 1.589649 5.039396 +v -14.784871 1.602019 -12.817939 +v -14.784871 1.602019 -3.890217 +v -11.773862 1.602019 5.037508 +v -11.773862 1.602019 -3.890215 +v 14.784871 1.589649 5.039398 +v 14.784871 1.589649 -3.890213 +v 11.773862 1.589649 -12.819826 +v 11.773862 1.589649 -3.890215 +v 11.773862 6.445646 -12.078456 +v 11.773862 6.445646 -3.890214 +v -11.773862 6.445646 -12.078456 +v -14.784871 6.445646 -3.890216 +v 11.773862 -2.968069 5.429886 +v 0.000000 -0.968069 -13.210316 +v 0.000000 -0.968069 -3.890215 +v 8.762853 -0.968069 5.429886 +v -8.762853 -0.968069 5.429886 +v -8.762853 -0.968069 -3.890215 +v 0.000000 -2.968069 -13.210316 +v 0.000000 -2.968069 -3.890215 +v -8.762853 -2.968069 5.429886 +v -11.773862 -2.968069 -13.210316 +v -11.773862 -2.968069 -3.890215 +v -14.784871 -2.968069 5.429888 +v -14.784871 -2.968069 -3.890213 +v 14.784871 -2.968069 -13.210318 +v 14.784871 -2.968069 -3.890217 +v -8.762853 -2.609267 -30.926582 +v 8.762853 -2.609267 23.146152 +v 0.000000 -0.968069 -22.530416 +v 0.000000 -0.968069 14.749987 +v 0.000000 -2.968069 -22.530416 +v 0.000000 -2.968069 14.749987 +v 0.000000 -0.968069 -13.210316 +v 0.000000 -0.968069 -3.890215 +v 0.000000 -2.968069 -13.210316 +v 0.000000 -2.968069 -3.890215 +v 0.000000 -2.968069 5.429886 +v 0.000000 -0.968069 5.429886 +v 0.000000 -2.609267 23.146152 +v 14.784871 -0.968069 14.749989 +v -14.784871 -1.788668 18.948069 +v 14.784871 -2.968069 18.948069 +v 8.762853 -1.788668 18.948069 +v -8.762853 -1.788668 18.948069 +v -8.762853 -2.968069 18.948069 +v 8.762853 -2.968069 18.948069 +v -11.773862 -2.968069 18.948069 +v -11.773862 -0.968069 14.749987 +v 11.773862 -1.788668 18.948069 +v 11.773862 -2.968069 14.749987 +v 0.000000 -2.968069 14.749987 +v 0.000000 -0.968069 14.749987 +v 0.000000 -1.788668 18.948069 +v 0.000000 -2.968069 18.948069 +v 11.773862 -2.968069 18.948069 +v 14.784871 -1.788668 18.948071 +v -11.773862 -1.788668 18.948069 +v 14.784871 -2.968069 18.948069 +v -14.784871 -2.968069 -26.728498 +v 14.784871 -1.788668 -26.728498 +v -8.762853 -2.968069 -26.728498 +v 8.762853 -2.968069 -26.728498 +v 8.762853 -1.788668 -26.728498 +v -8.762853 -1.788668 -26.728498 +v -11.773862 -2.968069 -30.926582 +v -11.773862 -2.609267 -30.926582 +v 11.773862 -2.609267 -30.926582 +v 11.773862 -2.968069 -30.926582 +v 0.000000 -2.609267 -30.926582 +v 0.000000 -2.968069 -30.926582 +v 0.000000 -2.968069 -26.728498 +v 0.000000 -1.788668 -26.728498 +v 11.773862 -2.968069 -26.728498 +v 14.784871 -1.788668 -26.728498 +v -11.773862 -1.788668 -26.728498 +v -14.784871 -2.968069 18.948071 +v -14.784871 -2.968069 14.749989 +v -14.784871 -2.609267 23.146152 +v -11.773862 -2.968069 23.146152 +v -14.784871 -1.788668 -26.728500 +v -14.784871 -1.788668 -26.728500 +v -11.773862 -2.609267 -30.926582 +v -14.784871 -2.968069 -26.728498 +v -8.762853 -2.968069 -30.926582 +v -11.773862 -2.968069 -26.728498 +v 8.762853 -2.609267 -30.926582 +v 11.773862 -1.788668 -26.728498 +v 14.784871 -2.609267 -30.926582 +v 14.784871 -2.968069 -26.728500 +v 11.773862 -2.968069 -30.926582 +v 14.784871 -1.788668 18.948071 +v 11.773862 -2.609267 23.146152 +v 11.773862 -2.968069 23.146152 +v 8.762853 -2.968069 23.146152 +v -8.762853 -2.609267 23.146152 +v -11.773862 -2.968069 23.146152 +v -14.784871 -2.968069 -22.530415 +v -14.784871 -2.968069 -22.530415 +v -14.784871 -0.968069 5.429884 +v -14.784871 -0.968069 14.749985 +v -14.784871 -1.788668 18.948069 +v -11.773862 -0.968069 14.749987 +v -14.784871 1.602019 13.965227 +v -14.784871 -0.968069 -3.890217 +v -14.784871 -2.968069 -13.210314 +v 14.784871 -2.968069 14.749985 +v 11.773862 -2.968069 14.749987 +v 14.784871 -0.968069 -13.210314 +v 11.773862 -2.968069 -13.210316 +v 14.784871 -0.968069 -22.530415 +v 11.773862 -2.968069 -22.530416 +v 11.773862 -0.968069 -22.530416 +v 14.784871 1.589649 -21.749435 +v 14.784871 -0.968069 -3.890213 +v 8.762853 -0.968069 14.749987 +v 11.773862 1.589649 13.969007 +v 11.773862 -1.788668 18.948069 +v -8.762853 -2.968069 14.749987 +v -11.773862 -2.968069 18.948069 +v 8.762853 -2.968069 -30.926582 +v 0.000000 -2.968069 -26.728498 +v -8.762853 -2.609267 -30.926582 +v 0.000000 -1.788668 -26.728498 +v -8.762853 -2.968069 23.146152 +v 0.000000 -2.968069 23.146152 +v 8.762853 -2.609267 23.146152 +v -8.762853 -0.968069 -22.530416 +v -11.773862 1.602019 -21.745661 +v -8.762853 -0.968069 -22.530416 +v 8.762853 -0.968069 -22.530416 +v 8.762853 -0.968069 -13.210316 +v -8.762853 1.657597 13.839323 +v -8.762853 -0.968069 14.749987 +v 0.000000 -0.968069 5.429886 +v 0.000000 -1.788668 18.948069 +v 8.762853 -2.968069 -22.530416 +v -8.762853 -2.968069 -22.530416 +v -8.762853 -2.968069 -13.210316 +v 8.762853 -2.968069 14.749987 +v 0.000000 -2.968069 5.429886 +v 0.000000 -2.968069 18.948069 +v -11.773862 -2.968069 5.429886 +v 8.762853 -2.968069 -3.890215 +v -8.762853 1.657597 4.974554 +v 11.773862 -2.968069 -3.890215 +v 14.784871 -2.968069 5.429884 +v -14.784871 6.445646 -20.266697 +v -11.773862 6.445646 -12.078456 +v 14.784871 6.445646 12.486267 +v 14.784871 6.445646 4.298026 +v 11.773862 6.445646 12.486267 +v 14.784871 6.445646 -20.266695 +v -14.784871 6.445646 12.486265 +v -11.773862 6.445646 12.486267 +v -11.773862 6.445646 -3.890214 +v -14.784871 6.445646 4.298025 +v 11.773862 6.445646 -3.890214 +v -8.762853 1.657597 -21.619753 +v 8.762853 1.657597 4.974554 +v 8.762853 1.657597 -21.619753 +v 11.773862 1.589649 -3.890215 +v -8.762853 -2.968069 -3.890215 +v 8.762853 -2.968069 -13.210316 +v 8.762853 -0.968069 -3.890215 +v -8.762853 -0.968069 -3.890215 +v -8.762853 1.657597 -12.754984 +v -14.784871 1.602019 -3.890217 +v 14.784871 6.445646 -12.078455 +v 14.784871 1.589649 -3.890213 +v -11.773862 1.602019 -3.890215 +v 8.762853 1.657597 -12.754984 +vn -1.0000 -0.0000 -0.0000 +vn -0.0000 -0.0000 -1.0000 +vn 1.0000 -0.0000 -0.0000 +vn -0.0000 -0.0000 1.0000 +vn -0.0000 -1.0000 -0.0000 +vn -0.0000 0.9814 0.1918 +vn -0.0000 0.9814 -0.1918 +vn -0.0000 0.2920 0.9564 +vn -0.0000 1.0000 -0.0000 +vn -0.0000 0.2920 -0.9564 +vn 0.0226 0.9997 -0.0000 +vn -0.0185 0.9998 -0.0000 +vn 0.0334 0.3275 -0.9443 +vn -0.0333 0.3275 0.9443 +vn 0.0334 0.3275 0.9443 +vn -0.0333 0.3275 -0.9443 +vt 0.375000 0.208333 +vt 0.625000 0.250000 +vt 0.375000 0.250000 +vt 0.625000 0.458333 +vt 0.375000 0.500000 +vt 0.375000 0.458333 +vt 0.375000 0.708333 +vt 0.625000 0.750000 +vt 0.375000 0.750000 +vt 0.625000 0.958333 +vt 0.375000 1.000000 +vt 0.375000 0.958333 +vt 0.333333 0.750000 +vt 0.333333 0.708333 +vt 0.875000 0.708333 +vt 0.833333 0.750000 +vt 0.833333 0.708333 +vt 0.833333 0.541667 +vt 0.875000 0.583333 +vt 0.833333 0.583333 +vt 0.875000 0.666667 +vt 0.833333 0.666667 +vt 0.875000 0.666667 +vt 0.333333 0.541667 +vt 0.375000 0.583333 +vt 0.333333 0.583333 +vt 0.333333 0.645833 +vt 0.375000 0.666667 +vt 0.333333 0.666667 +vt 0.625000 0.541667 +vt 0.375000 0.541667 +vt 0.625000 0.645833 +vt 0.375000 0.645833 +vt 0.625000 0.041667 +vt 0.375000 0.083333 +vt 0.375000 0.041667 +vt 0.625000 0.145833 +vt 0.375000 0.166667 +vt 0.375000 0.145833 +vt 0.208333 0.645833 +vt 0.166667 0.666667 +vt 0.166667 0.645833 +vt 0.291667 0.645833 +vt 0.250000 0.666667 +vt 0.250000 0.645833 +vt 0.208333 0.541667 +vt 0.166667 0.583333 +vt 0.166667 0.541667 +vt 0.291667 0.541667 +vt 0.250000 0.583333 +vt 0.250000 0.541667 +vt 0.791667 0.604167 +vt 0.791667 0.583333 +vt 0.791667 0.645833 +vt 0.750000 0.666667 +vt 0.750000 0.645833 +vt 0.708333 0.541667 +vt 0.666667 0.583333 +vt 0.666667 0.541667 +vt 0.791667 0.541667 +vt 0.750000 0.583333 +vt 0.750000 0.541667 +vt 0.708333 0.708333 +vt 0.666667 0.750000 +vt 0.666667 0.708333 +vt 0.791667 0.708333 +vt 0.750000 0.750000 +vt 0.750000 0.708333 +vt 0.208333 0.708333 +vt 0.166667 0.750000 +vt 0.166667 0.708333 +vt 0.291667 0.708333 +vt 0.250000 0.750000 +vt 0.250000 0.708333 +vt 0.625000 0.791667 +vt 0.375000 0.833333 +vt 0.375000 0.791667 +vt 0.625000 0.875000 +vt 0.375000 0.916667 +vt 0.375000 0.875000 +vt 0.625000 0.291667 +vt 0.375000 0.333333 +vt 0.375000 0.291667 +vt 0.625000 0.375000 +vt 0.375000 0.416667 +vt 0.375000 0.375000 +vt 0.125000 0.708333 +vt 0.125000 0.750000 +vt 0.125000 0.541667 +vt 0.125000 0.583333 +vt 0.125000 0.645833 +vt 0.125000 0.666667 +vt 0.791667 0.666667 +vt 0.791667 0.750000 +vt 0.625000 0.916667 +vt 0.625000 0.708333 +vt 0.625000 0.583333 +vt 0.625000 0.583333 +vt 0.291667 0.666667 +vt 0.291667 0.583333 +vt 0.291667 0.750000 +vt 0.625000 0.416667 +vt 0.833333 0.645833 +vt 0.666667 0.645833 +vt 0.625000 0.666667 +vt 0.666667 0.666667 +vt 0.625000 0.666667 +vt 0.625000 0.604167 +vt 0.625000 0.604167 +vt 0.833333 0.604167 +vt 0.833333 0.604167 +vt 0.625000 0.104167 +vt 0.625000 0.083333 +vt 0.833333 0.583333 +vt 0.708333 0.666667 +vt 0.708333 0.583333 +vt 0.708333 0.645833 +vt 0.625000 0.166667 +vt 0.625000 0.125000 +vt 0.625000 0.625000 +vt 0.625000 0.645833 +vt 0.625000 0.625000 +vt 0.708333 0.604167 +vt 0.708333 0.625000 +vt 0.833333 0.625000 +vt 0.791667 0.625000 +vt 0.666667 0.604167 +vt 0.666667 0.625000 +vt 0.833333 0.666667 +vt 0.833333 0.625000 +vt 0.666667 0.583333 +vt 0.875000 0.625000 +vt 0.875000 0.645833 +vt 0.291667 0.604167 +vt 0.333333 0.604167 +vt 0.291667 0.625000 +vt 0.333333 0.625000 +vt 0.166667 0.604167 +vt 0.125000 0.604167 +vt 0.166667 0.625000 +vt 0.125000 0.625000 +vt 0.750000 0.604167 +vt 0.750000 0.625000 +vt 0.250000 0.604167 +vt 0.250000 0.625000 +vt 0.208333 0.583333 +vt 0.208333 0.604167 +vt 0.208333 0.625000 +vt 0.375000 0.104167 +vt 0.375000 0.125000 +vt 0.375000 0.604167 +vt 0.375000 0.625000 +vt 0.625000 0.333333 +vt 0.625000 0.833333 +vt 0.208333 0.750000 +vt 0.708333 0.750000 +vt 0.208333 0.666667 +vt 0.625000 0.000000 +vt 0.375000 0.000000 +vt 0.250000 0.500000 +vt 0.208333 0.500000 +vt 0.750000 0.500000 +vt 0.708333 0.500000 +vt 0.333333 0.500000 +vt 0.291667 0.500000 +vt 0.666667 0.500000 +vt 0.625000 0.500000 +vt 0.833333 0.500000 +vt 0.791667 0.500000 +vt 0.166667 0.500000 +vt 0.125000 0.500000 +vt 0.875000 0.541667 +vt 0.625000 0.208333 +vt 0.625000 1.000000 +vt 0.875000 0.750000 +vt 0.875000 0.604167 +vt 0.875000 0.500000 +s 0 +usemtl Material.001 +f 896/1/1 181/2/1 183/3/1 +f 188/4/2 193/5/2 276/6/2 +f 879/7/3 201/8/3 203/9/3 +f 208/10/4 175/11/4 300/12/4 +f 895/7/5 205/13/5 438/14/5 +f 224/15/6 738/16/6 423/17/6 +f 737/18/7 735/19/7 324/20/7 +f 473/21/8 752/22/8 459/23/8 +f 747/24/5 743/25/5 352/26/5 +f 746/27/5 744/28/5 364/29/5 +f 249/30/3 247/25/3 197/31/3 +f 256/32/3 241/28/3 537/33/3 +f 223/34/1 221/35/1 172/36/1 +f 230/37/1 215/38/1 523/39/1 +f 375/40/5 273/41/5 417/42/5 +f 378/43/5 370/44/5 659/45/5 +f 381/46/5 270/47/5 414/48/5 +f 384/49/5 358/50/5 670/51/5 +f 565/52/3 486/53/3 613/52/3 +f 390/54/9 345/55/9 650/56/9 +f 393/57/7 264/58/7 429/59/7 +f 396/60/7 331/61/7 667/62/7 +f 399/63/6 311/64/6 426/65/6 +f 402/66/6 317/67/6 664/68/6 +f 405/69/5 299/70/5 411/71/5 +f 408/72/5 305/73/5 661/74/5 +f 745/75/4 309/76/4 206/77/4 +f 876/78/4 303/79/4 306/80/4 +f 287/81/2 285/82/2 186/83/2 +f 293/84/2 279/85/2 282/86/2 +f 182/2/2 676/83/2 184/3/2 +f 673/87/5 916/70/5 174/88/5 +f 683/89/5 693/47/5 214/90/5 +f 684/91/5 694/41/5 220/92/5 +f 709/93/8 487/22/8 337/22/8 +f 912/18/7 326/53/7 398/60/7 +f 894/17/6 322/94/6 404/66/6 +f 24/95/4 38/12/4 304/79/4 +f 202/8/4 930/77/4 5/9/4 +f 200/96/6 929/64/6 6/8/6 +f 251/30/7 691/58/7 253/97/7 +f 770/98/10 750/58/10 453/97/10 +f 849/27/5 366/99/5 380/43/5 +f 910/24/5 354/100/5 386/49/5 +f 892/14/5 310/101/5 410/72/5 +f 297/102/2 699/6/2 278/85/2 +f 753/103/9 460/23/9 462/22/9 +f 466/104/9 749/105/9 446/32/9 +f 514/104/1 456/106/1 468/104/1 +f 475/107/8 54/106/8 513/106/8 +f 631/108/3 808/97/3 589/109/3 +f 619/110/3 458/20/3 595/111/3 +f 637/112/1 49/113/1 585/112/1 +f 479/19/10 457/20/10 482/114/10 +f 516/104/11 496/115/11 510/106/11 +f 501/103/12 762/93/12 498/54/12 +f 329/53/13 759/20/13 485/53/13 +f 335/116/10 506/58/10 265/58/10 +f 387/117/1 497/115/1 495/117/1 +f 349/115/14 512/106/14 62/115/14 +f 541/109/3 469/98/3 633/108/3 +f 692/105/8 953/106/8 266/106/8 +f 949/58/10 950/98/10 15/97/10 +f 235/19/10 965/114/10 39/20/10 +f 529/112/1 472/113/1 639/112/1 +f 736/22/8 940/21/8 227/23/8 +f 232/37/1 480/118/1 12/118/1 +f 781/119/1 521/37/1 231/37/1 +f 532/119/1 831/112/1 640/119/1 +f 258/32/3 477/107/3 16/105/3 +f 786/120/3 518/121/3 257/32/3 +f 544/120/3 828/108/3 634/122/3 +f 793/123/1 505/116/1 336/116/1 +f 794/124/1 608/123/1 560/123/1 +f 563/124/1 818/117/1 611/124/1 +f 58/53/12 835/111/12 615/52/12 +f 819/52/12 622/125/12 616/126/12 +f 623/125/12 820/54/12 617/126/12 +f 997/116/11 824/127/11 508/58/11 +f 111/123/11 825/128/11 626/127/11 +f 826/128/11 113/117/11 515/104/11 +f 522/37/1 444/118/1 68/118/1 +f 642/119/1 442/37/1 128/37/1 +f 1004/119/1 806/112/1 586/119/1 +f 503/103/3 56/22/3 59/129/3 +f 624/130/3 464/103/3 119/103/3 +f 1007/130/3 811/111/3 598/125/3 +f 519/121/3 52/105/3 66/107/3 +f 636/122/3 447/32/3 125/121/3 +f 1006/122/3 809/109/3 592/120/3 +f 627/127/1 452/58/1 63/131/1 +f 630/128/1 602/127/1 120/127/1 +f 121/128/1 815/104/1 605/128/1 +f 51/97/9 845/127/9 591/109/9 +f 1005/109/9 846/128/9 594/120/9 +f 109/128/9 987/32/9 103/120/9 +f 50/19/9 597/111/9 55/20/9 +f 105/111/9 848/132/9 600/125/9 +f 992/125/9 993/133/9 107/103/9 +f 353/26/5 790/134/5 356/100/5 +f 578/135/5 791/136/5 554/134/5 +f 581/137/5 792/43/5 557/136/5 +f 9/90/5 571/138/5 525/139/5 +f 777/139/5 574/140/5 526/141/5 +f 778/141/5 418/42/5 218/91/5 +f 25/53/9 644/142/9 332/61/9 +f 566/52/9 647/143/9 645/142/9 +f 569/126/9 875/56/9 648/143/9 +f 392/54/3 969/93/3 343/93/3 +f 570/126/3 981/54/3 92/54/3 +f 91/126/3 114/52/3 115/126/3 +f 29/100/5 653/144/5 359/50/5 +f 84/134/5 656/145/5 654/144/5 +f 85/136/5 874/45/5 657/145/5 +f 362/146/5 573/138/5 35/47/5 +f 548/147/5 576/140/5 93/138/5 +f 551/148/5 95/42/5 94/140/5 +f 937/113/1 219/149/1 10/35/1 +f 936/112/1 528/150/1 71/149/1 +f 73/119/1 69/39/1 70/150/1 +f 947/97/3 688/151/3 246/25/3 +f 945/109/3 783/152/3 244/151/3 +f 79/120/3 782/33/3 538/152/3 +f 47/26/5 862/151/5 579/135/5 +f 96/135/5 863/152/5 582/137/5 +f 982/137/5 983/33/5 98/27/5 +f 856/145/5 377/40/5 552/148/5 +f 855/144/5 999/148/5 549/147/5 +f 712/50/5 975/147/5 360/146/5 +f 851/143/9 389/117/9 564/124/9 +f 850/142/9 1001/124/9 561/123/9 +f 708/61/9 968/123/9 333/116/9 +f 291/153/2 700/86/2 284/82/2 +f 316/154/4 962/80/4 22/76/4 +f 891/74/5 961/155/5 407/69/5 +f 890/68/6 963/156/6 401/63/6 +f 909/62/7 26/116/7 395/57/7 +f 139/56/9 347/115/9 89/117/9 +f 908/51/5 30/146/5 383/46/5 +f 142/45/5 372/157/5 83/40/5 +f 346/55/6 880/63/6 350/115/6 +f 371/44/5 882/69/5 374/157/5 +f 365/29/5 883/72/5 368/99/5 +f 877/105/6 427/65/6 199/96/6 +f 339/22/6 881/66/6 342/93/6 +f 914/92/5 412/71/5 143/87/5 +f 976/99/5 978/74/5 136/44/5 +f 955/157/5 956/71/5 36/41/5 +f 970/93/6 972/68/6 134/55/6 +f 952/115/6 954/65/6 44/106/6 +f 915/158/1 913/36/1 1/159/1 +f 40/22/6 145/15/6 152/17/6 +f 48/29/5 237/7/5 154/14/5 +f 943/28/3 144/96/3 146/7/3 +f 283/160/5 898/46/5 286/161/5 +f 295/162/7 900/57/7 298/163/7 +f 277/164/5 899/49/5 280/165/5 +f 190/166/7 897/30/7 192/167/7 +f 289/168/7 901/60/7 292/169/7 +f 187/170/5 920/89/5 3/171/5 +f 959/169/7 960/62/7 130/162/7 +f 923/163/7 924/59/7 41/166/7 +f 957/165/5 958/51/5 129/160/5 +f 921/161/5 922/48/5 33/170/5 +f 925/167/3 679/31/3 194/5/3 +f 45/164/5 158/31/5 168/24/5 +f 37/168/7 180/172/7 166/18/7 +f 934/38/1 157/173/1 213/1/1 +f 212/1/1 178/173/1 675/2/1 +f 677/4/2 191/167/2 678/5/2 +f 238/7/3 198/96/3 680/8/3 +f 682/10/4 176/174/4 674/11/4 +f 239/7/5 204/9/5 681/13/5 +f 878/15/6 177/175/6 210/16/6 +f 420/18/7 179/172/7 234/19/7 +f 771/21/8 489/129/8 461/22/8 +f 435/24/5 196/31/5 248/25/5 +f 432/27/5 535/33/5 242/28/5 +f 689/30/3 252/97/3 695/25/3 +f 690/32/3 259/105/3 696/28/3 +f 685/34/1 226/113/1 697/35/1 +f 686/37/1 233/118/1 698/38/1 +f 715/40/5 373/157/5 733/41/5 +f 716/43/5 367/99/5 869/44/5 +f 717/46/5 361/146/5 732/47/5 +f 718/49/5 355/100/5 868/50/5 +f 796/52/3 328/53/3 766/53/3 +f 720/54/9 341/93/9 867/55/9 +f 721/57/7 334/116/7 740/58/7 +f 722/60/7 327/53/7 866/61/7 +f 723/63/6 314/156/6 705/64/6 +f 724/66/6 320/94/6 706/67/6 +f 725/69/5 302/155/5 703/70/5 +f 726/72/5 308/101/5 704/73/5 +f 313/75/4 315/154/4 727/76/4 +f 319/78/4 321/95/4 728/79/4 +f 701/81/2 290/153/2 729/82/2 +f 702/84/2 296/102/2 730/85/2 +f 734/2/2 288/81/2 185/83/2 +f 171/87/5 413/71/5 301/70/5 +f 211/89/5 416/48/5 269/47/5 +f 217/91/5 419/42/5 272/41/5 +f 340/93/15 491/93/15 760/22/15 +f 422/18/7 323/20/7 707/53/7 +f 425/17/6 209/16/6 731/94/6 +f 932/95/4 34/10/4 933/12/4 +f 742/8/4 312/75/4 207/77/4 +f 893/96/6 428/65/6 46/64/6 +f 911/30/7 431/59/7 263/58/7 +f 470/98/10 507/131/10 451/58/10 +f 434/27/5 363/29/5 713/99/5 +f 437/24/5 351/26/5 711/100/5 +f 440/14/5 42/13/5 931/101/5 +f 739/102/2 189/4/2 275/6/2 +f 463/103/9 583/133/9 805/23/9 +f 754/104/9 455/106/9 449/105/9 +f 765/104/1 511/106/1 776/106/1 +f 757/107/8 450/105/8 988/106/8 +f 827/108/3 471/98/3 454/97/3 +f 821/110/3 483/114/3 775/20/3 +f 830/112/1 474/113/1 990/113/1 +f 773/19/10 445/19/10 751/20/10 +f 836/104/11 493/117/11 761/115/11 +f 763/103/12 488/22/12 492/93/12 +f 964/53/10 325/20/10 481/20/10 +f 767/116/16 504/116/16 764/58/16 +f 719/117/1 348/115/1 769/115/1 +f 741/115/8 267/106/8 768/106/8 +f 784/109/3 254/97/3 755/98/3 +f 260/105/8 476/107/8 64/106/8 +f 43/58/10 509/131/10 65/98/10 +f 758/19/10 478/19/10 484/114/10 +f 779/112/1 228/113/1 756/113/1 +f 338/22/8 490/129/8 67/21/8 +f 833/37/1 520/37/1 774/118/1 +f 533/119/1 641/119/1 832/37/1 +f 780/119/1 530/112/1 638/112/1 +f 834/32/3 517/121/3 772/107/3 +f 545/120/3 635/122/3 829/121/3 +f 785/120/3 542/109/3 632/108/3 +f 559/123/1 607/123/1 816/116/1 +f 562/124/1 610/124/1 817/123/1 +f 795/124/1 388/117/1 494/117/1 +f 995/53/12 57/20/12 621/111/12 +f 614/52/12 620/111/12 822/125/12 +f 823/125/12 502/103/12 499/54/12 +f 61/116/11 609/123/11 625/127/11 +f 1008/123/11 612/124/11 628/128/11 +f 629/128/11 112/124/11 996/117/11 +f 837/37/1 441/37/1 748/118/1 +f 838/119/1 587/119/1 807/37/1 +f 127/119/1 126/112/1 584/112/1 +f 839/103/3 465/103/3 991/22/3 +f 840/130/3 599/125/3 812/103/3 +f 118/130/3 117/110/3 596/111/3 +f 841/121/3 448/32/3 986/105/3 +f 842/122/3 593/120/3 810/32/3 +f 124/122/3 123/108/3 590/109/3 +f 843/127/1 601/127/1 813/58/1 +f 844/128/1 604/128/1 814/127/1 +f 998/128/1 122/104/1 467/104/1 +f 989/97/9 53/58/9 603/127/9 +f 102/109/9 108/127/9 606/128/9 +f 994/128/9 110/104/9 104/32/9 +f 984/19/9 443/176/9 847/111/9 +f 985/111/9 101/176/9 588/132/9 +f 106/125/9 100/132/9 99/133/9 +f 802/26/5 577/135/5 553/134/5 +f 803/135/5 580/137/5 556/136/5 +f 804/137/5 433/27/5 379/43/5 +f 935/90/5 271/47/5 799/138/5 +f 524/139/5 572/138/5 800/140/5 +f 527/141/5 575/140/5 801/42/5 +f 966/53/9 567/52/9 870/142/9 +f 797/52/9 568/126/9 871/143/9 +f 798/126/9 391/54/9 651/56/9 +f 853/54/3 500/54/3 60/93/3 +f 854/126/3 618/126/3 116/54/3 +f 1002/126/3 90/52/3 1003/52/3 +f 973/100/5 555/134/5 872/144/5 +f 1000/134/5 558/136/5 873/145/5 +f 980/136/5 86/43/5 660/45/5 +f 787/146/5 547/147/5 858/138/5 +f 788/147/5 550/148/5 859/140/5 +f 789/148/5 376/40/5 979/42/5 +f 229/113/1 531/112/1 860/149/1 +f 72/112/1 534/119/1 861/150/1 +f 941/119/1 74/37/1 942/39/1 +f 255/97/3 543/109/3 243/151/3 +f 78/109/3 546/120/3 539/152/3 +f 951/120/3 80/32/3 536/33/3 +f 948/26/5 14/25/5 245/151/5 +f 946/135/5 77/151/5 540/152/5 +f 97/137/5 76/152/5 75/33/5 +f 655/145/5 658/45/5 857/40/5 +f 652/144/5 141/145/5 82/148/5 +f 357/50/5 140/144/5 81/147/5 +f 646/143/9 649/56/9 852/117/9 +f 643/142/9 138/143/9 88/124/9 +f 330/61/9 137/142/9 87/123/9 +f 864/153/2 294/84/2 281/86/2 +f 865/154/4 318/78/4 131/80/4 +f 663/74/5 307/73/5 21/155/5 +f 666/68/6 132/67/6 23/156/6 +f 669/62/7 133/61/7 967/116/7 +f 971/56/9 344/55/9 710/115/9 +f 672/51/5 135/50/5 974/146/5 +f 977/45/5 369/44/5 714/157/5 +f 889/55/6 665/68/6 400/63/6 +f 888/44/5 662/74/5 406/69/5 +f 887/29/5 439/14/5 409/72/5 +f 261/105/6 268/106/6 886/65/6 +f 885/22/6 424/17/6 403/66/6 +f 222/92/5 274/41/5 884/71/5 +f 31/99/5 150/72/5 155/74/5 +f 32/157/5 149/69/5 151/71/5 +f 27/93/6 148/66/6 156/68/6 +f 28/115/6 147/63/6 153/65/6 +f 2/158/1 225/34/1 173/36/1 +f 939/22/6 11/23/6 938/15/6 +f 944/29/5 240/28/5 687/7/5 +f 13/28/3 262/105/3 928/96/3 +f 907/160/5 671/51/5 382/46/5 +f 906/162/7 668/62/7 394/57/7 +f 905/164/5 436/24/5 385/49/5 +f 904/166/7 430/59/7 250/30/7 +f 903/168/7 421/18/7 397/60/7 +f 902/170/5 415/48/5 159/89/5 +f 19/169/7 164/60/7 169/62/7 +f 20/163/7 163/57/7 167/59/7 +f 17/165/5 162/49/5 170/51/5 +f 18/161/5 161/46/5 165/48/5 +f 8/167/3 160/30/3 195/31/3 +f 927/164/5 7/5/5 926/31/5 +f 919/168/7 4/177/7 917/172/7 +f 216/38/1 236/118/1 918/173/1 diff --git a/brdigett.obj.import b/brdigett.obj.import new file mode 100644 index 0000000..c259d62 --- /dev/null +++ b/brdigett.obj.import @@ -0,0 +1,25 @@ +[remap] + +importer="wavefront_obj" +importer_version=1 +type="Mesh" +uid="uid://dqu02w1dgudyq" +path="res://.godot/imported/brdigett.obj-f018ff53a72e07aafbd19b940585e82e.mesh" + +[deps] + +files=["res://.godot/imported/brdigett.obj-f018ff53a72e07aafbd19b940585e82e.mesh"] + +source_file="res://brdigett.obj" +dest_files=["res://.godot/imported/brdigett.obj-f018ff53a72e07aafbd19b940585e82e.mesh", "res://.godot/imported/brdigett.obj-f018ff53a72e07aafbd19b940585e82e.mesh"] + +[params] + +generate_tangents=true +generate_lods=false +generate_shadow_mesh=true +generate_lightmap_uv2=false +generate_lightmap_uv2_texel_size=0.2 +scale_mesh=Vector3(1, 1, 1) +offset_mesh=Vector3(0, 0, 0) +force_disable_mesh_compression=false diff --git a/crt.glb b/crt.glb new file mode 100644 index 0000000..0dd67a2 Binary files /dev/null and b/crt.glb differ diff --git a/crt.glb.import b/crt.glb.import new file mode 100644 index 0000000..7a1305b --- /dev/null +++ b/crt.glb.import @@ -0,0 +1,55 @@ +[remap] + +importer="scene" +importer_version=1 +type="PackedScene" +uid="uid://cxarqns8onckw" +path="res://.godot/imported/crt.glb-f7ec05cffb82b2e8c0fd0c833619c93a.scn" + +[deps] + +source_file="res://crt.glb" +dest_files=["res://.godot/imported/crt.glb-f7ec05cffb82b2e8c0fd0c833619c93a.scn"] + +[params] + +nodes/root_type="" +nodes/root_name="" +nodes/root_script=null +nodes/apply_root_scale=true +nodes/root_scale=1.0 +nodes/import_as_skeleton_bones=false +nodes/use_name_suffixes=true +nodes/use_node_type_suffixes=true +meshes/ensure_tangents=true +meshes/generate_lods=false +meshes/create_shadow_meshes=true +meshes/light_baking=1 +meshes/lightmap_texel_size=0.2 +meshes/force_disable_compression=false +skins/use_named_skins=true +animation/import=true +animation/fps=30 +animation/trimming=false +animation/remove_immutable_tracks=true +animation/import_rest_as_RESET=false +import_script/path="" +materials/extract=0 +materials/extract_format=0 +materials/extract_path="" +_subresources={ +"materials": { +"Screen": { +"use_external/enabled": false, +"use_external/fallback_path": "res://crt_screen.tres", +"use_external/path": "uid://cis5sbogdn4os" +}, +"Wood": { +"use_external/enabled": true, +"use_external/fallback_path": "res://generic_wood.tres", +"use_external/path": "uid://bdlgg2ei0yrvd" +} +} +} +gltf/naming_version=2 +gltf/embedded_image_handling=1 diff --git a/crt_Level_Select_Banner.png b/crt_Level_Select_Banner.png new file mode 100644 index 0000000..2269af5 Binary files /dev/null and b/crt_Level_Select_Banner.png differ diff --git a/crt_Level_Select_Banner.png.import b/crt_Level_Select_Banner.png.import new file mode 100644 index 0000000..fefd4f7 --- /dev/null +++ b/crt_Level_Select_Banner.png.import @@ -0,0 +1,44 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://df5skwtn84n1p" +path.s3tc="res://.godot/imported/crt_Level_Select_Banner.png-b93eca1be55c70b39419869f2e64ce6d.s3tc.ctex" +metadata={ +"imported_formats": ["s3tc_bptc"], +"vram_texture": true +} +generator_parameters={ +"md5": "b798ace04f034a43207bc1e65eefe9f0" +} + +[deps] + +source_file="res://crt_Level_Select_Banner.png" +dest_files=["res://.godot/imported/crt_Level_Select_Banner.png-b93eca1be55c70b39419869f2e64ce6d.s3tc.ctex"] + +[params] + +compress/mode=2 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=true +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=0 diff --git a/crt_screen_tester.tres b/crt_screen_tester.tres new file mode 100644 index 0000000..58632a8 --- /dev/null +++ b/crt_screen_tester.tres @@ -0,0 +1,10 @@ +[gd_resource type="ShaderMaterial" format=3 uid="uid://co725vuobwshh"] + +[ext_resource type="Shader" uid="uid://dq04j2s5foo2f" path="res://Shaders/mightyduke_ps1.gdshader" id="1_4l81e"] + +[resource] +render_priority = 0 +shader = ExtResource("1_4l81e") +shader_parameter/jitter_z_coordinate = true +shader_parameter/jitter_depth_independent = true +shader_parameter/alpha_scissor = 1.0 diff --git a/crt_steel1.png b/crt_steel1.png new file mode 100644 index 0000000..b05997b Binary files /dev/null and b/crt_steel1.png differ diff --git a/crt_steel1.png.import b/crt_steel1.png.import new file mode 100644 index 0000000..2c44747 --- /dev/null +++ b/crt_steel1.png.import @@ -0,0 +1,44 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://3rvy1up8f1k5" +path.s3tc="res://.godot/imported/crt_steel1.png-1421a6154113d1324830bea2a4343485.s3tc.ctex" +metadata={ +"imported_formats": ["s3tc_bptc"], +"vram_texture": true +} +generator_parameters={ +"md5": "97569a5489f5b2ed001ce20310e8deb2" +} + +[deps] + +source_file="res://crt_steel1.png" +dest_files=["res://.godot/imported/crt_steel1.png-1421a6154113d1324830bea2a4343485.s3tc.ctex"] + +[params] + +compress/mode=2 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=true +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=0 diff --git a/crt_tree1_bark.png b/crt_tree1_bark.png new file mode 100644 index 0000000..efdb099 Binary files /dev/null and b/crt_tree1_bark.png differ diff --git a/crt_tree1_bark.png.import b/crt_tree1_bark.png.import new file mode 100644 index 0000000..35391f0 --- /dev/null +++ b/crt_tree1_bark.png.import @@ -0,0 +1,44 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://bs0lypwyo5jf6" +path.s3tc="res://.godot/imported/crt_tree1_bark.png-1dead196d22dff548392d132e81f26e3.s3tc.ctex" +metadata={ +"imported_formats": ["s3tc_bptc"], +"vram_texture": true +} +generator_parameters={ +"md5": "3a9eb64baf1362d22626d5e08a5eea2e" +} + +[deps] + +source_file="res://crt_tree1_bark.png" +dest_files=["res://.godot/imported/crt_tree1_bark.png-1dead196d22dff548392d132e81f26e3.s3tc.ctex"] + +[params] + +compress/mode=2 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=true +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=0 diff --git a/cube.mtl b/cube.mtl new file mode 100644 index 0000000..c7dcf52 --- /dev/null +++ b/cube.mtl @@ -0,0 +1,2 @@ +# Blender 5.0.1 MTL File: 'level_select.blend' +# www.blender.org diff --git a/cube.obj b/cube.obj new file mode 100644 index 0000000..be86a52 --- /dev/null +++ b/cube.obj @@ -0,0 +1,73 @@ +# Blender 5.0.1 +# www.blender.org +mtllib cube.mtl +o Cube.001 +v -1.000000 -1.000000 1.000000 +v -1.000000 1.000000 1.000000 +v -1.000000 -1.000000 -1.000000 +v -1.000000 1.000000 -1.000000 +v 1.000000 -1.000000 1.000000 +v 1.000000 1.000000 1.000000 +v 1.000000 -1.000000 -1.000000 +v 1.000000 1.000000 -1.000000 +v -1.000000 -1.000000 -1.000000 +v -1.000000 -1.000000 -1.000000 +v -1.000000 -1.000000 -1.000000 +v -1.000000 -1.000000 1.000000 +v -1.000000 -1.000000 1.000000 +v -1.000000 -1.000000 1.000000 +v -1.000000 -1.000000 1.000000 +v -1.000000 1.000000 1.000000 +v -1.000000 1.000000 1.000000 +v -1.000000 1.000000 1.000000 +v -1.000000 1.000000 -1.000000 +v -1.000000 1.000000 -1.000000 +v -1.000000 1.000000 -1.000000 +v -1.000000 1.000000 -1.000000 +v 1.000000 -1.000000 -1.000000 +v 1.000000 -1.000000 -1.000000 +v 1.000000 -1.000000 -1.000000 +v 1.000000 -1.000000 -1.000000 +v 1.000000 1.000000 -1.000000 +v 1.000000 1.000000 -1.000000 +v 1.000000 1.000000 -1.000000 +v 1.000000 -1.000000 1.000000 +v 1.000000 -1.000000 1.000000 +v 1.000000 -1.000000 1.000000 +v 1.000000 1.000000 1.000000 +v 1.000000 1.000000 1.000000 +v 1.000000 1.000000 1.000000 +v 1.000000 1.000000 1.000000 +vn -1.0000 -0.0000 -0.0000 +vn -0.0000 -0.0000 -1.0000 +vn 1.0000 -0.0000 -0.0000 +vn -0.0000 -0.0000 1.0000 +vn -0.0000 -1.0000 -0.0000 +vn -0.0000 1.0000 -0.0000 +vt 0.625000 0.000000 +vt 0.375000 0.250000 +vt 0.375000 0.000000 +vt 0.625000 0.250000 +vt 0.375000 0.500000 +vt 0.625000 0.500000 +vt 0.375000 0.750000 +vt 0.625000 0.750000 +vt 0.375000 1.000000 +vt 0.125000 0.750000 +vt 0.125000 0.500000 +vt 0.875000 0.500000 +vt 0.625000 1.000000 +vt 0.875000 0.750000 +s 0 +f 16/1/1 9/2/1 12/3/1 +f 22/4/2 23/5/2 11/2/2 +f 8/6/3 30/7/3 25/5/3 +f 36/8/4 13/9/4 32/7/4 +f 7/5/5 1/10/5 3/11/5 +f 4/12/6 6/8/6 29/6/6 +f 17/1/1 19/4/1 10/2/1 +f 20/4/2 27/6/2 24/5/2 +f 28/6/3 33/8/3 31/7/3 +f 34/8/4 18/13/4 14/9/4 +f 26/5/5 5/7/5 15/10/5 +f 21/12/6 2/14/6 35/8/6 diff --git a/cube.obj.import b/cube.obj.import new file mode 100644 index 0000000..8fb9963 --- /dev/null +++ b/cube.obj.import @@ -0,0 +1,25 @@ +[remap] + +importer="wavefront_obj" +importer_version=1 +type="Mesh" +uid="uid://bfmuypokxn5la" +path="res://.godot/imported/cube.obj-ecd20c75680354919967c1f74dc43511.mesh" + +[deps] + +files=["res://.godot/imported/cube.obj-ecd20c75680354919967c1f74dc43511.mesh"] + +source_file="res://cube.obj" +dest_files=["res://.godot/imported/cube.obj-ecd20c75680354919967c1f74dc43511.mesh", "res://.godot/imported/cube.obj-ecd20c75680354919967c1f74dc43511.mesh"] + +[params] + +generate_tangents=true +generate_lods=false +generate_shadow_mesh=true +generate_lightmap_uv2=false +generate_lightmap_uv2_texel_size=0.2 +scale_mesh=Vector3(1, 1, 1) +offset_mesh=Vector3(0, 0, 0) +force_disable_mesh_compression=false diff --git a/flow_field_tester.gd b/flow_field_tester.gd new file mode 100644 index 0000000..cff5d7d --- /dev/null +++ b/flow_field_tester.gd @@ -0,0 +1,55 @@ +class_name FlowFieldTester extends Control + +var flow_field: FlowField +var flow_field_tool: FlowFieldEditor +var node_boxes: Array[ColorRect] +var offset: Vector2 +var hovered: ColorRect + + +func _ready() -> void: + flow_field = FlowField.new() + var flow_field_data: FlowFieldData = FlowFieldData.new() + flow_field.data_file = flow_field_data + flow_field_tool = FlowFieldEditor.new() + add_child(flow_field) + add_child(flow_field_tool) + flow_field_tool.flow_field = flow_field + flow_field_tool.create_grid(10, 10, 1) + var furthest_negative_vector: Vector2 = Vector2.ZERO + for node: FlowNode in flow_field.nodes: + var box: ColorRect = ColorRect.new() + box.position = Vector2(node.position.x * 15.0, node.position.z * 15.0) + if node.position.x * 15.0 < furthest_negative_vector.x: + furthest_negative_vector.x = node.position.x * 15.0 + if node.position.z * 15.0 < furthest_negative_vector.y: + furthest_negative_vector.y = node.position.z * 15.0 + box.size = Vector2(10.0, 10.0) + box.mouse_entered.connect(box_hovered.bind(box)) + node_boxes.append(box) + $CanvasLayer.add_child(box) + print(furthest_negative_vector) + $CanvasLayer.offset = -furthest_negative_vector + update_colors() + + +func box_hovered(box: ColorRect) -> void: + hovered = box + update_colors() + + +func update_colors() -> void: + var x: int = 0 + for box: ColorRect in node_boxes: + if flow_field.nodes[x].traversable: + box.color = Color.GREEN + else: + box.color = Color.RED + if box == hovered: + box.color = Color.AQUAMARINE + x += 1 + + +func _unhandled_input(event: InputEvent) -> void: + if event is InputEventMouseButton and event.button_index == 0: + pass diff --git a/flow_field_tester.gd.uid b/flow_field_tester.gd.uid new file mode 100644 index 0000000..56f54a5 --- /dev/null +++ b/flow_field_tester.gd.uid @@ -0,0 +1 @@ +uid://io82eo46is7q diff --git a/flow_field_tester.tscn b/flow_field_tester.tscn new file mode 100644 index 0000000..6673ce5 --- /dev/null +++ b/flow_field_tester.tscn @@ -0,0 +1,14 @@ +[gd_scene format=3 uid="uid://dn50ruo00vbyt"] + +[ext_resource type="Script" uid="uid://io82eo46is7q" path="res://flow_field_tester.gd" id="1_rs8ix"] + +[node name="Control" type="Control" unique_id=815879095] +physics_interpolation_mode = 0 +layout_mode = 3 +anchors_preset = 0 +script = ExtResource("1_rs8ix") +metadata/_custom_type_script = "uid://io82eo46is7q" + +[node name="CanvasLayer" type="CanvasLayer" parent="." unique_id=420705436] +offset = Vector2(21.645, 26.07) +transform = Transform2D(1, 0, 0, 1, 21.645, 26.07) diff --git a/generic_wood.tres b/generic_wood.tres new file mode 100644 index 0000000..332d146 --- /dev/null +++ b/generic_wood.tres @@ -0,0 +1,12 @@ +[gd_resource type="ShaderMaterial" format=3 uid="uid://bdlgg2ei0yrvd"] + +[ext_resource type="Shader" uid="uid://dq04j2s5foo2f" path="res://Shaders/mightyduke_ps1.gdshader" id="1_f4i1m"] +[ext_resource type="Texture2D" uid="uid://bs0lypwyo5jf6" path="res://crt_tree1_bark.png" id="2_dt32w"] + +[resource] +render_priority = 0 +shader = ExtResource("1_f4i1m") +shader_parameter/albedo = ExtResource("2_dt32w") +shader_parameter/jitter_z_coordinate = true +shader_parameter/jitter_depth_independent = true +shader_parameter/alpha_scissor = 1.0 diff --git a/level_magec.gd b/level_magec.gd new file mode 100644 index 0000000..edd8139 --- /dev/null +++ b/level_magec.gd @@ -0,0 +1,10 @@ +extends Node3D + +@export var level_scene: PackedScene +@export var widget_scene: PackedScene +@export var level_parent: Node3D +@export var widget_parent: Node3D + + +func create_widget(mesh: Mesh) -> void: + pass diff --git a/level_magec.gd.uid b/level_magec.gd.uid new file mode 100644 index 0000000..9caa60b --- /dev/null +++ b/level_magec.gd.uid @@ -0,0 +1 @@ +uid://b2ta3p7n7g1dx diff --git a/level_mageccc.tscn b/level_mageccc.tscn new file mode 100644 index 0000000..340933e --- /dev/null +++ b/level_mageccc.tscn @@ -0,0 +1,21 @@ +[gd_scene format=3 uid="uid://cr2et2egnogvb"] + +[ext_resource type="Script" uid="uid://b2ta3p7n7g1dx" path="res://level_magec.gd" id="1_w3kbw"] +[ext_resource type="PackedScene" uid="uid://cxarqns8onckw" path="res://crt.glb" id="2_75n78"] +[ext_resource type="PackedScene" uid="uid://ca174636iktc6" path="res://Worlds/GreenPlanet/Levels/Bridge/bridge.glb" id="2_kfofo"] +[ext_resource type="PackedScene" uid="uid://dse6msy2hrctc" path="res://wire_frame.tscn" id="3_kfofo"] + +[node name="MainMenu" type="Node3D" unique_id=984017026 node_paths=PackedStringArray("level_parent", "widget_parent")] +script = ExtResource("1_w3kbw") +level_scene = ExtResource("2_kfofo") +widget_scene = ExtResource("3_kfofo") +level_parent = NodePath("Level") +widget_parent = NodePath("ScreenWidget") + +[node name="crt" parent="." unique_id=160903959 instance=ExtResource("2_75n78")] + +[node name="ScreenWidget" type="Node3D" parent="." unique_id=1191885845] + +[node name="Level" type="Node3D" parent="." unique_id=1122428329] + +[editable path="crt"] diff --git a/steel1.png b/steel1.png new file mode 100644 index 0000000..b05997b Binary files /dev/null and b/steel1.png differ diff --git a/steel1.png.import b/steel1.png.import new file mode 100644 index 0000000..a67c18d --- /dev/null +++ b/steel1.png.import @@ -0,0 +1,40 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://d02g31nntdjmw" +path="res://.godot/imported/steel1.png-48f9afe4f43ffe832b24316c988ae25e.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://steel1.png" +dest_files=["res://.godot/imported/steel1.png-48f9afe4f43ffe832b24316c988ae25e.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/unroll_mesh.gd b/unroll_mesh.gd new file mode 100644 index 0000000..8415a6b --- /dev/null +++ b/unroll_mesh.gd @@ -0,0 +1,80 @@ +extends Object + +func new_array_from_typeid(typeid: Variant.Type) -> Variant: + return type_convert(null, typeid) + + +func array_custom_granularity(custom_format: Mesh.ArrayCustomFormat) -> int: + match custom_format: + Mesh.ARRAY_CUSTOM_RGBA8_UNORM, Mesh.ARRAY_CUSTOM_RGBA8_SNORM, Mesh.ARRAY_CUSTOM_RG_HALF: + return 4 + Mesh.ARRAY_CUSTOM_RGBA_HALF: + return 8 + Mesh.ARRAY_CUSTOM_R_FLOAT: + return 1 + Mesh.ARRAY_CUSTOM_RG_FLOAT: + return 2 + Mesh.ARRAY_CUSTOM_RGB_FLOAT: + return 3 + Mesh.ARRAY_CUSTOM_RGBA_FLOAT: + return 4 + return 0 + + +func array_granularity(arr_id: Mesh.ArrayType, format: Mesh.ArrayFormat) -> int: + match arr_id: + Mesh.ARRAY_VERTEX, Mesh.ARRAY_NORMAL, Mesh.ARRAY_COLOR, Mesh.ARRAY_TEX_UV, Mesh.ARRAY_TEX_UV2: + return 1 + Mesh.ARRAY_TANGENT: + return 4 + Mesh.ARRAY_CUSTOM0: + return array_custom_granularity((format >> Mesh.ARRAY_FORMAT_CUSTOM0_SHIFT) & Mesh.ARRAY_FORMAT_CUSTOM_MASK) + Mesh.ARRAY_CUSTOM1: + return array_custom_granularity((format >> Mesh.ARRAY_FORMAT_CUSTOM1_SHIFT) & Mesh.ARRAY_FORMAT_CUSTOM_MASK) + Mesh.ARRAY_CUSTOM2: + return array_custom_granularity((format >> Mesh.ARRAY_FORMAT_CUSTOM2_SHIFT) & Mesh.ARRAY_FORMAT_CUSTOM_MASK) + Mesh.ARRAY_CUSTOM3: + return array_custom_granularity((format >> Mesh.ARRAY_FORMAT_CUSTOM3_SHIFT) & Mesh.ARRAY_FORMAT_CUSTOM_MASK) + Mesh.ARRAY_BONES, Mesh.ARRAY_WEIGHTS: + if (format & Mesh.ARRAY_FLAG_USE_8_BONE_WEIGHTS) != 0: + return 8 + else: + return 4 + # Unhandled: + # ARRAY_INDEX + return 0 + +## "Unroll" array mesh. +## Known limitations: +## - ignores blend shapes +## - ignores LODs +func duplicate_vertices(input: ArrayMesh) -> ArrayMesh: + var output: ArrayMesh = ArrayMesh.new() + for surf: int in input.get_surface_count(): + var arrays: Array = input.surface_get_arrays(surf) + var indices: int = arrays[Mesh.ARRAY_INDEX] + var format: Mesh.ArrayFormat = input.surface_get_format(surf) + var new_arrays: Array = [] + new_arrays.resize(Mesh.ARRAY_MAX) + + for arr_id: int in len(arrays): + if arr_id == Mesh.ARRAY_INDEX: # this is the one we want to eliminate + continue + if arrays[arr_id] == null: + continue + var arr_in: Array = arrays[arr_id] + var typeid: int = typeof(arr_in) + var new_arr: Variant = new_array_from_typeid(typeid) + assert(typeof(new_arr) == typeid) + var granularity: int = array_granularity(arr_id, format) + for idx: int in indices: + for subidx: int in granularity: + new_arr.push_back(arr_in[idx * granularity + subidx]) + + print(arr_id, ' ', typeid, ' ', granularity, ' ', len(arr_in), '->', len(new_arr)) + + new_arrays[arr_id] = new_arr + + output.add_surface_from_arrays(input.surface_get_primitive_type(surf), new_arrays, [], {}, format & ~Mesh.ARRAY_FORMAT_INDEX) + + return output diff --git a/unroll_mesh.gd.uid b/unroll_mesh.gd.uid new file mode 100644 index 0000000..927b0c0 --- /dev/null +++ b/unroll_mesh.gd.uid @@ -0,0 +1 @@ +uid://2q567ytsw7h0 diff --git a/wire_frame.gd b/wire_frame.gd new file mode 100644 index 0000000..782e975 --- /dev/null +++ b/wire_frame.gd @@ -0,0 +1,8 @@ +class_name WireFrame extends Node3D + +@export var level_mesh: CSGMesh3D +@export var blocker_mesh: CSGMesh3D + + +func spawn_level(mesh: Mesh) -> void: + pass diff --git a/wire_frame.gd.uid b/wire_frame.gd.uid new file mode 100644 index 0000000..4bfbd2c --- /dev/null +++ b/wire_frame.gd.uid @@ -0,0 +1 @@ +uid://b151rww6qt0nj diff --git a/wire_frame.tscn b/wire_frame.tscn new file mode 100644 index 0000000..6b5eccd --- /dev/null +++ b/wire_frame.tscn @@ -0,0 +1,22 @@ +[gd_scene format=3 uid="uid://dse6msy2hrctc"] + +[ext_resource type="Script" uid="uid://b151rww6qt0nj" path="res://wire_frame.gd" id="1_54sar"] +[ext_resource type="ArrayMesh" uid="uid://dqu02w1dgudyq" path="res://brdigett.obj" id="2_se1r1"] +[ext_resource type="Material" uid="uid://wr1vi6yfhxhg" path="res://Shaders/wireframe1.tres" id="3_0233w"] +[ext_resource type="ArrayMesh" uid="uid://bfmuypokxn5la" path="res://cube.obj" id="4_d7s2u"] +[ext_resource type="Material" uid="uid://dvvs2q42dl4od" path="res://Shaders/wireframe2.tres" id="5_mv1ww"] + +[node name="WireFrame" type="Node3D" unique_id=2007807907 node_paths=PackedStringArray("level_mesh", "blocker_mesh")] +script = ExtResource("1_54sar") +level_mesh = NodePath("CSGMesh3D") +blocker_mesh = NodePath("CSGMesh3D2") + +[node name="CSGMesh3D" type="CSGMesh3D" parent="." unique_id=1190322190] +visible = false +mesh = ExtResource("2_se1r1") +material = ExtResource("3_0233w") + +[node name="CSGMesh3D2" type="CSGMesh3D" parent="." unique_id=1566640748] +visible = false +mesh = ExtResource("4_d7s2u") +material = ExtResource("5_mv1ww") diff --git a/wireframe_generator.gd b/wireframe_generator.gd new file mode 100644 index 0000000..7e5574f --- /dev/null +++ b/wireframe_generator.gd @@ -0,0 +1,36 @@ +@tool +extends EditorScenePostImport + +const OUT_PATH: String = "res://wireframes/" + +func _post_import(scene: Node) -> Object: + var children: Array[Node] = scene.get_children() + print('Updating meshes to wireframe ', scene.name) + + for child: Node in children: + if not is_instance_of(child, MeshInstance3D): + continue + + var mesh_in: ArrayMesh = child.mesh + + assert(mesh_in.surface_get_primitive_type(0) == Mesh.PRIMITIVE_TRIANGLES) + var mesh_out := MeshUtils.unroll_vertices(mesh_in, [Mesh.ARRAY_VERTEX, Mesh.ARRAY_TEX_UV, Mesh.ARRAY_CUSTOM0]) + assert(mesh_out.surface_get_primitive_type(0) == Mesh.PRIMITIVE_TRIANGLES) + + var material := ShaderMaterial.new() + material.shader = preload("res://shader.gdshader") + mesh_out.surface_set_material(0, material) + + #child.mesh = mesh_out + #child.set_surface_override_material(0, material) + #print('Updated ', child) + + var filename_out := OUT_PATH + scene.name + ".res" + #mesh_out.take_over_path(filename_out) + ResourceSaver.save(mesh_out, filename_out) + # doesn't seem to help + #, ResourceSaver.SaverFlags.FLAG_CHANGE_PATH | ResourceSaver.SaverFlags.FLAG_REPLACE_SUBRESOURCE_PATHS) + + break # only export first mesh + + return scene # Return the modified root node when you're done. diff --git a/wireframe_generator.gd.uid b/wireframe_generator.gd.uid new file mode 100644 index 0000000..8b2c3d6 --- /dev/null +++ b/wireframe_generator.gd.uid @@ -0,0 +1 @@ +uid://cas5vkde5k78e