From 34dab3591732bb033bca8cb2dc42e5d7d2a6ecd4 Mon Sep 17 00:00:00 2001 From: Rob Kelly Date: Mon, 8 Sep 2025 17:39:36 -0600 Subject: [PATCH] Raised gunk mask resolution for overhead signs --- .../level/corridor_1/corridor_1.tscn | 8 +-- .../level/corridor_2/corridor_2.tscn | 4 +- .../level/corridor_3/corridor_3.tscn | 8 +-- levels/testing/prop_test/prop_test.tscn | 55 ++++++++++++++++++- src/world/world.tscn | 2 +- 5 files changed, 65 insertions(+), 12 deletions(-) diff --git a/levels/ghost_ship/level/corridor_1/corridor_1.tscn b/levels/ghost_ship/level/corridor_1/corridor_1.tscn index 630284e..baeb9a6 100644 --- a/levels/ghost_ship/level/corridor_1/corridor_1.tscn +++ b/levels/ghost_ship/level/corridor_1/corridor_1.tscn @@ -66,7 +66,7 @@ turbulence_noise_strength = 0.1 turbulence_noise_scale = 0.3 turbulence_influence_min = 0.0 -[sub_resource type="ArrayMesh" id="ArrayMesh_20ek7"] +[sub_resource type="ArrayMesh" id="ArrayMesh_a8b6q"] _surfaces = [{ "aabb": AABB(-1, -0.4, -0.2, 2, 0.4, 0.4), "format": 34896613377, @@ -95,7 +95,7 @@ _surfaces = [{ "vertex_data": PackedByteArray("AAD///////8AAAAA/3///wAA//8AAP//AAD//wAAsvIAAAAA/3+y8v////8AALLy//8AAP9/svL/////AAD/v///AAD/f/+//////////7////////8mwv//AAD/fybCAAD/////JsIAAAAA/38mwgAA//8AAFTV/////wAAVNUAAP////9U1f///////1TV/z//f/8//3//P/9/PjnAxj45wMY+OcDGPjnAxv9/AAD/fwAA/38AAIYUeOuGFHjrhhR464YUeOtU1aoqVNWqKlTVqipU1aoq") }] blend_shape_mode = 0 -shadow_mesh = SubResource("ArrayMesh_20ek7") +shadow_mesh = SubResource("ArrayMesh_a8b6q") [sub_resource type="ConcavePolygonShape3D" id="ConcavePolygonShape3D_ojd88"] data = PackedVector3Array(-1, 0, 0.2, -1, -0.4, 0, -1, 0, -0.2, -1, 0, -0.2, -1, -0.4, 0, 1, 0, -0.2, 1, 0, -0.2, -1, -0.4, 0, 1, -0.4, 0, 1, 0, -0.2, 1, -0.4, 0, 1, 0, 0.2, 1, 0, 0.2, 1, -0.4, 0, -1, 0, 0.2, -1, 0, 0.2, 1, -0.4, 0, -1, -0.4, 0, -1, 0, -0.2, 1, 0, -0.2, -1, 0, 0.2, -1, 0, 0.2, 1, 0, -0.2, 1, 0, 0.2) @@ -175,7 +175,7 @@ collision_mask = 0 shape = SubResource("ConcavePolygonShape3D_ojd88") [node name="Gunkable" parent="Hallway1/AirlockSign/StaticBody3D" node_paths=PackedStringArray("body", "mesh_instance") instance=ExtResource("3_s4vba")] -mask_dim = 32 +mask_dim = 64 body = NodePath("..") mesh_instance = NodePath("../..") source_gunk_material = ExtResource("11_i2ry3") @@ -378,7 +378,7 @@ collision_mask = 0 shape = SubResource("ConcavePolygonShape3D_mgo71") [node name="Gunkable" parent="Hallway4/MessHallSign/StaticBody3D" node_paths=PackedStringArray("body", "mesh_instance") instance=ExtResource("3_s4vba")] -mask_dim = 32 +mask_dim = 64 body = NodePath("..") mesh_instance = NodePath("../..") source_gunk_material = ExtResource("11_i2ry3") diff --git a/levels/ghost_ship/level/corridor_2/corridor_2.tscn b/levels/ghost_ship/level/corridor_2/corridor_2.tscn index ecdefda..1bec5a8 100644 --- a/levels/ghost_ship/level/corridor_2/corridor_2.tscn +++ b/levels/ghost_ship/level/corridor_2/corridor_2.tscn @@ -238,7 +238,7 @@ collision_mask = 0 shape = SubResource("ConcavePolygonShape3D_2ft6k") [node name="Gunkable" parent="Hallway1/MessHallSign/StaticBody3D" node_paths=PackedStringArray("body", "mesh_instance") instance=ExtResource("2_osdhu")] -mask_dim = 32 +mask_dim = 64 body = NodePath("..") mesh_instance = NodePath("../..") source_gunk_material = ExtResource("11_iefrw") @@ -341,7 +341,7 @@ collision_mask = 0 shape = SubResource("ConcavePolygonShape3D_7ctwk") [node name="Gunkable" parent="ShortHallway6/CrewQuartersSign/StaticBody3D" node_paths=PackedStringArray("body", "mesh_instance") instance=ExtResource("2_osdhu")] -mask_dim = 32 +mask_dim = 64 body = NodePath("..") mesh_instance = NodePath("../..") source_gunk_material = ExtResource("11_iefrw") diff --git a/levels/ghost_ship/level/corridor_3/corridor_3.tscn b/levels/ghost_ship/level/corridor_3/corridor_3.tscn index 125c71e..57a4e7c 100644 --- a/levels/ghost_ship/level/corridor_3/corridor_3.tscn +++ b/levels/ghost_ship/level/corridor_3/corridor_3.tscn @@ -267,7 +267,7 @@ collision_mask = 0 shape = SubResource("ConcavePolygonShape3D_dxmep") [node name="Gunkable" parent="Hallway/CrewQuartersSign/StaticBody3D" node_paths=PackedStringArray("body", "mesh_instance") instance=ExtResource("2_rvc24")] -mask_dim = 32 +mask_dim = 64 body = NodePath("..") mesh_instance = NodePath("../..") source_gunk_material = ExtResource("6_8pwhd") @@ -309,7 +309,7 @@ collision_mask = 0 shape = SubResource("ConcavePolygonShape3D_0ij5m") [node name="Gunkable" parent="Hallway2/OpsSign/StaticBody3D" node_paths=PackedStringArray("body", "mesh_instance") instance=ExtResource("2_rvc24")] -mask_dim = 32 +mask_dim = 64 body = NodePath("..") mesh_instance = NodePath("../..") source_gunk_material = ExtResource("6_8pwhd") @@ -640,7 +640,7 @@ collision_mask = 0 shape = SubResource("ConcavePolygonShape3D_wqqoq") [node name="Gunkable" parent="ShortHallway3/MedbaySign/StaticBody3D" node_paths=PackedStringArray("body", "mesh_instance") instance=ExtResource("2_rvc24")] -mask_dim = 32 +mask_dim = 64 body = NodePath("..") mesh_instance = NodePath("../..") source_gunk_material = ExtResource("6_8pwhd") @@ -800,7 +800,7 @@ collision_mask = 0 shape = SubResource("ConcavePolygonShape3D_np3w4") [node name="Gunkable" parent="ShortHallway7/CargoBaySign/StaticBody3D" node_paths=PackedStringArray("body", "mesh_instance") instance=ExtResource("2_rvc24")] -mask_dim = 32 +mask_dim = 64 body = NodePath("..") mesh_instance = NodePath("../..") source_gunk_material = ExtResource("6_8pwhd") diff --git a/levels/testing/prop_test/prop_test.tscn b/levels/testing/prop_test/prop_test.tscn index 5e6b18d..4aab0cc 100644 --- a/levels/testing/prop_test/prop_test.tscn +++ b/levels/testing/prop_test/prop_test.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=61 format=4 uid="uid://dc4tts6342cuj"] +[gd_scene load_steps=65 format=4 uid="uid://dc4tts6342cuj"] [ext_resource type="Script" uid="uid://dmbdkydqnbyqv" path="res://levels/testing/prop_test/prop_test.gd" id="1_ibd1t"] [ext_resource type="PackedScene" uid="uid://bwe2jdmvinhqd" path="res://src/player/player.tscn" id="1_ml0ka"] @@ -35,6 +35,7 @@ [ext_resource type="Texture2D" uid="uid://gbvtbiurxrop" path="res://assets/props/vending_machine/vending_machine_R.png" id="27_8a67w"] [ext_resource type="Script" uid="uid://deg5xd87cy8rg" path="res://src/props/interactive.gd" id="28_ibd1t"] [ext_resource type="PackedScene" uid="uid://d1kacn4b60ucy" path="res://src/ui/post_processing.tscn" id="30_qnhar"] +[ext_resource type="Material" uid="uid://dmolqtdktqdsl" path="res://levels/ghost_ship/guide_sign/airlock_sign.material" id="34_rl4wl"] [ext_resource type="PackedScene" uid="uid://bfm80tqsw22qc" path="res://src/props/wire_shelves/wire_shelves.tscn" id="36_hb05j"] [ext_resource type="Material" uid="uid://dutkfm4ek0ysh" path="res://assets/materials/grunk_overlays/bright_overlay.material" id="37_00w3i"] [ext_resource type="PackedScene" uid="uid://cdi5sl60mw1po" path="res://src/world/gunkable/gunkable.tscn" id="40_6kdm2"] @@ -66,6 +67,40 @@ texture_filter = 2 [sub_resource type="BoxShape3D" id="BoxShape3D_ibd1t"] size = Vector3(2.35, 3.1, 1.5) +[sub_resource type="ArrayMesh" id="ArrayMesh_20ek7"] +_surfaces = [{ +"aabb": AABB(-1, -0.4, -0.2, 2, 0.4, 0.4), +"format": 34896613377, +"index_count": 24, +"index_data": PackedByteArray("AAABAAIAAAADAAEAAgABAAQAAgAEAAAABAABAAMABQADAAAABAADAAUAAAAEAAUA"), +"name": "Cube", +"primitive": 3, +"uv_scale": Vector4(0, 0, 0, 0), +"vertex_count": 6, +"vertex_data": PackedByteArray("AAD/////AAAAAAAA/38AAAAA//8AAAAA//8AAP9/AAD/////AAAAAP///////wAA") +}] +blend_shape_mode = 0 + +[sub_resource type="ArrayMesh" id="ArrayMesh_bbjgc"] +_surfaces = [{ +"aabb": AABB(-1, -0.4, -0.2, 2, 0.4, 0.4), +"attribute_data": PackedByteArray("AAD/I/8RAAD/I/8j/yP/I/9N/yP/I//b/03/2/8j/9v/Ef//AAD/2/93/9v/Tf/b/3f/I/9N/yP/I/8j/yP/2wAA/yMAAP/b"), +"format": 34896613399, +"index_count": 24, +"index_data": PackedByteArray("AAABAAIAAwAEAAUABQAEAAYABwAIAAkACgALAAwADAALAA0ADgAPABAAEAAPABEA"), +"material": ExtResource("34_rl4wl"), +"name": "Cube", +"primitive": 3, +"uv_scale": Vector4(0, 0, 0, 0), +"vertex_count": 18, +"vertex_data": PackedByteArray("AAD///////8AAAAA/3///wAA//8AAP//AAD//wAAsvIAAAAA/3+y8v////8AALLy//8AAP9/svL/////AAD/v///AAD/f/+//////////7////////8mwv//AAD/fybCAAD/////JsIAAAAA/38mwgAA//8AAFTV/////wAAVNUAAP////9U1f///////1TV/z//f/8//3//P/9/PjnAxj45wMY+OcDGPjnAxv9/AAD/fwAA/38AAIYUeOuGFHjrhhR464YUeOtU1aoqVNWqKlTVqipU1aoq") +}] +blend_shape_mode = 0 +shadow_mesh = SubResource("ArrayMesh_20ek7") + +[sub_resource type="ConcavePolygonShape3D" id="ConcavePolygonShape3D_pyppt"] +data = PackedVector3Array(-1, 0, 0.2, -1, -0.4, 0, -1, 0, -0.2, -1, 0, -0.2, -1, -0.4, 0, 1, 0, -0.2, 1, 0, -0.2, -1, -0.4, 0, 1, -0.4, 0, 1, 0, -0.2, 1, -0.4, 0, 1, 0, 0.2, 1, 0, 0.2, 1, -0.4, 0, -1, 0, 0.2, -1, 0, 0.2, 1, -0.4, 0, -1, -0.4, 0, -1, 0, -0.2, 1, 0, -0.2, -1, 0, 0.2, -1, 0, 0.2, 1, 0, -0.2, 1, 0, 0.2) + [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_hb05j"] albedo_color = Color(0.866667, 0.109804, 0.101961, 1) @@ -374,6 +409,24 @@ label = "Vending Machine" verb = "toggle" metadata/_custom_type_script = "uid://deg5xd87cy8rg" +[node name="AirlockSign" type="MeshInstance3D" parent="Props"] +transform = Transform3D(-1, 0, -8.74228e-08, 0, 1, 0, 8.74228e-08, 0, -1, -9.06159, 3, -7.29323) +gi_mode = 2 +mesh = SubResource("ArrayMesh_bbjgc") + +[node name="StaticBody3D" type="StaticBody3D" parent="Props/AirlockSign"] +collision_layer = 5 +collision_mask = 0 + +[node name="CollisionShape3D" type="CollisionShape3D" parent="Props/AirlockSign/StaticBody3D"] +shape = SubResource("ConcavePolygonShape3D_pyppt") + +[node name="Gunkable" parent="Props/AirlockSign/StaticBody3D" node_paths=PackedStringArray("body", "mesh_instance") instance=ExtResource("40_6kdm2")] +mask_dim = 64 +body = NodePath("..") +mesh_instance = NodePath("../..") +source_gunk_material = ExtResource("37_00w3i") + [node name="CleanPodium" type="StaticBody3D" parent="."] transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, -4, 1, 0) diff --git a/src/world/world.tscn b/src/world/world.tscn index a67352d..2f8b682 100644 --- a/src/world/world.tscn +++ b/src/world/world.tscn @@ -4,7 +4,7 @@ [ext_resource type="Resource" uid="uid://tgac5tnfx56r" path="res://src/world/world_manager.tres" id="2_5kmgb"] [ext_resource type="PackedScene" uid="uid://byvjsvavbg5xe" path="res://src/ui/menus/pause_menu/pause_menu.tscn" id="2_6fy3g"] [ext_resource type="Resource" uid="uid://0i72bf8ip1lx" path="res://src/world/spook_manager.tres" id="3_l0av5"] -[ext_resource type="PackedScene" uid="uid://bov4ok76woyc" path="res://levels/ghost_ship/ghost_ship.tscn" id="4_5kmgb"] +[ext_resource type="PackedScene" uid="uid://dc4tts6342cuj" path="res://levels/testing/prop_test/prop_test.tscn" id="4_5kmgb"] [ext_resource type="PackedScene" uid="uid://c0uitm5cg88h1" path="res://src/ui/menus/kill_screen/kill_screen.tscn" id="6_l0av5"] [ext_resource type="PackedScene" uid="uid://brknr57xc2cp0" path="res://src/ui/elements/save_icon/save_icon.tscn" id="7_5kmgb"]