Many small changes and improvements

- Improved the TimedMusicAnimationPlayer.
- Added function call exclusions in AnimPlayerEditorCalls (currently 'free' and 'queue_free').
- Added a weak controller setting, which boosts controller vibrations if the controller needs just more kick.
- Changed some material settings.
This commit is contained in:
SchimmelSpreu83 2026-01-03 12:29:17 +01:00
parent f5b406c72f
commit 9da3ddcf35
62 changed files with 4718 additions and 520 deletions

View File

@ -5,6 +5,7 @@ signal beat_tick(beat: int)
const SPEED_TRANSITION_DISTANCE: float = 0.1 const SPEED_TRANSITION_DISTANCE: float = 0.1
@export var chase_anim: StringName = &"" @export var chase_anim: StringName = &""
@export var chase_anim_karaoke: StringName = &""
@export var debug_from_marker: StringName = &"" @export var debug_from_marker: StringName = &""
@export var bpm: float = 160.0 @export var bpm: float = 160.0
@export var debug_play_beat_tick: bool = false @export var debug_play_beat_tick: bool = false
@ -48,18 +49,19 @@ func _process(_delta: float) -> void:
func _physics_process(delta: float) -> void: func _physics_process(delta: float) -> void:
if not music_animation.is_playing(): if not music_animation.is_playing():
return return
# TODO: Calculate the speed scale based on the balls speed divided by the current player speed.
var player_character: PlayerCharacter = GameGlobals.player var player: PlayerCharacter = GameGlobals.player
var local_position: Vector3 = progress_track.to_local(player_character.global_position) var local_position: Vector3 = progress_track.to_local(player.global_position)
var player_offset: float = progress_track.curve.get_closest_offset(local_position) var player_offset: float = progress_track.curve.get_closest_offset(local_position)
var desired_speed_scale: float = remap( var desired_speed_scale: float = remap(
(player_desired_progress.progress - player_offset) + SPEED_TRANSITION_DISTANCE, (player_desired_progress.progress - player_offset) + SPEED_TRANSITION_DISTANCE,
0.0, SPEED_TRANSITION_DISTANCE, 0.0, SPEED_TRANSITION_DISTANCE,
0.1, 1.05 0.1, 1.05
) )
player_character.speed_scale = move_toward( player.speed_scale = move_toward(
player_character.speed_scale, player.speed_scale,
clampf(desired_speed_scale, 0.1, 1.1), clampf(desired_speed_scale, 0.1, 1.1),
delta delta
) )
@ -67,9 +69,9 @@ func _physics_process(delta: float) -> void:
func _on_start_chase_area_body_entered(_body: Node3D) -> void: func _on_start_chase_area_body_entered(_body: Node3D) -> void:
if not OS.is_debug_build() or debug_from_marker.is_empty(): if not OS.is_debug_build() or debug_from_marker.is_empty():
music_animation.play(chase_anim) music_animation.play(_get_chase_anim_name())
else: else:
music_animation.play_section_with_markers(chase_anim, debug_from_marker) music_animation.play_section_with_markers(_get_chase_anim_name(), debug_from_marker)
await get_tree().process_frame await get_tree().process_frame
var player: PlayerCharacter = GameGlobals.get_player() var player: PlayerCharacter = GameGlobals.get_player()
@ -81,4 +83,11 @@ func _on_beat_tick(beat: int) -> void:
if debug_play_beat_tick: if debug_play_beat_tick:
beat_sfx.play() beat_sfx.play()
debug_visualizer.scale = Vector3.ONE * (1.25 if beat % 2 == 0 else 1.0) debug_visualizer.scale = Vector3.ONE * (0.85 if beat % 2 == 0 else 1.0)
func _get_chase_anim_name() -> StringName:
if not chase_anim_karaoke.is_empty() and (OS.get_cmdline_user_args().has("--karaoke") or OS.has_environment("karaoke")):
return chase_anim_karaoke
return chase_anim

View File

@ -2,8 +2,9 @@
[ext_resource type="AudioStream" uid="uid://dxx77jtvkpmdh" path="res://_development/ayuroo/levels/_chase_test/everlasting_fun/Everlasting Fun (Derivative Version) 【INDIGO PARK FAN MUSIC VIDEO.mp3" id="1_prlov"] [ext_resource type="AudioStream" uid="uid://dxx77jtvkpmdh" path="res://_development/ayuroo/levels/_chase_test/everlasting_fun/Everlasting Fun (Derivative Version) 【INDIGO PARK FAN MUSIC VIDEO.mp3" id="1_prlov"]
[sub_resource type="Animation" id="Animation_tqtrq"] [sub_resource type="Animation" id="Animation_lx33g"]
length = 0.001 resource_name = "RESET"
step = 0.0427
tracks/0/type = "value" tracks/0/type = "value"
tracks/0/imported = false tracks/0/imported = false
tracks/0/enabled = true tracks/0/enabled = true
@ -19,48 +20,25 @@ tracks/0/keys = {
tracks/1/type = "value" tracks/1/type = "value"
tracks/1/imported = false tracks/1/imported = false
tracks/1/enabled = true tracks/1/enabled = true
tracks/1/path = NodePath("Saws/Saw:position") tracks/1/path = NodePath("HeavyBeatVibration:magnitude_multiplier")
tracks/1/interp = 1 tracks/1/interp = 1
tracks/1/loop_wrap = true tracks/1/loop_wrap = true
tracks/1/keys = { tracks/1/keys = {
"times": PackedFloat32Array(0), "times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1), "transitions": PackedFloat32Array(1),
"update": 0, "update": 0,
"values": [Vector3(0, 0.5, -46)] "values": [1.0]
} }
tracks/2/type = "value" tracks/2/type = "value"
tracks/2/imported = false tracks/2/imported = false
tracks/2/enabled = true tracks/2/enabled = true
tracks/2/path = NodePath("Saws/Saw2:position") tracks/2/path = NodePath("HeavyBeatVibration:duration")
tracks/2/interp = 1 tracks/2/interp = 1
tracks/2/loop_wrap = true tracks/2/loop_wrap = true
tracks/2/keys = { tracks/2/keys = {
"times": PackedFloat32Array(0), "times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1), "transitions": PackedFloat32Array(1),
"update": 0, "update": 0,
"values": [Vector3(0, 0.5, -53)]
}
tracks/3/type = "bezier"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath("HeavyBeatVibration:magnitude_multiplier")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = {
"handle_modes": PackedInt32Array(0),
"points": PackedFloat32Array(0, -0.25, 0, 0.25, 0),
"times": PackedFloat32Array(0)
}
tracks/4/type = "value"
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/path = NodePath("HeavyBeatVibration:duration")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [0.075] "values": [0.075]
} }
@ -3039,6 +3017,6 @@ tracks/5/keys = {
[resource] [resource]
_data = { _data = {
&"RESET": SubResource("Animation_tqtrq"), &"RESET": SubResource("Animation_lx33g"),
&"everlasting_fun": SubResource("Animation_uxiet") &"everlasting_fun": SubResource("Animation_uxiet")
} }

View File

@ -2,12 +2,12 @@
[ext_resource type="Script" uid="uid://cdgei0ihcem0n" path="res://_development/ayuroo/levels/_chase_test/_chase_test.gd" id="1_ksy85"] [ext_resource type="Script" uid="uid://cdgei0ihcem0n" path="res://_development/ayuroo/levels/_chase_test/_chase_test.gd" id="1_ksy85"]
[ext_resource type="AudioStream" uid="uid://bxka3egn4m01r" path="res://_development/ayuroo/levels/_chase_test/tick.ogg" id="2_2frp2"] [ext_resource type="AudioStream" uid="uid://bxka3egn4m01r" path="res://_development/ayuroo/levels/_chase_test/tick.ogg" id="2_2frp2"]
[ext_resource type="AnimationLibrary" uid="uid://ct8oebsc01o7j" path="res://_development/ayuroo/levels/_chase_test/everlasting_fun/_ef_chase_anim.tres" id="2_r4hpf"]
[ext_resource type="Script" uid="uid://dp6jy00a6xuhk" path="res://tools/beat_measurer.gd" id="3_c3hig"] [ext_resource type="Script" uid="uid://dp6jy00a6xuhk" path="res://tools/beat_measurer.gd" id="3_c3hig"]
[ext_resource type="AudioStream" uid="uid://bji7bb0rrangg" path="res://_development/ayuroo/levels/_chase_test/tack.ogg" id="3_c4bhh"] [ext_resource type="AudioStream" uid="uid://bji7bb0rrangg" path="res://_development/ayuroo/levels/_chase_test/tack.ogg" id="3_c4bhh"]
[ext_resource type="AnimationLibrary" uid="uid://ct8oebsc01o7j" path="res://_development/ayuroo/levels/_chase_test/everlasting_fun/_ef_chase_anim.tres" id="4_c4bhh"]
[ext_resource type="Material" uid="uid://c38215ysnknyk" path="res://assets/materials/dev/dark/dark_01.tres" id="4_gmmry"] [ext_resource type="Material" uid="uid://c38215ysnknyk" path="res://assets/materials/dev/dark/dark_01.tres" id="4_gmmry"]
[ext_resource type="PackedScene" uid="uid://c0jearfhlqcvr" path="res://src/gameplay/hazards/saw/saw.tscn" id="5_86lpt"] [ext_resource type="PackedScene" uid="uid://c0jearfhlqcvr" path="res://src/gameplay/hazards/saw/saw.tscn" id="5_86lpt"]
[ext_resource type="Script" uid="uid://bueqrebp8o36n" path="res://tools/anim_player_editor_calls.gd" id="5_c4bhh"] [ext_resource type="Script" uid="uid://jahmwrxb2siw" path="res://tools/timed_music_animationplayer.gd" id="5_c4bhh"]
[ext_resource type="Script" uid="uid://bbwtct3hoxwws" path="res://src/core/vibration_component.gd" id="6_t80us"] [ext_resource type="Script" uid="uid://bbwtct3hoxwws" path="res://src/core/vibration_component.gd" id="6_t80us"]
[sub_resource type="AudioStreamRandomizer" id="AudioStreamRandomizer_2frp2"] [sub_resource type="AudioStreamRandomizer" id="AudioStreamRandomizer_2frp2"]
@ -33,7 +33,6 @@ size = Vector3(14, 5, 1)
[node name="ChaseTest" type="Node3D"] [node name="ChaseTest" type="Node3D"]
script = ExtResource("1_ksy85") script = ExtResource("1_ksy85")
chase_anim = &"everlasting_fun" chase_anim = &"everlasting_fun"
debug_from_marker = &"IntroEnd"
bpm = 176.0 bpm = 176.0
metadata/_custom_type_script = "uid://cigop0ivp5vvu" metadata/_custom_type_script = "uid://cigop0ivp5vvu"
@ -54,12 +53,19 @@ audio_max_polyphony = 1
callback_mode_process = 0 callback_mode_process = 0
callback_mode_method = 1 callback_mode_method = 1
libraries = { libraries = {
&"": ExtResource("2_r4hpf") &"": ExtResource("4_c4bhh")
} }
script = ExtResource("5_c4bhh") script = ExtResource("5_c4bhh")
audio_player = NodePath("../Music") audio_player = NodePath("../Music")
metadata/_custom_type_script = "uid://jahmwrxb2siw" metadata/_custom_type_script = "uid://jahmwrxb2siw"
[node name="CameraRoot" type="Node3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, -1031.8802)
[node name="Camera3D" type="Camera3D" parent="CameraRoot"]
transform = Transform3D(-4.371139e-08, 0, 1, 0, 1, 0, -1, 0, -4.371139e-08, 2, 0, 0)
fov = 37.38998
[node name="ProgressTrack" type="Path3D" parent="."] [node name="ProgressTrack" type="Path3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0)
curve = SubResource("Curve3D_tqtrq") curve = SubResource("Curve3D_tqtrq")
@ -71,6 +77,10 @@ loop = false
[node name="DebugVisualizer" type="MeshInstance3D" parent="ProgressTrack/PlayerDesiredProgress"] [node name="DebugVisualizer" type="MeshInstance3D" parent="ProgressTrack/PlayerDesiredProgress"]
mesh = SubResource("SphereMesh_tqtrq") mesh = SubResource("SphereMesh_tqtrq")
[node name="RemoteTransform3D" type="RemoteTransform3D" parent="ProgressTrack/PlayerDesiredProgress/DebugVisualizer"]
remote_path = NodePath("../../../../CameraRoot")
update_scale = false
[node name="BeatMeasurer" type="Node" parent="ProgressTrack" node_paths=PackedStringArray("path")] [node name="BeatMeasurer" type="Node" parent="ProgressTrack" node_paths=PackedStringArray("path")]
script = ExtResource("3_c3hig") script = ExtResource("3_c3hig")
path = NodePath("..") path = NodePath("..")
@ -101,9 +111,9 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.5, -53)
script = ExtResource("6_t80us") script = ExtResource("6_t80us")
duration = 0.075 duration = 0.075
sync_to_audio = true sync_to_audio = true
weak_magnitude = 0.25 weak_magnitude = 0.75
strong_magnitude = 0.5 strong_magnitude = 0.5
magnitude_multiplier = 0.0 weak_controller_duration_multiplier = 1.5
metadata/_custom_type_script = "uid://bbwtct3hoxwws" metadata/_custom_type_script = "uid://bbwtct3hoxwws"
[node name="LightBeatVibration" type="Node" parent="."] [node name="LightBeatVibration" type="Node" parent="."]
@ -122,5 +132,10 @@ collision_mask = 2
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 3, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 3, 0)
shape = SubResource("BoxShape3D_gsfaw") shape = SubResource("BoxShape3D_gsfaw")
[connection signal="started_vibration" from="HeavyBeatVibration" to="Beat" method="play"] [node name="_DEV_LABEL" type="Label3D" parent="."]
transform = Transform3D(-4.371139e-08, 0, -1, 0, 1, 0, 1, 0, -4.371139e-08, 6, 2, -3)
text = "If the audio and anim desync and cause the player to slow down,
set the follower up, so that it always stays at a certain
distance from the PlayerDesiredProgress ball/point/marker."
[connection signal="body_entered" from="StartChaseArea" to="." method="_on_start_chase_area_body_entered"] [connection signal="body_entered" from="StartChaseArea" to="." method="_on_start_chase_area_body_entered"]

View File

@ -0,0 +1,19 @@
[remap]
importer="mp3"
type="AudioStreamMP3"
uid="uid://bqxw00b4hjpll"
path="res://.godot/imported/Good Enough (Karaoke w Backup Vocals) ft. @Jakeneutron.mp3-2d43ab72d2f01668a47518fd14193562.mp3str"
[deps]
source_file="res://_development/ayuroo/levels/_chase_test/good_enough/Good Enough (Karaoke w Backup Vocals) ft. @Jakeneutron.mp3"
dest_files=["res://.godot/imported/Good Enough (Karaoke w Backup Vocals) ft. @Jakeneutron.mp3-2d43ab72d2f01668a47518fd14193562.mp3str"]
[params]
loop=false
loop_offset=0.0
bpm=97.0
beat_count=0
bar_beats=4

View File

@ -0,0 +1,19 @@
[remap]
importer="mp3"
type="AudioStreamMP3"
uid="uid://b6kgg4bkxmcd7"
path="res://.godot/imported/Good Enough (feat. @KittenSneeze, @Cami-Cat, @bbyamm @longestsoloever, @OtterBoyVA) [AUDIO ONLY].mp3-2438e6dffa732e3bd1b6c0d3e17d0203.mp3str"
[deps]
source_file="res://_development/ayuroo/levels/_chase_test/good_enough/Good Enough (feat. @KittenSneeze, @Cami-Cat, @bbyamm @longestsoloever, @OtterBoyVA) [AUDIO ONLY].mp3"
dest_files=["res://.godot/imported/Good Enough (feat. @KittenSneeze, @Cami-Cat, @bbyamm @longestsoloever, @OtterBoyVA) [AUDIO ONLY].mp3-2438e6dffa732e3bd1b6c0d3e17d0203.mp3str"]
[params]
loop=false
loop_offset=0.0
bpm=97.0
beat_count=0
bar_beats=4

View File

@ -0,0 +1,19 @@
[remap]
importer="mp3"
type="AudioStreamMP3"
uid="uid://cdo7ced2107jq"
path="res://.godot/imported/Good Enough.mp3-347afbf64f6e84f9dfdc7d5768f45c89.mp3str"
[deps]
source_file="res://_development/ayuroo/levels/_chase_test/good_enough/Good Enough.mp3"
dest_files=["res://.godot/imported/Good Enough.mp3-347afbf64f6e84f9dfdc7d5768f45c89.mp3str"]
[params]
loop=false
loop_offset=0
bpm=0
beat_count=0
bar_beats=4

View File

@ -0,0 +1,142 @@
[gd_scene load_steps=14 format=3 uid="uid://buftkff6aaq04"]
[ext_resource type="Script" uid="uid://cdgei0ihcem0n" path="res://_development/ayuroo/levels/_chase_test/_chase_test.gd" id="1_sm484"]
[ext_resource type="AudioStream" uid="uid://bxka3egn4m01r" path="res://_development/ayuroo/levels/_chase_test/tick.ogg" id="2_so850"]
[ext_resource type="AudioStream" uid="uid://bji7bb0rrangg" path="res://_development/ayuroo/levels/_chase_test/tack.ogg" id="3_wpnkt"]
[ext_resource type="AnimationLibrary" uid="uid://dfgpkxgfyo5h1" path="res://_development/ayuroo/levels/_chase_test/good_enough/anim_good_enough.tres" id="4_ikio2"]
[ext_resource type="Script" uid="uid://jahmwrxb2siw" path="res://tools/timed_music_animationplayer.gd" id="5_uc6ca"]
[ext_resource type="Script" uid="uid://dp6jy00a6xuhk" path="res://tools/beat_measurer.gd" id="6_suojm"]
[ext_resource type="Material" uid="uid://c38215ysnknyk" path="res://assets/materials/dev/dark/dark_01.tres" id="7_6fa34"]
[ext_resource type="PackedScene" uid="uid://c0jearfhlqcvr" path="res://src/gameplay/hazards/saw/saw.tscn" id="8_5k2no"]
[ext_resource type="Script" uid="uid://bbwtct3hoxwws" path="res://src/core/vibration_component.gd" id="9_u4bqw"]
[sub_resource type="AudioStreamRandomizer" id="AudioStreamRandomizer_2frp2"]
playback_mode = 2
streams_count = 2
stream_0/stream = ExtResource("2_so850")
stream_1/stream = ExtResource("3_wpnkt")
[sub_resource type="Curve3D" id="Curve3D_tqtrq"]
_data = {
"points": PackedVector3Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1533),
"tilts": PackedFloat32Array(0, 0)
}
point_count = 2
[sub_resource type="SphereMesh" id="SphereMesh_tqtrq"]
radius = 0.15
height = 0.3
[sub_resource type="BoxShape3D" id="BoxShape3D_gsfaw"]
size = Vector3(14, 5, 1)
[node name="ChaseTest" type="Node3D"]
script = ExtResource("1_sm484")
chase_anim = &"good_enough"
chase_anim_karaoke = &"good_enough_karaoke"
bpm = 195.0
metadata/_custom_type_script = "uid://cigop0ivp5vvu"
[node name="Music" type="AudioStreamPlayer" parent="."]
volume_db = -4.5
[node name="Beat" type="AudioStreamPlayer" parent="."]
stream = SubResource("AudioStreamRandomizer_2frp2")
volume_db = -3.0
max_polyphony = 4
[node name="Bar" type="AudioStreamPlayer" parent="."]
stream = ExtResource("3_wpnkt")
volume_db = -6.0
[node name="MusicAnimation" type="AnimationPlayer" parent="."]
audio_max_polyphony = 1
callback_mode_process = 0
callback_mode_method = 1
libraries = {
&"": ExtResource("4_ikio2")
}
script = ExtResource("5_uc6ca")
audio_player = NodePath("../Music")
metadata/_custom_type_script = "uid://jahmwrxb2siw"
[node name="CameraRoot" type="Node3D" parent="."]
transform = Transform3D(0.99999887, 0, 0, 0, 0.99999887, 0, 0, 0, 0.99999887, 0, 1, 0)
[node name="Camera3D" type="Camera3D" parent="CameraRoot"]
transform = Transform3D(-4.371139e-08, 0, 1, 0, 1, 0, -1, 0, -4.371139e-08, 2, 0, 0)
fov = 37.38998
[node name="ProgressTrack" type="Path3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0)
curve = SubResource("Curve3D_tqtrq")
[node name="PlayerDesiredProgress" type="PathFollow3D" parent="ProgressTrack"]
rotation_mode = 0
loop = false
[node name="DebugVisualizer" type="MeshInstance3D" parent="ProgressTrack/PlayerDesiredProgress"]
mesh = SubResource("SphereMesh_tqtrq")
[node name="RemoteTransform3D" type="RemoteTransform3D" parent="ProgressTrack/PlayerDesiredProgress/DebugVisualizer"]
remote_path = NodePath("../../../../CameraRoot")
update_scale = false
[node name="BeatMeasurer" type="Node" parent="ProgressTrack" node_paths=PackedStringArray("path")]
script = ExtResource("6_suojm")
path = NodePath("..")
track_duration = 290.06
track_bpm = 176
metadata/_custom_type_script = "uid://dp6jy00a6xuhk"
[node name="CSGCombiner3D" type="CSGCombiner3D" parent="."]
use_collision = true
[node name="CSGBox3D" type="CSGBox3D" parent="CSGCombiner3D"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -767.75)
size = Vector3(14, 1, 1536.5)
material = ExtResource("7_6fa34")
[node name="Saws" type="Node3D" parent="."]
[node name="ResetSaw" parent="Saws" instance=ExtResource("8_5k2no")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -5, 1, -1511.1943)
[node name="Saw" parent="Saws" instance=ExtResource("8_5k2no")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.5, -46)
[node name="Saw2" parent="Saws" instance=ExtResource("8_5k2no")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.5, -53)
[node name="HeavyBeatVibration" type="Node" parent="."]
script = ExtResource("9_u4bqw")
duration = 0.09
sync_to_audio = true
weak_magnitude = 0.575
strong_magnitude = 0.75
weak_controller_duration_multiplier = 1.5
metadata/_custom_type_script = "uid://bbwtct3hoxwws"
[node name="LightBeatVibration" type="Node" parent="."]
script = ExtResource("9_u4bqw")
duration = 0.075
sync_to_audio = true
weak_magnitude = 0.375
strong_magnitude = 0.0
metadata/_custom_type_script = "uid://bbwtct3hoxwws"
[node name="StartChaseArea" type="Area3D" parent="."]
collision_layer = 0
collision_mask = 2
[node name="CollisionShape3D" type="CollisionShape3D" parent="StartChaseArea"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 3, 0)
shape = SubResource("BoxShape3D_gsfaw")
[node name="_DEV_LABEL" type="Label3D" parent="."]
transform = Transform3D(-4.371139e-08, 0, -1, 0, 1, 0, 1, 0, -4.371139e-08, 6, 2, -3)
text = "If the audio and anim desync and cause the player to slow down,
set the follower up, so that it always stays at a certain
distance from the PlayerDesiredProgress ball/point/marker."
[connection signal="body_entered" from="StartChaseArea" to="." method="_on_start_chase_area_body_entered"]

File diff suppressed because one or more lines are too long

View File

@ -91,7 +91,7 @@ tracks/3/path = NodePath("Saws/Saw2:position")
tracks/3/interp = 1 tracks/3/interp = 1
tracks/3/loop_wrap = true tracks/3/loop_wrap = true
tracks/3/keys = { tracks/3/keys = {
"times": PackedFloat32Array(9, 9.2), "times": PackedFloat32Array(8.6, 8.8),
"transitions": PackedFloat32Array(1, 1), "transitions": PackedFloat32Array(1, 1),
"update": 0, "update": 0,
"values": [Vector3(0, -1, -53), Vector3(0, 0.5, -53)] "values": [Vector3(0, -1, -53), Vector3(0, 0.5, -53)]

View File

@ -6,8 +6,8 @@
[ext_resource type="Script" uid="uid://dp6jy00a6xuhk" path="res://tools/beat_measurer.gd" id="3_pwoi6"] [ext_resource type="Script" uid="uid://dp6jy00a6xuhk" path="res://tools/beat_measurer.gd" id="3_pwoi6"]
[ext_resource type="AudioStream" uid="uid://bycnxkxch1dmo" path="res://_development/ayuroo/levels/_chase_test/bar.ogg" id="3_ytnb7"] [ext_resource type="AudioStream" uid="uid://bycnxkxch1dmo" path="res://_development/ayuroo/levels/_chase_test/bar.ogg" id="3_ytnb7"]
[ext_resource type="Material" uid="uid://c38215ysnknyk" path="res://assets/materials/dev/dark/dark_01.tres" id="4_ytnb7"] [ext_resource type="Material" uid="uid://c38215ysnknyk" path="res://assets/materials/dev/dark/dark_01.tres" id="4_ytnb7"]
[ext_resource type="Script" uid="uid://bueqrebp8o36n" path="res://tools/anim_player_editor_calls.gd" id="5_1cy10"]
[ext_resource type="PackedScene" uid="uid://c0jearfhlqcvr" path="res://src/gameplay/hazards/saw/saw.tscn" id="5_i68vn"] [ext_resource type="PackedScene" uid="uid://c0jearfhlqcvr" path="res://src/gameplay/hazards/saw/saw.tscn" id="5_i68vn"]
[ext_resource type="Script" uid="uid://jahmwrxb2siw" path="res://tools/timed_music_animationplayer.gd" id="5_ytnb7"]
[ext_resource type="Script" uid="uid://bbwtct3hoxwws" path="res://src/core/vibration_component.gd" id="6_1cy10"] [ext_resource type="Script" uid="uid://bbwtct3hoxwws" path="res://src/core/vibration_component.gd" id="6_1cy10"]
[sub_resource type="Curve3D" id="Curve3D_tqtrq"] [sub_resource type="Curve3D" id="Curve3D_tqtrq"]
@ -45,7 +45,9 @@ callback_mode_process = 0
libraries = { libraries = {
&"": ExtResource("2_kddul") &"": ExtResource("2_kddul")
} }
script = ExtResource("5_1cy10") script = ExtResource("5_ytnb7")
audio_player = NodePath("../Music")
metadata/_custom_type_script = "uid://jahmwrxb2siw"
[node name="ProgressTrack" type="Path3D" parent="."] [node name="ProgressTrack" type="Path3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0)
@ -87,7 +89,6 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.5, -53)
[node name="VibrationComponent" type="Node" parent="."] [node name="VibrationComponent" type="Node" parent="."]
script = ExtResource("6_1cy10") script = ExtResource("6_1cy10")
duration = 0.1 duration = 0.1
editor_delay = 0.125
sync_to_audio = true sync_to_audio = true
weak_magnitude = 0.25 weak_magnitude = 0.25
strong_magnitude = 0.5 strong_magnitude = 0.5

View File

@ -307,22 +307,25 @@ visible = false
[node name="Main" parent="LightmapGI" instance=ExtResource("6_cxrf3")] [node name="Main" parent="LightmapGI" instance=ExtResource("6_cxrf3")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -1, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -1, 0)
metadata/_edit_lock_ = true
[node name="Lighting" type="Node3D" parent="LightmapGI"] [node name="Lighting" type="Node3D" parent="LightmapGI"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -1, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -1, 0)
[node name="SpotLight3D" type="SpotLight3D" parent="LightmapGI/Lighting"] [node name="SpotLight3D" type="SpotLight3D" parent="LightmapGI/Lighting"]
transform = Transform3D(1, 0, 0, 0, -4.371139e-08, 1, 0, -1, -4.371139e-08, 0, 5.4, -4) transform = Transform3D(1, 0, 0, 0, -4.371139e-08, 1, 0, -1, -4.371139e-08, 0, 6, -5.2)
light_energy = 2.0 light_energy = 2.0
light_bake_mode = 1 light_bake_mode = 1
spot_range = 14.0 spot_range = 18.0
spot_attenuation = 1.25
spot_angle = 63.718216 spot_angle = 63.718216
[node name="SpotLight3D2" type="SpotLight3D" parent="LightmapGI/Lighting"] [node name="SpotLight3D2" type="SpotLight3D" parent="LightmapGI/Lighting"]
transform = Transform3D(1, 0, 0, 0, -4.371139e-08, 1, 0, -1, -4.371139e-08, -1, 61.4, -78) transform = Transform3D(1, 0, 0, 0, -4.371139e-08, 1, 0, -1, -4.371139e-08, 0, 61.4, -51.5)
light_energy = 10.0 light_energy = 10.0
light_bake_mode = 1 light_bake_mode = 1
spot_range = 310.0 spot_range = 310.0
spot_attenuation = 2.0
spot_angle = 73.011505 spot_angle = 73.011505
[node name="OmniLight3D" type="OmniLight3D" parent="LightmapGI/Lighting"] [node name="OmniLight3D" type="OmniLight3D" parent="LightmapGI/Lighting"]
@ -331,6 +334,7 @@ light_energy = 2.0
light_bake_mode = 1 light_bake_mode = 1
shadow_enabled = true shadow_enabled = true
omni_range = 10.0 omni_range = 10.0
omni_attenuation = 2.0
[node name="OmniLight3D2" type="OmniLight3D" parent="LightmapGI/Lighting"] [node name="OmniLight3D2" type="OmniLight3D" parent="LightmapGI/Lighting"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 6, 5, -21.5) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 6, 5, -21.5)
@ -338,6 +342,7 @@ light_energy = 2.0
light_bake_mode = 1 light_bake_mode = 1
shadow_enabled = true shadow_enabled = true
omni_range = 10.0 omni_range = 10.0
omni_attenuation = 2.0
[node name="OmniLight3D3" type="OmniLight3D" parent="LightmapGI/Lighting"] [node name="OmniLight3D3" type="OmniLight3D" parent="LightmapGI/Lighting"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 5, -21.5) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 5, -21.5)
@ -345,12 +350,14 @@ light_energy = 2.0
light_bake_mode = 1 light_bake_mode = 1
shadow_enabled = true shadow_enabled = true
omni_range = 10.0 omni_range = 10.0
omni_attenuation = 2.0
[node name="OmniLight3D4" type="OmniLight3D" parent="LightmapGI/Lighting"] [node name="OmniLight3D4" type="OmniLight3D" parent="LightmapGI/Lighting"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 5, -43.5) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 6, -51.5)
light_energy = 2.0 light_energy = 2.0
light_bake_mode = 1 light_bake_mode = 1
omni_range = 83.0 omni_range = 83.0
omni_attenuation = 2.0
[node name="ReflectionProbes" type="Node3D" parent="LightmapGI"] [node name="ReflectionProbes" type="Node3D" parent="LightmapGI"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -1, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -1, 0)
@ -376,7 +383,9 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 4, 6.2, -23)
size = Vector3(16, 6, 12) size = Vector3(16, 6, 12)
interior = true interior = true
[node name="LightmapProbeGrid" type="Node3D" parent="LightmapGI"] [node name="LightmapProbes" type="Node3D" parent="LightmapGI"]
[node name="LightmapProbeGrid" type="Node3D" parent="LightmapGI/LightmapProbes"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -4.1629105, 1.0473042, 3.522971) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -4.1629105, 1.0473042, 3.522971)
script = ExtResource("9_p8lkr") script = ExtResource("9_p8lkr")
size = Vector3(11.510193, 3.0946074, 2.6259294) size = Vector3(11.510193, 3.0946074, 2.6259294)
@ -385,130 +394,130 @@ far_distance = 1.0
object_size = 1.0 object_size = 1.0
metadata/_custom_type_script = "uid://dbcy7qdq4hqlg" metadata/_custom_type_script = "uid://dbcy7qdq4hqlg"
[node name="LightmapProbe 0, 0, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid"] [node name="LightmapProbe 0, 0, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 5.7550964, 1.5473037, 1.3129647) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 5.7550964, 1.5473037, 1.3129647)
[node name="LightmapProbe 0, 0, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid"] [node name="LightmapProbe 0, 0, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 5.7550964, 1.5473037, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 5.7550964, 1.5473037, 0)
[node name="LightmapProbe 0, 0, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid"] [node name="LightmapProbe 0, 0, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 5.7550964, 1.5473037, -1.3129647) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 5.7550964, 1.5473037, -1.3129647)
[node name="LightmapProbe 0, 1, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid"] [node name="LightmapProbe 0, 1, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 5.7550964, 0, 1.3129647) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 5.7550964, 0, 1.3129647)
[node name="LightmapProbe 0, 1, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid"] [node name="LightmapProbe 0, 1, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 5.7550964, 0, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 5.7550964, 0, 0)
[node name="LightmapProbe 0, 1, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid"] [node name="LightmapProbe 0, 1, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 5.7550964, 0, -1.3129647) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 5.7550964, 0, -1.3129647)
[node name="LightmapProbe 0, 2, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid"] [node name="LightmapProbe 0, 2, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 5.7550964, -1.5473037, 1.3129647) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 5.7550964, -1.5473037, 1.3129647)
[node name="LightmapProbe 0, 2, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid"] [node name="LightmapProbe 0, 2, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 5.7550964, -1.5473037, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 5.7550964, -1.5473037, 0)
[node name="LightmapProbe 0, 2, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid"] [node name="LightmapProbe 0, 2, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 5.7550964, -1.5473037, -1.3129647) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 5.7550964, -1.5473037, -1.3129647)
[node name="LightmapProbe 1, 0, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid"] [node name="LightmapProbe 1, 0, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.8775482, 1.5473037, 1.3129647) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.8775482, 1.5473037, 1.3129647)
[node name="LightmapProbe 1, 0, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid"] [node name="LightmapProbe 1, 0, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.8775482, 1.5473037, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.8775482, 1.5473037, 0)
[node name="LightmapProbe 1, 0, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid"] [node name="LightmapProbe 1, 0, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.8775482, 1.5473037, -1.3129647) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.8775482, 1.5473037, -1.3129647)
[node name="LightmapProbe 1, 1, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid"] [node name="LightmapProbe 1, 1, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.8775482, 0, 1.3129647) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.8775482, 0, 1.3129647)
[node name="LightmapProbe 1, 2, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid"] [node name="LightmapProbe 1, 2, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.8775482, -1.5473037, 1.3129647) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.8775482, -1.5473037, 1.3129647)
[node name="LightmapProbe 1, 2, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid"] [node name="LightmapProbe 1, 2, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.8775482, -1.5473037, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.8775482, -1.5473037, 0)
[node name="LightmapProbe 1, 2, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid"] [node name="LightmapProbe 1, 2, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.8775482, -1.5473037, -1.3129647) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.8775482, -1.5473037, -1.3129647)
[node name="LightmapProbe 2, 0, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid"] [node name="LightmapProbe 2, 0, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.5473037, 1.3129647) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.5473037, 1.3129647)
[node name="LightmapProbe 2, 0, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid"] [node name="LightmapProbe 2, 0, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.5473037, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.5473037, 0)
[node name="LightmapProbe 2, 0, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid"] [node name="LightmapProbe 2, 0, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.5473037, -1.3129647) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.5473037, -1.3129647)
[node name="LightmapProbe 2, 1, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid"] [node name="LightmapProbe 2, 1, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1.3129647) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1.3129647)
[node name="LightmapProbe 2, 1, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid"] [node name="LightmapProbe 2, 1, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -1.3129647) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -1.3129647)
[node name="LightmapProbe 2, 2, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid"] [node name="LightmapProbe 2, 2, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -1.5473037, 1.3129647) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -1.5473037, 1.3129647)
[node name="LightmapProbe 2, 2, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid"] [node name="LightmapProbe 2, 2, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -1.5473037, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -1.5473037, 0)
[node name="LightmapProbe 2, 2, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid"] [node name="LightmapProbe 2, 2, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -1.5473037, -1.3129647) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -1.5473037, -1.3129647)
[node name="LightmapProbe 3, 0, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid"] [node name="LightmapProbe 3, 0, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.8775482, 1.5473037, 1.3129647) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.8775482, 1.5473037, 1.3129647)
[node name="LightmapProbe 3, 0, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid"] [node name="LightmapProbe 3, 0, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.8775482, 1.5473037, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.8775482, 1.5473037, 0)
[node name="LightmapProbe 3, 0, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid"] [node name="LightmapProbe 3, 0, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.8775482, 1.5473037, -1.3129647) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.8775482, 1.5473037, -1.3129647)
[node name="LightmapProbe 3, 1, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid"] [node name="LightmapProbe 3, 1, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.8775482, 0, 1.3129647) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.8775482, 0, 1.3129647)
[node name="LightmapProbe 3, 1, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid"] [node name="LightmapProbe 3, 1, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.8775482, 0, -1.3129647) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.8775482, 0, -1.3129647)
[node name="LightmapProbe 3, 2, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid"] [node name="LightmapProbe 3, 2, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.8775482, -1.5473037, 1.3129647) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.8775482, -1.5473037, 1.3129647)
[node name="LightmapProbe 3, 2, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid"] [node name="LightmapProbe 3, 2, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.8775482, -1.5473037, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.8775482, -1.5473037, 0)
[node name="LightmapProbe 3, 2, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid"] [node name="LightmapProbe 3, 2, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.8775482, -1.5473037, -1.3129647) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.8775482, -1.5473037, -1.3129647)
[node name="LightmapProbe 4, 0, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid"] [node name="LightmapProbe 4, 0, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -5.7550964, 1.5473037, 1.3129647) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -5.7550964, 1.5473037, 1.3129647)
[node name="LightmapProbe 4, 0, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid"] [node name="LightmapProbe 4, 0, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -5.7550964, 1.5473037, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -5.7550964, 1.5473037, 0)
[node name="LightmapProbe 4, 0, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid"] [node name="LightmapProbe 4, 0, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -5.7550964, 1.5473037, -1.3129647) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -5.7550964, 1.5473037, -1.3129647)
[node name="LightmapProbe 4, 1, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid"] [node name="LightmapProbe 4, 1, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -5.7550964, 0, 1.3129647) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -5.7550964, 0, 1.3129647)
[node name="LightmapProbe 4, 1, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid"] [node name="LightmapProbe 4, 1, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -5.7550964, 0, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -5.7550964, 0, 0)
[node name="LightmapProbe 4, 1, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid"] [node name="LightmapProbe 4, 1, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -5.7550964, 0, -1.3129647) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -5.7550964, 0, -1.3129647)
[node name="LightmapProbe 4, 2, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid"] [node name="LightmapProbe 4, 2, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -5.7550964, -1.5473037, 1.3129647) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -5.7550964, -1.5473037, 1.3129647)
[node name="LightmapProbe 4, 2, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid"] [node name="LightmapProbe 4, 2, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -5.7550964, -1.5473037, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -5.7550964, -1.5473037, 0)
[node name="LightmapProbe 4, 2, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid"] [node name="LightmapProbe 4, 2, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -5.7550964, -1.5473037, -1.3129647) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -5.7550964, -1.5473037, -1.3129647)
[node name="LightmapProbeGrid2" type="Node3D" parent="LightmapGI"] [node name="LightmapProbeGrid2" type="Node3D" parent="LightmapGI/LightmapProbes"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.068351865, 2.7555513, -4.830836) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.068351865, 2.7555513, -4.830836)
script = ExtResource("9_p8lkr") script = ExtResource("9_p8lkr")
size = Vector3(4.6403966, 6.5111017, 9.133811) size = Vector3(4.6403966, 6.5111017, 9.133811)
@ -517,55 +526,55 @@ far_distance = 1.0
object_size = 1.0 object_size = 1.0
metadata/_custom_type_script = "uid://dbcy7qdq4hqlg" metadata/_custom_type_script = "uid://dbcy7qdq4hqlg"
[node name="LightmapProbe 1, 0, 3" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid2"] [node name="LightmapProbe 1, 0, 3" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid2"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.7733995, 3.2555509, -2.2834525) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.7733995, 3.2555509, -2.2834525)
[node name="LightmapProbe 1, 0, 4" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid2"] [node name="LightmapProbe 1, 0, 4" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid2"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.7733995, 3.2555509, -4.5669055) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.7733995, 3.2555509, -4.5669055)
[node name="LightmapProbe 1, 1, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid2"] [node name="LightmapProbe 1, 1, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid2"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.7733995, 0, 4.5669055) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.7733995, 0, 4.5669055)
[node name="LightmapProbe 1, 1, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid2"] [node name="LightmapProbe 1, 1, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid2"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.7733995, 0, 2.2834527) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.7733995, 0, 2.2834527)
[node name="LightmapProbe 1, 1, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid2"] [node name="LightmapProbe 1, 1, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid2"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.7733995, 0, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.7733995, 0, 0)
[node name="LightmapProbe 1, 1, 3" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid2"] [node name="LightmapProbe 1, 1, 3" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid2"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.7733995, 0, -2.2834525) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.7733995, 0, -2.2834525)
[node name="LightmapProbe 1, 2, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid2"] [node name="LightmapProbe 1, 2, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid2"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.7733995, -3.2555509, 4.5669055) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.7733995, -3.2555509, 4.5669055)
[node name="LightmapProbe 1, 2, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid2"] [node name="LightmapProbe 1, 2, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid2"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.7733995, -3.2555509, 2.2834527) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.7733995, -3.2555509, 2.2834527)
[node name="LightmapProbe 2, 0, 3" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid2"] [node name="LightmapProbe 2, 0, 3" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid2"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.77339935, 3.2555509, -2.2834525) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.77339935, 3.2555509, -2.2834525)
[node name="LightmapProbe 2, 0, 4" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid2"] [node name="LightmapProbe 2, 0, 4" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid2"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.77339935, 3.2555509, -4.5669055) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.77339935, 3.2555509, -4.5669055)
[node name="LightmapProbe 2, 1, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid2"] [node name="LightmapProbe 2, 1, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid2"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.77339935, 0, 4.5669055) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.77339935, 0, 4.5669055)
[node name="LightmapProbe 2, 1, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid2"] [node name="LightmapProbe 2, 1, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid2"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.77339935, 0, 2.2834527) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.77339935, 0, 2.2834527)
[node name="LightmapProbe 2, 1, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid2"] [node name="LightmapProbe 2, 1, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid2"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.77339935, 0, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.77339935, 0, 0)
[node name="LightmapProbe 2, 1, 3" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid2"] [node name="LightmapProbe 2, 1, 3" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid2"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.77339935, 0, -2.2834525) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.77339935, 0, -2.2834525)
[node name="LightmapProbe 2, 2, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid2"] [node name="LightmapProbe 2, 2, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid2"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.77339935, -3.2555509, 4.5669055) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.77339935, -3.2555509, 4.5669055)
[node name="LightmapProbe 2, 2, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid2"] [node name="LightmapProbe 2, 2, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid2"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.77339935, -3.2555509, 2.2834527) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.77339935, -3.2555509, 2.2834527)
[node name="LightmapProbeGrid3" type="Node3D" parent="LightmapGI"] [node name="LightmapProbeGrid3" type="Node3D" parent="LightmapGI/LightmapProbes"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 4.1702933, 5.1552534, -15.174561) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 4.1702933, 5.1552534, -15.174561)
script = ExtResource("9_p8lkr") script = ExtResource("9_p8lkr")
size = Vector3(13.117686, 3.1503634, 3.0525174) size = Vector3(13.117686, 3.1503634, 3.0525174)
@ -574,115 +583,115 @@ far_distance = 1.0
object_size = 1.0 object_size = 1.0
metadata/_custom_type_script = "uid://dbcy7qdq4hqlg" metadata/_custom_type_script = "uid://dbcy7qdq4hqlg"
[node name="LightmapProbe 0, 0, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid3"] [node name="LightmapProbe 0, 0, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid3"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 6.558843, 1.5751817, 1.5262587) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 6.558843, 1.5751817, 1.5262587)
[node name="LightmapProbe 0, 0, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid3"] [node name="LightmapProbe 0, 0, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid3"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 6.558843, 1.5751817, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 6.558843, 1.5751817, 0)
[node name="LightmapProbe 0, 0, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid3"] [node name="LightmapProbe 0, 0, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid3"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 6.558843, 1.5751817, -1.5262587) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 6.558843, 1.5751817, -1.5262587)
[node name="LightmapProbe 0, 1, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid3"] [node name="LightmapProbe 0, 1, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid3"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 6.558843, 0, 1.5262587) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 6.558843, 0, 1.5262587)
[node name="LightmapProbe 0, 1, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid3"] [node name="LightmapProbe 0, 1, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid3"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 6.558843, 0, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 6.558843, 0, 0)
[node name="LightmapProbe 0, 1, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid3"] [node name="LightmapProbe 0, 1, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid3"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 6.558843, 0, -1.5262587) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 6.558843, 0, -1.5262587)
[node name="LightmapProbe 0, 2, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid3"] [node name="LightmapProbe 0, 2, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid3"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 6.558843, -1.5751817, 1.5262587) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 6.558843, -1.5751817, 1.5262587)
[node name="LightmapProbe 0, 2, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid3"] [node name="LightmapProbe 0, 2, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid3"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 6.558843, -1.5751817, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 6.558843, -1.5751817, 0)
[node name="LightmapProbe 0, 2, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid3"] [node name="LightmapProbe 0, 2, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid3"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 6.558843, -1.5751817, -1.5262587) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 6.558843, -1.5751817, -1.5262587)
[node name="LightmapProbe 1, 0, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid3"] [node name="LightmapProbe 1, 0, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid3"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.1862812, 1.5751817, 1.5262587) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.1862812, 1.5751817, 1.5262587)
[node name="LightmapProbe 1, 0, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid3"] [node name="LightmapProbe 1, 0, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid3"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.1862812, 1.5751817, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.1862812, 1.5751817, 0)
[node name="LightmapProbe 1, 0, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid3"] [node name="LightmapProbe 1, 0, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid3"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.1862812, 1.5751817, -1.5262587) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.1862812, 1.5751817, -1.5262587)
[node name="LightmapProbe 1, 1, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid3"] [node name="LightmapProbe 1, 1, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid3"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.1862812, 0, 1.5262587) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.1862812, 0, 1.5262587)
[node name="LightmapProbe 1, 1, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid3"] [node name="LightmapProbe 1, 1, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid3"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.1862812, 0, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.1862812, 0, 0)
[node name="LightmapProbe 1, 1, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid3"] [node name="LightmapProbe 1, 1, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid3"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.1862812, 0, -1.5262587) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.1862812, 0, -1.5262587)
[node name="LightmapProbe 1, 2, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid3"] [node name="LightmapProbe 1, 2, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid3"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.1862812, -1.5751817, 1.5262587) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.1862812, -1.5751817, 1.5262587)
[node name="LightmapProbe 1, 2, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid3"] [node name="LightmapProbe 1, 2, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid3"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.1862812, -1.5751817, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.1862812, -1.5751817, 0)
[node name="LightmapProbe 1, 2, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid3"] [node name="LightmapProbe 1, 2, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid3"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.1862812, -1.5751817, -1.5262587) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.1862812, -1.5751817, -1.5262587)
[node name="LightmapProbe 2, 0, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid3"] [node name="LightmapProbe 2, 0, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid3"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.1862807, 1.5751817, 1.5262587) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.1862807, 1.5751817, 1.5262587)
[node name="LightmapProbe 2, 0, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid3"] [node name="LightmapProbe 2, 0, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid3"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.1862807, 1.5751817, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.1862807, 1.5751817, 0)
[node name="LightmapProbe 2, 0, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid3"] [node name="LightmapProbe 2, 0, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid3"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.1862807, 1.5751817, -1.5262587) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.1862807, 1.5751817, -1.5262587)
[node name="LightmapProbe 2, 1, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid3"] [node name="LightmapProbe 2, 1, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid3"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.1862807, 0, 1.5262587) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.1862807, 0, 1.5262587)
[node name="LightmapProbe 2, 1, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid3"] [node name="LightmapProbe 2, 1, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid3"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.1862807, 0, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.1862807, 0, 0)
[node name="LightmapProbe 2, 1, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid3"] [node name="LightmapProbe 2, 1, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid3"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.1862807, 0, -1.5262587) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.1862807, 0, -1.5262587)
[node name="LightmapProbe 2, 2, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid3"] [node name="LightmapProbe 2, 2, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid3"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.1862807, -1.5751817, 1.5262587) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.1862807, -1.5751817, 1.5262587)
[node name="LightmapProbe 2, 2, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid3"] [node name="LightmapProbe 2, 2, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid3"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.1862807, -1.5751817, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.1862807, -1.5751817, 0)
[node name="LightmapProbe 2, 2, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid3"] [node name="LightmapProbe 2, 2, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid3"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.1862807, -1.5751817, -1.5262587) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.1862807, -1.5751817, -1.5262587)
[node name="LightmapProbe 3, 0, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid3"] [node name="LightmapProbe 3, 0, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid3"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -6.558842, 1.5751817, 1.5262587) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -6.558842, 1.5751817, 1.5262587)
[node name="LightmapProbe 3, 0, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid3"] [node name="LightmapProbe 3, 0, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid3"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -6.558842, 1.5751817, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -6.558842, 1.5751817, 0)
[node name="LightmapProbe 3, 0, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid3"] [node name="LightmapProbe 3, 0, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid3"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -6.558842, 1.5751817, -1.5262587) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -6.558842, 1.5751817, -1.5262587)
[node name="LightmapProbe 3, 1, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid3"] [node name="LightmapProbe 3, 1, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid3"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -6.558842, 0, 1.5262587) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -6.558842, 0, 1.5262587)
[node name="LightmapProbe 3, 1, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid3"] [node name="LightmapProbe 3, 1, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid3"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -6.558842, 0, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -6.558842, 0, 0)
[node name="LightmapProbe 3, 1, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid3"] [node name="LightmapProbe 3, 1, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid3"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -6.558842, 0, -1.5262587) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -6.558842, 0, -1.5262587)
[node name="LightmapProbe 3, 2, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid3"] [node name="LightmapProbe 3, 2, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid3"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -6.558842, -1.5751817, 1.5262587) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -6.558842, -1.5751817, 1.5262587)
[node name="LightmapProbe 3, 2, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid3"] [node name="LightmapProbe 3, 2, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid3"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -6.558842, -1.5751817, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -6.558842, -1.5751817, 0)
[node name="LightmapProbe 3, 2, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid3"] [node name="LightmapProbe 3, 2, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid3"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -6.558842, -1.5751817, -1.5262587) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -6.558842, -1.5751817, -1.5262587)
[node name="LightmapProbeGrid7" type="Node3D" parent="LightmapGI"] [node name="LightmapProbeGrid7" type="Node3D" parent="LightmapGI/LightmapProbes"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.16657281, 5.1552534, -10.783033) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.16657281, 5.1552534, -10.783033)
script = ExtResource("9_p8lkr") script = ExtResource("9_p8lkr")
size = Vector3(5.1102457, 3.1503634, 3.0513806) size = Vector3(5.1102457, 3.1503634, 3.0513806)
@ -691,61 +700,61 @@ far_distance = 1.0
object_size = 1.0 object_size = 1.0
metadata/_custom_type_script = "uid://dbcy7qdq4hqlg" metadata/_custom_type_script = "uid://dbcy7qdq4hqlg"
[node name="LightmapProbe 0, 0, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid7"] [node name="LightmapProbe 0, 0, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid7"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.5551229, 1.5751817, 1.5256903) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.5551229, 1.5751817, 1.5256903)
[node name="LightmapProbe 0, 0, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid7"] [node name="LightmapProbe 0, 0, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid7"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.5551229, 1.5751817, -1.5256903) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.5551229, 1.5751817, -1.5256903)
[node name="LightmapProbe 0, 1, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid7"] [node name="LightmapProbe 0, 1, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid7"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.5551229, 0, 1.5256903) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.5551229, 0, 1.5256903)
[node name="LightmapProbe 0, 1, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid7"] [node name="LightmapProbe 0, 1, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid7"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.5551229, 0, -1.5256903) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.5551229, 0, -1.5256903)
[node name="LightmapProbe 0, 2, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid7"] [node name="LightmapProbe 0, 2, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid7"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.5551229, -1.5751817, 1.5256903) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.5551229, -1.5751817, 1.5256903)
[node name="LightmapProbe 0, 2, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid7"] [node name="LightmapProbe 0, 2, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid7"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.5551229, -1.5751817, -1.5256903) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.5551229, -1.5751817, -1.5256903)
[node name="LightmapProbe 1, 0, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid7"] [node name="LightmapProbe 1, 0, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid7"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.5751817, 1.5256903) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.5751817, 1.5256903)
[node name="LightmapProbe 1, 0, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid7"] [node name="LightmapProbe 1, 0, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid7"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.5751817, -1.5256903) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.5751817, -1.5256903)
[node name="LightmapProbe 1, 1, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid7"] [node name="LightmapProbe 1, 1, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid7"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1.5256903) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1.5256903)
[node name="LightmapProbe 1, 1, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid7"] [node name="LightmapProbe 1, 1, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid7"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -1.5256903) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -1.5256903)
[node name="LightmapProbe 1, 2, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid7"] [node name="LightmapProbe 1, 2, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid7"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -1.5751817, 1.5256903) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -1.5751817, 1.5256903)
[node name="LightmapProbe 1, 2, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid7"] [node name="LightmapProbe 1, 2, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid7"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -1.5751817, -1.5256903) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -1.5751817, -1.5256903)
[node name="LightmapProbe 2, 0, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid7"] [node name="LightmapProbe 2, 0, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid7"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.5551229, 1.5751817, 1.5256903) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.5551229, 1.5751817, 1.5256903)
[node name="LightmapProbe 2, 0, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid7"] [node name="LightmapProbe 2, 0, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid7"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.5551229, 1.5751817, -1.5256903) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.5551229, 1.5751817, -1.5256903)
[node name="LightmapProbe 2, 1, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid7"] [node name="LightmapProbe 2, 1, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid7"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.5551229, 0, 1.5256903) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.5551229, 0, 1.5256903)
[node name="LightmapProbe 2, 1, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid7"] [node name="LightmapProbe 2, 1, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid7"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.5551229, 0, -1.5256903) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.5551229, 0, -1.5256903)
[node name="LightmapProbe 2, 2, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid7"] [node name="LightmapProbe 2, 2, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid7"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.5551229, -1.5751817, 1.5256903) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.5551229, -1.5751817, 1.5256903)
[node name="LightmapProbe 2, 2, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid7"] [node name="LightmapProbe 2, 2, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid7"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.5551229, -1.5751817, -1.5256903) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.5551229, -1.5751817, -1.5256903)
[node name="LightmapProbeGrid5" type="Node3D" parent="LightmapGI"] [node name="LightmapProbeGrid5" type="Node3D" parent="LightmapGI/LightmapProbes"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 4.1702933, 5.1552534, -20.643461) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 4.1702933, 5.1552534, -20.643461)
script = ExtResource("9_p8lkr") script = ExtResource("9_p8lkr")
size = Vector3(13.117686, 3.1503634, 6.0269423) size = Vector3(13.117686, 3.1503634, 6.0269423)
@ -754,124 +763,124 @@ far_distance = 1.0
object_size = 1.0 object_size = 1.0
metadata/_custom_type_script = "uid://dbcy7qdq4hqlg" metadata/_custom_type_script = "uid://dbcy7qdq4hqlg"
[node name="LightmapProbe 0, 0, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid5"] [node name="LightmapProbe 0, 0, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid5"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 6.558843, 1.5751817, 3.0134711) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 6.558843, 1.5751817, 3.0134711)
[node name="LightmapProbe 0, 0, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid5"] [node name="LightmapProbe 0, 0, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid5"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 6.558843, 1.5751817, 1.0044904) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 6.558843, 1.5751817, 1.0044904)
[node name="LightmapProbe 0, 0, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid5"] [node name="LightmapProbe 0, 0, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid5"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 6.558843, 1.5751817, -1.0044904) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 6.558843, 1.5751817, -1.0044904)
[node name="LightmapProbe 0, 0, 3" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid5"] [node name="LightmapProbe 0, 0, 3" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid5"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 6.558843, 1.5751817, -3.0134711) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 6.558843, 1.5751817, -3.0134711)
[node name="LightmapProbe 0, 1, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid5"] [node name="LightmapProbe 0, 1, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid5"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 6.558843, 0, 3.0134711) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 6.558843, 0, 3.0134711)
[node name="LightmapProbe 0, 1, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid5"] [node name="LightmapProbe 0, 1, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid5"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 6.558843, 0, 1.0044904) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 6.558843, 0, 1.0044904)
[node name="LightmapProbe 0, 1, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid5"] [node name="LightmapProbe 0, 1, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid5"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 6.558843, 0, -1.0044904) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 6.558843, 0, -1.0044904)
[node name="LightmapProbe 0, 1, 3" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid5"] [node name="LightmapProbe 0, 1, 3" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid5"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 6.558843, 0, -3.0134711) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 6.558843, 0, -3.0134711)
[node name="LightmapProbe 0, 2, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid5"] [node name="LightmapProbe 0, 2, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid5"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 6.558843, -1.5751817, 3.0134711) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 6.558843, -1.5751817, 3.0134711)
[node name="LightmapProbe 0, 2, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid5"] [node name="LightmapProbe 0, 2, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid5"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 6.558843, -1.5751817, 1.0044904) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 6.558843, -1.5751817, 1.0044904)
[node name="LightmapProbe 0, 2, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid5"] [node name="LightmapProbe 0, 2, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid5"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 6.558843, -1.5751817, -1.0044904) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 6.558843, -1.5751817, -1.0044904)
[node name="LightmapProbe 0, 2, 3" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid5"] [node name="LightmapProbe 0, 2, 3" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid5"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 6.558843, -1.5751817, -3.0134711) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 6.558843, -1.5751817, -3.0134711)
[node name="LightmapProbe 1, 0, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid5"] [node name="LightmapProbe 1, 0, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid5"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.1862812, 1.5751817, 1.0044904) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.1862812, 1.5751817, 1.0044904)
[node name="LightmapProbe 1, 0, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid5"] [node name="LightmapProbe 1, 0, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid5"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.1862812, 1.5751817, -1.0044904) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.1862812, 1.5751817, -1.0044904)
[node name="LightmapProbe 1, 0, 3" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid5"] [node name="LightmapProbe 1, 0, 3" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid5"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.1862812, 1.5751817, -3.0134711) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.1862812, 1.5751817, -3.0134711)
[node name="LightmapProbe 1, 1, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid5"] [node name="LightmapProbe 1, 1, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid5"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.1862812, 0, 1.0044904) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.1862812, 0, 1.0044904)
[node name="LightmapProbe 1, 1, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid5"] [node name="LightmapProbe 1, 1, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid5"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.1862812, 0, -1.0044904) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.1862812, 0, -1.0044904)
[node name="LightmapProbe 1, 1, 3" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid5"] [node name="LightmapProbe 1, 1, 3" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid5"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.1862812, 0, -3.0134711) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.1862812, 0, -3.0134711)
[node name="LightmapProbe 1, 2, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid5"] [node name="LightmapProbe 1, 2, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid5"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.1862812, -1.5751817, 1.0044904) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.1862812, -1.5751817, 1.0044904)
[node name="LightmapProbe 1, 2, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid5"] [node name="LightmapProbe 1, 2, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid5"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.1862812, -1.5751817, -1.0044904) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.1862812, -1.5751817, -1.0044904)
[node name="LightmapProbe 1, 2, 3" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid5"] [node name="LightmapProbe 1, 2, 3" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid5"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.1862812, -1.5751817, -3.0134711) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.1862812, -1.5751817, -3.0134711)
[node name="LightmapProbe 2, 0, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid5"] [node name="LightmapProbe 2, 0, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid5"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.1862807, 1.5751817, 1.0044904) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.1862807, 1.5751817, 1.0044904)
[node name="LightmapProbe 2, 0, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid5"] [node name="LightmapProbe 2, 0, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid5"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.1862807, 1.5751817, -1.0044904) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.1862807, 1.5751817, -1.0044904)
[node name="LightmapProbe 2, 0, 3" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid5"] [node name="LightmapProbe 2, 0, 3" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid5"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.1862807, 1.5751817, -3.0134711) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.1862807, 1.5751817, -3.0134711)
[node name="LightmapProbe 2, 1, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid5"] [node name="LightmapProbe 2, 1, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid5"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.1862807, 0, 1.0044904) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.1862807, 0, 1.0044904)
[node name="LightmapProbe 2, 1, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid5"] [node name="LightmapProbe 2, 1, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid5"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.1862807, 0, -1.0044904) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.1862807, 0, -1.0044904)
[node name="LightmapProbe 2, 1, 3" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid5"] [node name="LightmapProbe 2, 1, 3" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid5"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.1862807, 0, -3.0134711) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.1862807, 0, -3.0134711)
[node name="LightmapProbe 2, 2, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid5"] [node name="LightmapProbe 2, 2, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid5"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.1862807, -1.5751817, 1.0044904) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.1862807, -1.5751817, 1.0044904)
[node name="LightmapProbe 2, 2, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid5"] [node name="LightmapProbe 2, 2, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid5"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.1862807, -1.5751817, -1.0044904) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.1862807, -1.5751817, -1.0044904)
[node name="LightmapProbe 2, 2, 3" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid5"] [node name="LightmapProbe 2, 2, 3" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid5"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.1862807, -1.5751817, -3.0134711) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.1862807, -1.5751817, -3.0134711)
[node name="LightmapProbe 3, 0, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid5"] [node name="LightmapProbe 3, 0, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid5"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -6.558842, 1.5751817, 1.0044904) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -6.558842, 1.5751817, 1.0044904)
[node name="LightmapProbe 3, 0, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid5"] [node name="LightmapProbe 3, 0, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid5"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -6.558842, 1.5751817, -1.0044904) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -6.558842, 1.5751817, -1.0044904)
[node name="LightmapProbe 3, 0, 3" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid5"] [node name="LightmapProbe 3, 0, 3" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid5"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -6.558842, 1.5751817, -3.0134711) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -6.558842, 1.5751817, -3.0134711)
[node name="LightmapProbe 3, 1, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid5"] [node name="LightmapProbe 3, 1, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid5"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -6.558842, 0, 1.0044904) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -6.558842, 0, 1.0044904)
[node name="LightmapProbe 3, 1, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid5"] [node name="LightmapProbe 3, 1, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid5"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -6.558842, 0, -1.0044904) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -6.558842, 0, -1.0044904)
[node name="LightmapProbe 3, 1, 3" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid5"] [node name="LightmapProbe 3, 1, 3" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid5"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -6.558842, 0, -3.0134711) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -6.558842, 0, -3.0134711)
[node name="LightmapProbe 3, 2, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid5"] [node name="LightmapProbe 3, 2, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid5"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -6.558842, -1.5751817, 1.0044904) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -6.558842, -1.5751817, 1.0044904)
[node name="LightmapProbe 3, 2, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid5"] [node name="LightmapProbe 3, 2, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid5"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -6.558842, -1.5751817, -1.0044904) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -6.558842, -1.5751817, -1.0044904)
[node name="LightmapProbe 3, 2, 3" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid5"] [node name="LightmapProbe 3, 2, 3" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid5"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -6.558842, -1.5751817, -3.0134711) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -6.558842, -1.5751817, -3.0134711)
[node name="LightmapProbeGrid6" type="Node3D" parent="LightmapGI"] [node name="LightmapProbeGrid6" type="Node3D" parent="LightmapGI/LightmapProbes"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.8476844, 5.1552534, -26.633574) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.8476844, 5.1552534, -26.633574)
script = ExtResource("9_p8lkr") script = ExtResource("9_p8lkr")
size = Vector3(3.0817313, 3.1503634, 3.1212702) size = Vector3(3.0817313, 3.1503634, 3.1212702)
@ -880,55 +889,55 @@ far_distance = 1.0
object_size = 1.0 object_size = 1.0
metadata/_custom_type_script = "uid://dbcy7qdq4hqlg" metadata/_custom_type_script = "uid://dbcy7qdq4hqlg"
[node name="LightmapProbe 0, 0, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid6"] [node name="LightmapProbe 0, 0, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid6"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.5408657, 1.5751817, 1.5606351) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.5408657, 1.5751817, 1.5606351)
[node name="LightmapProbe 0, 0, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid6"] [node name="LightmapProbe 0, 0, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid6"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.5408657, 1.5751817, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.5408657, 1.5751817, 0)
[node name="LightmapProbe 0, 0, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid6"] [node name="LightmapProbe 0, 0, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid6"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.5408657, 1.5751817, -1.5606351) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.5408657, 1.5751817, -1.5606351)
[node name="LightmapProbe 0, 1, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid6"] [node name="LightmapProbe 0, 1, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid6"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.5408657, 0, 1.5606351) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.5408657, 0, 1.5606351)
[node name="LightmapProbe 0, 1, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid6"] [node name="LightmapProbe 0, 1, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid6"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.5408657, 0, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.5408657, 0, 0)
[node name="LightmapProbe 0, 1, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid6"] [node name="LightmapProbe 0, 1, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid6"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.5408657, 0, -1.5606351) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.5408657, 0, -1.5606351)
[node name="LightmapProbe 0, 2, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid6"] [node name="LightmapProbe 0, 2, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid6"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.5408657, -1.5751817, 1.5606351) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.5408657, -1.5751817, 1.5606351)
[node name="LightmapProbe 0, 2, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid6"] [node name="LightmapProbe 0, 2, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid6"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.5408657, -1.5751817, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.5408657, -1.5751817, 0)
[node name="LightmapProbe 0, 2, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid6"] [node name="LightmapProbe 0, 2, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid6"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.5408657, -1.5751817, -1.5606351) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.5408657, -1.5751817, -1.5606351)
[node name="LightmapProbe 1, 0, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid6"] [node name="LightmapProbe 1, 0, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid6"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.5408657, 1.5751817, 1.5606351) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.5408657, 1.5751817, 1.5606351)
[node name="LightmapProbe 1, 0, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid6"] [node name="LightmapProbe 1, 0, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid6"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.5408657, 1.5751817, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.5408657, 1.5751817, 0)
[node name="LightmapProbe 1, 0, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid6"] [node name="LightmapProbe 1, 0, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid6"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.5408657, 1.5751817, -1.5606351) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.5408657, 1.5751817, -1.5606351)
[node name="LightmapProbe 1, 1, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid6"] [node name="LightmapProbe 1, 1, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid6"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.5408657, 0, 1.5606351) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.5408657, 0, 1.5606351)
[node name="LightmapProbe 1, 1, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid6"] [node name="LightmapProbe 1, 1, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid6"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.5408657, 0, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.5408657, 0, 0)
[node name="LightmapProbe 1, 2, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid6"] [node name="LightmapProbe 1, 2, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid6"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.5408657, -1.5751817, 1.5606351) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.5408657, -1.5751817, 1.5606351)
[node name="LightmapProbe 1, 2, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid6"] [node name="LightmapProbe 1, 2, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid6"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.5408657, -1.5751817, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.5408657, -1.5751817, 0)
[node name="LightmapProbeGrid4" type="Node3D" parent="LightmapGI"] [node name="LightmapProbeGrid4" type="Node3D" parent="LightmapGI/LightmapProbes"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.31298542, 4.872013, -32.370583) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.31298542, 4.872013, -32.370583)
script = ExtResource("9_p8lkr") script = ExtResource("9_p8lkr")
size = Vector3(22.084244, 3.7168427, 8.489476) size = Vector3(22.084244, 3.7168427, 8.489476)
@ -937,148 +946,148 @@ far_distance = 1.0
object_size = 1.0 object_size = 1.0
metadata/_custom_type_script = "uid://dbcy7qdq4hqlg" metadata/_custom_type_script = "uid://dbcy7qdq4hqlg"
[node name="LightmapProbe 0, 0, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid4"] [node name="LightmapProbe 0, 0, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid4"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 11.042128, 1.8584228, 4.244747) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 11.042128, 1.8584228, 4.244747)
[node name="LightmapProbe 0, 0, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid4"] [node name="LightmapProbe 0, 0, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid4"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 11.042128, 1.8584228, 1.414913) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 11.042128, 1.8584228, 1.414913)
[node name="LightmapProbe 0, 0, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid4"] [node name="LightmapProbe 0, 0, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid4"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 11.042128, 1.8584228, -1.414914) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 11.042128, 1.8584228, -1.414914)
[node name="LightmapProbe 0, 0, 3" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid4"] [node name="LightmapProbe 0, 0, 3" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid4"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 11.042128, 1.8584228, -4.244747) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 11.042128, 1.8584228, -4.244747)
[node name="LightmapProbe 0, 1, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid4"] [node name="LightmapProbe 0, 1, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid4"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 11.042128, 0, 4.244747) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 11.042128, 0, 4.244747)
[node name="LightmapProbe 0, 1, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid4"] [node name="LightmapProbe 0, 1, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid4"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 11.042128, 0, 1.414913) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 11.042128, 0, 1.414913)
[node name="LightmapProbe 0, 1, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid4"] [node name="LightmapProbe 0, 1, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid4"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 11.042128, 0, -1.414914) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 11.042128, 0, -1.414914)
[node name="LightmapProbe 0, 1, 3" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid4"] [node name="LightmapProbe 0, 1, 3" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid4"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 11.042128, 0, -4.244747) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 11.042128, 0, -4.244747)
[node name="LightmapProbe 0, 2, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid4"] [node name="LightmapProbe 0, 2, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid4"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 11.042128, -1.8584228, 4.244747) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 11.042128, -1.8584228, 4.244747)
[node name="LightmapProbe 0, 2, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid4"] [node name="LightmapProbe 0, 2, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid4"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 11.042128, -1.8584228, 1.414913) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 11.042128, -1.8584228, 1.414913)
[node name="LightmapProbe 0, 2, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid4"] [node name="LightmapProbe 0, 2, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid4"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 11.042128, -1.8584228, -1.414914) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 11.042128, -1.8584228, -1.414914)
[node name="LightmapProbe 0, 2, 3" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid4"] [node name="LightmapProbe 0, 2, 3" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid4"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 11.042128, -1.8584228, -4.244747) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 11.042128, -1.8584228, -4.244747)
[node name="LightmapProbe 1, 0, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid4"] [node name="LightmapProbe 1, 0, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid4"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 3.680708, 1.8584228, 4.244747) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 3.680708, 1.8584228, 4.244747)
[node name="LightmapProbe 1, 0, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid4"] [node name="LightmapProbe 1, 0, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid4"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 3.680708, 1.8584228, 1.414913) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 3.680708, 1.8584228, 1.414913)
[node name="LightmapProbe 1, 0, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid4"] [node name="LightmapProbe 1, 0, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid4"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 3.680708, 1.8584228, -1.414914) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 3.680708, 1.8584228, -1.414914)
[node name="LightmapProbe 1, 0, 3" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid4"] [node name="LightmapProbe 1, 0, 3" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid4"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 3.680708, 1.8584228, -4.244747) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 3.680708, 1.8584228, -4.244747)
[node name="LightmapProbe 1, 1, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid4"] [node name="LightmapProbe 1, 1, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid4"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 3.680708, 0, 4.244747) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 3.680708, 0, 4.244747)
[node name="LightmapProbe 1, 1, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid4"] [node name="LightmapProbe 1, 1, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid4"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 3.680708, 0, 1.414913) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 3.680708, 0, 1.414913)
[node name="LightmapProbe 1, 1, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid4"] [node name="LightmapProbe 1, 1, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid4"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 3.680708, 0, -1.414914) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 3.680708, 0, -1.414914)
[node name="LightmapProbe 1, 1, 3" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid4"] [node name="LightmapProbe 1, 1, 3" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid4"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 3.680708, 0, -4.244747) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 3.680708, 0, -4.244747)
[node name="LightmapProbe 1, 2, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid4"] [node name="LightmapProbe 1, 2, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid4"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 3.680708, -1.8584228, 4.244747) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 3.680708, -1.8584228, 4.244747)
[node name="LightmapProbe 1, 2, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid4"] [node name="LightmapProbe 1, 2, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid4"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 3.680708, -1.8584228, 1.414913) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 3.680708, -1.8584228, 1.414913)
[node name="LightmapProbe 1, 2, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid4"] [node name="LightmapProbe 1, 2, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid4"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 3.680708, -1.8584228, -1.414914) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 3.680708, -1.8584228, -1.414914)
[node name="LightmapProbe 1, 2, 3" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid4"] [node name="LightmapProbe 1, 2, 3" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid4"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 3.680708, -1.8584228, -4.244747) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 3.680708, -1.8584228, -4.244747)
[node name="LightmapProbe 2, 0, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid4"] [node name="LightmapProbe 2, 0, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid4"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -3.680709, 1.8584228, 4.244747) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -3.680709, 1.8584228, 4.244747)
[node name="LightmapProbe 2, 0, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid4"] [node name="LightmapProbe 2, 0, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid4"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -3.680709, 1.8584228, 1.414913) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -3.680709, 1.8584228, 1.414913)
[node name="LightmapProbe 2, 0, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid4"] [node name="LightmapProbe 2, 0, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid4"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -3.680709, 1.8584228, -1.414914) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -3.680709, 1.8584228, -1.414914)
[node name="LightmapProbe 2, 0, 3" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid4"] [node name="LightmapProbe 2, 0, 3" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid4"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -3.680709, 1.8584228, -4.244747) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -3.680709, 1.8584228, -4.244747)
[node name="LightmapProbe 2, 1, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid4"] [node name="LightmapProbe 2, 1, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid4"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -3.680709, 0, 4.244747) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -3.680709, 0, 4.244747)
[node name="LightmapProbe 2, 1, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid4"] [node name="LightmapProbe 2, 1, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid4"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -3.680709, 0, 1.414913) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -3.680709, 0, 1.414913)
[node name="LightmapProbe 2, 1, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid4"] [node name="LightmapProbe 2, 1, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid4"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -3.680709, 0, -1.414914) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -3.680709, 0, -1.414914)
[node name="LightmapProbe 2, 1, 3" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid4"] [node name="LightmapProbe 2, 1, 3" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid4"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -3.680709, 0, -4.244747) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -3.680709, 0, -4.244747)
[node name="LightmapProbe 2, 2, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid4"] [node name="LightmapProbe 2, 2, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid4"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -3.680709, -1.8584228, 4.244747) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -3.680709, -1.8584228, 4.244747)
[node name="LightmapProbe 2, 2, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid4"] [node name="LightmapProbe 2, 2, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid4"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -3.680709, -1.8584228, 1.414913) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -3.680709, -1.8584228, 1.414913)
[node name="LightmapProbe 2, 2, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid4"] [node name="LightmapProbe 2, 2, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid4"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -3.680709, -1.8584228, -1.414914) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -3.680709, -1.8584228, -1.414914)
[node name="LightmapProbe 2, 2, 3" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid4"] [node name="LightmapProbe 2, 2, 3" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid4"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -3.680709, -1.8584228, -4.244747) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -3.680709, -1.8584228, -4.244747)
[node name="LightmapProbe 3, 0, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid4"] [node name="LightmapProbe 3, 0, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid4"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -11.042128, 1.8584228, 4.244747) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -11.042128, 1.8584228, 4.244747)
[node name="LightmapProbe 3, 0, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid4"] [node name="LightmapProbe 3, 0, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid4"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -11.042128, 1.8584228, 1.414913) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -11.042128, 1.8584228, 1.414913)
[node name="LightmapProbe 3, 0, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid4"] [node name="LightmapProbe 3, 0, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid4"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -11.042128, 1.8584228, -1.414914) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -11.042128, 1.8584228, -1.414914)
[node name="LightmapProbe 3, 0, 3" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid4"] [node name="LightmapProbe 3, 0, 3" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid4"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -11.042128, 1.8584228, -4.244747) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -11.042128, 1.8584228, -4.244747)
[node name="LightmapProbe 3, 1, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid4"] [node name="LightmapProbe 3, 1, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid4"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -11.042128, 0, 4.244747) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -11.042128, 0, 4.244747)
[node name="LightmapProbe 3, 1, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid4"] [node name="LightmapProbe 3, 1, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid4"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -11.042128, 0, 1.414913) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -11.042128, 0, 1.414913)
[node name="LightmapProbe 3, 1, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid4"] [node name="LightmapProbe 3, 1, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid4"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -11.042128, 0, -1.414914) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -11.042128, 0, -1.414914)
[node name="LightmapProbe 3, 1, 3" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid4"] [node name="LightmapProbe 3, 1, 3" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid4"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -11.042128, 0, -4.244747) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -11.042128, 0, -4.244747)
[node name="LightmapProbe 3, 2, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid4"] [node name="LightmapProbe 3, 2, 0" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid4"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -11.042128, -1.8584228, 4.244747) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -11.042128, -1.8584228, 4.244747)
[node name="LightmapProbe 3, 2, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid4"] [node name="LightmapProbe 3, 2, 1" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid4"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -11.042128, -1.8584228, 1.414913) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -11.042128, -1.8584228, 1.414913)
[node name="LightmapProbe 3, 2, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid4"] [node name="LightmapProbe 3, 2, 2" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid4"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -11.042128, -1.8584228, -1.414914) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -11.042128, -1.8584228, -1.414914)
[node name="LightmapProbe 3, 2, 3" type="LightmapProbe" parent="LightmapGI/LightmapProbeGrid4"] [node name="LightmapProbe 3, 2, 3" type="LightmapProbe" parent="LightmapGI/LightmapProbes/LightmapProbeGrid4"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -11.042128, -1.8584228, -4.244747) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -11.042128, -1.8584228, -4.244747)
[node name="WorldEnvironment" type="WorldEnvironment" parent="."] [node name="WorldEnvironment" type="WorldEnvironment" parent="."]

View File

@ -8,3 +8,4 @@ albedo_texture = ExtResource("1_pfrvh")
roughness = 0.5 roughness = 0.5
uv1_scale = Vector3(2, 2, 1) uv1_scale = Vector3(2, 2, 1)
uv1_offset = Vector3(0, -1, 0) uv1_offset = Vector3(0, -1, 0)
texture_filter = 5

View File

@ -8,3 +8,4 @@ albedo_texture = ExtResource("1_67eg5")
roughness = 0.5 roughness = 0.5
uv1_scale = Vector3(2, 2, 1) uv1_scale = Vector3(2, 2, 1)
uv1_offset = Vector3(0, -1, 0) uv1_offset = Vector3(0, -1, 0)
texture_filter = 5

View File

@ -8,3 +8,4 @@ albedo_texture = ExtResource("1_vv0ty")
roughness = 0.5 roughness = 0.5
uv1_scale = Vector3(2, 2, 1) uv1_scale = Vector3(2, 2, 1)
uv1_offset = Vector3(0, -1, 0) uv1_offset = Vector3(0, -1, 0)
texture_filter = 5

View File

@ -8,3 +8,4 @@ albedo_texture = ExtResource("1_8tkn2")
roughness = 0.97 roughness = 0.97
uv1_scale = Vector3(2, 2, 1) uv1_scale = Vector3(2, 2, 1)
uv1_offset = Vector3(0, -1, 0) uv1_offset = Vector3(0, -1, 0)
texture_filter = 5

View File

@ -8,3 +8,4 @@ albedo_texture = ExtResource("1_gjyc6")
roughness = 0.97 roughness = 0.97
uv1_scale = Vector3(2, 2, 1) uv1_scale = Vector3(2, 2, 1)
uv1_offset = Vector3(0, -1, 0) uv1_offset = Vector3(0, -1, 0)
texture_filter = 5

View File

@ -4,9 +4,3 @@
[resource] [resource]
script = ExtResource("1") script = ExtResource("1")
joypad_fallback = 9
joypad_deadzone = 0.5
allow_mouse_remap = true
mouse_min_movement = 200
custom_asset_dir = ""
custom_file_extension = ""

View File

@ -108,17 +108,17 @@ func _update_hud() -> void:
var text: String = "" var text: String = ""
if not msg_list.is_empty(): if not msg_list.is_empty():
text = "[color=%s]=== Normal Logs ===\n" %TYPE_TITLE_COLOR text = "[color=%s]===[ Normal Logs ]===\n" % TYPE_TITLE_COLOR
text += "\n".join(msg_list) if not msg_list.is_empty() else "" # first regular messages. text += "\n".join(msg_list) if not msg_list.is_empty() else "" # first regular messages.
text += "\n" text += "\n"
if not msgf_list.is_empty(): if not msgf_list.is_empty():
text += "[color=%s]=== Frame-Logs ===\n" %TYPE_TITLE_COLOR text += "[color=%s]===[ Frame-Logs ]===\n" % TYPE_TITLE_COLOR
text += "\n".join(msgf_list) if not msgf_list.is_empty() else "" # frame messages afterwards. text += "\n".join(msgf_list) if not msgf_list.is_empty() else "" # frame messages afterwards.
text += "\n" text += "\n"
if not msgpf_list.is_empty(): if not msgpf_list.is_empty():
text += "[color=%s]=== Physics-Frame-Logs ===\n" %TYPE_TITLE_COLOR text += "[color=%s]===[ Physics-Frame-Logs ]===\n" % TYPE_TITLE_COLOR
text += "\n".join(msgpf_list) if not msgpf_list.is_empty() else "" # and now physics frames. text += "\n".join(msgpf_list) if not msgpf_list.is_empty() else "" # and now physics frames.
log_label.set_text(text) log_label.set_text(text)

View File

@ -3,7 +3,9 @@ extends CanvasLayer
const DEFAULT_TEXT: String = "{game_name} - {state} - V - {version}" const DEFAULT_TEXT: String = "{game_name} - {state} - V - {version}"
const UNDEFINED_TEXT: String = "Undefined" const UNDEFINED_TEXT: String = "Undefined"
@export_enum("Pre-Production", "Pre-Alpha", "Early-Alpha", "Alpha", "Beta", "Early-Access", "Release") var state: String = "Pre-Alpha" const States: String = "Pre-Production,Pre-Alpha,Early-Alpha,Alpha,Beta,Early-Access,Release"
@export_custom(PROPERTY_HINT_ENUM_SUGGESTION, States) var state: String = "Pre-Production"
@export_multiline var text_override: String = DEFAULT_TEXT: set = set_text @export_multiline var text_override: String = DEFAULT_TEXT: set = set_text
@onready var version_label: Label = $MarginContainer/VersionLabel @onready var version_label: Label = $MarginContainer/VersionLabel

View File

@ -7,7 +7,6 @@ process_mode = 3
layer = 64 layer = 64
follow_viewport_enabled = true follow_viewport_enabled = true
script = ExtResource("1_jk1t8") script = ExtResource("1_jk1t8")
state = "Pre-Production"
[node name="MarginContainer" type="MarginContainer" parent="."] [node name="MarginContainer" type="MarginContainer" parent="."]
anchors_preset = 15 anchors_preset = 15

View File

@ -16,3 +16,4 @@ heightmap_deep_parallax = true
heightmap_min_layers = 8 heightmap_min_layers = 8
heightmap_max_layers = 32 heightmap_max_layers = 32
heightmap_texture = ExtResource("4") heightmap_texture = ExtResource("4")
texture_filter = 5

View File

@ -6,3 +6,4 @@
albedo_texture = ExtResource("1_38xbi") albedo_texture = ExtResource("1_38xbi")
uv1_triplanar = true uv1_triplanar = true
uv1_world_triplanar = true uv1_world_triplanar = true
texture_filter = 5

View File

@ -1,8 +1,9 @@
[gd_resource type="StandardMaterial3D" load_steps=2 format=3 uid="uid://olxux7okrb2b"] [gd_resource type="StandardMaterial3D" load_steps=2 format=3 uid="uid://olxux7okrb2b"]
[ext_resource type="Texture2D" uid="uid://c8a1v7bw3jjca" path="res://addons/kenney_prototype_textures/dark/texture_02.png" id="1_jl162"] [ext_resource type="Texture2D" uid="uid://c8a1v7bw3jjca" path="res://assets/materials/dev/dark/texture_02.png" id="1_jl162"]
[resource] [resource]
albedo_texture = ExtResource("1_jl162") albedo_texture = ExtResource("1_jl162")
uv1_triplanar = true uv1_triplanar = true
uv1_world_triplanar = true uv1_world_triplanar = true
texture_filter = 5

View File

@ -1,8 +1,9 @@
[gd_resource type="StandardMaterial3D" load_steps=2 format=3 uid="uid://blkew2hja11cj"] [gd_resource type="StandardMaterial3D" load_steps=2 format=3 uid="uid://blkew2hja11cj"]
[ext_resource type="Texture2D" uid="uid://crgcp76xdixb" path="res://addons/kenney_prototype_textures/dark/texture_03.png" id="1_t7bo5"] [ext_resource type="Texture2D" uid="uid://crgcp76xdixb" path="res://assets/materials/dev/dark/texture_03.png" id="1_t7bo5"]
[resource] [resource]
albedo_texture = ExtResource("1_t7bo5") albedo_texture = ExtResource("1_t7bo5")
uv1_triplanar = true uv1_triplanar = true
uv1_world_triplanar = true uv1_world_triplanar = true
texture_filter = 5

View File

@ -1,8 +1,9 @@
[gd_resource type="StandardMaterial3D" load_steps=2 format=3 uid="uid://biu40ot7f55no"] [gd_resource type="StandardMaterial3D" load_steps=2 format=3 uid="uid://biu40ot7f55no"]
[ext_resource type="Texture2D" uid="uid://djftxgnhedhk2" path="res://addons/kenney_prototype_textures/dark/texture_05.png" id="1_l8w0p"] [ext_resource type="Texture2D" uid="uid://djftxgnhedhk2" path="res://assets/materials/dev/dark/texture_05.png" id="1_l8w0p"]
[resource] [resource]
albedo_texture = ExtResource("1_l8w0p") albedo_texture = ExtResource("1_l8w0p")
uv1_triplanar = true uv1_triplanar = true
uv1_world_triplanar = true uv1_world_triplanar = true
texture_filter = 5

View File

@ -6,3 +6,4 @@
albedo_texture = ExtResource("1_c2346") albedo_texture = ExtResource("1_c2346")
uv1_triplanar = true uv1_triplanar = true
uv1_world_triplanar = true uv1_world_triplanar = true
texture_filter = 5

View File

@ -1,8 +1,9 @@
[gd_resource type="StandardMaterial3D" load_steps=2 format=3 uid="uid://bahys2ntbh2ap"] [gd_resource type="StandardMaterial3D" load_steps=2 format=3 uid="uid://bahys2ntbh2ap"]
[ext_resource type="Texture2D" uid="uid://g26nr5u8081t" path="res://addons/kenney_prototype_textures/orange/texture_01.png" id="1_vb3n0"] [ext_resource type="Texture2D" uid="uid://g26nr5u8081t" path="res://assets/materials/dev/orange/texture_01.png" id="1_vb3n0"]
[resource] [resource]
albedo_texture = ExtResource("1_vb3n0") albedo_texture = ExtResource("1_vb3n0")
uv1_triplanar = true uv1_triplanar = true
uv1_world_triplanar = true uv1_world_triplanar = true
texture_filter = 5

View File

@ -1,8 +1,9 @@
[gd_resource type="StandardMaterial3D" load_steps=2 format=3 uid="uid://r527wj0qbkvs"] [gd_resource type="StandardMaterial3D" load_steps=2 format=3 uid="uid://r527wj0qbkvs"]
[ext_resource type="Texture2D" uid="uid://12e0onm52r6b" path="res://addons/kenney_prototype_textures/orange/texture_02.png" id="1_4qkig"] [ext_resource type="Texture2D" uid="uid://12e0onm52r6b" path="res://assets/materials/dev/orange/texture_02.png" id="1_4qkig"]
[resource] [resource]
albedo_texture = ExtResource("1_4qkig") albedo_texture = ExtResource("1_4qkig")
uv1_triplanar = true uv1_triplanar = true
uv1_world_triplanar = true uv1_world_triplanar = true
texture_filter = 5

View File

@ -1,8 +1,9 @@
[gd_resource type="StandardMaterial3D" load_steps=2 format=3 uid="uid://diwfj3ywaniq5"] [gd_resource type="StandardMaterial3D" load_steps=2 format=3 uid="uid://diwfj3ywaniq5"]
[ext_resource type="Texture2D" uid="uid://eemth84vpstv" path="res://addons/kenney_prototype_textures/orange/texture_03.png" id="1_fipy7"] [ext_resource type="Texture2D" uid="uid://eemth84vpstv" path="res://assets/materials/dev/orange/texture_03.png" id="1_fipy7"]
[resource] [resource]
albedo_texture = ExtResource("1_fipy7") albedo_texture = ExtResource("1_fipy7")
uv1_triplanar = true uv1_triplanar = true
uv1_world_triplanar = true uv1_world_triplanar = true
texture_filter = 5

View File

@ -1,8 +1,9 @@
[gd_resource type="StandardMaterial3D" load_steps=2 format=3 uid="uid://bwbwqb84pmji3"] [gd_resource type="StandardMaterial3D" load_steps=2 format=3 uid="uid://bwbwqb84pmji3"]
[ext_resource type="Texture2D" uid="uid://bgj70nov05sqo" path="res://addons/kenney_prototype_textures/orange/texture_04.png" id="1_mje5s"] [ext_resource type="Texture2D" uid="uid://bgj70nov05sqo" path="res://assets/materials/dev/orange/texture_04.png" id="1_mje5s"]
[resource] [resource]
albedo_texture = ExtResource("1_mje5s") albedo_texture = ExtResource("1_mje5s")
uv1_triplanar = true uv1_triplanar = true
uv1_world_triplanar = true uv1_world_triplanar = true
texture_filter = 5

View File

@ -1,8 +1,9 @@
[gd_resource type="StandardMaterial3D" load_steps=2 format=3 uid="uid://d02jll28bgkap"] [gd_resource type="StandardMaterial3D" load_steps=2 format=3 uid="uid://d02jll28bgkap"]
[ext_resource type="Texture2D" uid="uid://5erjqyy4c7xn" path="res://addons/kenney_prototype_textures/orange/texture_05.png" id="1_phgo0"] [ext_resource type="Texture2D" uid="uid://5erjqyy4c7xn" path="res://assets/materials/dev/orange/texture_05.png" id="1_phgo0"]
[resource] [resource]
albedo_texture = ExtResource("1_phgo0") albedo_texture = ExtResource("1_phgo0")
uv1_triplanar = true uv1_triplanar = true
uv1_world_triplanar = true uv1_world_triplanar = true
texture_filter = 5

View File

@ -1,13 +0,0 @@
[gd_resource type="StandardMaterial3D" load_steps=5 format=2]
[ext_resource path="Glass_albedo.png" type="Texture" id=1]
[ext_resource path="Glass_orm.png" type="Texture" id=2]
[resource]
albedo_color = Color(1.0, 1.0, 1.0, 1.0)
albedo_texture = ExtResource( 1 )
metallic = 1.0
roughness = 0.7
roughness_texture = ExtResource( 2 )
roughness_texture_channel = 1

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.0 KiB

View File

@ -1,41 +0,0 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cjdn0al3k5sr1"
path.s3tc="res://.godot/imported/Glass_albedo.png-11a38e2ea0392d99b9c5666124e14317.s3tc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://assets/models/electrics/Glass_albedo.png"
dest_files=["res://.godot/imported/Glass_albedo.png-11a38e2ea0392d99b9c5666124e14317.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

Binary file not shown.

Before

Width:  |  Height:  |  Size: 46 KiB

View File

@ -1,41 +0,0 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bdri3fghliji3"
path.s3tc="res://.godot/imported/Glass_orm.png-ab661433c67191ce8cc45b129ded3d93.s3tc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://assets/models/electrics/Glass_orm.png"
dest_files=["res://.godot/imported/Glass_orm.png-ab661433c67191ce8cc45b129ded3d93.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

View File

@ -3,3 +3,4 @@
[resource] [resource]
albedo_color = Color(0.1148968, 0.11489681, 0.1148968, 1) albedo_color = Color(0.1148968, 0.11489681, 0.1148968, 1)
roughness = 0.85 roughness = 0.85
texture_filter = 0

View File

@ -119,9 +119,16 @@ jump={
, Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"button_index":0,"pressure":0.0,"pressed":true,"script":null) , Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"button_index":0,"pressure":0.0,"pressed":true,"script":null)
] ]
} }
toggle_mouse={ crouch={
"deadzone": 0.2, "deadzone": 0.2,
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194332,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null) "events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194326,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null)
, Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"button_index":1,"pressure":0.0,"pressed":true,"script":null)
]
}
interact={
"deadzone": 0.2,
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":69,"key_label":0,"unicode":101,"location":0,"echo":false,"script":null)
, Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"button_index":2,"pressure":0.0,"pressed":true,"script":null)
] ]
} }
camera_up={ camera_up={
@ -155,6 +162,11 @@ toggle_console={
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194341,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null) "events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194341,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null)
] ]
} }
toggle_mouse={
"deadzone": 0.2,
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194332,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null)
]
}
bbcode_edit/toggle_bold={ bbcode_edit/toggle_bold={
"deadzone": 0.5, "deadzone": 0.5,
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":true,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":66,"physical_keycode":0,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null) "events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":true,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":66,"physical_keycode":0,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null)
@ -180,12 +192,6 @@ bbcode_edit/editor/open_current_file_documentation={
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":false,"shift_pressed":true,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":4194332,"physical_keycode":0,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null) "events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":false,"shift_pressed":true,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":4194332,"physical_keycode":0,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null)
] ]
} }
crouch={
"deadzone": 0.2,
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194326,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null)
, Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"button_index":1,"pressure":0.0,"pressed":true,"script":null)
]
}
[internationalization] [internationalization]

View File

@ -3,13 +3,23 @@ class_name CameraEffect
extends Node extends Node
## If the effect isn't enabled, we don't process the effect.
@export var effect_enabled: bool = true: set = set_effect_enabled @export var effect_enabled: bool = true: set = set_effect_enabled
## The node we can gain spatial information from.[br]
## Has no effect when unset, unless the specific effect requires it.
@export var root_node: Node3D @export var root_node: Node3D
## The [CameraEffectTarget] we wan't to change.
@export var target: CameraEffectTarget @export var target: CameraEffectTarget
## Offset the camera's [member Node3D.position] by this amount.
var position: Vector3 var position: Vector3
## Offset the camera's [member Node3D.rotation] by this amount.
var rotation: Vector3 var rotation: Vector3
var fov: float ## Only change this if you really need to; [b]it overrides the camera fov.[/b][br]
## If set below [code]0.001[/code], this has no effect [i](doesn't override the camera fov)[/i].
var fov: float = -1.0
## Offset the camera's [member Camera3D.fov] by this amount.
var fov_change: float = 0.0
func _process(delta: float) -> void: func _process(delta: float) -> void:
@ -21,6 +31,11 @@ func _process(delta: float) -> void:
target.position += position target.position += position
target.rotation += rotation target.rotation += rotation
if fov >= 0.001:
target.fov = fov
target.fov_change += fov_change
func set_effect_enabled(value: bool) -> void: func set_effect_enabled(value: bool) -> void:
effect_enabled = value effect_enabled = value

View File

@ -4,10 +4,20 @@ extends Node3D
@export var camera: Camera3D @export var camera: Camera3D
var fov: float = 0.0
var fov_change: float = 0.0
func _ready() -> void: func _ready() -> void:
fov = camera.fov
RenderingServer.frame_post_draw.connect(cleanup_effects, CONNECT_DEFERRED) RenderingServer.frame_post_draw.connect(cleanup_effects, CONNECT_DEFERRED)
func _process(_delta: float) -> void:
camera.fov = clampf(fov + fov_change, 1.0, 179.0)
fov_change = 0.0
func cleanup_effects() -> void: func cleanup_effects() -> void:
if not is_instance_valid(get_tree()): if not is_instance_valid(get_tree()):
return return

View File

@ -88,6 +88,7 @@ func _init() -> void:
# Setup labels. # Setup labels.
_idx_label = Label3D.new() _idx_label = Label3D.new()
_idx_label.ignore_occlusion_culling = true
_idx_label.billboard = BaseMaterial3D.BILLBOARD_ENABLED _idx_label.billboard = BaseMaterial3D.BILLBOARD_ENABLED
_idx_label.shaded = false _idx_label.shaded = false
_idx_label.font_size = 64 _idx_label.font_size = 64

View File

@ -20,17 +20,19 @@ signal started_vibration
@export var device: int = 0: @export var device: int = 0:
get = get_device, get = get_device,
set = set_device set = set_device
## The delay the vibration by this amount. ## Delay the vibration by this amount.
@export var delay: float = 0.0 @export var delay: float = 0.0
@export var editor_delay: float = 0.0
@export var sync_to_audio: bool = false @export var sync_to_audio: bool = false
#region Editor tooling
@warning_ignore_start("unused_private_class_variable") @warning_ignore_start("unused_private_class_variable")
@export var _editor_weak_vibration: bool = false
@export_tool_button("Test Vibration", "InputEventJoypadMotion") @export_tool_button("Test Vibration", "InputEventJoypadMotion")
var _editor_test_vibration: Callable = vibrate var _editor_test_vibration: Callable = vibrate
@export_tool_button("Stop Vibration", "MissingNode") @export_tool_button("Stop Vibration", "MissingNode")
var _editor_stop_test_vibration: Callable = stop_vibration var _editor_stop_test_vibration: Callable = stop_vibration
@warning_ignore_restore("unused_private_class_variable") @warning_ignore_restore("unused_private_class_variable")
#endregion
@export_group("Magnitude") @export_group("Magnitude")
## [param weak_magnitude] is the strength of the weak motor ## [param weak_magnitude] is the strength of the weak motor
@ -48,16 +50,32 @@ var _editor_stop_test_vibration: Callable = stop_vibration
get = get_magnitude_multiplier, get = get_magnitude_multiplier,
set = set_magnitude_multiplier set = set_magnitude_multiplier
@export_group("Weak Controller Overrides", "weak_controller_")
@export var weak_controller_magnitude_multiplier: float = 2.0
@export var weak_controller_duration_multiplier: float = 1.0
var animated_weak_magnitude: float = 0.0: var animated_weak_magnitude: float = 0.0:
set(value): set(value):
animated_weak_magnitude = clampf(value, 0.0, 1.0) animated_weak_magnitude = clampf(value, 0.0, 1.0)
var animated_strong_magnitude: float = 0.0: var animated_strong_magnitude: float = 0.0:
set(value): set(value):
animated_strong_magnitude = clampf(value, 0.0, 1.0) animated_strong_magnitude = clampf(value, 0.0, 1.0)
var _ed_was_weak_vibration: bool = false
func _notification(what: int) -> void:
if what == NOTIFICATION_EDITOR_PRE_SAVE:
_ed_was_weak_vibration = _editor_weak_vibration
_editor_weak_vibration = false
elif what == NOTIFICATION_EDITOR_POST_SAVE:
_editor_weak_vibration = _ed_was_weak_vibration
func _process(delta: float) -> void: func _process(delta: float) -> void:
if not is_zero_approx(animated_weak_magnitude + animated_strong_magnitude): if (
can_vibrate()
and not is_zero_approx(animated_weak_magnitude + animated_strong_magnitude)
):
Input.start_joy_vibration.call_deferred( Input.start_joy_vibration.call_deferred(
device, animated_weak_magnitude, animated_strong_magnitude, delta device, animated_weak_magnitude, animated_strong_magnitude, delta
) )
@ -68,35 +86,37 @@ func _process(delta: float) -> void:
## Performs the controller vibration based on given parameters of the component.[br] ## Performs the controller vibration based on given parameters of the component.[br]
## [b]Info[/b]: The [member enabled] parameter must be [code]true[/code]. ## [b]Info[/b]: The [member enabled] parameter must be [code]true[/code].
func vibrate() -> void: func vibrate() -> void:
# Don't vibrate if the user has it turned off. if not can_vibrate():
if not Engine.is_editor_hint(): return
if (
not InputManager.using_controller
#or not ProjectSettings.get_setting("game/input/controller_vibrations", true)
):
return
if enabled: var is_weak_controller: bool
if sync_to_audio:
var last_mix_time: float = AudioServer.get_time_since_last_mix()
var output_latency: float = AudioServer.get_output_latency()
#SPrint.print_msg("Audio Delay: %s" % (last_mix_time + output_latency))
await get_tree().create_timer(last_mix_time + output_latency).timeout
if delay > 0.0: if Engine.is_editor_hint():
await get_tree().create_timer(delay).timeout is_weak_controller = _editor_weak_vibration
else:
is_weak_controller = SettingsManager.get_setting(&"controls", &"using_weak_controller")
if OS.is_debug_build() and editor_delay > 0.0: if delay > 0.0:
await get_tree().create_timer(editor_delay).timeout await get_tree().create_timer(delay).timeout
Input.start_joy_vibration( if sync_to_audio:
device, var last_mix_time: float = AudioServer.get_time_since_last_mix()
clampf(weak_magnitude * magnitude_multiplier, 0.0, 1.0), var output_latency: float = AudioServer.get_output_latency()
clampf(strong_magnitude * magnitude_multiplier, 0.0, 1.0), #SPrint.print_msg("Audio Delay: %s" % (last_mix_time + output_latency))
duration await get_tree().create_timer(last_mix_time + output_latency).timeout
)
#started_vibration.emit() var _multiplier: float = magnitude_multiplier * (
weak_controller_magnitude_multiplier if is_weak_controller else 1.0
)
Input.start_joy_vibration(
device,
clampf(weak_magnitude * _multiplier, 0.0, 1.0),
clampf(strong_magnitude * _multiplier, 0.0, 1.0),
duration * (weak_controller_duration_multiplier if is_weak_controller else 1.0)
)
#started_vibration.emit()
## Stops the vibration of the joypad, based on the [member device] parameter, ## Stops the vibration of the joypad, based on the [member device] parameter,
@ -105,6 +125,18 @@ func stop_vibration() -> void:
Input.stop_joy_vibration(device) Input.stop_joy_vibration(device)
## Don't vibrate if the user has it turned off.
func can_vibrate() -> bool:
if not Engine.is_editor_hint():
if (
not InputManager.using_controller
#or not ProjectSettings.get_setting("game/input/controller_vibrations", true)
):
return false
return enabled
func set_enabled(value: bool) -> void: func set_enabled(value: bool) -> void:
enabled = value enabled = value

View File

@ -34,19 +34,10 @@ const CONTROLLER_INVERT_Y_PATH: StringName = &"game/input/camera_controller_inve
@export var controller_invert_x: bool = false @export var controller_invert_x: bool = false
@export var controller_invert_y: bool = false @export var controller_invert_y: bool = false
@export_group("Headbobbing", "headbob_")
@export var headbob_range: float = 0.25
@export var headbob_frequency: float = 0.5
@export var headbob_multiplier: float = 1.0
@export var headbob_target: Node3D
var rotational_direction: Vector2 var rotational_direction: Vector2
var rotational_velocity: Vector2 var rotational_velocity: Vector2
var input_event: InputEvent var input_event: InputEvent
var using_controller: bool = false var using_controller: bool = false
# Headbobbing
var headbob_time: float = 0.0
var headbob_enabled: bool = true
func _ready() -> void: func _ready() -> void:
@ -58,29 +49,15 @@ func _ready() -> void:
invert_y = ProjectSettings.get_setting(INVERT_Y_PATH, false) invert_y = ProjectSettings.get_setting(INVERT_Y_PATH, false)
controller_invert_x = ProjectSettings.get_setting(CONTROLLER_INVERT_X_PATH, false) controller_invert_x = ProjectSettings.get_setting(CONTROLLER_INVERT_X_PATH, false)
controller_invert_y = ProjectSettings.get_setting(CONTROLLER_INVERT_Y_PATH, false) controller_invert_y = ProjectSettings.get_setting(CONTROLLER_INVERT_Y_PATH, false)
headbob_enabled = SettingsManager.get_setting(&"misc", &"headbobbing")
SettingsManager.settings_changed.connect(_update_settings) SettingsManager.settings_changed.connect(_update_settings)
ProjectSettings.settings_changed.connect(_update_settings) ProjectSettings.settings_changed.connect(_update_settings)
_update_settings.call() _update_settings.call()
#_setup_step_smoothing()
func _process(delta: float) -> void: func _process(delta: float) -> void:
if not is_instance_valid(GameGlobals.game) or not GameGlobals.game.world.in_cutscene: if not is_instance_valid(GameGlobals.game) or not GameGlobals.game.world.in_cutscene:
_process_input(delta) _process_input(delta)
#_perform_head_bob(delta)
#
#if is_instance_valid(character):
#if character.is_on_floor() and not character.was_on_floor:
#if absf(character.previous_velocity.y) > impact_min_fall_velocity:
#var fall_velocity: float = maxf(-character.previous_velocity.y * 0.5, impact_max_fall_velocity)
#add_impact(Vector3.DOWN * 0.15 * fall_velocity, 0.35)
#
#_process_impact(delta)
#
#_process_step_smoothing(delta)
func _unhandled_input(event: InputEvent) -> void: func _unhandled_input(event: InputEvent) -> void:
@ -172,25 +149,3 @@ func _process_controller(delta: float) -> void:
func _lerp_rotational_velocity(sensitivity: float, friction: float, delta: float) -> Vector2: func _lerp_rotational_velocity(sensitivity: float, friction: float, delta: float) -> Vector2:
return rotational_velocity.lerp(rotational_direction * sensitivity, friction * delta) return rotational_velocity.lerp(rotational_direction * sensitivity, friction * delta)
#endregion #endregion
#region Headbobbing
func _perform_head_bob(delta: float) -> void:
if not headbob_enabled:
headbob_target.position = Vector3.ZERO
headbob_target.rotation.z = 0.0
headbob_time = 0.0
return
var headbob_speed: float = maxf((character.velocity * Utils.VEC3_HOR).length(), 1.0)
SPrint.print_msgf(str("Headbob-Speed: ", headbob_speed), true)
SPrint.print_msgf(str("Headbob-Clock: ", headbob_time), true)
headbob_time += delta * headbob_speed * headbob_multiplier
headbob_time = fposmod(headbob_time, TAU)
headbob_target.position.y = sin(headbob_time * headbob_frequency) * headbob_range
headbob_target.position.x = cos(headbob_time * headbob_frequency / 2) * headbob_range
headbob_target.rotation.z = deg_to_rad(lerp(headbob_target.position.x, headbob_target.position.y, 0.5)) * TAU
SPrint.print_msgf(str("Head Z-Rotation: ", headbob_target.rotation.z), true)
#endregion

View File

@ -17,6 +17,6 @@ func _ready() -> void:
func set_glowing(value: bool) -> void: func set_glowing(value: bool) -> void:
active = value active = value
var material: Material = powered_material if value else null var material: Material = powered_material if active else null
projector_mesh.set_surface_override_material(override_surface_index, material) projector_mesh.set_surface_override_material(override_surface_index, material)
glow_mesh.visible = value glow_mesh.visible = active

View File

@ -1,12 +1,13 @@
[gd_scene load_steps=7 format=3 uid="uid://k3edwxkml8dd"] [gd_scene load_steps=8 format=3 uid="uid://k3edwxkml8dd"]
[ext_resource type="Script" uid="uid://c6j42r4fsxiha" path="res://src/gameplay/props/electrics/hologram_projector/hologram_projector_floor.gd" id="1_0n826"] [ext_resource type="Script" uid="uid://c6j42r4fsxiha" path="res://src/gameplay/props/electrics/hologram_projector/hologram_projector_floor.gd" id="1_0n826"]
[ext_resource type="PackedScene" uid="uid://dlyy375sgb4m2" path="res://src/gameplay/props/electrics/hologram_projector/model/hologram_projector_floor.glb" id="2_xkimn"] [ext_resource type="PackedScene" uid="uid://dlyy375sgb4m2" path="res://src/gameplay/props/electrics/hologram_projector/model/hologram_projector_floor.glb" id="2_xkimn"]
[ext_resource type="Material" uid="uid://dsvaigjgpnym8" path="res://src/gameplay/props/electrics/hologram_projector/model/glass_powered.tres" id="3_hg5uv"]
[sub_resource type="Gradient" id="Gradient_0n826"] [sub_resource type="Gradient" id="Gradient_0n826"]
interpolation_mode = 2 interpolation_mode = 2
offsets = PackedFloat32Array(0.25420874, 0.30808082, 0.34511784, 0.38215488, 0.4124579, 0.503367) offsets = PackedFloat32Array(0.25420874, 0.26094276, 0.30808082, 0.38215488, 0.496633)
colors = PackedColorArray(1, 1, 1, 0, 1, 1, 1, 0.86718756, 1, 1, 1, 0.33789822, 1, 1, 1, 0.13586852, 1, 1, 1, 0.05530738, 1, 1, 1, 0) colors = PackedColorArray(1, 1, 1, 0, 1, 1, 1, 0.86718756, 1, 1, 1, 0.33789822, 1, 1, 1, 0.07450981, 1, 1, 1, 0)
[sub_resource type="GradientTexture2D" id="GradientTexture2D_tek7r"] [sub_resource type="GradientTexture2D" id="GradientTexture2D_tek7r"]
gradient = SubResource("Gradient_0n826") gradient = SubResource("Gradient_0n826")
@ -17,15 +18,28 @@ fill_from = Vector2(0, 1)
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_xkimn"] [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_xkimn"]
transparency = 4 transparency = 4
cull_mode = 2 cull_mode = 2
shading_mode = 0 diffuse_mode = 3
specular_mode = 2
disable_ambient_light = true disable_ambient_light = true
albedo_color = Color(0.4738321, 1.353256, 1.353256, 0.21568628) albedo_color = Color(0.7844504, 1.3140352, 1.3007404, 1)
albedo_texture = SubResource("GradientTexture2D_tek7r") albedo_texture = SubResource("GradientTexture2D_tek7r")
metallic_specular = 1.0
roughness = 0.9
emission_enabled = true
emission = Color(0.4738321, 1.353256, 1.353256, 0.21568628)
emission_energy_multiplier = 0.5
rim_enabled = true
rim_tint = 1.0
distance_fade_mode = 1
distance_fade_min_distance = 0.25
distance_fade_max_distance = 0.5
stencil_flags = 2
[sub_resource type="CylinderMesh" id="CylinderMesh_hg5uv"] [sub_resource type="CylinderMesh" id="CylinderMesh_hg5uv"]
top_radius = 1.0 top_radius = 1.0
bottom_radius = 0.15 bottom_radius = 0.15
height = 4.0 height = 4.0
radial_segments = 32
rings = 0 rings = 0
cap_top = false cap_top = false
cap_bottom = false cap_bottom = false
@ -36,6 +50,9 @@ projector_mesh = NodePath("ProjectorModel/Projector")
[node name="ProjectorModel" parent="." instance=ExtResource("2_xkimn")] [node name="ProjectorModel" parent="." instance=ExtResource("2_xkimn")]
[node name="Projector" parent="ProjectorModel" index="0"]
surface_material_override/1 = ExtResource("3_hg5uv")
[node name="GlowMesh" type="MeshInstance3D" parent="."] [node name="GlowMesh" type="MeshInstance3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 2, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 2, 0)
material_override = SubResource("StandardMaterial3D_xkimn") material_override = SubResource("StandardMaterial3D_xkimn")

View File

@ -9,3 +9,4 @@ metallic = 1.0
roughness = 0.7 roughness = 0.7
roughness_texture = ExtResource("2") roughness_texture = ExtResource("2")
roughness_texture_channel = 1 roughness_texture_channel = 1
texture_filter = 5

View File

@ -9,4 +9,6 @@ albedo_texture = ExtResource("1")
metallic = 1.0 metallic = 1.0
roughness_texture = ExtResource("3_aas0i") roughness_texture = ExtResource("3_aas0i")
emission_enabled = true emission_enabled = true
emission_energy_multiplier = 3.0
emission_texture = ExtResource("5") emission_texture = ExtResource("5")
texture_filter = 5

View File

@ -32,7 +32,9 @@ func load_to_path(path: String, additional_paths: PackedStringArray = [], do_fad
await fade_in() await fade_in()
#await get_tree().create_timer(1.0).timeout #await get_tree().create_timer(1.0).timeout
print("===================================\nBeginning loading sequence for files %s %s" % [path, additional_paths]) print("===================================\nBeginning loading sequence for files %s %s"
% [Utils.uid_to_res_path(path), Utils.uid_to_res_path(additional_paths)]
)
# Load the initial level into memory first, so it can be retrived by other things later. # Load the initial level into memory first, so it can be retrived by other things later.
if not additional_paths.is_empty(): if not additional_paths.is_empty():

View File

@ -15,12 +15,15 @@ var settings: Dictionary[String, Dictionary] = {
&"Ambient": 1.0, &"Ambient": 1.0,
}, },
&"video": { &"video": {
&"fullscreen": true &"fullscreen": true,
},
&"controls": {
&"using_weak_controller": false,
}, },
&"misc": { &"misc": {
&"language": -1, &"language": -1,
&"headbobbing": true, &"headbobbing": true,
&"headbobbing_multiplier": 1.0 &"headbobbing_multiplier": 1.0,
} }
} }

View File

@ -99,3 +99,36 @@ static func full_rotation_float(
static func get_uid(path: String) -> int: static func get_uid(path: String) -> int:
var uid: int = ResourceUID.text_to_id(ResourceUID.path_to_uid(path)) var uid: int = ResourceUID.text_to_id(ResourceUID.path_to_uid(path))
return uid return uid
## Converts any given uid (as an [int] or [code]uid://[/code] path)
## to a [code]res://[/code] path.[br]
## If the [param uid] is a Array of any type (any type as int or string),
## it returns an array with each value being a [code]res://[/code] path.
static func uid_to_res_path(uid: Variant) -> Variant:
if uid is int:
return ResourceUID.uid_to_path(ResourceUID.id_to_text(uid))
elif uid is String:
return ResourceUID.uid_to_path(uid)
elif (
uid is Array
or uid is Array[String]
or uid is Array[StringName]
or uid is Array[int]
or uid is PackedStringArray
or uid is PackedInt32Array
or uid is PackedInt64Array
):
var paths: PackedStringArray = []
for id: Variant in uid:
var result: Variant = uid_to_res_path(id)
if result is PackedStringArray:
paths.append_array(result)
else:
paths.append(result)
return paths
return null

View File

@ -1,8 +1,9 @@
[gd_scene load_steps=4 format=3 uid="uid://coga3ke4xw3a0"] [gd_scene load_steps=5 format=3 uid="uid://coga3ke4xw3a0"]
[ext_resource type="Script" uid="uid://bf1k68a8ky3ps" path="res://src/ui/menus/boot/boot.gd" id="1_yodsw"] [ext_resource type="Script" uid="uid://bf1k68a8ky3ps" path="res://src/ui/menus/boot/boot.gd" id="1_yodsw"]
[ext_resource type="PackedScene" uid="uid://b2wlequ3m4trj" path="res://src/ui/menus/boot/shader_precompilation/shader_precompiler.tscn" id="2_fge7m"] [ext_resource type="PackedScene" uid="uid://b2wlequ3m4trj" path="res://src/ui/menus/boot/shader_precompilation/shader_precompiler.tscn" id="2_fge7m"]
[ext_resource type="PackedScene" uid="uid://dl52ot7hyq3si" path="res://src/ui/menus/boot/pixelation_games/pixelation_games_intro.tscn" id="3_sptlg"] [ext_resource type="PackedScene" uid="uid://dl52ot7hyq3si" path="res://src/ui/menus/boot/pixelation_games/pixelation_games_intro.tscn" id="3_sptlg"]
[ext_resource type="PackedScene" uid="uid://4s2nskkco0a2" path="res://src/ui/menus/options_menu/options_menu.tscn" id="4_605vd"]
[node name="Boot" type="Control"] [node name="Boot" type="Control"]
layout_mode = 3 layout_mode = 3
@ -18,5 +19,9 @@ script = ExtResource("1_yodsw")
[node name="PixelationGamesIntro" parent="." instance=ExtResource("3_sptlg")] [node name="PixelationGamesIntro" parent="." instance=ExtResource("3_sptlg")]
process_mode = 4 process_mode = 4
[node name="OptionsMenu" parent="." instance=ExtResource("4_605vd")]
visible = false
layout_mode = 1
[connection signal="finished_compilation" from="ShaderPrecompiler" to="." method="_on_shader_precompiler_finished_compilation"] [connection signal="finished_compilation" from="ShaderPrecompiler" to="." method="_on_shader_precompiler_finished_compilation"]
[connection signal="intro_finished" from="PixelationGamesIntro" to="." method="_on_pixelation_games_intro_finished"] [connection signal="intro_finished" from="PixelationGamesIntro" to="." method="_on_pixelation_games_intro_finished"]

View File

@ -6,13 +6,17 @@ const AMBIENCE_STREAM: AudioStream = preload("uid://vft8mjglpa2u")
@onready var continue_button: Button = %ContinueButton @onready var continue_button: Button = %ContinueButton
@onready var new_game_button: Button = %NewGameButton @onready var new_game_button: Button = %NewGameButton
@onready var quit_button: Button = %QuitButton @onready var quit_button: Button = %QuitButton
@onready var options_menu: Control = $OptionsMenu @onready var options_menu: Control = %OptionsMenu
@onready var main_menu_ui: Control = $MainMenuUI @onready var main_menu_ui: Control = %MainMenuUI
@onready var save_confirmation: SaveConfirmation = %SaveConfirmation
func _ready() -> void: func _ready() -> void:
continue_button.disabled = not SaveManager.save_exists() if SaveManager.save_exists():
(continue_button if not continue_button.disabled else new_game_button).grab_focus() continue_button.grab_focus()
else:
continue_button.hide()
new_game_button.grab_focus()
AudioManager.play_audio(AMBIENCE_STREAM, AudioManager.AMBIENCE) AudioManager.play_audio(AMBIENCE_STREAM, AudioManager.AMBIENCE)
@ -55,6 +59,12 @@ func _on_continue_button_pressed() -> void:
load_game() load_game()
func _on_settings_button_pressed() -> void:
if not SceneFader.is_fading:
main_menu_ui.hide()
options_menu.show()
func _on_quit_button_pressed() -> void: func _on_quit_button_pressed() -> void:
if SceneFader.is_fading: if SceneFader.is_fading:
return return
@ -65,12 +75,6 @@ func _on_quit_button_pressed() -> void:
get_tree().quit() get_tree().quit()
func _on_settings_button_pressed() -> void:
if not SceneFader.is_fading:
main_menu_ui.hide()
options_menu.show()
func _on_chase_button_pressed() -> void: func _on_chase_button_pressed() -> void:
if SceneFader.is_fading: if SceneFader.is_fading:
return return

View File

@ -11,6 +11,7 @@ ambient_light_color = Color(0.177136, 0.177136, 0.177136, 1)
script = ExtResource("1_6xfbl") script = ExtResource("1_6xfbl")
[node name="MainMenuUI" type="Control" parent="."] [node name="MainMenuUI" type="Control" parent="."]
unique_name_in_owner = true
layout_mode = 3 layout_mode = 3
anchors_preset = 15 anchors_preset = 15
anchor_right = 1.0 anchor_right = 1.0
@ -70,6 +71,7 @@ layout_mode = 2
text = "QUIT" text = "QUIT"
[node name="OptionsMenu" parent="." instance=ExtResource("2_i2wwg")] [node name="OptionsMenu" parent="." instance=ExtResource("2_i2wwg")]
unique_name_in_owner = true
visible = false visible = false
[node name="Background" type="Node3D" parent="."] [node name="Background" type="Node3D" parent="."]

View File

@ -4,6 +4,7 @@ extends CheckBox
@export var section: StringName = &"" @export var section: StringName = &""
@export var key: StringName = &"" @export var key: StringName = &""
@export var function_name: StringName = &""
func _ready() -> void: func _ready() -> void:
@ -11,4 +12,7 @@ func _ready() -> void:
func _toggled(toggled_on: bool) -> void: func _toggled(toggled_on: bool) -> void:
SettingsManager.set_setting(section, key, toggled_on) if function_name.is_empty():
SettingsManager.set_setting(section, key, toggled_on)
else:
SettingsManager.call(function_name, toggled_on)

View File

@ -34,10 +34,9 @@ offset_bottom = 20.0
grow_horizontal = 2 grow_horizontal = 2
grow_vertical = 2 grow_vertical = 2
tab_alignment = 1 tab_alignment = 1
current_tab = 2 current_tab = 0
[node name="Audio" type="Control" parent="TabContainer"] [node name="Audio" type="Control" parent="TabContainer"]
visible = false
layout_mode = 2 layout_mode = 2
metadata/_tab_index = 0 metadata/_tab_index = 0
@ -188,10 +187,40 @@ layout_mode = 2
text = "FULLSCREEN" text = "FULLSCREEN"
script = ExtResource("3_hj0r6") script = ExtResource("3_hj0r6")
[node name="Misc" type="Control" parent="TabContainer"] [node name="Controls" type="Control" parent="TabContainer"]
visible = false
layout_mode = 2 layout_mode = 2
metadata/_tab_index = 2 metadata/_tab_index = 2
[node name="MarginContainer" type="MarginContainer" parent="TabContainer/Controls"]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
theme_override_constants/margin_left = 4
theme_override_constants/margin_top = 4
theme_override_constants/margin_right = 4
theme_override_constants/margin_bottom = 4
[node name="VBoxContainer" type="VBoxContainer" parent="TabContainer/Controls/MarginContainer"]
layout_mode = 2
[node name="WeakController" type="CheckBox" parent="TabContainer/Controls/MarginContainer/VBoxContainer"]
layout_mode = 2
button_pressed = true
text = "Weak Controller Mode"
script = ExtResource("5_basnw")
section = &"controls"
key = &"using_weak_controller"
metadata/_custom_type_script = "uid://c0s18kus3bt2n"
[node name="Misc" type="Control" parent="TabContainer"]
visible = false
layout_mode = 2
metadata/_tab_index = 3
[node name="MarginContainer" type="MarginContainer" parent="TabContainer/Misc"] [node name="MarginContainer" type="MarginContainer" parent="TabContainer/Misc"]
layout_mode = 1 layout_mode = 1
anchors_preset = 15 anchors_preset = 15

View File

@ -2,6 +2,11 @@
class_name AnimPlayerEditorCalls class_name AnimPlayerEditorCalls
extends AnimationPlayer extends AnimationPlayer
@export var exclude_function_calls: Array[StringName] = [
&"queue_free",
&"free",
]
var EDITOR_PATH: String: var EDITOR_PATH: String:
get: return str(get_parent().get_path()) + "/" get: return str(get_parent().get_path()) + "/"
@ -24,6 +29,11 @@ func _process(_delta: float) -> void:
if function_call.time > current_animation_position: if function_call.time > current_animation_position:
continue continue
# Dont't execute these requests.
if exclude_function_calls.has(function_call.name):
remove_these_function_calls.append(i)
continue
#print("AnimationPlayer is calling the function of another node.") #print("AnimationPlayer is calling the function of another node.")
#print(" path: %s" % function_call.path) #print(" path: %s" % function_call.path)
#print(" name: %s" % function_call.name) #print(" name: %s" % function_call.name)

View File

@ -2,21 +2,64 @@
class_name TimedMusicAnimationPlayer class_name TimedMusicAnimationPlayer
extends AnimPlayerEditorCalls extends AnimPlayerEditorCalls
## A animation player that tries to sync the music with the animation as best as it can.
##
## This is a animation player, that tries to sync up the music and animation as best as it can,
## in case they get desynced.[br]
## This can happen due to a lag, stuff loading in,
## or other stuff that blocks the main thread.[br][br]
## It first tries to sync them back up again by adjusting
## the [member AnimationPlayer.speed_scale] or [member AudioStreamPlayer.pitch_scale] property
## [i](depending on [member catch_up_behaviour])[/i].[br]
## However, if the difference between them is too big,
## it will just snap audio playback back to the animation, because the audio continues to
## run, even if the main thread is blocked.[br][br]
## [b]Note:[/b] Catching up happens before the audio get's snapped,[br]
## so [member max_error] is only effective, if the difference between audio and animation
## is bigger than the [member max_catchup_threshold],
## or lower than the [method AudioServer.get_output_latency].
enum CatchupBehaviour {
NONE, ## Don't catch up slowsly.
SPEED_SCALE_ANIMATION, ## Adjusts the [member AnimationPlayer.speed_scale] property when desynced.
PITCH_SCALE_MUSIC ## Adjusts the [member AudioStreamPlayer.pitch_scale] property when desynced.
}
## The [AudioStreamPlayer], [AudioStreamPlayer2D]
## or [AudioStreamPlayer3D] the music should be played on.[br]
## [b]Should be set to the same player as defined in your animation.[/b]
@export_node_path("AudioStreamPlayer", "AudioStreamPlayer2D", "AudioStreamPlayer3D") @export_node_path("AudioStreamPlayer", "AudioStreamPlayer2D", "AudioStreamPlayer3D")
var audio_player: NodePath = ^"": set = set_audio_player var audio_player: NodePath = ^"": set = set_audio_player
## The index in the animation where the music is played from. ## The track-index in the animation,
## where the music is played from [i](should be of type [constant Animation.TYPE_AUDIO])[/i].
@export var music_anim_track_index: int = 0 @export var music_anim_track_index: int = 0
# The offset from 0.0 seconds when the music starts in the animation. # The offset from 0.0 seconds when the music starts in the animation.
#@export var music_anim_offset: float = 0.0 #@export var music_anim_offset: float = 0.0
@export var max_error: float = 0.02175 ## @deprecated: Actually reduntant, because this should always happen if above [member max_catchup_threshold].
@export var min_pitch_scale_range: float = 0.0015 ## The max difference audio and animation can have to each other,
@export var max_pitch_scale_range: float = 0.375 ## until the audio is snapped back to the animation.[br]
## However, [member catch_up_behaviour] takes priority, if this is set to value lower than that.
@export var max_error: float = 0.375 # 0.02175
@export_group("Catching up")
## Defines in what way we want to sync the audio and animation back up.
@export var catch_up_behaviour := CatchupBehaviour.SPEED_SCALE_ANIMATION
#@export var min_catchup_threshold: float = 0.0015
## Should be set to a value above- or equal to [member max_error].
@export var max_catchup_threshold: float = 0.375
@export_subgroup("Pitch Scale")
## The maximum pitch scale change the audio can be set to, when they are desynced.
@export var max_pitch_scale_difference: float = 1.01 @export var max_pitch_scale_difference: float = 1.01
## Helper variable in case you want to modify the [member AudioStreamPlayer.pitch_scale] property.
@export var custom_pitch_scale: float = 1.0 @export var custom_pitch_scale: float = 1.0
@export_subgroup("Speed Scale")
## The maximum speed scale change the animation can be set to, when they are desynced.
@export var max_speed_scale_difference: float = 1.15
## Helper variable in case you want to modify the [member AnimationPlayer.speed_scale] property.
@export var custom_speed_scale: float = 1.0
var _audio_player: Node var _audio_player: Node
var _timer := Timer.new() var _timer := Timer.new()
var _offset: float = 0.0 var _track_time: float = 0.0
func _ready() -> void: func _ready() -> void:
@ -28,6 +71,7 @@ func _ready() -> void:
set_audio_player(audio_player) set_audio_player(audio_player)
animation_started.connect(_anim_started) animation_started.connect(_anim_started)
animation_finished.connect(_anim_finished)
func _process(delta: float) -> void: func _process(delta: float) -> void:
@ -41,28 +85,39 @@ func _process(delta: float) -> void:
var latency: float = AudioServer.get_output_latency() var latency: float = AudioServer.get_output_latency()
var audio_position: float = _audio_player.get_playback_position() var audio_position: float = _audio_player.get_playback_position()
var anim_position: float = current_animation_position + AudioServer.get_time_since_last_mix() var anim_position: float = current_animation_position + AudioServer.get_time_since_last_mix()
var offset: float = anim_position - (audio_position + _offset) var difference: float = anim_position - (audio_position + _track_time)
var abs_offset: float = absf(offset) var abs_difference: float = absf(difference)
SPrint.print_msgf("Audio-Position: %s\nAnim-Position: %s" % [audio_position, anim_position]) SPrint.print_msgf("Audio-Position: %s\nAnim-Position: %s" % [audio_position, anim_position])
SPrint.print_msgf("Audio-Anim Diff: %s" % [audio_position - anim_position]) SPrint.print_msgf("Audio-Anim Diff: %s" % difference)#[audio_position - anim_position])
SPrint.print_msgf("ABS-Difference: %s" % abs_difference)
SPrint.print_msgf("Anim-Speed-Scale: %s" % [speed_scale])
SPrint.print_msgf("Audio-Pitch: %s\nLatency: %s" % [_audio_player.pitch_scale, latency]) SPrint.print_msgf("Audio-Pitch: %s\nLatency: %s" % [_audio_player.pitch_scale, latency])
if abs_offset < max_pitch_scale_range and abs_offset > latency:#min_pitch_scale_range: if (
var max_pitch_scale: float = max_pitch_scale_difference not catch_up_behaviour == CatchupBehaviour.NONE
var min_pitch_scale: float = custom_pitch_scale + (custom_pitch_scale - max_pitch_scale) and abs_difference < max_catchup_threshold
#and abs_difference > latency #min_catchup_threshold:
var pitch: float = custom_pitch_scale + offset + latency ):
pitch = clampf(pitch, min_pitch_scale, max_pitch_scale) match catch_up_behaviour:
pitch = lerp(_audio_player.pitch_scale, pitch, 1.0 - pow(0.5, delta)) CatchupBehaviour.SPEED_SCALE_ANIMATION:
_sync_anim_speed_scale(difference, delta)
_audio_player.pitch_scale = clampf(pitch, min_pitch_scale, max_pitch_scale) CatchupBehaviour.PITCH_SCALE_MUSIC:
elif abs_offset > max_error: _sync_music_pitch_scale(latency, difference, delta)
#_audio_player.seek(offset) elif abs_difference > max_error:
_audio_player.play((anim_position + _offset) - latency) #_audio_player.seek(difference)
_audio_player.play(anim_position + _track_time + latency)
SPrint.print_msg("Snapped Audio to: %s" % [_audio_player.get_playback_position()]) SPrint.print_msg("Snapped Audio to: %s" % [_audio_player.get_playback_position()])
else: else:
_audio_player.pitch_scale = custom_pitch_scale _audio_player.pitch_scale = custom_pitch_scale
speed_scale = custom_speed_scale
func set_audio_player(path: NodePath) -> void:
audio_player = path
var node: Node = get_node_or_null(path)
_audio_player = node if Utils.is_node_audioplayer(node) else null
#func play_timed( #func play_timed(
@ -77,11 +132,30 @@ func _process(delta: float) -> void:
#play_section_with_markers(anim_name, from_marker, end_marker, custom_blend, custom_speed, from_end) #play_section_with_markers(anim_name, from_marker, end_marker, custom_blend, custom_speed, from_end)
func set_audio_player(path: NodePath) -> void: func _sync_anim_speed_scale(difference: float, delta: float) -> void:
audio_player = path var max_speed_scale: float = max_speed_scale_difference
var min_speed_scale: float = custom_speed_scale + (custom_speed_scale - max_speed_scale)
var speed: float = custom_speed_scale - difference
var node: Node = get_node_or_null(path) speed = clampf(speed, min_speed_scale, max_speed_scale)
_audio_player = node if Utils.is_node_audioplayer(node) else null
if absf(difference) >= 0.05:
speed = move_toward(speed_scale, speed, delta * 0.01)
#else:
#speed = lerp(speed_scale, speed, 1.0 - pow(0.5, delta)) #0.001
speed_scale = speed#clampf(speed, min_speed_scale, max_speed_scale)
func _sync_music_pitch_scale(latency: float, difference: float, delta: float) -> void:
var max_pitch_scale: float = max_pitch_scale_difference
var min_pitch_scale: float = custom_pitch_scale + (custom_pitch_scale - max_pitch_scale)
var pitch: float = custom_pitch_scale + difference + latency
pitch = clampf(pitch, min_pitch_scale, max_pitch_scale)
pitch = lerp(_audio_player.pitch_scale, pitch, 1.0 - pow(0.5, delta))
_audio_player.pitch_scale = clampf(pitch, min_pitch_scale, max_pitch_scale)
func _anim_started(anim_name: StringName) -> void: func _anim_started(anim_name: StringName) -> void:
@ -92,8 +166,8 @@ func _anim_started(anim_name: StringName) -> void:
animation.track_set_enabled(music_anim_track_index, false) animation.track_set_enabled(music_anim_track_index, false)
_audio_player.stream = null _audio_player.stream = null
_offset = animation.track_get_key_time(music_anim_track_index, 0) _track_time = animation.track_get_key_time(music_anim_track_index, 0)
var duration: float = _offset - current_animation_position var duration: float = _track_time - current_animation_position
if duration > 0.0: if duration > 0.0:
_timer.start(duration) _timer.start(duration)
@ -105,6 +179,15 @@ func _anim_started(anim_name: StringName) -> void:
if not _signals.front() == _timer.timeout: if not _signals.front() == _timer.timeout:
return return
var latency: float = AudioServer.get_output_latency() - AudioServer.get_time_to_next_mix() #var latency: float = AudioServer.get_output_latency() - AudioServer.get_time_to_next_mix()
_audio_player.stream = animation.audio_track_get_key_stream(music_anim_track_index, 0) _audio_player.stream = animation.audio_track_get_key_stream(music_anim_track_index, 0)
_audio_player.play(current_animation_position - _offset - latency) _audio_player.play(current_animation_position - _track_time)# - latency)
func _anim_finished(_anim_name: StringName) -> void:
if Engine.is_editor_hint():
return
if is_instance_valid(_audio_player):
_audio_player.stop()
_audio_player.stream = null