diff --git a/Zennysoft.Game.Ma/src/Main.cs b/Zennysoft.Game.Ma/src/Main.cs index ded8a27b..e1407fa9 100644 --- a/Zennysoft.Game.Ma/src/Main.cs +++ b/Zennysoft.Game.Ma/src/Main.cs @@ -10,10 +10,10 @@ public partial class Main : Node { public override void _Ready() { - // If we don't need to run tests, we can just switch to the game scene. - CallDeferred("RunScene"); + // If we don't need to run tests, we can just switch to the game scene. + CallDeferred("RunScene"); } private void RunScene() - => GetTree().ChangeSceneToFile("res://src/app/App.tscn"); + => GetTree().ChangeSceneToFile("res://src/app/App.tscn"); } diff --git a/Zennysoft.Game.Ma/src/map/Map.cs b/Zennysoft.Game.Ma/src/map/Map.cs index df9d303a..0014d3fa 100644 --- a/Zennysoft.Game.Ma/src/map/Map.cs +++ b/Zennysoft.Game.Ma/src/map/Map.cs @@ -41,77 +41,77 @@ public partial class Map : Node3D, IMap public void OnResolved() { - MapChunk = new SaveChunk( - onSave: (chunk) => new MapData() - { - FloorScenes = FloorScenes, - }, - onLoad: (chunk, data) => - { - FloorScenes = data.FloorScenes; - } - ); + MapChunk = new SaveChunk( + onSave: (chunk) => new MapData() + { + FloorScenes = FloorScenes, + }, + onLoad: (chunk, data) => + { + FloorScenes = data.FloorScenes; + } + ); - GameChunk.AddChunk(MapChunk); + GameChunk.AddChunk(MapChunk); - this.Provide(); + this.Provide(); - InitializeMapData(); + InitializeMapData(); } public void InitializeMapData() { - ClearMap(); - FloorScenes = []; - foreach (var floor in _floors) - FloorScenes.Add(floor.ResourcePath); - CurrentFloorNumber.OnNext(0); + ClearMap(); + FloorScenes = []; + foreach (var floor in _floors) + FloorScenes.Add(floor.ResourcePath); + CurrentFloorNumber.OnNext(0); } public void LoadMap() { - LoadFloor(); - CurrentFloor.InitializeDungeon(); - var transform = GetPlayerSpawnPosition(); - Player.TeleportPlayer(transform); - CurrentFloor.FloorIsLoaded = true; + LoadFloor(); + CurrentFloor.InitializeDungeon(); + var transform = GetPlayerSpawnPosition(); + Player.TeleportPlayer(transform); + CurrentFloor.FloorIsLoaded = true; } private void ClearMap() { - CurrentFloor?.CallDeferred(MethodName.QueueFree, []); + CurrentFloor?.CallDeferred(MethodName.QueueFree, []); } public void SpawnNextFloor() { - ClearMap(); - LoadFloor(); - CurrentFloor.InitializeDungeon(); - var transform = GetPlayerSpawnPosition(); - Player.TeleportPlayer(transform); - CurrentFloor.FloorIsLoaded = true; - CurrentFloorNumber.OnNext(CurrentFloorNumber.Value + 1); + ClearMap(); + LoadFloor(); + CurrentFloor.InitializeDungeon(); + var transform = GetPlayerSpawnPosition(); + Player.TeleportPlayer(transform); + CurrentFloor.FloorIsLoaded = true; + CurrentFloorNumber.OnNext(CurrentFloorNumber.Value + 1); } public IDungeonRoom GetPlayersCurrentRoom() { - var rooms = CurrentFloor.Rooms; - var playersRoom = rooms.SingleOrDefault(x => x.IsPlayerInRoom); - return playersRoom; + var rooms = CurrentFloor.Rooms; + var playersRoom = rooms.SingleOrDefault(x => x.IsPlayerInRoom); + return playersRoom; } public Transform3D GetPlayerSpawnPosition() => CurrentFloor.GetPlayerSpawnPoint(); public void LoadFloor() { - ClearMap(); - var currentFloorScene = FloorScenes.First(); - var instantiator = new Instantiator(GetTree()); - var loadedScene = instantiator.LoadAndInstantiate(currentFloorScene); - AddChild(loadedScene); - CurrentFloor = (IDungeonFloor)loadedScene; - FloorScenes.Remove(currentFloorScene); - var transform = GetPlayerSpawnPosition(); - Player.TeleportPlayer(transform); + ClearMap(); + var currentFloorScene = FloorScenes.First(); + var instantiator = new Instantiator(GetTree()); + var loadedScene = instantiator.LoadAndInstantiate(currentFloorScene); + AddChild(loadedScene); + CurrentFloor = (IDungeonFloor)loadedScene; + FloorScenes.Remove(currentFloorScene); + var transform = GetPlayerSpawnPosition(); + Player.TeleportPlayer(transform); } } diff --git a/Zennysoft.Game.Ma/src/map/Map.tscn b/Zennysoft.Game.Ma/src/map/Map.tscn index 49810ce9..3f1795cf 100644 --- a/Zennysoft.Game.Ma/src/map/Map.tscn +++ b/Zennysoft.Game.Ma/src/map/Map.tscn @@ -2,7 +2,7 @@ [ext_resource type="Script" uid="uid://14e8mu48ed4" path="res://src/map/Map.cs" id="1_bw70o"] [ext_resource type="PackedScene" uid="uid://bh8wgd536f317" path="res://src/map/dungeon/debug_floors/DebugFloor03.tscn" id="2_0qcd2"] -[ext_resource type="PackedScene" uid="uid://bep0gljnsdmwl" path="res://src/map/dungeon/debug_floors/DebugFloor01.tscn" id="2_00xd7"] +[ext_resource type="PackedScene" uid="uid://dl6h1djc27ddl" path="res://src/map/dungeon/floors/Floor00.tscn" id="2_ne2vg"] [ext_resource type="PackedScene" uid="uid://8oiglrv8q818" path="res://src/map/dungeon/debug_floors/DebugFloor02.tscn" id="3_v14r0"] [ext_resource type="PackedScene" uid="uid://bpqm38kxonb35" path="res://src/map/dungeon/debug_floors/DebugFloor04.tscn" id="5_ne2vg"] [ext_resource type="PackedScene" uid="uid://5ja3qxn8h7iw" path="res://src/map/dungeon/rooms/Set A/15. Boss Floor A.tscn" id="6_abpbr"] @@ -13,6 +13,6 @@ [node name="Map" type="Node3D"] script = ExtResource("1_bw70o") -_floors = Array[PackedScene]([ExtResource("2_00xd7"), ExtResource("3_v14r0"), ExtResource("2_0qcd2"), ExtResource("5_ne2vg"), ExtResource("6_abpbr"), ExtResource("7_caf7v"), ExtResource("8_y74f3"), ExtResource("9_dbqu2"), ExtResource("10_xcm54")]) +_floors = Array[PackedScene]([ExtResource("2_ne2vg"), ExtResource("3_v14r0"), ExtResource("2_0qcd2"), ExtResource("5_ne2vg"), ExtResource("6_abpbr"), ExtResource("7_caf7v"), ExtResource("8_y74f3"), ExtResource("9_dbqu2"), ExtResource("10_xcm54")]) [node name="WorldEnvironment" type="WorldEnvironment" parent="."] diff --git a/Zennysoft.Game.Ma/src/map/dungeon/code/DungeonFloor.cs b/Zennysoft.Game.Ma/src/map/dungeon/code/DungeonFloor.cs index be31d097..ffb306f7 100644 --- a/Zennysoft.Game.Ma/src/map/dungeon/code/DungeonFloor.cs +++ b/Zennysoft.Game.Ma/src/map/dungeon/code/DungeonFloor.cs @@ -24,40 +24,40 @@ public partial class DungeonFloor : Node3D, IDungeonFloor public void InitializeDungeon() { - Rooms = []; - Rooms = FindAllDungeonRooms([.. GetChildren()], Rooms); - _playerSpawnPoint = RandomizePlayerSpawnPoint(); - var monsterRooms = Rooms.OfType(); - foreach (var room in monsterRooms) - room.SpawnEnemies(EnemyDatabase); - DungeonGenerator.EmitSignal("done_generating"); + Rooms = []; + Rooms = FindAllDungeonRooms([.. GetChildren()], Rooms); + _playerSpawnPoint = RandomizePlayerSpawnPoint(); + var monsterRooms = Rooms.OfType(); + foreach (var room in monsterRooms) + room.SpawnEnemies(EnemyDatabase); + DungeonGenerator.EmitSignal("done_generating"); } public Transform3D GetPlayerSpawnPoint() => new Transform3D(_playerSpawnPoint.Basis, new Vector3(_playerSpawnPoint.Origin.X, -1.75f, _playerSpawnPoint.Origin.Z)); private Transform3D RandomizePlayerSpawnPoint() { - var randomSpawnLocations = Rooms - .OfType() - .Select(x => x.PlayerSpawn); - var godotCollection = new Godot.Collections.Array(randomSpawnLocations); - var result = godotCollection.PickRandom(); - return result.GlobalTransform; + var randomSpawnLocations = Rooms + .OfType() + .Select(x => x.PlayerSpawn); + var godotCollection = new Godot.Collections.Array(randomSpawnLocations); + var result = godotCollection.PickRandom(); + return result.GlobalTransform; } private static ImmutableList FindAllDungeonRooms(List nodesToSearch, ImmutableList roomsFound) { - if (nodesToSearch.Count == 0) - return roomsFound; + if (nodesToSearch.Count == 0) + return roomsFound; - foreach (var node in nodesToSearch) - { - if (node is IDungeonRoom dungeonRoom) - roomsFound = roomsFound.Add(dungeonRoom); - if (node.HasSignal("dungeon_done_generating")) - node.EmitSignal("dungeon_done_generating"); - } + foreach (var node in nodesToSearch) + { + if (node is IDungeonRoom dungeonRoom) + roomsFound = roomsFound.Add(dungeonRoom); + if (node.HasSignal("dungeon_done_generating")) + node.EmitSignal("dungeon_done_generating"); + } - return FindAllDungeonRooms(nodesToSearch.SelectMany(x => x.GetChildren()).ToList(), roomsFound); + return FindAllDungeonRooms(nodesToSearch.SelectMany(x => x.GetChildren()).ToList(), roomsFound); } } diff --git a/Zennysoft.Game.Ma/src/map/dungeon/code/Floor0.cs b/Zennysoft.Game.Ma/src/map/dungeon/code/Floor0.cs index df6de76a..e8b30d2c 100644 --- a/Zennysoft.Game.Ma/src/map/dungeon/code/Floor0.cs +++ b/Zennysoft.Game.Ma/src/map/dungeon/code/Floor0.cs @@ -23,15 +23,15 @@ public partial class Floor0 : Node3D, IDungeonFloor public override void _Ready() { - Show(); - Exit.AreaEntered += Exit_AreaEntered; - FloorIsLoaded = true; + Show(); + Exit.AreaEntered += Exit_AreaEntered; + FloorIsLoaded = true; } private void Exit_AreaEntered(Area3D area) { - if (area.GetOwner() is IPlayer) - ExitReached(); + if (area.GetOwner() is IPlayer) + ExitReached(); } public void ExitReached() => Game.FloorExitReached(); diff --git a/Zennysoft.Game.Ma/src/map/dungeon/code/Overworld.cs b/Zennysoft.Game.Ma/src/map/dungeon/code/Overworld.cs index 25e7376f..19996b86 100644 --- a/Zennysoft.Game.Ma/src/map/dungeon/code/Overworld.cs +++ b/Zennysoft.Game.Ma/src/map/dungeon/code/Overworld.cs @@ -1,4 +1,4 @@ -using Chickensoft.AutoInject; +using Chickensoft.AutoInject; using Chickensoft.Introspection; using Godot; using System.Collections.Immutable; @@ -22,21 +22,21 @@ public partial class Overworld : Node3D, IDungeonFloor public void InitializeDungeon() { - Show(); - Exit.AreaEntered += Exit_AreaEntered; - FloorIsLoaded = true; + Show(); + Exit.AreaEntered += Exit_AreaEntered; + FloorIsLoaded = true; } private void Exit_AreaEntered(Area3D area) { - if (area.GetOwner() is IPlayer) - ExitReached(); + if (area.GetOwner() is IPlayer) + ExitReached(); } public void ExitReached() => Game.FloorExitReached(); public Transform3D GetPlayerSpawnPoint() { - return PlayerSpawnPoint.GlobalTransform; + return PlayerSpawnPoint.GlobalTransform; } } diff --git a/Zennysoft.Game.Ma/src/map/dungeon/floors/AltarSky.tres b/Zennysoft.Game.Ma/src/map/dungeon/floors/AltarSky.tres new file mode 100644 index 00000000..9980ae5e --- /dev/null +++ b/Zennysoft.Game.Ma/src/map/dungeon/floors/AltarSky.tres @@ -0,0 +1,25 @@ +[gd_resource type="VisualShader" load_steps=3 format=3 uid="uid://bl4n1pe2c1l07"] + +[sub_resource type="VisualShaderNodeInput" id="VisualShaderNodeInput_2ykon"] +input_name = "time" + +[sub_resource type="VisualShaderNodeTexture3D" id="VisualShaderNodeTexture3D_iqpgl"] + +[resource] +code = "shader_type sky; + + + +void sky() { +} +" +graph_offset = Vector2(-173.47, -138.662) +mode = 3 +flags/use_half_res_pass = false +flags/use_quarter_res_pass = false +flags/disable_fog = false +flags/use_debanding = false +nodes/sky/2/node = SubResource("VisualShaderNodeInput_2ykon") +nodes/sky/2/position = Vector2(320, 40) +nodes/sky/3/node = SubResource("VisualShaderNodeTexture3D_iqpgl") +nodes/sky/3/position = Vector2(20, 40) diff --git a/Zennysoft.Game.Ma/src/map/dungeon/floors/Floor00.tscn b/Zennysoft.Game.Ma/src/map/dungeon/floors/Floor00.tscn index b9401cd6..d78e2b33 100644 --- a/Zennysoft.Game.Ma/src/map/dungeon/floors/Floor00.tscn +++ b/Zennysoft.Game.Ma/src/map/dungeon/floors/Floor00.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=73 format=4 uid="uid://dl6h1djc27ddl"] +[gd_scene load_steps=77 format=4 uid="uid://dl6h1djc27ddl"] [ext_resource type="Script" uid="uid://c1nhqlem1ew3m" path="res://src/map/dungeon/code/Floor0.cs" id="1_db2o3"] [ext_resource type="Texture2D" uid="uid://b27ksiyfefb33" path="res://src/map/dungeon/models/Set A/02. Altar/02_ALTAR_FLOOR_ZER0_VER_outside_desert.png" id="2_xh2ej"] @@ -17,6 +17,7 @@ [ext_resource type="Texture2D" uid="uid://cururtxtgylxf" path="res://src/map/dungeon/models/Set A/02. Altar/02_ALTAR_FLOOR_ZER0_VER_COLUMN.jpg" id="15_ojbcg"] [ext_resource type="PackedScene" uid="uid://db206brufi83s" path="res://src/items/weapons/Weapon.tscn" id="16_aqomv"] [ext_resource type="PackedScene" uid="uid://1fl6s352e2ej" path="res://src/items/throwable/ThrowableItem.tscn" id="16_db2o3"] +[ext_resource type="VideoStream" uid="uid://cms0sqekyx4pf" path="res://src/video/Sky Video.ogv" id="16_ojbcg"] [ext_resource type="Resource" uid="uid://cfhwlpa0d7wb4" path="res://src/items/weapons/resources/MysteryRod.tres" id="17_db2o3"] [ext_resource type="Resource" uid="uid://bph8c6by4s047" path="res://src/items/throwable/resources/GeomanticDice.tres" id="18_ntxe5"] [ext_resource type="PackedScene" uid="uid://b07srt3lckt4e" path="res://src/items/accessory/Accessory.tscn" id="18_qlp0t"] @@ -77,8 +78,30 @@ _surfaces = [{ [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_8ib2a"] resource_name = "DESERT" cull_mode = 2 -shading_mode = 0 +diffuse_mode = 2 albedo_texture = ExtResource("2_xh2ej") +albedo_texture_force_srgb = true +metallic_specular = 0.42 +emission = Color(1, 1, 1, 1) +emission_energy_multiplier = 0.06 + +[sub_resource type="ArrayMesh" id="ArrayMesh_amvb3"] +resource_name = "02_ALTAR_FLOOR_ZER0_VER_1_Plane" +_surfaces = [{ +"aabb": AABB(-1, 0, -1, 2, 0.00341119, 2), +"attribute_data": PackedByteArray("7bDJEv//yRL//9th///tsO2w////////22HJEskS22HJEskSyRLtsNth///JEv//7bDbYWSJZIk3mGSJN5hGk4KUVY5kidth22FkiWSJKJ1Gk0aTKJ1Vjr6VVY5Gk2SJgpTci4KUGY1Gk9yL7bBkiSidZIntsCid7bDtsCid7bAonUaTKJ0onUaTKJ1kie2w22HtsGSJRpPbYdthRpNVjr6VZIlGkxmNvpXcizeY3Is3mFWOvpUZjQ=="), +"format": 34896613399, +"index_count": 234, +"index_data": PackedByteArray("DAABAAIADAAAAAEAAwAMAAIAEQAAAAwAEQAGAAAAAwAbAAwAHAAMABsAGwADAB0AHQAcABsADgAMABwADgARAAwAHQAVABwAFQAOABwAHQADAB4ABAAeAAMABAADAAUAHwAdAB4ABAAfAB4AFQAdACAAIAAdACEAHwAhAB0ADwAVACAAIQAPACAAHwAiACEAFAAhACIAIQAUAA8AHwATACIAEwAUACIABAAjAB8AEwAfACMAIwAEACQAJAAEAAoACwAkAAoACwAJACQABwAkAAkAEgAjACQAJAAHABIAEgATACMAEwAlABQAEwASACUADQAUACUAJQASAA0AEgAHACYABwAGACYABwAIAAYABgARACYAEgAmABEAEgARAA0ADQAnABQAEQAXAA0AJwAPABQAEQAOABcAGgANABcAJwANABoAFwAOACgAJwAaACkAFwAYABoAKQAaABgAGAAXACgAJwApABkAKQAYABkAGAAoACoAKgAoAA4AGQAYACoAKgAOACsAFQArAA4AKwAVACwALAAqACsADwAsABUAGQAqAC0ALAAtACoADwAWACwALQAsABYADwAQABYAEAAtABYAEAAZAC0AEAAPACcAJwAZABAA"), +"lods": [0.00220678, PackedByteArray("DAABAAIADAAAAAEAAwAMAAIAEQAAAAwAEQAGAAAABwAIAAYAEgAHAAYAEgAGABEACQAHABIACwAJAAoACQAEAAoAEgAEAAkABAADAAUAEgATAAQAEwADAAQAEwASABQAAwATAA8AEwAUAA8AAwAPABUAAwAVAAwADgAMABUADgARAAwADwAWABUADgAVABYAEAAPABQADwAQABYAFAASAA0AEgARAA0ADQAQABQAEQAOABcAEQAXAA0AFgAYAA4AGAAXAA4AEAAZABYAGQAYABYAEAANABoAEAAaABkAGgANABcAGgAYABkAFwAYABoA"), 0.00789655, PackedByteArray("DAABAAIADAAAAAEAAwAMAAIADQAAAAwADQAGAAAABwAIAAYADQAHAAYACQAHAA0ACwAJAAoACQAEAAoADQAEAAkABAADAAUADgANAAwADwADAAQAAwAPAAwADQAPAAQADgAMAA8ADQAQAA8ADgAPABAAEAANAA4A"), 0.0511784, PackedByteArray("AAABAAIAAwAAAAIAAwAEAAAABAADAAUABAAGAAAABAAHAAYABwAIAAYACQAHAAQACQAEAAoACwAJAAoA")], +"material": SubResource("StandardMaterial3D_8ib2a"), +"name": "DESERT", +"primitive": 3, +"uv_scale": Vector4(13.6266, 13.6266, 0, 0), +"vertex_count": 46, +"vertex_data": PackedByteArray("qaoAAAAA/7///wAAAAD/v///AABVVf+///8AAKmq/7+pqgAA////v///AAD///+/VVUAAAAA/78AAAAAVVX/vwAAAAAAAP+/AAAAAKmq/79VVQAA////vwAAAAD///+/qaoAAFVVBcD/fwAA/3/Pv/+PAAD/f1O//48AAKqK/7//iwAAVIXDvP9/AABVVQXAVVUAAP9//7//fwAAVJX/v6qKAACqisq/VJUAAFSF/79UjQAAVIXpvqqK////f3u//4v//6qCbb3/iyFm/4PquqqK//+qgj2+qaoAAP9/BcBUlQAA/38KwKmqAABUlf+/qaoAAKmq/79UlQAAqar/v1SVAACqiv+/VJUAAFSV/7+qigAAVJX/v/9/AACpqv+/VVUAAKmq/7//fwAAqorKv1VVAABVVf+/qooAAFSFM71Ujf///3/8vqqK////gzu8VI2FJ6qC9L3/jwAAqoIsv/+PAABUhd2/VI2nLf+D2r3///9/////f////3////9/////f////3////9/////f////3////9/////f////3////9/tv+SgPX8gX7///9/vfvUff///3////9/////f7X/koD///9/Lv4Tf1v+LX+l8yt6bPNfetv7y33///9/////f////3/+//9//v//f////3////9/////f////3////9/tf+SgP///3/N/eh+zfqPfYP6AX489ex6Y/wxflX/qn82+CB8") +}] +blend_shape_mode = 0 [sub_resource type="ArrayMesh" id="ArrayMesh_0f433"] _surfaces = [{ @@ -117,7 +140,7 @@ shadow_mesh = SubResource("ArrayMesh_0f433") [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_24ewl"] resource_name = "Rock" cull_mode = 2 -shading_mode = 0 +shading_mode = 2 albedo_texture = ExtResource("3_aqomv") texture_filter = 2 @@ -158,20 +181,18 @@ shadow_mesh = SubResource("ArrayMesh_jln5a") [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_rwwtw"] resource_name = "CONCRETE" cull_mode = 2 -shading_mode = 0 +diffuse_mode = 2 albedo_texture = ExtResource("4_db2o3") [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_yp820"] resource_name = "DARK BRICK" cull_mode = 2 -shading_mode = 0 albedo_texture = ExtResource("5_ntxe5") texture_filter = 2 [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_egu5j"] resource_name = "INSIDE STONE" cull_mode = 2 -shading_mode = 0 albedo_texture = ExtResource("6_qlp0t") texture_filter = 2 @@ -342,13 +363,13 @@ shadow_mesh = SubResource("ArrayMesh_g6xcu") [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_uu5bs"] resource_name = "Marble" cull_mode = 2 -shading_mode = 0 +shading_mode = 2 albedo_texture = ExtResource("7_7d58j") [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_7difi"] resource_name = "Water" cull_mode = 2 -shading_mode = 0 +shading_mode = 2 albedo_texture = ExtResource("8_ofv7i") [sub_resource type="ArrayMesh" id="ArrayMesh_uspg0"] @@ -410,6 +431,7 @@ shadow_mesh = SubResource("ArrayMesh_uspg0") [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_edn0q"] resource_name = "COLUMN METAL" cull_mode = 2 +shading_mode = 2 albedo_texture = ExtResource("9_mi7rk") [sub_resource type="ArrayMesh" id="ArrayMesh_w5bbk"] @@ -446,74 +468,40 @@ _surfaces = [{ blend_shape_mode = 0 shadow_mesh = SubResource("ArrayMesh_w5bbk") -[sub_resource type="ArrayMesh" id="ArrayMesh_5fhsr"] -_surfaces = [{ -"aabb": AABB(-1, 0, -1, 2, 0.00341119, 2), -"format": 34896613377, -"index_count": 234, -"index_data": PackedByteArray("DAABAAIADAAAAAEAAwAMAAIAEQAAAAwAEQAGAAAAAwAbAAwAHAAMABsAGwADAB0AHQAcABsADgAMABwADgARAAwAHQAVABwAFQAOABwAHQADAB4ABAAeAAMABAADAAUAHwAdAB4ABAAfAB4AFQAdACAAIAAdACEAHwAhAB0ADwAVACAAIQAPACAAHwAiACEAFAAhACIAIQAUAA8AHwATACIAEwAUACIABAAjAB8AEwAfACMAIwAEACQAJAAEAAoACwAkAAoACwAJACQABwAkAAkAEgAjACQAJAAHABIAEgATACMAEwAlABQAEwASACUADQAUACUAJQASAA0AEgAHACYABwAGACYABwAIAAYABgARACYAEgAmABEAEgARAA0ADQAnABQAEQAXAA0AJwAPABQAEQAOABcAGgANABcAJwANABoAFwAOACgAJwAaACkAFwAYABoAKQAaABgAGAAXACgAJwApABkAKQAYABkAGAAoACoAKgAoAA4AGQAYACoAKgAOACsAFQArAA4AKwAVACwALAAqACsADwAsABUAGQAqAC0ALAAtACoADwAWACwALQAsABYADwAQABYAEAAtABYAEAAZAC0AEAAPACcAJwAZABAA"), -"lods": [0.00220678, PackedByteArray("DAABAAIADAAAAAEAAwAMAAIAEQAAAAwAEQAGAAAABwAIAAYAEgAHAAYAEgAGABEACQAHABIACwAJAAoACQAEAAoAEgAEAAkABAADAAUAEgATAAQAEwADAAQAEwASABQAAwATAA8AEwAUAA8AAwAPABUAAwAVAAwADgAMABUADgARAAwADwAWABUADgAVABYAEAAPABQADwAQABYAFAASAA0AEgARAA0ADQAQABQAEQAOABcAEQAXAA0AFgAYAA4AGAAXAA4AEAAZABYAGQAYABYAEAANABoAEAAaABkAGgANABcAGgAYABkAFwAYABoA"), 0.00789655, PackedByteArray("DAABAAIADAAAAAEAAwAMAAIADQAAAAwADQAGAAAABwAIAAYADQAHAAYACQAHAA0ACwAJAAoACQAEAAoADQAEAAkABAADAAUADgANAAwADwADAAQAAwAPAAwADQAPAAQADgAMAA8ADQAQAA8ADgAPABAAEAANAA4A"), 0.0511784, PackedByteArray("AAABAAIAAwAAAAIAAwAEAAAABAADAAUABAAGAAAABAAHAAYABwAIAAYACQAHAAQACQAEAAoACwAJAAoA")], -"name": "DESERT", -"primitive": 3, -"uv_scale": Vector4(0, 0, 0, 0), -"vertex_count": 46, -"vertex_data": PackedByteArray("qaoAAAAAAAD//wAAAAAAAP//AABVVQAA//8AAKmqAACpqgAA//8AAP//AAD//wAAVVUAAAAAAAAAAAAAVVUAAAAAAAAAAAAAAAAAAKmqAABVVQAA//8AAAAAAAD//wAAqaoAAFVVAAD/fwAA/38AAP+PAAD/fwAA/48AAKqKAAD/iwAAVIUAAP9/AABVVQAAVVUAAP9/AAD/fwAAVJUAAKqKAACqigAAVJUAAFSFAABUjQAAVIUAAKqK////fwAA/4v//6qCAAD/iyFm/4MAAKqK//+qggAAqaoAAP9/AABUlQAA/38AAKmqAABUlQAAqaoAAKmqAABUlQAAqaoAAFSVAACqigAAVJUAAFSVAACqigAAVJUAAP9/AACpqgAAVVUAAKmqAAD/fwAAqooAAFVVAABVVQAAqooAAFSFAABUjf///38AAKqK////gwAAVI2FJ6qCAAD/jwAAqoIAAP+PAABUhQAAVI2nLf+DAAA=") -}] -blend_shape_mode = 0 - -[sub_resource type="ArrayMesh" id="ArrayMesh_amvb3"] -resource_name = "02_ALTAR_FLOOR_ZER0_VER_1_Plane" -_surfaces = [{ -"aabb": AABB(-1, 0, -1, 2, 0.00341119, 2), -"attribute_data": PackedByteArray("7bDJEv//yRL//9th///tsO2w////////22HJEskS22HJEskSyRLtsNth///JEv//7bDbYWSJZIk3mGSJN5hGk4KUVY5kidth22FkiWSJKJ1Gk0aTKJ1Vjr6VVY5Gk2SJgpTci4KUGY1Gk9yL7bBkiSidZIntsCid7bDtsCid7bAonUaTKJ0onUaTKJ1kie2w22HtsGSJRpPbYdthRpNVjr6VZIlGkxmNvpXcizeY3Is3mFWOvpUZjQ=="), -"format": 34896613399, -"index_count": 234, -"index_data": PackedByteArray("DAABAAIADAAAAAEAAwAMAAIAEQAAAAwAEQAGAAAAAwAbAAwAHAAMABsAGwADAB0AHQAcABsADgAMABwADgARAAwAHQAVABwAFQAOABwAHQADAB4ABAAeAAMABAADAAUAHwAdAB4ABAAfAB4AFQAdACAAIAAdACEAHwAhAB0ADwAVACAAIQAPACAAHwAiACEAFAAhACIAIQAUAA8AHwATACIAEwAUACIABAAjAB8AEwAfACMAIwAEACQAJAAEAAoACwAkAAoACwAJACQABwAkAAkAEgAjACQAJAAHABIAEgATACMAEwAlABQAEwASACUADQAUACUAJQASAA0AEgAHACYABwAGACYABwAIAAYABgARACYAEgAmABEAEgARAA0ADQAnABQAEQAXAA0AJwAPABQAEQAOABcAGgANABcAJwANABoAFwAOACgAJwAaACkAFwAYABoAKQAaABgAGAAXACgAJwApABkAKQAYABkAGAAoACoAKgAoAA4AGQAYACoAKgAOACsAFQArAA4AKwAVACwALAAqACsADwAsABUAGQAqAC0ALAAtACoADwAWACwALQAsABYADwAQABYAEAAtABYAEAAZAC0AEAAPACcAJwAZABAA"), -"lods": [0.00220678, PackedByteArray("DAABAAIADAAAAAEAAwAMAAIAEQAAAAwAEQAGAAAABwAIAAYAEgAHAAYAEgAGABEACQAHABIACwAJAAoACQAEAAoAEgAEAAkABAADAAUAEgATAAQAEwADAAQAEwASABQAAwATAA8AEwAUAA8AAwAPABUAAwAVAAwADgAMABUADgARAAwADwAWABUADgAVABYAEAAPABQADwAQABYAFAASAA0AEgARAA0ADQAQABQAEQAOABcAEQAXAA0AFgAYAA4AGAAXAA4AEAAZABYAGQAYABYAEAANABoAEAAaABkAGgANABcAGgAYABkAFwAYABoA"), 0.00789655, PackedByteArray("DAABAAIADAAAAAEAAwAMAAIADQAAAAwADQAGAAAABwAIAAYADQAHAAYACQAHAA0ACwAJAAoACQAEAAoADQAEAAkABAADAAUADgANAAwADwADAAQAAwAPAAwADQAPAAQADgAMAA8ADQAQAA8ADgAPABAAEAANAA4A"), 0.0511784, PackedByteArray("AAABAAIAAwAAAAIAAwAEAAAABAADAAUABAAGAAAABAAHAAYABwAIAAYACQAHAAQACQAEAAoACwAJAAoA")], -"material": SubResource("StandardMaterial3D_8ib2a"), -"name": "DESERT", -"primitive": 3, -"uv_scale": Vector4(13.6266, 13.6266, 0, 0), -"vertex_count": 46, -"vertex_data": PackedByteArray("qaoAAAAA/7///wAAAAD/v///AABVVf+///8AAKmq/7+pqgAA////v///AAD///+/VVUAAAAA/78AAAAAVVX/vwAAAAAAAP+/AAAAAKmq/79VVQAA////vwAAAAD///+/qaoAAFVVBcD/fwAA/3/Pv/+PAAD/f1O//48AAKqK/7//iwAAVIXDvP9/AABVVQXAVVUAAP9//7//fwAAVJX/v6qKAACqisq/VJUAAFSF/79UjQAAVIXpvqqK////f3u//4v//6qCbb3/iyFm/4PquqqK//+qgj2+qaoAAP9/BcBUlQAA/38KwKmqAABUlf+/qaoAAKmq/79UlQAAqar/v1SVAACqiv+/VJUAAFSV/7+qigAAVJX/v/9/AACpqv+/VVUAAKmq/7//fwAAqorKv1VVAABVVf+/qooAAFSFM71Ujf///3/8vqqK////gzu8VI2FJ6qC9L3/jwAAqoIsv/+PAABUhd2/VI2nLf+D2r3///9/////f////3////9/////f////3////9/////f////3////9/////f////3////9/tv+SgPX8gX7///9/vfvUff///3////9/////f7X/koD///9/Lv4Tf1v+LX+l8yt6bPNfetv7y33///9/////f////3/+//9//v//f////3////9/////f////3////9/tf+SgP///3/N/eh+zfqPfYP6AX489ex6Y/wxflX/qn82+CB8") -}] -blend_shape_mode = 0 -shadow_mesh = SubResource("ArrayMesh_5fhsr") - [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_mg06m"] resource_name = "WORKED STONE OUTSIDE" cull_mode = 2 -shading_mode = 0 +shading_mode = 2 albedo_texture = ExtResource("10_he1ou") [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_wjk0n"] resource_name = "HAND TILE" cull_mode = 2 -shading_mode = 0 +shading_mode = 2 albedo_texture = ExtResource("11_rufnk") [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_fguy3"] resource_name = "EFFED TILES" cull_mode = 2 -shading_mode = 0 +shading_mode = 2 albedo_texture = ExtResource("12_t3xa0") [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_l5xve"] resource_name = "HAND CYCLE" cull_mode = 2 -shading_mode = 0 +shading_mode = 2 albedo_texture = ExtResource("13_1i307") [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_lmcc7"] resource_name = "TILE 3" cull_mode = 2 -shading_mode = 0 +shading_mode = 2 albedo_texture = ExtResource("14_qqc7i") [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_q34k1"] resource_name = "COLUMN METAL 2" cull_mode = 2 -shading_mode = 0 +shading_mode = 2 albedo_texture = ExtResource("15_ojbcg") texture_filter = 2 @@ -732,6 +720,51 @@ _data = { &"GROUNDAction": SubResource("Animation_xgmyp") } +[sub_resource type="ViewportTexture" id="ViewportTexture_6iwuh"] +viewport_path = NodePath("Model/02_ALTAR_FLOOR_ZER0_VER_1/SubViewport") + +[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_gbv4o"] +resource_local_to_scene = true +shading_mode = 0 +albedo_texture = SubResource("ViewportTexture_6iwuh") +albedo_texture_force_srgb = true + +[sub_resource type="PlaneMesh" id="PlaneMesh_c86uk"] + +[sub_resource type="Environment" id="Environment_ojbcg"] +background_mode = 1 +background_energy_multiplier = 0.73 +background_camera_feed_id = 3 +ambient_light_source = 2 +ambient_light_color = Color(1, 1, 1, 1) +ambient_light_energy = 0.16 +reflected_light_source = 1 +ssr_fade_in = 6.11789 +ssr_fade_out = 2.92817 +ssr_depth_tolerance = 6.61 +ssao_radius = 0.01 +ssao_intensity = 0.02 +ssil_radius = 6.3 +sdfgi_use_occlusion = true +sdfgi_bounce_feedback = 0.77 +sdfgi_min_cell_size = 0.01 +sdfgi_cascade0_distance = 0.64 +sdfgi_max_distance = 10.24 +glow_enabled = true +glow_intensity = 0.84 +glow_strength = 0.63 +glow_bloom = 1.0 +glow_blend_mode = 1 +glow_hdr_threshold = 1.1 +glow_hdr_scale = 1.92 +glow_map_strength = 1.0 +fog_light_color = Color(1, 1, 1, 1) +fog_light_energy = 0.1 +fog_sun_scatter = 1.0 +fog_density = 0.0 +volumetric_fog_density = 0.0065 +volumetric_fog_emission_energy = 0.0 + [sub_resource type="ConcavePolygonShape3D" id="ConcavePolygonShape3D_aqomv"] data = PackedVector3Array(-3.3925, -0.4692, 0.404, -3.3925, 8.7018, 0.404, -2.2486, 8.7018, -2.8922, -3.3925, -0.4692, 0.404, -2.2486, 8.7018, -2.8922, -2.2486, -0.4692, -2.8922, -0.1133, -0.4692, -2.7502, -0.1133, 8.7018, -2.7502, 1.7984, 8.7018, -2.5918, -0.1133, -0.4692, -2.7502, 1.7984, 8.7018, -2.5918, 1.7984, -1.3386, -2.5918, 1.7984, -1.3386, -2.5918, 1.7984, 8.7018, -2.5918, 3.6849, 8.7018, 1.9957, 1.7984, -1.3386, -2.5918, 3.6849, 8.7018, 1.9957, 3.6849, -1.3386, 1.9957, 1.5401, -0.4692, 3.0749, 1.5401, 8.7018, 3.0749, -3.3925, 8.7018, 0.404, 1.5401, -0.4692, 3.0749, -3.3925, 8.7018, 0.404, -3.3925, -0.4692, 0.404, 3.6849, -1.3386, 1.9957, 3.6849, 8.7018, 1.9957, 1.5401, 8.7018, 3.0749, 3.6849, -1.3386, 1.9957, 1.5401, 8.7018, 3.0749, 1.5401, -0.4692, 3.0749, -2.2486, -0.4692, -2.8922, -2.2486, 8.7018, -2.8922, -0.1133, 8.7018, -2.7502, -2.2486, -0.4692, -2.8922, -0.1133, 8.7018, -2.7502, -0.1133, -0.4692, -2.7502, 28.9379, 7.7244, 15.9431, 28.9379, -1.3923, 15.9431, 48.2187, -1.3923, 15.9401, 28.9379, 7.7244, 15.9431, 48.2187, -1.3923, 15.9401, 48.2187, 7.7244, 15.9401, 48.2187, 7.7244, 15.9401, 48.2187, -1.3923, 15.9401, 99.6775, -1.3923, 15.9401, 48.2187, 7.7244, 15.9401, 99.6775, -1.3923, 15.9401, 99.6775, 7.7244, 15.9401, 99.6775, 7.7244, 15.9401, 99.6775, -1.3923, 15.9401, 106.285, -1.3923, 15.9255, 99.6775, 7.7244, 15.9401, 106.285, -1.3923, 15.9255, 106.285, 7.6793, 15.9255, 106.285, -1.3923, 15.9255, 106.285, 7.6793, 7.4851, 106.285, 7.6793, 15.9255, 106.285, -1.3923, 15.9255, 106.285, -1.3923, 7.4851, 106.285, 7.6793, 7.4851, 99.6775, -1.3923, 7.4705, 106.285, 7.6793, 7.4851, 106.285, -1.3923, 7.4851, 99.6775, -1.3923, 7.4705, 99.6775, 7.7244, 7.4705, 106.285, 7.6793, 7.4851, 48.2187, -1.3923, 7.4705, 99.6775, 7.7244, 7.4705, 99.6775, -1.3923, 7.4705, 48.2187, -1.3923, 7.4705, 48.2187, 7.7244, 7.4705, 99.6775, 7.7244, 7.4705, 28.9655, -1.3923, 7.3823, 48.2187, 7.7244, 7.4705, 48.2187, -1.3923, 7.4705, 28.9655, -1.3923, 7.3823, 28.9655, 7.7244, 7.3823, 48.2187, 7.7244, 7.4705, 15.064, -1.7563, 24.808, 15.96, 7.4601, 24.7014, 12.7212, 7.5296, 28.7235, 15.064, -1.7563, 24.808, 12.7212, 7.5296, 28.7235, 11.7712, -1.7681, 29.3285, 11.7712, -1.7681, 29.3285, 12.7212, 7.5296, 28.7235, 11.4389, 7.7088, 33.2736, 11.7712, -1.7681, 29.3285, 11.4389, 7.7088, 33.2736, 11.7145, -2.7115, 33.2538, 2.6504, -1.3923, 33.0209, 2.6504, 7.7244, 33.0209, -1.1454, 7.7244, 31.7354, 2.6504, -1.3923, 33.0209, -1.1454, 7.7244, 31.7354, -1.1454, -1.3923, 31.7354, 7.4643, -1.3923, 33.5284, 2.6504, 7.7244, 33.0209, 2.6504, -1.3923, 33.0209, -1.1454, -1.3923, 31.7354, -1.1454, 7.7244, 31.7354, -4.8429, 7.7244, 29.6798, 7.4643, -1.3923, 33.5284, 7.4643, 7.7244, 33.5284, 2.6504, 7.7244, 33.0209, 11.7145, -2.7115, 33.2538, 7.4643, 7.7244, 33.5284, 7.4643, -1.3923, 33.5284, 11.7145, -2.7115, 33.2538, 11.4389, 7.7088, 33.2736, 7.4643, 7.7244, 33.5284, -1.1454, -1.3923, 31.7354, -4.8429, 7.7244, 29.6798, -4.8429, -1.3923, 29.6798, -4.8429, -1.3923, 29.6798, -4.8429, 7.7244, 29.6798, -7.902, 7.7244, 27.0575, -4.8429, -1.3923, 29.6798, -7.902, 7.7244, 27.0575, -7.902, -1.3923, 27.0575, -7.902, -1.3923, 27.0575, -7.902, 7.7244, 27.0575, -10.8759, 7.7244, 23.6101, -7.902, -1.3923, 27.0575, -10.8759, 7.7244, 23.6101, -10.8759, -1.3923, 23.6101, -10.8759, -1.3923, 23.6101, -10.8759, 7.7244, 23.6101, -12.8775, 7.7244, 19.9487, -10.8759, -1.3923, 23.6101, -12.8775, 7.7244, 19.9487, -12.8775, -1.3923, 19.9487, -12.8775, -1.3923, 19.9487, -12.8775, 7.7244, 19.9487, -14.1277, 7.7244, 15.8222, -12.8775, -1.3923, 19.9487, -14.1277, 7.7244, 15.8222, -14.1277, -1.3923, 15.8222, -14.1277, -1.3923, 15.8222, -14.1277, 7.7244, 15.8222, -14.5688, 7.7244, 11.5878, -14.1277, -1.3923, 15.8222, -14.5688, 7.7244, 11.5878, -14.5688, -1.3923, 11.5878, -14.5688, -1.3923, 11.5878, -14.5688, 7.7244, 11.5878, -14.0407, 7.7244, 7.2613, -14.5688, -1.3923, 11.5878, -14.0407, 7.7244, 7.2613, -14.0407, -1.3923, 7.2613, -14.0407, -1.3923, 7.2613, -14.0407, 7.7244, 7.2613, -12.7306, 7.7244, 3.2389, -14.0407, -1.3923, 7.2613, -12.7306, 7.7244, 3.2389, -12.7306, -1.3923, 3.2389, -12.7306, -1.3923, 3.2389, -12.7306, 7.7244, 3.2389, -10.6617, 7.7244, -0.5608, -12.7306, -1.3923, 3.2389, -10.6617, 7.7244, -0.5608, -10.6617, -1.3923, -0.5608, -10.6617, -1.3923, -0.5608, -10.6617, 7.7244, -0.5608, -8.034, 7.7244, -3.8647, -10.6617, -1.3923, -0.5608, -8.034, 7.7244, -3.8647, -8.034, -1.3923, -3.8647, -8.034, -1.3923, -3.8647, -8.034, 7.7244, -3.8647, -4.7388, 7.7244, -6.5357, -8.034, -1.3923, -3.8647, -4.7388, 7.7244, -6.5357, -4.7388, -2.7124, -6.5357, -4.7388, -2.7124, -6.5357, -4.7388, 7.7244, -6.5357, -0.9806, 7.7244, -8.5873, -4.7388, -2.7124, -6.5357, -0.9806, 7.7244, -8.5873, -0.9806, -2.2617, -8.5873, -0.9806, -2.2617, -8.5873, -0.9806, 7.7244, -8.5873, 3.078, 7.7244, -9.8366, -0.9806, -2.2617, -8.5873, 3.078, 7.7244, -9.8366, 3.078, -1.3923, -9.8366, 3.078, -1.3923, -9.8366, 3.078, 7.7244, -9.8366, 7.4609, 7.7244, -10.258, 3.078, -1.3923, -9.8366, 7.4609, 7.7244, -10.258, 7.4609, -1.3923, -10.258, 7.4609, -1.3923, -10.258, 7.4609, 7.7244, -10.258, 11.6687, 7.7244, -9.8342, 7.4609, -1.3923, -10.258, 11.6687, 7.7244, -9.8342, 11.6687, -1.3923, -9.8342, 11.6687, -1.3923, -9.8342, 11.6687, 7.7244, -9.8342, 15.9042, 7.7244, -8.4866, 11.6687, -1.3923, -9.8342, 15.9042, 7.7244, -8.4866, 15.9042, -1.3923, -8.4866, 15.9042, -1.3923, -8.4866, 15.9042, 7.7244, -8.4866, 19.6803, 7.7244, -6.5368, 15.9042, -1.3923, -8.4866, 19.6803, 7.7244, -6.5368, 19.6803, -1.3923, -6.5368, 19.6803, -1.3923, -6.5368, 19.6803, 7.7244, -6.5368, 22.9495, 7.7244, -3.829, 19.6803, -1.3923, -6.5368, 22.9495, 7.7244, -3.829, 22.9495, -1.3923, -3.829, 22.9495, -1.3923, -3.829, 22.9495, 7.7244, -3.829, 25.7208, 7.7244, -0.4618, 22.9495, -1.3923, -3.829, 25.7208, 7.7244, -0.4618, 25.7207, -1.3923, -0.4618, 25.7207, -1.3923, -0.4618, 25.7208, 7.7244, -0.4618, 27.7178, 7.7244, 3.3401, 25.7207, -1.3923, -0.4618, 27.7178, 7.7244, 3.3401, 27.7178, -1.3923, 3.3401, 27.7178, -1.3923, 3.3401, 27.7178, 7.7244, 3.3401, 28.9655, 7.7244, 7.3823, 27.7178, -1.3923, 3.3401, 28.9655, 7.7244, 7.3823, 28.9655, -1.3923, 7.3823, 28.9379, -1.3923, 15.9431, 28.9379, 7.7244, 15.9431, 27.7153, 7.7244, 20.2713, 28.9379, -1.3923, 15.9431, 27.7153, 7.7244, 20.2713, 27.7153, -1.3923, 20.2713, 27.7153, -1.3923, 20.2713, 27.7153, 7.7244, 20.2713, 25.5887, 7.7244, 24.1355, 27.7153, -1.3923, 20.2713, 25.5887, 7.7244, 24.1355, 25.5887, -1.3923, 24.1355, 25.5887, -1.3923, 24.1355, 25.5887, 7.7244, 24.1355, 23.0552, 7.7244, 27.2603, 25.5887, -1.3923, 24.1355, 23.0552, 7.7244, 27.2603, 23.0552, -1.3923, 27.2603, 23.0552, -1.3923, 27.2603, 23.0552, 7.7244, 27.2603, 18.7068, 7.7014, 26.4664, 23.0552, -1.3923, 27.2603, 18.7068, 7.7014, 26.4664, 18.7096, -1.9203, 26.809, 18.7096, -1.9203, 26.809, 18.7068, 7.7014, 26.4664, 15.96, 7.4601, 24.7014, 18.7096, -1.9203, 26.809, 15.96, 7.4601, 24.7014, 15.064, -1.7563, 24.808) @@ -771,6 +804,12 @@ skeleton = NodePath("") [node name="MeshInstance3D" type="MeshInstance3D" parent="Model/02_ALTAR_FLOOR_ZER0_VER_1/COLLISION"] mesh = SubResource("ArrayMesh_xh2ej") +[node name="GROUND" type="MeshInstance3D" parent="Model/02_ALTAR_FLOOR_ZER0_VER_1"] +transform = Transform3D(-414.704, 0, 0, 0, -174.573, 0, 0, 0, -459.144, 18.3411, -4.10374, -1.76579) +gi_mode = 2 +mesh = SubResource("ArrayMesh_amvb3") +skeleton = NodePath("") + [node name="DUNES" type="MeshInstance3D" parent="Model/02_ALTAR_FLOOR_ZER0_VER_1"] mesh = SubResource("ArrayMesh_x286t") skeleton = NodePath("") @@ -799,11 +838,6 @@ skeleton = NodePath("") mesh = SubResource("ArrayMesh_1i8xc") skeleton = NodePath("") -[node name="GROUND" type="MeshInstance3D" parent="Model/02_ALTAR_FLOOR_ZER0_VER_1"] -transform = Transform3D(-414.704, 0, 0, 0, -174.573, 0, 0, 0, -459.144, 17.6772, -3.82364, -1.8857) -mesh = SubResource("ArrayMesh_amvb3") -skeleton = NodePath("") - [node name="Ruined Altar" type="MeshInstance3D" parent="Model/02_ALTAR_FLOOR_ZER0_VER_1"] transform = Transform3D(0.0327622, 0, 1.53768, 0, 1.53803, 0, -1.53768, 0, 0.0327622, -15.9268, 2.40427, -2.65843) mesh = SubResource("ArrayMesh_vi6w0") @@ -829,6 +863,52 @@ libraries = { &"": SubResource("AnimationLibrary_6r3fr") } +[node name="Camera 3" type="Camera3D" parent="Model/02_ALTAR_FLOOR_ZER0_VER_1"] +transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, -267.785, -421.242, 6.07893) +fov = 37.8493 +size = 100.0 + +[node name="Sky Video" type="MeshInstance3D" parent="Model/02_ALTAR_FLOOR_ZER0_VER_1"] +transform = Transform3D(-2.18557e-05, 500, -1.74846e-05, 0, -2.18557e-05, -400, -500, -2.18557e-05, 7.64274e-13, -634.776, -418.933, 13.3057) +material_override = SubResource("StandardMaterial3D_gbv4o") +mesh = SubResource("PlaneMesh_c86uk") +skeleton = NodePath("../SubViewport/VideoStreamPlayer") + +[node name="DirectionalLight3D" type="DirectionalLight3D" parent="Model/02_ALTAR_FLOOR_ZER0_VER_1"] +transform = Transform3D(0.661312, 0.411828, 0.626948, 0, -0.835807, 0.549023, 0.750111, -0.363075, -0.552729, 0, 577.928, 0) +light_color = Color(0.8142, 0.820788, 0.803541, 1) +light_energy = 2.5 +light_indirect_energy = 0.0 +light_volumetric_fog_energy = 0.0 +light_specular = 0.0 +light_bake_mode = 1 +shadow_enabled = true +shadow_bias = 0.0 +shadow_normal_bias = 1.835 +shadow_transmittance_bias = -14.947 +shadow_blur = 1.485 +directional_shadow_mode = 0 +directional_shadow_fade_start = 1.0 +directional_shadow_max_distance = 50.4 +directional_shadow_pancake_size = 39.7 + +[node name="SubViewport" type="SubViewport" parent="Model/02_ALTAR_FLOOR_ZER0_VER_1"] +size = Vector2i(720, 486) +render_target_update_mode = 4 + +[node name="VideoStreamPlayer" type="VideoStreamPlayer" parent="Model/02_ALTAR_FLOOR_ZER0_VER_1/SubViewport"] +anchors_preset = -1 +anchor_right = 0.375 +anchor_bottom = 0.45 +offset_right = 528.0 +offset_bottom = 255.6 +stream = ExtResource("16_ojbcg") +autoplay = true +loop = true + +[node name="Altar Environment" type="WorldEnvironment" parent="Model"] +environment = SubResource("Environment_ojbcg") + [node name="Collision" type="Node3D" parent="."] [node name="StaticBody3D" type="StaticBody3D" parent="Collision"] diff --git a/Zennysoft.Game.Ma/src/map/dungeon/floors/Floor02.tscn b/Zennysoft.Game.Ma/src/map/dungeon/floors/Floor02.tscn index 08ad6df9..25e3b292 100644 --- a/Zennysoft.Game.Ma/src/map/dungeon/floors/Floor02.tscn +++ b/Zennysoft.Game.Ma/src/map/dungeon/floors/Floor02.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=20 format=3 uid="uid://dmiqwmivkjgmq"] +[gd_scene load_steps=21 format=3 uid="uid://dmiqwmivkjgmq"] [ext_resource type="Script" uid="uid://b1x125h0tya2w" path="res://addons/SimpleDungeons/DungeonGenerator3D.gd" id="1_afeds"] [ext_resource type="PackedScene" uid="uid://dpec2lbt83dhe" path="res://src/map/dungeon/rooms/Set A/03. Antechamber A.tscn" id="3_7txs6"] @@ -27,6 +27,44 @@ geometry_collision_mask = 2147483648 agent_height = 2.0 region_min_size = 8.0 +[sub_resource type="Environment" id="Environment_sn0iw"] +background_mode = 1 +background_energy_multiplier = 0.73 +background_camera_feed_id = 3 +ambient_light_source = 2 +ambient_light_color = Color(1, 1, 1, 1) +ambient_light_energy = 0.16 +reflected_light_source = 1 +ssr_fade_in = 6.11789 +ssr_fade_out = 2.92817 +ssr_depth_tolerance = 6.61 +ssao_radius = 0.01 +ssao_intensity = 0.02 +ssil_radius = 6.3 +sdfgi_use_occlusion = true +sdfgi_bounce_feedback = 0.77 +sdfgi_min_cell_size = 0.01 +sdfgi_cascade0_distance = 0.64 +sdfgi_max_distance = 10.24 +glow_enabled = true +glow_intensity = 0.84 +glow_strength = 0.63 +glow_bloom = 1.0 +glow_blend_mode = 1 +glow_hdr_threshold = 1.1 +glow_hdr_scale = 1.92 +glow_map_strength = 1.0 +fog_light_color = Color(0, 0, 0, 1) +fog_light_energy = 1.41 +fog_sun_scatter = 0.08 +fog_density = 0.082 +fog_height = 1.0 +fog_height_density = 1.0 +volumetric_fog_enabled = true +volumetric_fog_density = 0.2786 +volumetric_fog_albedo = Color(0, 0, 0, 1) +volumetric_fog_emission_energy = 0.0 + [sub_resource type="BoxShape3D" id="BoxShape3D_23nxb"] size = Vector3(135, 1, 125) @@ -258,13 +296,19 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 38, 0, 14) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 42, 0, 14) [node name="RoomsContainer" type="Node3D" parent="NavigationRegion3D/DungeonGenerator"] +visible = false + +[node name="Altar Environment" type="WorldEnvironment" parent="NavigationRegion3D/DungeonGenerator"] +environment = SubResource("Environment_sn0iw") [node name="StaticBody3D" type="StaticBody3D" parent="NavigationRegion3D"] +visible = false collision_layer = 2147483648 collision_mask = 2147483648 [node name="CollisionShape3D" type="CollisionShape3D" parent="NavigationRegion3D/StaticBody3D"] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.5, -1.5, -4.5) +visible = false shape = SubResource("BoxShape3D_23nxb") [node name="EnemyDatabase" parent="." instance=ExtResource("11_yvj8v")] diff --git a/Zennysoft.Game.Ma/src/video/Sky Test.ogv b/Zennysoft.Game.Ma/src/video/Sky Test.ogv new file mode 100644 index 00000000..6060588e Binary files /dev/null and b/Zennysoft.Game.Ma/src/video/Sky Test.ogv differ diff --git a/Zennysoft.Game.Ma/src/video/Sky Video.ogv.uid b/Zennysoft.Game.Ma/src/video/Sky Video.ogv.uid new file mode 100644 index 00000000..cafdca43 --- /dev/null +++ b/Zennysoft.Game.Ma/src/video/Sky Video.ogv.uid @@ -0,0 +1 @@ +uid://cms0sqekyx4pf