Floating dust is tied to areas, not player

This commit is contained in:
Rob Kelly 2025-03-12 11:04:10 -06:00
parent 1515b9edee
commit ded02933f0
3 changed files with 83 additions and 2 deletions

View File

@ -1,4 +1,4 @@
[gd_scene load_steps=118 format=4 uid="uid://crydi5cjgfwe5"]
[gd_scene load_steps=127 format=4 uid="uid://crydi5cjgfwe5"]
[ext_resource type="PackedScene" uid="uid://oowut88kr2ox" path="res://levels/ghost_ship/player_ship/player_ship.tscn" id="1_2pyr1"]
[ext_resource type="PackedScene" uid="uid://c2omlx4ptrc01" path="res://src/world/gunk_body/gunk_body.tscn" id="2_2egij"]
@ -35,6 +35,7 @@
[ext_resource type="Texture2D" uid="uid://1mr7tplfxcrc" path="res://assets/level/wall/wall_3_C.png" id="22_sqa4l"]
[ext_resource type="Texture2D" uid="uid://cwqr6plpp3aov" path="res://assets/level/wall/wall_3_M.png" id="23_17ivy"]
[ext_resource type="Texture2D" uid="uid://qw6yjgadiv5f" path="res://assets/level/wall/wall_3_N.png" id="24_ji5cn"]
[ext_resource type="PackedScene" uid="uid://30o8ltnnxpxo" path="res://src/effects/floating_dust.tscn" id="25_6giaa"]
[ext_resource type="Texture2D" uid="uid://dqkarguq5m5hn" path="res://assets/level/wall/wall_3_R.png" id="25_35kna"]
[sub_resource type="CompressedTexture2D" id="CompressedTexture2D_rp2qp"]
@ -390,6 +391,44 @@ _surfaces = [{
blend_shape_mode = 0
shadow_mesh = SubResource("ArrayMesh_smvh1")
[sub_resource type="Curve" id="Curve_w3xaq"]
_limits = [0.0, 0.4, 0.0, 1.0]
_data = [Vector2(0, 0), 0.0, 0.0, 0, 0, Vector2(0.3, 0.4), 0.0, 0.0, 0, 0, Vector2(0.7, 0.4), 0.0, 0.0, 0, 0, Vector2(1, 0), 0.0, 0.0, 0, 0]
point_count = 4
[sub_resource type="CurveTexture" id="CurveTexture_ty63v"]
curve = SubResource("Curve_w3xaq")
[sub_resource type="Gradient" id="Gradient_yfel2"]
offsets = PackedFloat32Array(0, 0.1, 0.4, 0.6, 1)
colors = PackedColorArray(0.15, 0.15, 0.15, 1, 0.355313, 0.355314, 0.355313, 1, 0.356863, 0.356863, 0.356863, 1, 0.647059, 0.647059, 0.647059, 1, 0.15, 0.15, 0.15, 1)
[sub_resource type="GradientTexture1D" id="GradientTexture1D_w3xaq"]
gradient = SubResource("Gradient_yfel2")
[sub_resource type="Curve" id="Curve_yfel2"]
_data = [Vector2(0, 1), 0.0, 0.0, 0, 0, Vector2(0.746094, 1), 0.0, 0.0, 0, 0, Vector2(1, 0), 0.0, 0.0, 0, 0]
point_count = 3
[sub_resource type="CurveTexture" id="CurveTexture_w3xaq"]
curve = SubResource("Curve_yfel2")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_otfxe"]
emission_shape = 3
emission_box_extents = Vector3(4.5, 1.5, 4.5)
direction = Vector3(0, -1, 0)
spread = 100.0
initial_velocity_min = 0.05
initial_velocity_max = 0.15
gravity = Vector3(0, 0, 0)
scale_curve = SubResource("CurveTexture_w3xaq")
color_ramp = SubResource("GradientTexture1D_w3xaq")
alpha_curve = SubResource("CurveTexture_ty63v")
turbulence_enabled = true
turbulence_noise_strength = 0.1
turbulence_noise_scale = 0.3
turbulence_influence_min = 0.0
[sub_resource type="ShaderMaterial" id="ShaderMaterial_35kna"]
resource_local_to_scene = true
render_priority = 0
@ -468,6 +507,22 @@ shadow_mesh = SubResource("ArrayMesh_okeuk")
[sub_resource type="ConcavePolygonShape3D" id="ConcavePolygonShape3D_ruwlj"]
data = PackedVector3Array(-1.5, 0, -6, -1.5, 0, 6, -1.5, 3, -6, -1.5, 3, -6, -1.5, 0, 6, -1.5, 3, 6, 1.5, 0, 6, 1.5, 0, -6, 1.5, 3, 6, 1.5, 3, 6, 1.5, 0, -6, 1.5, 3, -6, -1.5, 0, 6, -1.5, 0, -6, 1.5, 0, 6, 1.5, 0, 6, -1.5, 0, -6, 1.5, 0, -6, 1.5, 3, 6, 1.5, 3, -6, -1.5, 3, 6, -1.5, 3, 6, 1.5, 3, -6, -1.5, 3, -6)
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_6giaa"]
emission_shape = 3
emission_box_extents = Vector3(1.5, 1.5, 6)
direction = Vector3(0, -1, 0)
spread = 100.0
initial_velocity_min = 0.05
initial_velocity_max = 0.15
gravity = Vector3(0, 0, 0)
scale_curve = SubResource("CurveTexture_w3xaq")
color_ramp = SubResource("GradientTexture1D_w3xaq")
alpha_curve = SubResource("CurveTexture_ty63v")
turbulence_enabled = true
turbulence_noise_strength = 0.1
turbulence_noise_scale = 0.3
turbulence_influence_min = 0.0
[sub_resource type="ShaderMaterial" id="ShaderMaterial_4a0u4"]
resource_local_to_scene = true
render_priority = 0
@ -1013,6 +1068,11 @@ transform = Transform3D(0.5, 0, 0, 0, 0.353553, 0.353554, 0, -0.353554, 0.353553
[node name="GrunkNodule3" parent="Airlock" instance=ExtResource("19_ji5cn")]
transform = Transform3D(0.5, 0, 0, 0, 0.353553, 0.353554, 0, -0.353554, 0.353553, 1.4, 2.65, -4.3)
[node name="FloatingDust" parent="Airlock" instance=ExtResource("25_6giaa")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.5, 0)
preprocess = 12.0
process_material = SubResource("ParticleProcessMaterial_otfxe")
[node name="Corridor1" type="Node3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -22.5)
@ -1025,6 +1085,11 @@ mesh = SubResource("ArrayMesh_d8p6j")
[node name="CollisionShape3D" type="CollisionShape3D" parent="Corridor1/Hallway1"]
shape = SubResource("ConcavePolygonShape3D_ruwlj")
[node name="FloatingDust" parent="Corridor1/Hallway1" instance=ExtResource("25_6giaa")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.5, 0)
preprocess = 12.0
process_material = SubResource("ParticleProcessMaterial_6giaa")
[node name="T-Junction1" parent="Corridor1" instance=ExtResource("2_2egij")]
transform = Transform3D(-4.37114e-08, 0, -1, 0, 1, 0, 1, 0, -4.37114e-08, 0, 0, -7.5)
mask_dim = 192
@ -1071,6 +1136,11 @@ value = 800.0
transform = Transform3D(0.0773296, 0.288598, 0.1725, 0.0446463, 0.166622, -0.298779, -0.333244, 0.0892925, -7.54021e-09, -1.5, 1.12511, -1.75)
value = 800.0
[node name="FloatingDust" parent="Corridor1/Hallway2" instance=ExtResource("25_6giaa")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.5, 0)
preprocess = 12.0
process_material = SubResource("ParticleProcessMaterial_6giaa")
[node name="Hallway3" parent="Corridor1" instance=ExtResource("2_2egij")]
transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, -19.5, 0, -7.5)
source_gunk_material = SubResource("ShaderMaterial_d8p6j")
@ -1081,6 +1151,11 @@ mesh = SubResource("ArrayMesh_nmnkj")
[node name="CollisionShape3D" type="CollisionShape3D" parent="Corridor1/Hallway3"]
shape = SubResource("ConcavePolygonShape3D_ruwlj")
[node name="FloatingDust" parent="Corridor1/Hallway3" instance=ExtResource("25_6giaa")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.5, 0)
preprocess = 12.0
process_material = SubResource("ParticleProcessMaterial_6giaa")
[node name="T-Junction2" parent="Corridor1" instance=ExtResource("2_2egij")]
transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, -27, 0, -7.5)
mask_dim = 192
@ -1113,5 +1188,10 @@ mesh = SubResource("ArrayMesh_6nvhk")
[node name="CollisionShape3D" type="CollisionShape3D" parent="Corridor1/Hallway4"]
shape = SubResource("ConcavePolygonShape3D_ruwlj")
[node name="FloatingDust" parent="Corridor1/Hallway4" instance=ExtResource("25_6giaa")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.5, 0)
preprocess = 12.0
process_material = SubResource("ParticleProcessMaterial_6giaa")
[connection signal="activated" from="Airlock/FarWall/WallSwitch" to="Airlock/FarWall/WallSwitch" method="disable"]
[connection signal="activated" from="Airlock/FarWall/WallSwitch" to="Airlock/FarWall/Bulkhead" method="open"]

View File

@ -59,6 +59,7 @@ size = Vector2(0.02, 0.02)
[node name="FloatingDust" type="GPUParticles3D"]
amount = 32
lifetime = 12.0
preprocess = 12.0
fixed_fps = 8
interpolate = false
fract_delta = false

View File

@ -2,7 +2,7 @@
- [ ] Grunk basics
- [x] Grunk shader
- [x] Clear rate checking / signals
- [ ] [[nodules]]
- [x] [[nodules]]
- [ ] #equipment
- [ ] [[spray beam]]
- [ ] Spray nozzle asset