Area 2 all rooms preliminary lighting setup, a few with unapplied scale but maybe fine.

This commit is contained in:
Pal
2025-10-07 21:38:27 -07:00
parent 4c5281c852
commit 9ed5f8600c
43 changed files with 3963 additions and 1195 deletions

View File

@@ -1,9 +1,10 @@
[gd_scene load_steps=17 format=3 uid="uid://02v033xrh6xi"]
[gd_scene load_steps=67 format=3 uid="uid://02v033xrh6xi"]
[ext_resource type="Script" uid="uid://bd824eigybu51" path="res://src/map/dungeon/code/ExitRoom.cs" id="2_7o05s"]
[ext_resource type="PackedScene" uid="uid://bpihpjlg5mcq" path="res://src/map/dungeon/models/Area 2/Exit/A2-Exit.glb" id="2_d13sj"]
[ext_resource type="Texture2D" uid="uid://dw50ys561j8no" path="res://src/map/assets/DUST_1.png" id="4_kx0t3"]
[ext_resource type="Texture2D" uid="uid://b7kj1pxt7wx1g" path="res://src/vfx/World/BLUE_FLAME.png" id="5_pmpee"]
[ext_resource type="Texture2D" uid="uid://dw8vvn66qqfj2" path="res://src/minimap/textures/Room Maps/mi_exit.png" id="7_vsgtq"]
[ext_resource type="Texture2D" uid="uid://dvast710lxrmw" path="res://src/map/dungeon/door/A2_BLOCKED_DOOR.png" id="21_7o05s"]
[sub_resource type="BoxShape3D" id="BoxShape3D_umdkt"]
size = Vector3(0.391602, 21, 37)
@@ -21,14 +22,6 @@ radius = 1.40381
[sub_resource type="BoxShape3D" id="BoxShape3D_bracd"]
size = Vector3(1.31396, 11.3767, 3.75488)
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_51rrf"]
albedo_texture = ExtResource("21_7o05s")
texture_filter = 0
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_alrge"]
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_x3ul8"]
[sub_resource type="BoxShape3D" id="BoxShape3D_7o05s"]
size = Vector3(20, 20, 36)
@@ -43,6 +36,454 @@ transparency = 1
albedo_texture = ExtResource("7_vsgtq")
texture_filter = 0
[sub_resource type="Curve" id="Curve_d13sj"]
_limits = [-2.0, 2.0, 0.0, 1.0]
_data = [Vector2(0.00358423, 0.230769), 0.0, 0.0, 0, 0, Vector2(0.982079, -1.03846), 0.0, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_xbcfg"]
curve = SubResource("Curve_d13sj")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_vsgtq"]
lifetime_randomness = 0.05
emission_shape = 3
emission_box_extents = Vector3(22.2, 22.505, 22)
angle_min = -245.3
angle_max = 417.9
orbit_velocity_min = -0.0269999
orbit_velocity_max = 0.0400001
orbit_velocity_curve = SubResource("CurveTexture_xbcfg")
gravity = Vector3(0, -0.07, 0)
scale_min = 0.0
scale_max = 0.0
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_ecy5p"]
transparency = 1
cull_mode = 2
shading_mode = 0
albedo_color = Color(1, 1, 1, 0.0862745)
albedo_texture = ExtResource("4_kx0t3")
billboard_mode = 2
[sub_resource type="QuadMesh" id="QuadMesh_fnbln"]
material = SubResource("StandardMaterial3D_ecy5p")
size = Vector2(0.1, 0.1)
subdivide_width = 1
subdivide_depth = 1
[sub_resource type="AtlasTexture" id="AtlasTexture_fa0yd"]
atlas = ExtResource("5_pmpee")
region = Rect2(1024, 0, 512, 502)
[sub_resource type="AtlasTexture" id="AtlasTexture_xvxtm"]
atlas = ExtResource("5_pmpee")
region = Rect2(1536, 0, 512, 502)
[sub_resource type="AtlasTexture" id="AtlasTexture_yckbp"]
atlas = ExtResource("5_pmpee")
region = Rect2(2048, 0, 512, 502)
[sub_resource type="AtlasTexture" id="AtlasTexture_k3wb6"]
atlas = ExtResource("5_pmpee")
region = Rect2(2560, 0, 512, 502)
[sub_resource type="AtlasTexture" id="AtlasTexture_lvx8f"]
atlas = ExtResource("5_pmpee")
region = Rect2(3072, 0, 512, 502)
[sub_resource type="AtlasTexture" id="AtlasTexture_5jf3f"]
atlas = ExtResource("5_pmpee")
region = Rect2(3584, 0, 512, 502)
[sub_resource type="AtlasTexture" id="AtlasTexture_yaek2"]
atlas = ExtResource("5_pmpee")
region = Rect2(4096, 0, 512, 502)
[sub_resource type="AtlasTexture" id="AtlasTexture_m7ked"]
atlas = ExtResource("5_pmpee")
region = Rect2(4608, 0, 512, 502)
[sub_resource type="AtlasTexture" id="AtlasTexture_tgauh"]
atlas = ExtResource("5_pmpee")
region = Rect2(5120, 0, 512, 502)
[sub_resource type="AtlasTexture" id="AtlasTexture_23ip1"]
atlas = ExtResource("5_pmpee")
region = Rect2(5632, 0, 512, 502)
[sub_resource type="AtlasTexture" id="AtlasTexture_xwq6u"]
atlas = ExtResource("5_pmpee")
region = Rect2(6144, 0, 512, 502)
[sub_resource type="AtlasTexture" id="AtlasTexture_dvh5e"]
atlas = ExtResource("5_pmpee")
region = Rect2(6656, 0, 512, 502)
[sub_resource type="AtlasTexture" id="AtlasTexture_oryp2"]
atlas = ExtResource("5_pmpee")
region = Rect2(7168, 0, 512, 502)
[sub_resource type="AtlasTexture" id="AtlasTexture_vnvpj"]
atlas = ExtResource("5_pmpee")
region = Rect2(7680, 0, 512, 502)
[sub_resource type="AtlasTexture" id="AtlasTexture_huh6d"]
atlas = ExtResource("5_pmpee")
region = Rect2(8192, 0, 512, 502)
[sub_resource type="AtlasTexture" id="AtlasTexture_vwdtx"]
atlas = ExtResource("5_pmpee")
region = Rect2(8704, 0, 512, 502)
[sub_resource type="AtlasTexture" id="AtlasTexture_wj4rl"]
atlas = ExtResource("5_pmpee")
region = Rect2(9216, 0, 512, 502)
[sub_resource type="AtlasTexture" id="AtlasTexture_ufqel"]
atlas = ExtResource("5_pmpee")
region = Rect2(9728, 0, 512, 502)
[sub_resource type="AtlasTexture" id="AtlasTexture_gm2xs"]
atlas = ExtResource("5_pmpee")
region = Rect2(10240, 0, 512, 502)
[sub_resource type="AtlasTexture" id="AtlasTexture_6qdtc"]
atlas = ExtResource("5_pmpee")
region = Rect2(10752, 0, 512, 502)
[sub_resource type="AtlasTexture" id="AtlasTexture_7doc0"]
atlas = ExtResource("5_pmpee")
region = Rect2(11264, 0, 512, 502)
[sub_resource type="AtlasTexture" id="AtlasTexture_bastv"]
atlas = ExtResource("5_pmpee")
region = Rect2(11776, 0, 512, 502)
[sub_resource type="AtlasTexture" id="AtlasTexture_7wx2a"]
atlas = ExtResource("5_pmpee")
region = Rect2(12288, 0, 512, 502)
[sub_resource type="AtlasTexture" id="AtlasTexture_2oybq"]
atlas = ExtResource("5_pmpee")
region = Rect2(12800, 0, 512, 502)
[sub_resource type="AtlasTexture" id="AtlasTexture_ajic6"]
atlas = ExtResource("5_pmpee")
region = Rect2(13312, 0, 512, 502)
[sub_resource type="AtlasTexture" id="AtlasTexture_york4"]
atlas = ExtResource("5_pmpee")
region = Rect2(13824, 0, 512, 502)
[sub_resource type="AtlasTexture" id="AtlasTexture_en15j"]
atlas = ExtResource("5_pmpee")
region = Rect2(14336, 0, 512, 502)
[sub_resource type="AtlasTexture" id="AtlasTexture_18mqb"]
atlas = ExtResource("5_pmpee")
region = Rect2(14848, 0, 512, 502)
[sub_resource type="AtlasTexture" id="AtlasTexture_2fevs"]
atlas = ExtResource("5_pmpee")
region = Rect2(15360, 0, 512, 502)
[sub_resource type="AtlasTexture" id="AtlasTexture_r4nju"]
atlas = ExtResource("5_pmpee")
region = Rect2(15872, 0, 512, 502)
[sub_resource type="AtlasTexture" id="AtlasTexture_fia20"]
atlas = ExtResource("5_pmpee")
region = Rect2(0, 502, 512, 502)
[sub_resource type="AtlasTexture" id="AtlasTexture_nhfcs"]
atlas = ExtResource("5_pmpee")
region = Rect2(512, 502, 512, 502)
[sub_resource type="AtlasTexture" id="AtlasTexture_8btat"]
atlas = ExtResource("5_pmpee")
region = Rect2(1024, 502, 512, 502)
[sub_resource type="AtlasTexture" id="AtlasTexture_62cid"]
atlas = ExtResource("5_pmpee")
region = Rect2(1536, 502, 512, 502)
[sub_resource type="AtlasTexture" id="AtlasTexture_f43j4"]
atlas = ExtResource("5_pmpee")
region = Rect2(2048, 502, 512, 502)
[sub_resource type="AtlasTexture" id="AtlasTexture_8almt"]
atlas = ExtResource("5_pmpee")
region = Rect2(2560, 502, 512, 502)
[sub_resource type="AtlasTexture" id="AtlasTexture_8nqox"]
atlas = ExtResource("5_pmpee")
region = Rect2(3072, 502, 512, 502)
[sub_resource type="AtlasTexture" id="AtlasTexture_7fvd3"]
atlas = ExtResource("5_pmpee")
region = Rect2(3584, 502, 512, 502)
[sub_resource type="AtlasTexture" id="AtlasTexture_44yh0"]
atlas = ExtResource("5_pmpee")
region = Rect2(4096, 502, 512, 502)
[sub_resource type="AtlasTexture" id="AtlasTexture_76xwn"]
atlas = ExtResource("5_pmpee")
region = Rect2(4608, 502, 512, 502)
[sub_resource type="AtlasTexture" id="AtlasTexture_wep0j"]
atlas = ExtResource("5_pmpee")
region = Rect2(5120, 502, 512, 502)
[sub_resource type="AtlasTexture" id="AtlasTexture_i6qdo"]
atlas = ExtResource("5_pmpee")
region = Rect2(5632, 502, 512, 502)
[sub_resource type="SpriteFrames" id="SpriteFrames_chrua"]
animations = [{
"frames": [{
"duration": 1.0,
"texture": SubResource("AtlasTexture_fa0yd")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_xvxtm")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_yckbp")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_k3wb6")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_lvx8f")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_5jf3f")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_yaek2")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_m7ked")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_tgauh")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_23ip1")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_xwq6u")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_dvh5e")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_oryp2")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_vnvpj")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_huh6d")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_vwdtx")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_wj4rl")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_ufqel")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_gm2xs")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_6qdtc")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_7doc0")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_bastv")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_7wx2a")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_2oybq")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_ajic6")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_york4")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_en15j")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_18mqb")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_2fevs")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_r4nju")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_fia20")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_nhfcs")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_8btat")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_62cid")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_f43j4")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_8almt")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_8nqox")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_7fvd3")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_44yh0")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_76xwn")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_wep0j")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_i6qdo")
}],
"loop": true,
"name": &"default",
"speed": 16.0
}]
[sub_resource type="Animation" id="Animation_k6ywg"]
resource_name = "Flame Flicker"
length = 2.62501
loop_mode = 1
step = 0.0625
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath(".:frame")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0, 2.5625),
"transitions": PackedFloat32Array(1, 1),
"update": 0,
"values": [0, 41]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("../AnimatedSprite3D2:frame")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0, 2.5625),
"transitions": PackedFloat32Array(1, 1),
"update": 0,
"values": [0, 41]
}
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("../OmniLight3D:light_energy")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0, 0.125, 0.25, 0.375, 0.5, 0.625, 0.75, 0.875, 1, 1.125, 1.25, 1.375, 1.5, 1.625, 1.75, 1.875, 2, 2.125, 2.25, 2.375, 2.5),
"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1),
"update": 0,
"values": [6.436, 6.0, 6.9, 5.6, 6.2, 5.5, 6.0, 6.436, 6.0, 6.9, 5.6, 6.2, 5.5, 6.0, 6.436, 6.0, 6.9, 5.6, 6.2, 5.5, 6.0]
}
tracks/3/type = "value"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath("../OmniLight3D2:light_energy")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = {
"times": PackedFloat32Array(0, 0.125, 0.25, 0.375, 0.5, 0.625, 0.75, 0.875, 1, 1.125, 1.25, 1.375, 1.5, 1.625, 1.75, 1.875, 2, 2.125, 2.25, 2.375, 2.5),
"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1),
"update": 0,
"values": [6.436, 6.0, 6.9, 5.6, 6.2, 5.5, 6.0, 6.436, 6.0, 6.9, 5.6, 6.2, 5.5, 6.0, 6.436, 6.0, 6.9, 5.6, 6.2, 5.5, 6.0]
}
[sub_resource type="Animation" id="Animation_54fgm"]
length = 0.001
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath(".:frame")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [0]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("../AnimatedSprite3D2:frame")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [0]
}
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("../OmniLight3D:light_energy")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [6.436]
}
[sub_resource type="AnimationLibrary" id="AnimationLibrary_ljhl3"]
_data = {
&"Flame Flicker": SubResource("Animation_k6ywg"),
&"RESET": SubResource("Animation_54fgm")
}
[sub_resource type="Environment" id="Environment_nka2x"]
background_mode = 1
background_color = Color(0.295867, 0.295866, 0.295866, 1)
sdfgi_enabled = true
glow_enabled = true
glow_intensity = 3.02
glow_strength = 0.98
glow_bloom = 1.0
fog_enabled = true
volumetric_fog_enabled = true
volumetric_fog_density = 0.02
[node name="Floor Exit B" type="Node3D"]
script = ExtResource("2_7o05s")
@@ -90,29 +531,6 @@ shape = SubResource("BoxShape3D_bracd")
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 8.99862, -5.18835, 9.61777)
shape = SubResource("BoxShape3D_bracd")
[node name="Doors" type="Node3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 2.27408, -2.796)
[node name="CSGBox3D" type="CSGBox3D" parent="Doors"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.0314088, 4.23029, -0.0385468)
visible = false
operation = 1
flip_faces = true
size = Vector3(20, 10, 16)
[node name="CSGBox2" type="CSGBox3D" parent="Doors"]
transform = Transform3D(-4.37114e-08, -1, 0, 1, -4.37114e-08, 0, 0, 0, 1, -0.209171, 0.0366807, 17.9545)
use_collision = true
size = Vector3(4, 4, 0.01)
material = SubResource("StandardMaterial3D_51rrf")
[node name="DOOR" type="CSGBox3D" parent="Doors/CSGBox2"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.396216, 0.0720215, -0.104668)
material_override = SubResource("StandardMaterial3D_alrge")
operation = 2
size = Vector3(5.19281, 4.49561, 2)
material = SubResource("StandardMaterial3D_x3ul8")
[node name="Spawn Points" type="Node3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.93856, 9.80872)
@@ -144,10 +562,66 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.00295544, 1.56831, 4.23168)
shape = SubResource("BoxShape3D_wu8s2")
[node name="Minimap" type="Node3D" parent="."]
visible = false
[node name="Minimap" type="MeshInstance3D" parent="Minimap"]
unique_name_in_owner = true
transform = Transform3D(-4.37114e-08, 0, -1, 0, 1, 0, 1, 0, -4.37114e-08, 0, -1.36053, -1.81937)
transform = Transform3D(-4.37114e-08, 0, -1, 0, 1, 0, 1, 0, -4.37114e-08, 0, 0, -1.819)
mesh = SubResource("PlaneMesh_fnbln")
skeleton = NodePath("")
surface_material_override/0 = SubResource("StandardMaterial3D_chrua")
[node name="GPUParticles3D2" type="GPUParticles3D" parent="."]
transform = Transform3D(0.464, 0, 0, 0, 0.227, 0, 0, 0, 0.462, 10.4639, 4.40841, 7.92556)
amount = 20
lifetime = 41.19
local_coords = true
process_material = SubResource("ParticleProcessMaterial_vsgtq")
draw_pass_1 = SubResource("QuadMesh_fnbln")
[node name="OmniLight3D" type="OmniLight3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 7.86203, 4.919, 0.443518)
light_energy = 6.436
shadow_enabled = true
shadow_blur = 10.0
omni_range = 20.929
omni_attenuation = 1.346
[node name="OmniLight3D2" type="OmniLight3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -8.09453, 4.919, 0.443518)
light_energy = 6.69992
shadow_enabled = true
shadow_blur = 10.0
omni_range = 20.929
omni_attenuation = 1.346
[node name="AnimatedSprite3D" type="AnimatedSprite3D" parent="."]
transform = Transform3D(0.615, 0, 0, 0, 0.445, 0, 0, 0, 0.445, -8.06807, 5.73564, 0.45137)
billboard = 2
sprite_frames = SubResource("SpriteFrames_chrua")
autoplay = "default"
[node name="AnimatedSprite3D2" type="AnimatedSprite3D" parent="."]
transform = Transform3D(0.615, 0, 0, 0, 0.445, 0, 0, 0, 0.445, 7.74296, 5.70896, 0.45137)
billboard = 2
sprite_frames = SubResource("SpriteFrames_chrua")
autoplay = "default"
[node name="OmniLight3D3" type="OmniLight3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 13.623, -5.91127)
light_energy = 4.7
omni_range = 14.399
[node name="FogVolume" type="FogVolume" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.482666, 20.6513, -16.0869)
size = Vector3(30.7642, 10.3584, 24.915)
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
root_node = NodePath("../AnimatedSprite3D")
libraries = {
&"": SubResource("AnimationLibrary_ljhl3")
}
autoplay = "Flame Flicker"
[node name="WorldEnvironment" type="WorldEnvironment" parent="."]
environment = SubResource("Environment_nka2x")