From 11a9365f9175f62cc9dcc61cd1e74889059f8754 Mon Sep 17 00:00:00 2001 From: Reinier Vens Date: Sat, 27 Mar 2021 10:03:24 +0000 Subject: [PATCH] Trailer Stuff & More Changed title font to Montserrat Added trailer-specific camera transitions Added key to hide UI Fixed input listening while console is open Added animated zone reveal effect in galaxy map Added Ping action for sensors Added debug console commands (e.g. give command to get any item in legendary+ quality) Temporarily disabled wwise Fixed infinite loop in weapon penetration code Guided missiles now predict target position Fixed hitscan weapons Fixed invisible enemies bug Fixed various loadout generator issues (can now generate turrets!) Fixed wormhole crash when enemy is targeted Saving/loading current zone time when exiting game (planets keep their positions) Created slime simulation in test scene - WIP --- ...conomy_WwiseProject.rwvens.validationcache | 15 +- .../Aetheria-Economy_WwiseProject.wproj | 29 +- Assets/Fonts/Ubuntu/Montserrat-Thin SDF.asset | 3 + .../Ubuntu/Montserrat-Thin SDF.asset.meta | 8 + Assets/Fonts/Ubuntu/Montserrat-Thin.ttf | 3 + Assets/Fonts/Ubuntu/Montserrat-Thin.ttf.meta | 21 + .../Brushes/Sector Boundary Test.mat | 80 + .../Brushes/Sector Boundary Test.mat.meta | 8 + Assets/Materials/Brushes/Sector Tint Test.mat | 83 + .../Brushes/Sector Tint Test.mat.meta | 8 + Assets/Materials/Fog Marching Test.mat | 65 + Assets/Materials/Fog Marching Test.mat.meta | 8 + Assets/Materials/Gas Giant.mat | 6 +- Assets/Materials/UI/Map Gravity Lines.mat | 2 +- Assets/Prefabs/RPG/Planets/Gas Giant.prefab | 8 +- Assets/Prefabs/RPG/Slime Renderer.prefab | 118 + Assets/Prefabs/RPG/Slime Renderer.prefab.meta | 7 + Assets/Resources/Aetheria.inputactions | 19 + Assets/Resources/LDR_LLL1_0.png.meta | 8 +- Assets/Resources/Prefabs/Weapons/AU.meta | 8 + .../Resources/Prefabs/Weapons/AU/Earp.prefab | 320 + .../Prefabs/Weapons/AU/Earp.prefab.meta | 7 + .../Prefabs/Weapons/AU/Leonid.prefab | 5159 +++++++++++++++++ .../Prefabs/Weapons/AU/Leonid.prefab.meta | 7 + Assets/Resources/Settings.asset | 4 +- Assets/Resources/Slime Gravity.renderTexture | 38 + .../Slime Gravity.renderTexture.meta | 8 + Assets/Scenes/ARPG.unity | 648 ++- .../Postprocessing Profile Death.asset | 4 +- .../Postprocessing Profile.asset | 4 +- Assets/Scenes/Main Menu.unity | 26 +- Assets/Scenes/TestScene.unity | 1896 ++++-- .../TestScene_Profiles/PP Profile.asset | 4 +- Assets/Scripts/AetheriaInput.cs | 29 + Assets/Scripts/Gameplay/ActionGameManager.cs | 274 +- Assets/Scripts/Gameplay/EntityInstance.cs | 56 +- Assets/Scripts/Gameplay/ShipInstance.cs | 32 +- .../Gameplay/Weapons/GuidedProjectile.cs | 11 +- .../Weapons/GuidedProjectileManager.cs | 7 +- .../Gameplay/Weapons/HitscanManager.cs | 10 +- .../ServerShared/Behaviors/InstantWeapon.cs | 6 +- .../ServerShared/Behaviors/VelocityLimit.cs | 1 + Assets/Scripts/ServerShared/Entity.cs | 4 +- Assets/Scripts/ServerShared/ItemManager.cs | 42 +- .../Scripts/ServerShared/LoadoutGenerator.cs | 11 +- Assets/Scripts/ServerShared/Ship.cs | 1 + Assets/Scripts/ServerShared/Zone.cs | 22 +- Assets/Scripts/ServerShared/ZoneData.cs | 3 + Assets/Scripts/ServerShared/ZoneGenerator.cs | 4 +- Assets/Scripts/UI/ConsoleView.cs | 15 + Assets/{ => Scripts/UI}/ItemFilter.cs | 0 Assets/{ => Scripts/UI}/ItemFilter.cs.meta | 0 Assets/Scripts/UI/PropertiesPanel.cs | 41 +- Assets/Scripts/UI/SectorMap.cs | 397 +- Assets/{ => Scripts/UI}/SectorRenderer.cs | 57 + .../{ => Scripts/UI}/SectorRenderer.cs.meta | 0 Assets/Scripts/UI/TradeMenu.cs | 1 + ...{Sector Display.meta => Zone Display.meta} | 0 .../BlueNoiseProvider.cs | 0 .../BlueNoiseProvider.cs.meta | 0 .../CopyTransform.cs | 0 .../CopyTransform.cs.meta | 0 .../GasGiantObject.cs | 0 .../GasGiantObject.cs.meta | 0 .../GradientMapper.cs | 0 .../GradientMapper.cs.meta | 0 .../GravityObject.cs | 0 .../GravityObject.cs.meta | 0 .../MapView.cs | 0 .../MapView.cs.meta | 0 .../PlanetObject.cs | 0 .../PlanetObject.cs.meta | 0 .../SnapToGrid.cs | 0 .../SnapToGrid.cs.meta | 0 .../SunMaterial.cs | 0 .../SunMaterial.cs.meta | 0 .../SunObject.cs | 0 .../SunObject.cs.meta | 0 .../VolumeSampling.cs | 2 +- .../VolumeSampling.cs.meta | 0 .../WaveScroll.cs | 0 .../WaveScroll.cs.meta | 0 .../ZoneRenderer.cs | 11 +- .../ZoneRenderer.cs.meta | 0 Assets/Shaders/Compute/Slime.meta | 8 + .../Compute/Slime/RenderAccumulation.shader | 54 + .../Slime/RenderAccumulation.shader.meta | 10 + .../Compute/Slime/Slime Accumulation.mat | 97 + .../Compute/Slime/Slime Accumulation.mat.meta | 8 + Assets/Shaders/Compute/Slime/Slime.compute | 301 + .../Shaders/Compute/Slime/Slime.compute.meta | 9 + Assets/Shaders/Compute/Slime/Slime.cs | 229 + Assets/Shaders/Compute/Slime/Slime.cs.meta | 11 + Assets/Shaders/Compute/Slime/Slime.shader | 159 + .../Shaders/Compute/Slime/Slime.shader.meta | 9 + .../Compute/Slime/SlimeParticles.shader | 136 + .../Compute/Slime/SlimeParticles.shader.meta | 3 + Assets/Shaders/Compute/Slime/SlimeTrails.mat | 82 + .../Compute/Slime/SlimeTrails.mat.meta | 8 + .../Shaders/Compute/Slime/SlimeVertex.cginc | 20 + .../Compute/Slime/SlimeVertex.cginc.meta | 3 + .../Shaders/Compute/Stardust/Stardust.compute | 4 +- Assets/Shaders/Compute/Stardust/Stardust.cs | 5 - .../LiberationSans SDF - Fallback.asset | 4 +- Assets/WwiseSettings.xml | 4 +- GameData/AetherDB.msgpack | 4 +- GameData/PlayerSettings.msgpack | 4 +- UserSettings/EditorUserSettings.asset | 2 +- 108 files changed, 10018 insertions(+), 825 deletions(-) create mode 100644 Assets/Fonts/Ubuntu/Montserrat-Thin SDF.asset create mode 100644 Assets/Fonts/Ubuntu/Montserrat-Thin SDF.asset.meta create mode 100644 Assets/Fonts/Ubuntu/Montserrat-Thin.ttf create mode 100644 Assets/Fonts/Ubuntu/Montserrat-Thin.ttf.meta create mode 100644 Assets/Materials/Brushes/Sector Boundary Test.mat create mode 100644 Assets/Materials/Brushes/Sector Boundary Test.mat.meta create mode 100644 Assets/Materials/Brushes/Sector Tint Test.mat create mode 100644 Assets/Materials/Brushes/Sector Tint Test.mat.meta create mode 100644 Assets/Materials/Fog Marching Test.mat create mode 100644 Assets/Materials/Fog Marching Test.mat.meta create mode 100644 Assets/Prefabs/RPG/Slime Renderer.prefab create mode 100644 Assets/Prefabs/RPG/Slime Renderer.prefab.meta create mode 100644 Assets/Resources/Prefabs/Weapons/AU.meta create mode 100644 Assets/Resources/Prefabs/Weapons/AU/Earp.prefab create mode 100644 Assets/Resources/Prefabs/Weapons/AU/Earp.prefab.meta create mode 100644 Assets/Resources/Prefabs/Weapons/AU/Leonid.prefab create mode 100644 Assets/Resources/Prefabs/Weapons/AU/Leonid.prefab.meta create mode 100644 Assets/Resources/Slime Gravity.renderTexture create mode 100644 Assets/Resources/Slime Gravity.renderTexture.meta rename Assets/{ => Scripts/UI}/ItemFilter.cs (100%) rename Assets/{ => Scripts/UI}/ItemFilter.cs.meta (100%) rename Assets/{ => Scripts/UI}/SectorRenderer.cs (64%) rename Assets/{ => Scripts/UI}/SectorRenderer.cs.meta (100%) rename Assets/Scripts/{Sector Display.meta => Zone Display.meta} (100%) rename Assets/Scripts/{Sector Display => Zone Display}/BlueNoiseProvider.cs (100%) rename Assets/Scripts/{Sector Display => Zone Display}/BlueNoiseProvider.cs.meta (100%) rename Assets/Scripts/{Sector Display => Zone Display}/CopyTransform.cs (100%) rename Assets/Scripts/{Sector Display => Zone Display}/CopyTransform.cs.meta (100%) rename Assets/Scripts/{Sector Display => Zone Display}/GasGiantObject.cs (100%) rename Assets/Scripts/{Sector Display => Zone Display}/GasGiantObject.cs.meta (100%) rename Assets/Scripts/{Sector Display => Zone Display}/GradientMapper.cs (100%) rename Assets/Scripts/{Sector Display => Zone Display}/GradientMapper.cs.meta (100%) rename Assets/Scripts/{Sector Display => Zone Display}/GravityObject.cs (100%) rename Assets/Scripts/{Sector Display => Zone Display}/GravityObject.cs.meta (100%) rename Assets/Scripts/{Sector Display => Zone Display}/MapView.cs (100%) rename Assets/Scripts/{Sector Display => Zone Display}/MapView.cs.meta (100%) rename Assets/Scripts/{Sector Display => Zone Display}/PlanetObject.cs (100%) rename Assets/Scripts/{Sector Display => Zone Display}/PlanetObject.cs.meta (100%) rename Assets/Scripts/{Sector Display => Zone Display}/SnapToGrid.cs (100%) rename Assets/Scripts/{Sector Display => Zone Display}/SnapToGrid.cs.meta (100%) rename Assets/Scripts/{Sector Display => Zone Display}/SunMaterial.cs (100%) rename Assets/Scripts/{Sector Display => Zone Display}/SunMaterial.cs.meta (100%) rename Assets/Scripts/{Sector Display => Zone Display}/SunObject.cs (100%) rename Assets/Scripts/{Sector Display => Zone Display}/SunObject.cs.meta (100%) rename Assets/Scripts/{Sector Display => Zone Display}/VolumeSampling.cs (98%) rename Assets/Scripts/{Sector Display => Zone Display}/VolumeSampling.cs.meta (100%) rename Assets/Scripts/{Sector Display => Zone Display}/WaveScroll.cs (100%) rename Assets/Scripts/{Sector Display => Zone Display}/WaveScroll.cs.meta (100%) rename Assets/Scripts/{Sector Display => Zone Display}/ZoneRenderer.cs (98%) rename Assets/Scripts/{Sector Display => Zone Display}/ZoneRenderer.cs.meta (100%) create mode 100644 Assets/Shaders/Compute/Slime.meta create mode 100644 Assets/Shaders/Compute/Slime/RenderAccumulation.shader create mode 100644 Assets/Shaders/Compute/Slime/RenderAccumulation.shader.meta create mode 100644 Assets/Shaders/Compute/Slime/Slime Accumulation.mat create mode 100644 Assets/Shaders/Compute/Slime/Slime Accumulation.mat.meta create mode 100644 Assets/Shaders/Compute/Slime/Slime.compute create mode 100644 Assets/Shaders/Compute/Slime/Slime.compute.meta create mode 100644 Assets/Shaders/Compute/Slime/Slime.cs create mode 100644 Assets/Shaders/Compute/Slime/Slime.cs.meta create mode 100644 Assets/Shaders/Compute/Slime/Slime.shader create mode 100644 Assets/Shaders/Compute/Slime/Slime.shader.meta create mode 100644 Assets/Shaders/Compute/Slime/SlimeParticles.shader create mode 100644 Assets/Shaders/Compute/Slime/SlimeParticles.shader.meta create mode 100644 Assets/Shaders/Compute/Slime/SlimeTrails.mat create mode 100644 Assets/Shaders/Compute/Slime/SlimeTrails.mat.meta create mode 100644 Assets/Shaders/Compute/Slime/SlimeVertex.cginc create mode 100644 Assets/Shaders/Compute/Slime/SlimeVertex.cginc.meta diff --git a/Aetheria-Economy_WwiseProject/Aetheria-Economy_WwiseProject.rwvens.validationcache b/Aetheria-Economy_WwiseProject/Aetheria-Economy_WwiseProject.rwvens.validationcache index c01104806..c13fd0420 100644 --- a/Aetheria-Economy_WwiseProject/Aetheria-Economy_WwiseProject.rwvens.validationcache +++ b/Aetheria-Economy_WwiseProject/Aetheria-Economy_WwiseProject.rwvens.validationcache @@ -30,8 +30,8 @@ - - + + @@ -40,12 +40,14 @@ + - - + + + @@ -54,8 +56,9 @@ - + - + + diff --git a/Aetheria-Economy_WwiseProject/Aetheria-Economy_WwiseProject.wproj b/Aetheria-Economy_WwiseProject/Aetheria-Economy_WwiseProject.wproj index 23c937450..03d6b9714 100644 --- a/Aetheria-Economy_WwiseProject/Aetheria-Economy_WwiseProject.wproj +++ b/Aetheria-Economy_WwiseProject/Aetheria-Economy_WwiseProject.wproj @@ -25,7 +25,34 @@ GeneratedSoundBanks\Windows\ - + diff --git a/Assets/Fonts/Ubuntu/Montserrat-Thin SDF.asset b/Assets/Fonts/Ubuntu/Montserrat-Thin SDF.asset new file mode 100644 index 000000000..209517e47 --- /dev/null +++ b/Assets/Fonts/Ubuntu/Montserrat-Thin SDF.asset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c2d9e7d9f2b5f37c3c55fc27ca9616e03fa6c8771bcd8bff61017b7a38909e70 +size 8440214 diff --git a/Assets/Fonts/Ubuntu/Montserrat-Thin SDF.asset.meta b/Assets/Fonts/Ubuntu/Montserrat-Thin SDF.asset.meta new file mode 100644 index 000000000..8499a855f --- /dev/null +++ b/Assets/Fonts/Ubuntu/Montserrat-Thin SDF.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 1c5e8a01819db8d4b812bf3d3eecd389 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Fonts/Ubuntu/Montserrat-Thin.ttf b/Assets/Fonts/Ubuntu/Montserrat-Thin.ttf new file mode 100644 index 000000000..73b318a16 --- /dev/null +++ b/Assets/Fonts/Ubuntu/Montserrat-Thin.ttf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:33f1468236d083256d262231f4085918eeac454b09ac27909fe0fafbede9af9a +size 51812 diff --git a/Assets/Fonts/Ubuntu/Montserrat-Thin.ttf.meta b/Assets/Fonts/Ubuntu/Montserrat-Thin.ttf.meta new file mode 100644 index 000000000..82f4153fd --- /dev/null +++ b/Assets/Fonts/Ubuntu/Montserrat-Thin.ttf.meta @@ -0,0 +1,21 @@ +fileFormatVersion: 2 +guid: 39baae53551530c46a09203705373952 +TrueTypeFontImporter: + externalObjects: {} + serializedVersion: 4 + fontSize: 16 + forceTextureCase: -2 + characterSpacing: 0 + characterPadding: 1 + includeFontData: 1 + fontNames: + - Montserrat + fallbackFontReferences: [] + customCharacters: + fontRenderingMode: 0 + ascentCalculationMode: 1 + useLegacyBoundsCalculation: 0 + shouldRoundAdvanceValue: 1 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Materials/Brushes/Sector Boundary Test.mat b/Assets/Materials/Brushes/Sector Boundary Test.mat new file mode 100644 index 000000000..90caa3e28 --- /dev/null +++ b/Assets/Materials/Brushes/Sector Boundary Test.mat @@ -0,0 +1,80 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Sector Boundary Test + m_Shader: {fileID: 4800000, guid: 268da230635cfb34ab4ed6ad39503fa0, type: 3} + m_ShaderKeywords: + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + - _BumpScale: 1 + - _Cutoff: 0.5 + - _Depth: 150 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _GlossMapScale: 1 + - _Glossiness: 0.5 + - _GlossyReflections: 1 + - _Metallic: 0 + - _Mode: 0 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _Power: 0.25 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 1 + m_Colors: + - _Color: {r: 1, g: 1, b: 1, a: 1} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} + m_BuildTextureStacks: [] diff --git a/Assets/Materials/Brushes/Sector Boundary Test.mat.meta b/Assets/Materials/Brushes/Sector Boundary Test.mat.meta new file mode 100644 index 000000000..86c71a04a --- /dev/null +++ b/Assets/Materials/Brushes/Sector Boundary Test.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 65e5206f4614c85449f822f5bab55199 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Materials/Brushes/Sector Tint Test.mat b/Assets/Materials/Brushes/Sector Tint Test.mat new file mode 100644 index 000000000..ef2c3da21 --- /dev/null +++ b/Assets/Materials/Brushes/Sector Tint Test.mat @@ -0,0 +1,83 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Sector Tint Test + m_Shader: {fileID: 4800000, guid: 268da230635cfb34ab4ed6ad39503fa0, type: 3} + m_ShaderKeywords: + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + - _BumpScale: 1 + - _Cutoff: 0.5 + - _Depth: 0.25 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _Frequency: 6.2832 + - _GlossMapScale: 1 + - _Glossiness: 0.5 + - _GlossyReflections: 1 + - _Metallic: 0 + - _Mode: 0 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _Phase: 0 + - _Power: 0.5 + - _SinePower: 1.25 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 1 + m_Colors: + - _Color: {r: 0.3726415, g: 0.70283014, b: 1, a: 1} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} + m_BuildTextureStacks: [] diff --git a/Assets/Materials/Brushes/Sector Tint Test.mat.meta b/Assets/Materials/Brushes/Sector Tint Test.mat.meta new file mode 100644 index 000000000..dd1167126 --- /dev/null +++ b/Assets/Materials/Brushes/Sector Tint Test.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 7b4b425f2959c6444b35fca367641ee2 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Materials/Fog Marching Test.mat b/Assets/Materials/Fog Marching Test.mat new file mode 100644 index 000000000..89b46a198 --- /dev/null +++ b/Assets/Materials/Fog Marching Test.mat @@ -0,0 +1,65 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Fog Marching Test + m_Shader: {fileID: 4800000, guid: 7a890b6ceccf53c44bfc54b18b5daa58, type: 3} + m_ShaderKeywords: + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _Displacement: + m_Texture: {fileID: 8400000, guid: 06ec5ef8a5830fc44b1ac1a6e123add5, type: 2} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _Patch: + m_Texture: {fileID: 8400000, guid: c618a6b20b3c7394590c59a9fa467e86, type: 2} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _Surface: + m_Texture: {fileID: 8400000, guid: 2fc21a9d3e9647948b56e384cd9378b3, type: 2} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _TintTexture: + m_Texture: {fileID: 8400000, guid: d196505464047f04a97f28689041209b, type: 2} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + - _AlphaFloor: 0 + - _DepthBlend: 512 + - _DepthCeiling: 4096 + - _Gamma: 0.66 + - _GridCeilingBlend: -300 + - _GridCeilingDensity: 0.01 + - _GridCeilingFollow: 0 + - _GridCeilingOffset: 0 + - _GridFillDensity: 0 + - _GridFloorBlend: 93.3 + - _GridFloorDensity: 4 + - _GridFloorOffset: 25 + - _GridPatchBlend: 22.7 + - _GridPatchDensity: 0.1 + - _NoiseFrequency: 0.01 + - _NoiseSpeed: 0.02 + - _NoiseStrength: 75 + - _SafetyDistance: 50 + - _StepExponent: 2 + - _TintExponent: 8 + m_Colors: + - _Tint: {r: 2.0078435, g: 2.0078435, b: 2.0078435, a: 1} + m_BuildTextureStacks: [] diff --git a/Assets/Materials/Fog Marching Test.mat.meta b/Assets/Materials/Fog Marching Test.mat.meta new file mode 100644 index 000000000..9f0e3d586 --- /dev/null +++ b/Assets/Materials/Fog Marching Test.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: ad63650ae6d6cc542a5aad16694b3c46 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Materials/Gas Giant.mat b/Assets/Materials/Gas Giant.mat index 6634750d2..2550f56ee 100644 --- a/Assets/Materials/Gas Giant.mat +++ b/Assets/Materials/Gas Giant.mat @@ -28,7 +28,7 @@ Material: m_Scale: {x: 1, y: 1} m_Offset: {x: 0, y: 0} - _ColorRamp: - m_Texture: {fileID: 0} + m_Texture: {fileID: 2800000, guid: 4f6a7385479a85a40be0c3030504c7c5, type: 3} m_Scale: {x: 1, y: 1} m_Offset: {x: 0, y: 0} - _DetailAlbedoMap: @@ -104,8 +104,8 @@ Material: - _OffsetFadePower: -0.75 - _Parallax: 0.02 - _RayStepSize: -0.00625 - - _SecondOffsetDepthExponent: 0 - - _SecondOffsetDistance: -0.2 + - _SecondOffsetDepthExponent: -2 + - _SecondOffsetDistance: -0.05 - _SecondOffsetFadePower: -8 - _SecondOffsetRotationFadePower: 0.25 - _SmoothnessTextureChannel: 0 diff --git a/Assets/Materials/UI/Map Gravity Lines.mat b/Assets/Materials/UI/Map Gravity Lines.mat index d904b859a..8cac61716 100644 --- a/Assets/Materials/UI/Map Gravity Lines.mat +++ b/Assets/Materials/UI/Map Gravity Lines.mat @@ -86,7 +86,7 @@ Material: - _Mode: 0 - _OcclusionStrength: 1 - _Parallax: 0.02 - - _Scale: 1.33001 + - _Scale: 5.603361 - _SmoothnessTextureChannel: 0 - _SpecularHighlights: 1 - _SrcBlend: 1 diff --git a/Assets/Prefabs/RPG/Planets/Gas Giant.prefab b/Assets/Prefabs/RPG/Planets/Gas Giant.prefab index ef3fb7b6b..eb58d6b0a 100644 --- a/Assets/Prefabs/RPG/Planets/Gas Giant.prefab +++ b/Assets/Prefabs/RPG/Planets/Gas Giant.prefab @@ -404,10 +404,10 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 3c2eb8fe081f14940a7208cbdc3d97f9, type: 3} m_Name: m_EditorClassIdentifier: - SpeedMultiplier: 0.0025 + SpeedMultiplier: 0.005 FirstOffsetDomainRotationSpeed: 5 - FirstOffsetRotationSpeed: 0 + FirstOffsetRotationSpeed: 20 SecondOffsetDomainRotationSpeed: 10 - SecondOffsetRotationSpeed: -25 - AlbedoRotationSpeed: -3 + SecondOffsetRotationSpeed: -50 + AlbedoRotationSpeed: 15 LightingDirection: {x: 1, y: 0, z: 1} diff --git a/Assets/Prefabs/RPG/Slime Renderer.prefab b/Assets/Prefabs/RPG/Slime Renderer.prefab new file mode 100644 index 000000000..79640312e --- /dev/null +++ b/Assets/Prefabs/RPG/Slime Renderer.prefab @@ -0,0 +1,118 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &6977256487485077368 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6977256487485077373} + - component: {fileID: 6977256487485077374} + - component: {fileID: 6977256487485077375} + - component: {fileID: 5262902644310250487} + m_Layer: 0 + m_Name: Slime Renderer + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &6977256487485077373 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6977256487485077368} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &6977256487485077374 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6977256487485077368} + m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &6977256487485077375 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6977256487485077368} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 817815ac1f000054ab738bb243cd7dba, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!114 &5262902644310250487 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6977256487485077368} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 8ffec49d55e3429418714ceb048bfeae, type: 3} + m_Name: + m_EditorClassIdentifier: + TargetCamera: {fileID: 0} + GravityCamera: {fileID: 0} + SlimeCompute: {fileID: 7200000, guid: 33eea2339ec4dc143b0e192a0b7f0a33, type: 3} + AccumulationMaterial: {fileID: 2100000, guid: 817815ac1f000054ab738bb243cd7dba, + type: 2} + ParticleMaterial: {fileID: 0} + GravityTexture: {fileID: 0} + TextureSize: 2048 + ZoneRadius: 512 + AgentCount: 1048576 + ParticleCount: 65536 + SlimeSettings: + Deposition: 1 + Diffusion: 0.5 + Decay: 1 + TurnSpeed: 12 + RandomSteering: 1 + Speed: 25 + Drive: 16 + SensorDistance: 8 + SensorSpread: 0.64 + SensorSize: 1 diff --git a/Assets/Prefabs/RPG/Slime Renderer.prefab.meta b/Assets/Prefabs/RPG/Slime Renderer.prefab.meta new file mode 100644 index 000000000..76f046fed --- /dev/null +++ b/Assets/Prefabs/RPG/Slime Renderer.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: efd1f097ce29ffa48bb0045d6502f55d +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Resources/Aetheria.inputactions b/Assets/Resources/Aetheria.inputactions index eeb940607..bb037beab 100644 --- a/Assets/Resources/Aetheria.inputactions +++ b/Assets/Resources/Aetheria.inputactions @@ -188,6 +188,14 @@ "expectedControlType": "Button", "processors": "", "interactions": "" + }, + { + "name": "Hide UI", + "type": "Button", + "id": "1cdb2515-91e1-4895-879d-8a7347e60b21", + "expectedControlType": "Button", + "processors": "", + "interactions": "" } ], "bindings": [ @@ -630,6 +638,17 @@ "action": "Ping", "isComposite": false, "isPartOfComposite": false + }, + { + "name": "", + "id": "3f898572-d165-4e29-93c3-95c3efce5df9", + "path": "/f2", + "interactions": "", + "processors": "", + "groups": "Keyboard&Mouse", + "action": "Hide UI", + "isComposite": false, + "isPartOfComposite": false } ] }, diff --git a/Assets/Resources/LDR_LLL1_0.png.meta b/Assets/Resources/LDR_LLL1_0.png.meta index cf719bbe1..cb0f45504 100644 --- a/Assets/Resources/LDR_LLL1_0.png.meta +++ b/Assets/Resources/LDR_LLL1_0.png.meta @@ -35,9 +35,9 @@ TextureImporter: filterMode: 0 aniso: -1 mipBias: -100 - wrapU: -1 - wrapV: -1 - wrapW: -1 + wrapU: 0 + wrapV: 0 + wrapW: 0 nPOTScale: 1 lightmap: 0 compressionQuality: 50 @@ -55,6 +55,8 @@ TextureImporter: textureType: 0 textureShape: 1 singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 diff --git a/Assets/Resources/Prefabs/Weapons/AU.meta b/Assets/Resources/Prefabs/Weapons/AU.meta new file mode 100644 index 000000000..a857fa6fa --- /dev/null +++ b/Assets/Resources/Prefabs/Weapons/AU.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 8f9cbfd6f56feab4b9a92aaef70203db +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Resources/Prefabs/Weapons/AU/Earp.prefab b/Assets/Resources/Prefabs/Weapons/AU/Earp.prefab new file mode 100644 index 000000000..4fb81e4cf --- /dev/null +++ b/Assets/Resources/Prefabs/Weapons/AU/Earp.prefab @@ -0,0 +1,320 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &1038711833328602429 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7093708978518643867} + - component: {fileID: 4746410263980518329} + - component: {fileID: 277178765566372861} + - component: {fileID: 654273117314929370} + m_Layer: 0 + m_Name: Bullet + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &7093708978518643867 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1038711833328602429} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 7887646903913370668} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &4746410263980518329 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1038711833328602429} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 1281fe44325f9b548aa42dc331b17266, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!96 &277178765566372861 +TrailRenderer: + serializedVersion: 2 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1038711833328602429} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 0 + m_ReflectionProbeUsage: 0 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 9c20b9ccbbbb1b14cb5729e0c8460cd9, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_Time: 0.1 + m_Parameters: + serializedVersion: 3 + widthMultiplier: 1 + widthCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: -1 + tangentMode: 69 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: -1 + outSlope: 0 + tangentMode: 69 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + colorGradient: + serializedVersion: 2 + key0: {r: 1, g: 0.99469995, b: 0.45098042, a: 1} + key1: {r: 1, g: 0.3910084, b: 0.049000025, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 31804 + ctime2: 65535 + ctime3: 65535 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 3 + m_NumAlphaKeys: 2 + numCornerVertices: 0 + numCapVertices: 0 + alignment: 0 + textureMode: 0 + shadowBias: 0.5 + generateLightingData: 0 + m_MinVertexDistance: 1 + m_Autodestruct: 0 + m_Emitting: 1 +--- !u!114 &654273117314929370 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1038711833328602429} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4528540a139424748a7b6c47bfecc7fd, type: 3} + m_Name: + m_EditorClassIdentifier: + Trail: {fileID: 277178765566372861} + Gravity: 1 + HitEffect: {fileID: 3196731101172068069} +--- !u!1 &6642079567538326943 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7887646903913370668} + - component: {fileID: 4191762351494344457} + m_Layer: 0 + m_Name: Bullet Manager + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &7887646903913370668 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6642079567538326943} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 7093708978518643867} + - {fileID: 6081895055445446888} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &4191762351494344457 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6642079567538326943} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 49c173e3c2313ca4d9d04d0d87ec0f06, type: 3} + m_Name: + m_EditorClassIdentifier: + ProjectilePrototype: {fileID: 4746410263980518329} +--- !u!1001 &6082388488576249182 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 7887646903913370668} + m_Modifications: + - target: {fileID: 1337198075554910, guid: 25c7aa9ad705fe143a4d71c1c8deb7d4, type: 3} + propertyPath: m_Name + value: TinyExplosion + objectReference: {fileID: 0} + - target: {fileID: 4441266138185142, guid: 25c7aa9ad705fe143a4d71c1c8deb7d4, type: 3} + propertyPath: m_RootOrder + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4441266138185142, guid: 25c7aa9ad705fe143a4d71c1c8deb7d4, type: 3} + propertyPath: m_LocalPosition.x + value: -4.2346153 + objectReference: {fileID: 0} + - target: {fileID: 4441266138185142, guid: 25c7aa9ad705fe143a4d71c1c8deb7d4, type: 3} + propertyPath: m_LocalPosition.y + value: 2.42 + objectReference: {fileID: 0} + - target: {fileID: 4441266138185142, guid: 25c7aa9ad705fe143a4d71c1c8deb7d4, type: 3} + propertyPath: m_LocalPosition.z + value: -21.91896 + objectReference: {fileID: 0} + - target: {fileID: 4441266138185142, guid: 25c7aa9ad705fe143a4d71c1c8deb7d4, type: 3} + propertyPath: m_LocalRotation.w + value: 0.7071068 + objectReference: {fileID: 0} + - target: {fileID: 4441266138185142, guid: 25c7aa9ad705fe143a4d71c1c8deb7d4, type: 3} + propertyPath: m_LocalRotation.x + value: -0.7071068 + objectReference: {fileID: 0} + - target: {fileID: 4441266138185142, guid: 25c7aa9ad705fe143a4d71c1c8deb7d4, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4441266138185142, guid: 25c7aa9ad705fe143a4d71c1c8deb7d4, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4441266138185142, guid: 25c7aa9ad705fe143a4d71c1c8deb7d4, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: -90 + objectReference: {fileID: 0} + - target: {fileID: 4441266138185142, guid: 25c7aa9ad705fe143a4d71c1c8deb7d4, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4441266138185142, guid: 25c7aa9ad705fe143a4d71c1c8deb7d4, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 198175801688348628, guid: 25c7aa9ad705fe143a4d71c1c8deb7d4, + type: 3} + propertyPath: looping + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 198175801688348628, guid: 25c7aa9ad705fe143a4d71c1c8deb7d4, + type: 3} + propertyPath: prewarm + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 198814760465859298, guid: 25c7aa9ad705fe143a4d71c1c8deb7d4, + type: 3} + propertyPath: looping + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 198814760465859298, guid: 25c7aa9ad705fe143a4d71c1c8deb7d4, + type: 3} + propertyPath: prewarm + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 198942329355805636, guid: 25c7aa9ad705fe143a4d71c1c8deb7d4, + type: 3} + propertyPath: looping + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 198942329355805636, guid: 25c7aa9ad705fe143a4d71c1c8deb7d4, + type: 3} + propertyPath: prewarm + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 25c7aa9ad705fe143a4d71c1c8deb7d4, type: 3} +--- !u!4 &6081895055445446888 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 4441266138185142, guid: 25c7aa9ad705fe143a4d71c1c8deb7d4, + type: 3} + m_PrefabInstance: {fileID: 6082388488576249182} + m_PrefabAsset: {fileID: 0} +--- !u!114 &3196731101172068069 stripped +MonoBehaviour: + m_CorrespondingSourceObject: {fileID: 8662091027736085435, guid: 25c7aa9ad705fe143a4d71c1c8deb7d4, + type: 3} + m_PrefabInstance: {fileID: 6082388488576249182} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 1281fe44325f9b548aa42dc331b17266, type: 3} + m_Name: + m_EditorClassIdentifier: diff --git a/Assets/Resources/Prefabs/Weapons/AU/Earp.prefab.meta b/Assets/Resources/Prefabs/Weapons/AU/Earp.prefab.meta new file mode 100644 index 000000000..85ee1cd5c --- /dev/null +++ b/Assets/Resources/Prefabs/Weapons/AU/Earp.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 1cc2308a1f24cc043aafc00a3788f3ca +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Resources/Prefabs/Weapons/AU/Leonid.prefab b/Assets/Resources/Prefabs/Weapons/AU/Leonid.prefab new file mode 100644 index 000000000..db858d9a9 --- /dev/null +++ b/Assets/Resources/Prefabs/Weapons/AU/Leonid.prefab @@ -0,0 +1,5159 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &2200213683735813174 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2200213683735813172} + - component: {fileID: 2698694499776308069} + - component: {fileID: 2200213683735813173} + m_Layer: 0 + m_Name: Micromissile + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &2200213683735813172 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2200213683735813174} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 2200213684891960496} + m_Father: {fileID: 5148235482537864796} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &2698694499776308069 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2200213683735813174} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 1281fe44325f9b548aa42dc331b17266, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!114 &2200213683735813173 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2200213683735813174} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 56c973b8f3781c848b6530c2e7efce05, type: 3} + m_Name: + m_EditorClassIdentifier: + HitEffect: {fileID: 332779026898239585} + ChildProjectile: {fileID: 0} + AirburstProjectile: {fileID: 0} + AirburstCount: 0 + AirburstDirectionality: 0 + AirburstDistance: 0 + AirburstRange: 0 + AirburstVelocity: 0 + Children: 0 + SplitTime: 0 + SplitSeparationForwardness: 0 + SplitSeparationVelocity: 0 + Particles: {fileID: 2200213684891960502} + FadeOutTime: 1 + ThrustCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0.5 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + GuidanceCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0.5 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 0.9608628 + value: 0.9977624 + inSlope: 0.112816334 + outSlope: 0.112816334 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + LiftCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0.0023040771 + value: 0.73749924 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 0.17710531 + value: 0.81192774 + inSlope: -0.8198446 + outSlope: -0.8198446 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.38233894 + value: 0.09487492 + inSlope: -0.08619904 + outSlope: -0.08619904 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.7232835 + value: 0.09761685 + inSlope: 0.13605312 + outSlope: 0.13605312 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.5938519 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + Frequency: 0.25 + Thrust: 500 + TopSpeed: 250 + Source: {fileID: 0} +--- !u!1 &2200213684891960497 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2200213684891960496} + - component: {fileID: 2200213684891960502} + - component: {fileID: 2200213684891960503} + m_Layer: 0 + m_Name: Particle System + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &2200213684891960496 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2200213684891960497} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 2200213683735813172} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: -90, y: 0, z: 0} +--- !u!198 &2200213684891960502 +ParticleSystem: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2200213684891960497} + serializedVersion: 7 + lengthInSec: 5 + simulationSpeed: 1 + stopAction: 0 + cullingMode: 0 + ringBufferMode: 0 + ringBufferLoopRange: {x: 0, y: 1} + looping: 1 + prewarm: 0 + playOnAwake: 1 + useUnscaledTime: 0 + autoRandomSeed: 1 + useRigidbodyForVelocity: 1 + startDelay: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + moveWithTransform: 1 + moveWithCustomTransform: {fileID: 0} + scalingMode: 1 + randomSeed: 0 + InitialModule: + serializedVersion: 3 + enabled: 1 + startLifetime: + serializedVersion: 2 + minMaxState: 0 + scalar: 2 + minScalar: 5 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startSpeed: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 5 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startColor: + serializedVersion: 2 + minMaxState: 0 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + startSize: + serializedVersion: 2 + minMaxState: 0 + scalar: 5 + minScalar: 3 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startSizeY: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startSizeZ: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startRotationX: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startRotationY: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startRotation: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + randomizeRotationDirection: 0 + maxNumParticles: 1000 + size3D: 0 + rotation3D: 0 + gravityModifier: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + ShapeModule: + serializedVersion: 6 + enabled: 0 + type: 4 + angle: 25 + length: 5 + boxThickness: {x: 0, y: 0, z: 0} + radiusThickness: 1 + donutRadius: 0.2 + m_Position: {x: 0, y: 0, z: 0} + m_Rotation: {x: 0, y: 0, z: 0} + m_Scale: {x: 1, y: 1, z: 1} + placementMode: 0 + m_MeshMaterialIndex: 0 + m_MeshNormalOffset: 0 + m_MeshSpawn: + mode: 0 + spread: 0 + speed: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_Mesh: {fileID: 0} + m_MeshRenderer: {fileID: 0} + m_SkinnedMeshRenderer: {fileID: 0} + m_Sprite: {fileID: 0} + m_SpriteRenderer: {fileID: 0} + m_UseMeshMaterialIndex: 0 + m_UseMeshColors: 1 + alignToDirection: 0 + m_Texture: {fileID: 0} + m_TextureClipChannel: 3 + m_TextureClipThreshold: 0 + m_TextureUVChannel: 0 + m_TextureColorAffectsParticles: 1 + m_TextureAlphaAffectsParticles: 1 + m_TextureBilinearFiltering: 0 + randomDirectionAmount: 0 + sphericalDirectionAmount: 0 + randomPositionAmount: 0 + radius: + value: 1 + mode: 0 + spread: 0 + speed: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + arc: + value: 360 + mode: 0 + spread: 0 + speed: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + EmissionModule: + enabled: 1 + serializedVersion: 4 + rateOverTime: + serializedVersion: 2 + minMaxState: 0 + scalar: 500 + minScalar: 10 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + rateOverDistance: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_BurstCount: 0 + m_Bursts: [] + SizeModule: + enabled: 0 + curve: + serializedVersion: 2 + minMaxState: 1 + scalar: 4 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 2 + outSlope: 2 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 0.15039083 + value: 0.97053653 + inSlope: -0.04036486 + outSlope: -0.04036486 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.37395254 + value: 0.1353639 + inSlope: 0.03037455 + outSlope: 0.03037455 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.50258505 + - serializedVersion: 3 + time: 0.5234933 + value: 0.965686 + inSlope: -0.015838688 + outSlope: -0.015838688 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.5332359 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.80144876 + value: 0.13683647 + inSlope: 0.11682253 + outSlope: 0.11682253 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + z: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + separateAxes: 0 + RotationModule: + enabled: 0 + x: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + curve: + serializedVersion: 2 + minMaxState: 0 + scalar: 0.7853982 + minScalar: 0.7853982 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + separateAxes: 0 + ColorModule: + enabled: 0 + gradient: + serializedVersion: 2 + minMaxState: 1 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + UVModule: + serializedVersion: 2 + enabled: 0 + mode: 0 + timeMode: 1 + fps: 30 + frameOverTime: + serializedVersion: 2 + minMaxState: 1 + scalar: 0.9999 + minScalar: 0.9999 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startFrame: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + speedRange: {x: 0, y: 1} + tilesX: 5 + tilesY: 5 + animationType: 0 + rowIndex: 0 + cycles: 1 + uvChannelMask: -1 + rowMode: 1 + sprites: + - sprite: {fileID: 0} + flipU: 0 + flipV: 0 + VelocityModule: + enabled: 0 + x: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + z: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + orbitalX: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + orbitalY: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + orbitalZ: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + orbitalOffsetX: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + orbitalOffsetY: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + orbitalOffsetZ: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + radial: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + speedModifier: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + inWorldSpace: 0 + InheritVelocityModule: + enabled: 0 + m_Mode: 0 + m_Curve: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + LifetimeByEmitterSpeedModule: + enabled: 0 + m_Curve: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: -0.8 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0.2 + inSlope: -0.8 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_Range: {x: 0, y: 1} + ForceModule: + enabled: 0 + x: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + z: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + inWorldSpace: 0 + randomizePerFrame: 0 + ExternalForcesModule: + serializedVersion: 2 + enabled: 0 + multiplierCurve: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + influenceFilter: 0 + influenceMask: + serializedVersion: 2 + m_Bits: 4294967295 + influenceList: [] + ClampVelocityModule: + enabled: 0 + x: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + z: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + magnitude: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + separateAxis: 0 + inWorldSpace: 0 + multiplyDragByParticleSize: 1 + multiplyDragByParticleVelocity: 1 + dampen: 0 + drag: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + NoiseModule: + enabled: 1 + strength: + serializedVersion: 2 + minMaxState: 1 + scalar: 5 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: -1 + outSlope: -1 + tangentMode: 34 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: -1 + outSlope: -1 + tangentMode: 34 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + strengthY: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + strengthZ: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + separateAxes: 0 + frequency: 0.01 + damping: 1 + octaves: 1 + octaveMultiplier: 0.5 + octaveScale: 2 + quality: 2 + scrollSpeed: + serializedVersion: 2 + minMaxState: 0 + scalar: 0.1 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + remap: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: -1 + inSlope: 0 + outSlope: 2 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 2 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + remapY: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: -1 + inSlope: 0 + outSlope: 2 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 2 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + remapZ: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: -1 + inSlope: 0 + outSlope: 2 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 2 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + remapEnabled: 0 + positionAmount: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + rotationAmount: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + sizeAmount: + serializedVersion: 2 + minMaxState: 0 + scalar: 0.1 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + SizeBySpeedModule: + enabled: 0 + curve: + serializedVersion: 2 + minMaxState: 1 + scalar: 5 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 1 + outSlope: 1 + tangentMode: 34 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 1 + tangentMode: 34 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + z: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + range: {x: 0, y: 1} + separateAxes: 0 + RotationBySpeedModule: + enabled: 0 + x: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + curve: + serializedVersion: 2 + minMaxState: 0 + scalar: 0.7853982 + minScalar: 0.7853982 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + separateAxes: 0 + range: {x: 0, y: 1} + ColorBySpeedModule: + enabled: 0 + gradient: + serializedVersion: 2 + minMaxState: 1 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + range: {x: 0, y: 1} + CollisionModule: + enabled: 0 + serializedVersion: 4 + type: 0 + collisionMode: 0 + colliderForce: 0 + multiplyColliderForceByParticleSize: 0 + multiplyColliderForceByParticleSpeed: 0 + multiplyColliderForceByCollisionAngle: 1 + m_Planes: + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + m_Dampen: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_Bounce: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_EnergyLossOnCollision: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minKillSpeed: 0 + maxKillSpeed: 10000 + radiusScale: 1 + collidesWith: + serializedVersion: 2 + m_Bits: 4294967295 + maxCollisionShapes: 256 + quality: 0 + voxelSize: 0.5 + collisionMessages: 0 + collidesWithDynamic: 1 + interiorCollisions: 0 + TriggerModule: + enabled: 0 + serializedVersion: 2 + inside: 1 + outside: 0 + enter: 0 + exit: 0 + colliderQueryMode: 0 + radiusScale: 1 + primitives: + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + SubModule: + serializedVersion: 2 + enabled: 0 + subEmitters: + - serializedVersion: 3 + emitter: {fileID: 0} + type: 0 + properties: 0 + emitProbability: 1 + LightsModule: + enabled: 0 + ratio: 0 + light: {fileID: 0} + randomDistribution: 1 + color: 1 + range: 1 + intensity: 1 + rangeCurve: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + intensityCurve: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + maxLights: 20 + TrailModule: + enabled: 1 + mode: 1 + ratio: 1 + lifetime: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minVertexDistance: 0.2 + textureMode: 0 + ribbonCount: 1 + shadowBias: 0.5 + worldSpace: 0 + dieWithParticles: 1 + sizeAffectsWidth: 1 + sizeAffectsLifetime: 0 + inheritParticleColor: 1 + generateLightingData: 0 + splitSubEmitterRibbons: 0 + attachRibbonsToTransform: 1 + colorOverLifetime: + serializedVersion: 2 + minMaxState: 0 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + widthOverTrail: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: -1 + outSlope: -1 + tangentMode: 34 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: -1 + outSlope: -1 + tangentMode: 34 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + colorOverTrail: + serializedVersion: 2 + minMaxState: 1 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 0, g: 0, b: 0, a: 0} + key1: {r: 0.01, g: 0.01, b: 0.01, a: 1} + key2: {r: 1, g: 0.092499994, b: 0.00999999, a: 1} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 40557 + ctime2: 65535 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 8192 + atime2: 65535 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 3 + m_NumAlphaKeys: 3 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + CustomDataModule: + enabled: 0 + mode0: 1 + vectorComponentCount0: 2 + color0: + serializedVersion: 2 + minMaxState: 0 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + colorLabel0: Color + vector0_0: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel0_0: X + vector0_1: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel0_1: Y + vector0_2: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel0_2: Z + vector0_3: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel0_3: W + mode1: 0 + vectorComponentCount1: 4 + color1: + serializedVersion: 2 + minMaxState: 0 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + colorLabel1: Color + vector1_0: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel1_0: X + vector1_1: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel1_1: Y + vector1_2: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel1_2: Z + vector1_3: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel1_3: W +--- !u!199 &2200213684891960503 +ParticleSystemRenderer: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2200213684891960497} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 0 + m_ReflectionProbeUsage: 0 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 10308, guid: 0000000000000000f000000000000000, type: 0} + - {fileID: 2100000, guid: 483c8decd432d5e49ac166734cdd9d37, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_RenderMode: 5 + m_SortMode: 0 + m_MinParticleSize: 0 + m_MaxParticleSize: 0.5 + m_CameraVelocityScale: 0 + m_VelocityScale: 0 + m_LengthScale: 2 + m_SortingFudge: 0 + m_NormalDirection: 1 + m_ShadowBias: 0 + m_RenderAlignment: 0 + m_Pivot: {x: 0, y: 0, z: 0} + m_Flip: {x: 0, y: 0, z: 0} + m_UseCustomVertexStreams: 0 + m_EnableGPUInstancing: 1 + m_ApplyActiveColorSpace: 1 + m_AllowRoll: 1 + m_FreeformStretching: 0 + m_RotateWithStretchDirection: 1 + m_VertexStreams: 00010304 + m_Mesh: {fileID: 0} + m_Mesh1: {fileID: 0} + m_Mesh2: {fileID: 0} + m_Mesh3: {fileID: 0} + m_MaskInteraction: 0 +--- !u!1 &3015547693297330586 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5148235482537864796} + - component: {fileID: 8540408454168213454} + m_Layer: 0 + m_Name: Micromissile + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &5148235482537864796 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3015547693297330586} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 2200213683735813172} + - {fileID: 7703202934816564928} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &8540408454168213454 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3015547693297330586} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ee3949bbc28566148b9f661741b6e25d, type: 3} + m_Name: + m_EditorClassIdentifier: + ProjectilePrototype: {fileID: 2698694499776308069} +--- !u!1001 &7703470150373816180 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 5148235482537864796} + m_Modifications: + - target: {fileID: 1828176872806910, guid: 64891a0eb28db934898420d80ca07cb3, type: 3} + propertyPath: m_Name + value: SmallExplosion + objectReference: {fileID: 0} + - target: {fileID: 4361801158873524, guid: 64891a0eb28db934898420d80ca07cb3, type: 3} + propertyPath: m_RootOrder + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4361801158873524, guid: 64891a0eb28db934898420d80ca07cb3, type: 3} + propertyPath: m_LocalPosition.x + value: -0.50997305 + objectReference: {fileID: 0} + - target: {fileID: 4361801158873524, guid: 64891a0eb28db934898420d80ca07cb3, type: 3} + propertyPath: m_LocalPosition.y + value: 2.57 + objectReference: {fileID: 0} + - target: {fileID: 4361801158873524, guid: 64891a0eb28db934898420d80ca07cb3, type: 3} + propertyPath: m_LocalPosition.z + value: -20.12803 + objectReference: {fileID: 0} + - target: {fileID: 4361801158873524, guid: 64891a0eb28db934898420d80ca07cb3, type: 3} + propertyPath: m_LocalRotation.w + value: 0.7071068 + objectReference: {fileID: 0} + - target: {fileID: 4361801158873524, guid: 64891a0eb28db934898420d80ca07cb3, type: 3} + propertyPath: m_LocalRotation.x + value: -0.7071068 + objectReference: {fileID: 0} + - target: {fileID: 4361801158873524, guid: 64891a0eb28db934898420d80ca07cb3, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4361801158873524, guid: 64891a0eb28db934898420d80ca07cb3, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4361801158873524, guid: 64891a0eb28db934898420d80ca07cb3, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: -90 + objectReference: {fileID: 0} + - target: {fileID: 4361801158873524, guid: 64891a0eb28db934898420d80ca07cb3, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4361801158873524, guid: 64891a0eb28db934898420d80ca07cb3, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 64891a0eb28db934898420d80ca07cb3, type: 3} +--- !u!4 &7703202934816564928 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 4361801158873524, guid: 64891a0eb28db934898420d80ca07cb3, + type: 3} + m_PrefabInstance: {fileID: 7703470150373816180} + m_PrefabAsset: {fileID: 0} +--- !u!114 &332779026898239585 stripped +MonoBehaviour: + m_CorrespondingSourceObject: {fileID: 7959687425165588245, guid: 64891a0eb28db934898420d80ca07cb3, + type: 3} + m_PrefabInstance: {fileID: 7703470150373816180} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 1281fe44325f9b548aa42dc331b17266, type: 3} + m_Name: + m_EditorClassIdentifier: diff --git a/Assets/Resources/Prefabs/Weapons/AU/Leonid.prefab.meta b/Assets/Resources/Prefabs/Weapons/AU/Leonid.prefab.meta new file mode 100644 index 000000000..59a26a438 --- /dev/null +++ b/Assets/Resources/Prefabs/Weapons/AU/Leonid.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: ce69da110ba4dab45b90d4c9c9b0f5b5 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Resources/Settings.asset b/Assets/Resources/Settings.asset index 9ac441697..09fc7f5fc 100644 --- a/Assets/Resources/Settings.asset +++ b/Assets/Resources/Settings.asset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6b704c433b7f8c86d7aa2270d211ed9bfaed697f9710cb7ff6ab887ef3e98432 -size 11394 +oid sha256:a3465a4e853cc9022a272e6be4210aacd246f6cb5ce6b3856d01e619ead23ddd +size 11570 diff --git a/Assets/Resources/Slime Gravity.renderTexture b/Assets/Resources/Slime Gravity.renderTexture new file mode 100644 index 000000000..1217fbd13 --- /dev/null +++ b/Assets/Resources/Slime Gravity.renderTexture @@ -0,0 +1,38 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!84 &8400000 +RenderTexture: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Slime Gravity + m_ImageContentsHash: + serializedVersion: 2 + Hash: 00000000000000000000000000000000 + m_ForcedFallbackFormat: 4 + m_DownscaleFallback: 0 + m_IsAlphaChannelOptional: 0 + serializedVersion: 3 + m_Width: 1024 + m_Height: 1024 + m_AntiAliasing: 1 + m_MipCount: -1 + m_DepthFormat: 0 + m_ColorFormat: 49 + m_MipMap: 0 + m_GenerateMips: 1 + m_SRGB: 0 + m_UseDynamicScale: 0 + m_BindMS: 0 + m_EnableCompatibleFormat: 1 + m_TextureSettings: + serializedVersion: 2 + m_FilterMode: 1 + m_Aniso: 0 + m_MipBias: 0 + m_WrapU: 1 + m_WrapV: 1 + m_WrapW: 1 + m_Dimension: 2 + m_VolumeDepth: 1 diff --git a/Assets/Resources/Slime Gravity.renderTexture.meta b/Assets/Resources/Slime Gravity.renderTexture.meta new file mode 100644 index 000000000..f99fa5d61 --- /dev/null +++ b/Assets/Resources/Slime Gravity.renderTexture.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: cc403ed0b6a104445b6534b1877c5556 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scenes/ARPG.unity b/Assets/Scenes/ARPG.unity index 8a52dc6e8..19cb02023 100644 --- a/Assets/Scenes/ARPG.unity +++ b/Assets/Scenes/ARPG.unity @@ -1890,7 +1890,7 @@ RectTransform: - {fileID: 1868140981} - {fileID: 1080776604} m_Father: {fileID: 761574181} - m_RootOrder: 8 + m_RootOrder: 7 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} @@ -2231,7 +2231,7 @@ Transform: - {fileID: 488792361} - {fileID: 970624070} m_Father: {fileID: 1665127616} - m_RootOrder: 4 + m_RootOrder: 6 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &200920995 GameObject: @@ -3011,8 +3011,6 @@ GameObject: - component: {fileID: 225222197} - component: {fileID: 225222202} - component: {fileID: 225222201} - - component: {fileID: 225222200} - - component: {fileID: 225222199} - component: {fileID: 225222198} m_Layer: 0 m_Name: Sector Camera @@ -3033,7 +3031,7 @@ Transform: m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1665127616} - m_RootOrder: 6 + m_RootOrder: 8 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &225222198 MonoBehaviour: @@ -3050,42 +3048,6 @@ MonoBehaviour: _shader: {fileID: 4800000, guid: 2d020ca820b3647479e78b8c3d26e3a6, type: 3} _downSampleMode: 2 _iteration: 4 ---- !u!114 &225222199 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 225222196} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 4ae335524e949404bb57f1612ec4b9b5, type: 3} - m_Name: - m_EditorClassIdentifier: - isDefaultListener: 1 - listenerId: 0 ---- !u!114 &225222200 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 225222196} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: f27db6b94e477054e96392f94dc50c9d, type: 3} - m_Name: - m_EditorClassIdentifier: - m_listeners: - initialListenerList: [] - useDefaultListeners: 1 - isEnvironmentAware: 0 - isStaticObject: 0 - m_positionOffsetData: - KeepMe: 0 - positionOffset: {x: 0, y: 0, z: 0} - m_posOffsetData: {fileID: 0} - listenerMask: 1 --- !u!114 &225222201 MonoBehaviour: m_ObjectHideFlags: 0 @@ -4545,6 +4507,7 @@ GameObject: serializedVersion: 6 m_Component: - component: {fileID: 346000247} + - component: {fileID: 346000248} m_Layer: 5 m_Name: Gameplay m_TagString: Untagged @@ -4577,13 +4540,25 @@ RectTransform: - {fileID: 146394775} - {fileID: 1787772780} m_Father: {fileID: 761574181} - m_RootOrder: 3 + m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0.5, y: 0.5} +--- !u!225 &346000248 +CanvasGroup: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 346000246} + m_Enabled: 1 + m_Alpha: 1 + m_Interactable: 1 + m_BlocksRaycasts: 1 + m_IgnoreParentGroups: 0 --- !u!114 &346333149 stripped MonoBehaviour: m_CorrespondingSourceObject: {fileID: 1713457305180270767, guid: 2758dfa2744d7ad4d8877545189d116e, @@ -4716,7 +4691,7 @@ MonoBehaviour: m_PivotOffset: {x: 0, y: 0, z: 0} m_AmplitudeGain: 0.25 m_FrequencyGain: 0.5 - mNoiseOffsets: {x: 0, y: 0, z: 0} + mNoiseOffsets: {x: 191.71204, y: -207.06473, z: 153.18213} --- !u!114 &359038943 MonoBehaviour: m_ObjectHideFlags: 3 @@ -4893,7 +4868,7 @@ Transform: m_Children: - {fileID: 359038939} m_Father: {fileID: 1665127616} - m_RootOrder: 1 + m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &393266593 MonoBehaviour: @@ -7163,7 +7138,7 @@ RectTransform: m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 761574181} - m_RootOrder: 9 + m_RootOrder: 8 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} @@ -8327,6 +8302,95 @@ MeshFilter: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 542243545} m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &543699678 +GameObject: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 543699679} + - component: {fileID: 543699683} + - component: {fileID: 543699682} + - component: {fileID: 543699681} + - component: {fileID: 543699680} + m_Layer: 0 + m_Name: cm + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &543699679 +Transform: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 543699678} + m_LocalRotation: {x: -0.2677866, y: 0.37796336, z: -0.115197934, w: 0.87872833} + m_LocalPosition: {x: 0.27700424, y: 0.74153686, z: 4.1357794} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 1644480538} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &543699680 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 543699678} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: a4c41ac9245b87c4192012080077d830, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Damping: 0 +--- !u!114 &543699681 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 543699678} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 36d1163fa822e8b418a0a603ec078d5c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Damping: 0 +--- !u!114 &543699682 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 543699678} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 68bb026fafb42b14791938953eaace77, type: 3} + m_Name: + m_EditorClassIdentifier: + m_NoiseProfile: {fileID: 11400000, guid: 46965f9cbaf525742a6da4c2172a99cd, type: 2} + m_PivotOffset: {x: 0, y: 0, z: 0} + m_AmplitudeGain: 0.25 + m_FrequencyGain: 0.5 + mNoiseOffsets: {x: 475.8005, y: 564.4719, z: 192.36002} +--- !u!114 &543699683 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 543699678} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ac0b09e7857660247b1477e93731de29, type: 3} + m_Name: + m_EditorClassIdentifier: --- !u!1 &545103407 GameObject: m_ObjectHideFlags: 0 @@ -8984,7 +9048,7 @@ RectTransform: - {fileID: 738229276} - {fileID: 947321578} m_Father: {fileID: 761574181} - m_RootOrder: 6 + m_RootOrder: 5 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} @@ -11282,7 +11346,6 @@ RectTransform: m_Children: - {fileID: 1273980439} - {fileID: 411347519} - - {fileID: 1723136546} - {fileID: 346000247} - {fileID: 1726632265} - {fileID: 1420548308} @@ -11290,6 +11353,7 @@ RectTransform: - {fileID: 1157981992} - {fileID: 178733680} - {fileID: 472507698} + - {fileID: 1723136546} m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} @@ -12281,7 +12345,7 @@ Transform: - {fileID: 1075335641} - {fileID: 166261017} m_Father: {fileID: 1665127616} - m_RootOrder: 5 + m_RootOrder: 7 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &831892783 GameObject: @@ -12897,7 +12961,7 @@ Transform: m_Children: - {fileID: 1319157835} m_Father: {fileID: 1665127616} - m_RootOrder: 0 + m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &906767441 GameObject: @@ -14695,7 +14759,7 @@ Transform: m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1665127616} - m_RootOrder: 7 + m_RootOrder: 9 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!20 &1005979868 Camera: @@ -14800,14 +14864,11 @@ MonoBehaviour: Credits: 100000000 TargetSpottedBlinkFrequency: 20 TargetSpottedBlinkOffset: -0.25 - NameFile: {fileID: 4900000, guid: 8ba25d5d0ecee31408c7ce7460b4e015, type: 3} - NameGeneratorMinLength: 5 - NameGeneratorMaxLength: 10 - NameGeneratorOrder: 4 - DeathPPTransitionTime: 3 + DeathPPTransitionTime: 1 DeathPP: {fileID: 803284856} HeatstrokePP: {fileID: 1404901906} SevereHeatstrokePP: {fileID: 837424435} + EffectManagerParent: {fileID: 134113271} TradeMenu: {fileID: 522642869} HostileTargetIndicator: {fileID: 1787772783} ViewDot: {fileID: 146394778} @@ -14823,16 +14884,18 @@ MonoBehaviour: ZoneRenderer: {fileID: 1009503731} DockCamera: {fileID: 393266593} FollowCamera: {fileID: 887677622} - GameplayUI: {fileID: 346000246} + WormholeCamera: {fileID: 1644480539} + GameplayUI: {fileID: 346000248} Menu: {fileID: 1726632268} MenuMap: {fileID: 630131162} - SectorMap: {fileID: 0} + SectorMap: {fileID: 2132980328} SchematicDisplay: {fileID: 7628189704109037584} TargetSchematicDisplay: {fileID: 410701129} Inventory: {fileID: 1997243495} ShipPanel: {fileID: 7628189704109037582} TargetShipPanel: {fileID: 410701133} Dialog: {fileID: 620555924} + IntroDuration: 10 --- !u!4 &1009503730 Transform: m_ObjectHideFlags: 0 @@ -14862,7 +14925,6 @@ MonoBehaviour: WormholePrefab: {fileID: 463084220523011477, guid: 4a77c480b4bb2a148954bd57dfe91d0b, type: 3} EntityFadeTime: 3 - EffectManagerParent: {fileID: 134113271} FogCameraParent: {fileID: 1547889399} Settings: {fileID: 11400000, guid: cd2344e2001a37544aab0960c164d4ff, type: 2} ZoneRoot: {fileID: 2095699057} @@ -14944,6 +15006,8 @@ MonoBehaviour: AsteroidSpritesheetWidth: 4 AsteroidSpritesheetHeight: 4 LODHandler: {fileID: 1009503736} + SlimeRenderer: {fileID: 0} + SlimeGravityCamera: {fileID: 0} Tour: 0 TourSwitchTime: 10 TourFollowDistance: 100 @@ -15736,6 +15800,80 @@ CanvasRenderer: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1060591358} m_CullTransparentMesh: 0 +--- !u!1 &1066823973 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1066823974} + - component: {fileID: 1066823975} + m_Layer: 0 + m_Name: Slime Gravity Renderer + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1066823974 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1066823973} + m_LocalRotation: {x: 0.7071068, y: 0, z: 0, w: 0.7071068} + m_LocalPosition: {x: 0, y: 10, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 1665127616} + m_RootOrder: 4 + m_LocalEulerAnglesHint: {x: 90, y: 0, z: 0} +--- !u!20 &1066823975 +Camera: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1066823973} + m_Enabled: 1 + serializedVersion: 2 + m_ClearFlags: 2 + m_BackGroundColor: {r: 0, g: 0, b: 0, a: 0} + m_projectionMatrixMode: 1 + m_GateFitMode: 2 + m_FOVAxisMode: 0 + m_SensorSize: {x: 36, y: 24} + m_LensShift: {x: 0, y: 0} + m_FocalLength: 50 + m_NormalizedViewPortRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 1 + height: 1 + near clip plane: 0.3 + far clip plane: 1000 + field of view: 60 + orthographic: 1 + orthographic size: 1000 + m_Depth: 0 + m_CullingMask: + serializedVersion: 2 + m_Bits: 1536 + m_RenderingPath: 1 + m_TargetTexture: {fileID: 8400000, guid: cc403ed0b6a104445b6534b1877c5556, type: 2} + m_TargetDisplay: 0 + m_TargetEye: 3 + m_HDR: 1 + m_AllowMSAA: 0 + m_AllowDynamicResolution: 0 + m_ForceIntoRT: 0 + m_OcclusionCulling: 0 + m_StereoConvergence: 10 + m_StereoSeparation: 0.022 --- !u!1 &1075335640 GameObject: m_ObjectHideFlags: 0 @@ -16488,7 +16626,7 @@ RectTransform: - {fileID: 1505831357} - {fileID: 1741914910} m_Father: {fileID: 761574181} - m_RootOrder: 7 + m_RootOrder: 6 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} @@ -16911,6 +17049,168 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!1001 &1175122070 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 2056162322} + m_Modifications: + - target: {fileID: 3462739465108434284, guid: c7113183a38d6f84b8ffe6fa7c342896, + type: 3} + propertyPath: m_Name + value: Text Button + objectReference: {fileID: 0} + - target: {fileID: 3462739465108434285, guid: c7113183a38d6f84b8ffe6fa7c342896, + type: 3} + propertyPath: m_Pivot.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3462739465108434285, guid: c7113183a38d6f84b8ffe6fa7c342896, + type: 3} + propertyPath: m_Pivot.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3462739465108434285, guid: c7113183a38d6f84b8ffe6fa7c342896, + type: 3} + propertyPath: m_RootOrder + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 3462739465108434285, guid: c7113183a38d6f84b8ffe6fa7c342896, + type: 3} + propertyPath: m_AnchorMax.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3462739465108434285, guid: c7113183a38d6f84b8ffe6fa7c342896, + type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3462739465108434285, guid: c7113183a38d6f84b8ffe6fa7c342896, + type: 3} + propertyPath: m_AnchorMin.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3462739465108434285, guid: c7113183a38d6f84b8ffe6fa7c342896, + type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3462739465108434285, guid: c7113183a38d6f84b8ffe6fa7c342896, + type: 3} + propertyPath: m_SizeDelta.x + value: 128 + objectReference: {fileID: 0} + - target: {fileID: 3462739465108434285, guid: c7113183a38d6f84b8ffe6fa7c342896, + type: 3} + propertyPath: m_SizeDelta.y + value: 32 + objectReference: {fileID: 0} + - target: {fileID: 3462739465108434285, guid: c7113183a38d6f84b8ffe6fa7c342896, + type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3462739465108434285, guid: c7113183a38d6f84b8ffe6fa7c342896, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3462739465108434285, guid: c7113183a38d6f84b8ffe6fa7c342896, + type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3462739465108434285, guid: c7113183a38d6f84b8ffe6fa7c342896, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 3462739465108434285, guid: c7113183a38d6f84b8ffe6fa7c342896, + type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3462739465108434285, guid: c7113183a38d6f84b8ffe6fa7c342896, + type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3462739465108434285, guid: c7113183a38d6f84b8ffe6fa7c342896, + type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3462739465108434285, guid: c7113183a38d6f84b8ffe6fa7c342896, + type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3462739465108434285, guid: c7113183a38d6f84b8ffe6fa7c342896, + type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3462739465108434285, guid: c7113183a38d6f84b8ffe6fa7c342896, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3462739465108434285, guid: c7113183a38d6f84b8ffe6fa7c342896, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3462739465108434285, guid: c7113183a38d6f84b8ffe6fa7c342896, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3462739465108434287, guid: c7113183a38d6f84b8ffe6fa7c342896, + type: 3} + propertyPath: m_text + value: Preview Path + objectReference: {fileID: 0} + - target: {fileID: 3462739465108434287, guid: c7113183a38d6f84b8ffe6fa7c342896, + type: 3} + propertyPath: m_fontSize + value: 18 + objectReference: {fileID: 0} + - target: {fileID: 3462739465108434287, guid: c7113183a38d6f84b8ffe6fa7c342896, + type: 3} + propertyPath: m_fontSizeBase + value: 18 + objectReference: {fileID: 0} + - target: {fileID: 3462739465108434287, guid: c7113183a38d6f84b8ffe6fa7c342896, + type: 3} + propertyPath: m_VerticalAlignment + value: 512 + objectReference: {fileID: 0} + - target: {fileID: 3462739465108434287, guid: c7113183a38d6f84b8ffe6fa7c342896, + type: 3} + propertyPath: m_HorizontalAlignment + value: 2 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: c7113183a38d6f84b8ffe6fa7c342896, type: 3} +--- !u!224 &1175122071 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 3462739465108434285, guid: c7113183a38d6f84b8ffe6fa7c342896, + type: 3} + m_PrefabInstance: {fileID: 1175122070} + m_PrefabAsset: {fileID: 0} +--- !u!114 &1175122072 stripped +MonoBehaviour: + m_CorrespondingSourceObject: {fileID: 3462739465108434286, guid: c7113183a38d6f84b8ffe6fa7c342896, + type: 3} + m_PrefabInstance: {fileID: 1175122070} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} + m_Name: + m_EditorClassIdentifier: --- !u!114 &1176624628 stripped MonoBehaviour: m_CorrespondingSourceObject: {fileID: 3501282941175030939, guid: 2758dfa2744d7ad4d8877545189d116e, @@ -17366,6 +17666,95 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 2da0c512f12947e489f739169773d7ca, type: 3} m_Name: m_EditorClassIdentifier: +--- !u!1001 &1254851253 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 6977256487485077368, guid: efd1f097ce29ffa48bb0045d6502f55d, + type: 3} + propertyPath: m_Name + value: Slime Renderer + objectReference: {fileID: 0} + - target: {fileID: 6977256487485077368, guid: efd1f097ce29ffa48bb0045d6502f55d, + type: 3} + propertyPath: m_Layer + value: 13 + objectReference: {fileID: 0} + - target: {fileID: 6977256487485077373, guid: efd1f097ce29ffa48bb0045d6502f55d, + type: 3} + propertyPath: m_RootOrder + value: 10 + objectReference: {fileID: 0} + - target: {fileID: 6977256487485077373, guid: efd1f097ce29ffa48bb0045d6502f55d, + type: 3} + propertyPath: m_LocalScale.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 6977256487485077373, guid: efd1f097ce29ffa48bb0045d6502f55d, + type: 3} + propertyPath: m_LocalScale.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 6977256487485077373, guid: efd1f097ce29ffa48bb0045d6502f55d, + type: 3} + propertyPath: m_LocalScale.z + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 6977256487485077373, guid: efd1f097ce29ffa48bb0045d6502f55d, + type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6977256487485077373, guid: efd1f097ce29ffa48bb0045d6502f55d, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6977256487485077373, guid: efd1f097ce29ffa48bb0045d6502f55d, + type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6977256487485077373, guid: efd1f097ce29ffa48bb0045d6502f55d, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.7071068 + objectReference: {fileID: 0} + - target: {fileID: 6977256487485077373, guid: efd1f097ce29ffa48bb0045d6502f55d, + type: 3} + propertyPath: m_LocalRotation.x + value: 0.7071068 + objectReference: {fileID: 0} + - target: {fileID: 6977256487485077373, guid: efd1f097ce29ffa48bb0045d6502f55d, + type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 6977256487485077373, guid: efd1f097ce29ffa48bb0045d6502f55d, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 6977256487485077373, guid: efd1f097ce29ffa48bb0045d6502f55d, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 90 + objectReference: {fileID: 0} + - target: {fileID: 6977256487485077373, guid: efd1f097ce29ffa48bb0045d6502f55d, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6977256487485077373, guid: efd1f097ce29ffa48bb0045d6502f55d, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: efd1f097ce29ffa48bb0045d6502f55d, type: 3} --- !u!1 &1261700233 GameObject: m_ObjectHideFlags: 0 @@ -19352,7 +19741,7 @@ RectTransform: m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 761574181} - m_RootOrder: 5 + m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -20986,7 +21375,7 @@ Transform: - {fileID: 1537342002} - {fileID: 39508928} m_Father: {fileID: 1665127616} - m_RootOrder: 3 + m_RootOrder: 5 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &1547889400 MonoBehaviour: @@ -21052,7 +21441,7 @@ PrefabInstance: - target: {fileID: 878382121558056004, guid: 2758dfa2744d7ad4d8877545189d116e, type: 3} propertyPath: m_AnchoredPosition.x - value: 55.675 + value: 0 objectReference: {fileID: 0} - target: {fileID: 878382121558056004, guid: 2758dfa2744d7ad4d8877545189d116e, type: 3} @@ -22221,7 +22610,7 @@ PrefabInstance: - target: {fileID: 878382121558056004, guid: 2758dfa2744d7ad4d8877545189d116e, type: 3} propertyPath: m_AnchoredPosition.x - value: 60.98 + value: 0 objectReference: {fileID: 0} - target: {fileID: 878382121558056004, guid: 2758dfa2744d7ad4d8877545189d116e, type: 3} @@ -22793,6 +23182,73 @@ CanvasRenderer: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1641720214} m_CullTransparentMesh: 0 +--- !u!1 &1644480537 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1644480538} + - component: {fileID: 1644480539} + m_Layer: 0 + m_Name: Wormhole Rig + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1644480538 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1644480537} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 543699679} + m_Father: {fileID: 1665127616} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &1644480539 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1644480537} + m_Enabled: 0 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 45e653bab7fb20e499bda25e1b646fea, type: 3} + m_Name: + m_EditorClassIdentifier: + m_ExcludedPropertiesInInspector: + - m_Script + m_LockStageInInspector: + m_StreamingVersion: 20170927 + m_Priority: 10 + m_StandbyUpdate: 2 + m_LookAt: {fileID: 0} + m_Follow: {fileID: 0} + m_Lens: + FieldOfView: 60 + OrthographicSize: 5 + NearClipPlane: 0.3 + FarClipPlane: 8192 + Dutch: 0 + LensShift: {x: 0, y: 0} + m_Transitions: + m_BlendHint: 0 + m_InheritPosition: 0 + m_OnCameraLive: + m_PersistentCalls: + m_Calls: [] + m_LegacyBlendHint: 0 + m_ComponentOwner: {fileID: 543699679} --- !u!1 &1647230681 GameObject: m_ObjectHideFlags: 0 @@ -22853,9 +23309,11 @@ Transform: m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: + - {fileID: 1644480538} - {fileID: 887677623} - {fileID: 393266592} - {fileID: 2115559090} + - {fileID: 1066823974} - {fileID: 1547889399} - {fileID: 199435031} - {fileID: 826773974} @@ -23439,7 +23897,7 @@ RectTransform: m_Children: - {fileID: 460484049} m_Father: {fileID: 761574181} - m_RootOrder: 2 + m_RootOrder: 9 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0.5} m_AnchorMax: {x: 1, y: 1} @@ -23458,6 +23916,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 60214997723e68547b9c784ebda51d9a, type: 3} m_Name: m_EditorClassIdentifier: + GameManager: {fileID: 1009503729} ViewContainer: {fileID: 460484048} LogTextArea: {fileID: 825923021} InputArea: {fileID: 1973552682} @@ -23573,7 +24032,7 @@ RectTransform: - {fileID: 2056162322} - {fileID: 1783772015} m_Father: {fileID: 761574181} - m_RootOrder: 4 + m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -26445,12 +26904,22 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 59b26802254e34b4bb26f48d0d8b51bf, type: 3} m_Name: m_EditorClassIdentifier: + Canvas: {fileID: 761574180} + Map: {fileID: 2132980328} GameManager: {fileID: 1009503729} + MainCamera: {fileID: 2115559089} SectorCamera: {fileID: 225222202} SectorBackgroundRenderer: {fileID: 1566772337} ZoomSpeed: 0.025 MinViewSize: 0.1 MaxViewSize: 2 + PathAnimationButton: {fileID: 1175122072} + PathAnimationDamping: 0.01 + PathAnimationDuration: 30 + PathAnimationDurationPadding: 1.1 + LegendPanel: {fileID: 1005841431} + LinkAnimationDuration: 1 + IconAnimationDuration: 0.5 --- !u!222 &1998350932 CanvasRenderer: m_ObjectHideFlags: 0 @@ -26942,6 +27411,7 @@ RectTransform: m_Children: - {fileID: 1998350929} - {fileID: 1005841432} + - {fileID: 1175122071} m_Father: {fileID: 1726632265} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} @@ -27786,7 +28256,7 @@ Transform: m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1665127616} - m_RootOrder: 2 + m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &2115559091 MonoBehaviour: @@ -28299,7 +28769,7 @@ MonoBehaviour: ZoneLinkMaterial: {fileID: 2100000, guid: a8d716e09aea7ce48a1220980f19b494, type: 2} MegaPrimaryBoost: 0.75 MegaSecondaryBoost: 2 - MegaLinkBoost: 2 + MegaLinkBoost: 3 EntranceIcon: {fileID: 2800000, guid: 9025249fbeb4b594680d2749b521bb41, type: 3} ExitIcon: {fileID: 2800000, guid: cb18d00f3b884e24da71c10aa20a1a18, type: 3} BossIcon: {fileID: 2800000, guid: 66887e71b9b25b94baa1da4bf12b490d, type: 3} @@ -28308,6 +28778,50 @@ MonoBehaviour: IconDistance: 1 IconBackgroundSize: 3 LabelDistance: 0.4 + LinkWidth: 0.002 + CriticalLinkWidth: 0.005 + IconScaleAnimation: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0.06951711 + outSlope: 0.06951711 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0.40278435 + - serializedVersion: 3 + time: 0.14126952 + value: 0.86514527 + inSlope: 7.18391 + outSlope: 7.18391 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.18275645 + outWeight: 0.050399058 + - serializedVersion: 3 + time: 0.5151206 + value: 0.7759909 + inSlope: 0.021693684 + outSlope: 0.021693684 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: -0.19486254 + outSlope: -0.19486254 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 --- !u!4 &2132980329 Transform: m_ObjectHideFlags: 0 diff --git a/Assets/Scenes/ARPG_Profiles/Postprocessing Profile Death.asset b/Assets/Scenes/ARPG_Profiles/Postprocessing Profile Death.asset index dd707b620..5151b26ec 100644 --- a/Assets/Scenes/ARPG_Profiles/Postprocessing Profile Death.asset +++ b/Assets/Scenes/ARPG_Profiles/Postprocessing Profile Death.asset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ec11ada2de5bddcc73f1d0172f95887a2bee6ce4c028292a6b33cbb6c96ac78f -size 26338 +oid sha256:478cb1f1349c7b06a2867ae804b9d32ed946d7966fdff1a39a2c804389072ec9 +size 26337 diff --git a/Assets/Scenes/ARPG_Profiles/Postprocessing Profile.asset b/Assets/Scenes/ARPG_Profiles/Postprocessing Profile.asset index 58a75ec3c..7eec6ac0f 100644 --- a/Assets/Scenes/ARPG_Profiles/Postprocessing Profile.asset +++ b/Assets/Scenes/ARPG_Profiles/Postprocessing Profile.asset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:567805de3c4efaf1908e2e0faa4822c68fc3ca7e8037433660ace6d22cdd2ede -size 25673 +oid sha256:0734611d7369efd5a964a04decf9862804d1ea04014261c65c495ac740daa0d1 +size 26335 diff --git a/Assets/Scenes/Main Menu.unity b/Assets/Scenes/Main Menu.unity index e6315a752..6f60d0f11 100644 --- a/Assets/Scenes/Main Menu.unity +++ b/Assets/Scenes/Main Menu.unity @@ -229,12 +229,12 @@ PrefabInstance: - target: {fileID: 878382121558056004, guid: 2758dfa2744d7ad4d8877545189d116e, type: 3} propertyPath: m_AnchorMax.y - value: 0 + value: 1 objectReference: {fileID: 0} - target: {fileID: 878382121558056004, guid: 2758dfa2744d7ad4d8877545189d116e, type: 3} propertyPath: m_AnchorMin.y - value: 0 + value: 1 objectReference: {fileID: 0} - target: {fileID: 878382121558056004, guid: 2758dfa2744d7ad4d8877545189d116e, type: 3} @@ -249,12 +249,12 @@ PrefabInstance: - target: {fileID: 878382121558056004, guid: 2758dfa2744d7ad4d8877545189d116e, type: 3} propertyPath: m_AnchoredPosition.x - value: 0 + value: 60.98 objectReference: {fileID: 0} - target: {fileID: 878382121558056004, guid: 2758dfa2744d7ad4d8877545189d116e, type: 3} propertyPath: m_AnchoredPosition.y - value: 0 + value: -16 objectReference: {fileID: 0} - target: {fileID: 1713457305180270767, guid: 2758dfa2744d7ad4d8877545189d116e, type: 3} @@ -2702,12 +2702,12 @@ PrefabInstance: - target: {fileID: 878382121558056004, guid: 2758dfa2744d7ad4d8877545189d116e, type: 3} propertyPath: m_AnchorMax.y - value: 0 + value: 1 objectReference: {fileID: 0} - target: {fileID: 878382121558056004, guid: 2758dfa2744d7ad4d8877545189d116e, type: 3} propertyPath: m_AnchorMin.y - value: 0 + value: 1 objectReference: {fileID: 0} - target: {fileID: 878382121558056004, guid: 2758dfa2744d7ad4d8877545189d116e, type: 3} @@ -2722,12 +2722,12 @@ PrefabInstance: - target: {fileID: 878382121558056004, guid: 2758dfa2744d7ad4d8877545189d116e, type: 3} propertyPath: m_AnchoredPosition.x - value: 0 + value: 55.675 objectReference: {fileID: 0} - target: {fileID: 878382121558056004, guid: 2758dfa2744d7ad4d8877545189d116e, type: 3} propertyPath: m_AnchoredPosition.y - value: 0 + value: -16 objectReference: {fileID: 0} - target: {fileID: 1713457305180270767, guid: 2758dfa2744d7ad4d8877545189d116e, type: 3} @@ -3966,10 +3966,10 @@ RectTransform: m_Father: {fileID: 6584140821722344271} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 0, y: 0} + m_AnchorMin: {x: 0, y: 1} + m_AnchorMax: {x: 0, y: 1} m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 144.0148} m_Pivot: {x: 0, y: 1} --- !u!114 &6584140821494235354 MonoBehaviour: @@ -4009,8 +4009,8 @@ MonoBehaviour: terminus' m_isRightToLeft: 0 - m_fontAsset: {fileID: 11400000, guid: f65e20c70af9671428dd62c7c635e417, type: 2} - m_sharedMaterial: {fileID: 21790448164444372, guid: f65e20c70af9671428dd62c7c635e417, + m_fontAsset: {fileID: 11400000, guid: 1c5e8a01819db8d4b812bf3d3eecd389, type: 2} + m_sharedMaterial: {fileID: -3344498693056860517, guid: 1c5e8a01819db8d4b812bf3d3eecd389, type: 2} m_fontSharedMaterials: [] m_fontMaterial: {fileID: 0} diff --git a/Assets/Scenes/TestScene.unity b/Assets/Scenes/TestScene.unity index 7deaa14db..e64082f0f 100644 --- a/Assets/Scenes/TestScene.unity +++ b/Assets/Scenes/TestScene.unity @@ -160,7 +160,7 @@ RectTransform: m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 1.3049984, y: 0} - m_SizeDelta: {x: 0, y: 0} + m_SizeDelta: {x: 2.14, y: 0.45} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &62236175 MonoBehaviour: @@ -341,10 +341,10 @@ RectTransform: m_Father: {fileID: 1187011252} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 0, y: 0} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 0, y: 0} + m_AnchorMin: {x: 0, y: 1} + m_AnchorMax: {x: 0, y: 1} + m_AnchoredPosition: {x: 36, y: -72} + m_SizeDelta: {x: 64, y: 12} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &67477254 MonoBehaviour: @@ -537,188 +537,6 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 ---- !u!1 &104940725 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 104940730} - - component: {fileID: 104940729} - - component: {fileID: 104940727} - - component: {fileID: 104940728} - - component: {fileID: 104940731} - - component: {fileID: 104940726} - m_Layer: 0 - m_Name: Main Camera - m_TagString: MainCamera - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!114 &104940726 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 104940725} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 4ae335524e949404bb57f1612ec4b9b5, type: 3} - m_Name: - m_EditorClassIdentifier: - isDefaultListener: 1 - listenerId: 0 ---- !u!124 &104940727 -Behaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 104940725} - m_Enabled: 1 ---- !u!114 &104940728 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 104940725} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 948f4100a11a5c24981795d21301da5c, type: 3} - m_Name: - m_EditorClassIdentifier: - volumeTrigger: {fileID: 104940730} - volumeLayer: - serializedVersion: 2 - m_Bits: 256 - stopNaNPropagation: 1 - finalBlitToCameraTarget: 0 - antialiasingMode: 3 - temporalAntialiasing: - jitterSpread: 0.75 - sharpness: 0.25 - stationaryBlending: 0.95 - motionBlending: 0 - subpixelMorphologicalAntialiasing: - quality: 2 - fastApproximateAntialiasing: - fastMode: 0 - keepAlpha: 0 - fog: - enabled: 1 - excludeSkybox: 1 - debugLayer: - lightMeter: - width: 512 - height: 256 - showCurves: 1 - histogram: - width: 512 - height: 256 - channel: 3 - waveform: - exposure: 0.12 - height: 256 - vectorscope: - size: 256 - exposure: 0.12 - overlaySettings: - linearDepth: 0 - motionColorIntensity: 4 - motionGridSize: 64 - colorBlindnessType: 0 - colorBlindnessStrength: 1 - m_Resources: {fileID: 11400000, guid: d82512f9c8e5d4a4d938b575d47f88d4, type: 2} - m_ShowToolkit: 0 - m_ShowCustomSorter: 0 - breakBeforeColorGrading: 0 - m_BeforeTransparentBundles: [] - m_BeforeStackBundles: [] - m_AfterStackBundles: [] ---- !u!20 &104940729 -Camera: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 104940725} - m_Enabled: 1 - serializedVersion: 2 - m_ClearFlags: 2 - m_BackGroundColor: {r: 0.199, g: 0.199, b: 0.199, a: 0.019607844} - m_projectionMatrixMode: 1 - m_GateFitMode: 2 - m_FOVAxisMode: 0 - m_SensorSize: {x: 36, y: 24} - m_LensShift: {x: 0, y: 0} - m_FocalLength: 50 - m_NormalizedViewPortRect: - serializedVersion: 2 - x: 0 - y: 0 - width: 1 - height: 1 - near clip plane: 0.3 - far clip plane: 1000 - field of view: 60 - orthographic: 0 - orthographic size: 5 - m_Depth: 0 - m_CullingMask: - serializedVersion: 2 - m_Bits: 4294967295 - m_RenderingPath: -1 - m_TargetTexture: {fileID: 0} - m_TargetDisplay: 0 - m_TargetEye: 3 - m_HDR: 1 - m_AllowMSAA: 1 - m_AllowDynamicResolution: 0 - m_ForceIntoRT: 0 - m_OcclusionCulling: 1 - m_StereoConvergence: 10 - m_StereoSeparation: 0.022 ---- !u!4 &104940730 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 104940725} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: -10} - m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: [] - m_Father: {fileID: 310526803} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &104940731 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 104940725} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: f27db6b94e477054e96392f94dc50c9d, type: 3} - m_Name: - m_EditorClassIdentifier: - m_listeners: - initialListenerList: [] - useDefaultListeners: 1 - isEnvironmentAware: 0 - isStaticObject: 0 - m_positionOffsetData: - KeepMe: 0 - positionOffset: {x: 0, y: 0, z: 0} - m_posOffsetData: {fileID: 0} - listenerMask: 1 --- !u!1 &115022188 GameObject: m_ObjectHideFlags: 0 @@ -890,6 +708,87 @@ MeshFilter: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 162042368} m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &215995290 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 215995291} + - component: {fileID: 215995293} + - component: {fileID: 215995292} + m_Layer: 10 + m_Name: Waves Small + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &215995291 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 215995290} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 789220865} + m_RootOrder: 2 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!23 &215995292 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 215995290} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 0 + m_MotionVectors: 2 + m_LightProbeUsage: 0 + m_ReflectionProbeUsage: 0 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: e97eca60a6e85da46bb97bdfec12326b, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &215995293 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 215995290} + m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0} --- !u!1 &240056260 GameObject: m_ObjectHideFlags: 0 @@ -1032,10 +931,10 @@ RectTransform: m_Father: {fileID: 1187011252} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 0, y: 0} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 0, y: 0} + m_AnchorMin: {x: 0, y: 1} + m_AnchorMax: {x: 0, y: 1} + m_AnchoredPosition: {x: 36, y: -44} + m_SizeDelta: {x: 64, y: 12} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &302169898 MonoBehaviour: @@ -1057,51 +956,6 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 ---- !u!1 &310526802 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 310526803} - - component: {fileID: 310526804} - m_Layer: 0 - m_Name: CameraCenter - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 0 ---- !u!4 &310526803 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 310526802} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: - - {fileID: 104940730} - m_Father: {fileID: 0} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &310526804 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 310526802} - m_Enabled: 0 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 47e64413aeb5ae740b410d70fb05d20c, type: 3} - m_Name: - m_EditorClassIdentifier: - rotSpeed: {x: 0, y: 15, z: 0} --- !u!1 &344649055 GameObject: m_ObjectHideFlags: 0 @@ -1120,7 +974,7 @@ GameObject: m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 - m_IsActive: 1 + m_IsActive: 0 --- !u!114 &344649056 MonoBehaviour: m_ObjectHideFlags: 0 @@ -1195,13 +1049,87 @@ RectTransform: m_Children: - {fileID: 676739119} m_Father: {fileID: 0} - m_RootOrder: 10 + m_RootOrder: 8 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0, y: 0} +--- !u!1 &375851675 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 375851676} + - component: {fileID: 375851677} + m_Layer: 0 + m_Name: Tint + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &375851676 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 375851675} + m_LocalRotation: {x: 0, y: 0.7071068, z: -0.7071068, w: 0} + m_LocalPosition: {x: 0, y: 10, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 1532567794} + m_RootOrder: 3 + m_LocalEulerAnglesHint: {x: 90, y: 180, z: 0} +--- !u!20 &375851677 +Camera: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 375851675} + m_Enabled: 1 + serializedVersion: 2 + m_ClearFlags: 2 + m_BackGroundColor: {r: 0, g: 0, b: 0, a: 0} + m_projectionMatrixMode: 1 + m_GateFitMode: 2 + m_FOVAxisMode: 0 + m_SensorSize: {x: 36, y: 24} + m_LensShift: {x: 0, y: 0} + m_FocalLength: 50 + m_NormalizedViewPortRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 1 + height: 1 + near clip plane: 0.3 + far clip plane: 1000 + field of view: 60 + orthographic: 1 + orthographic size: 512 + m_Depth: 0 + m_CullingMask: + serializedVersion: 2 + m_Bits: 8192 + m_RenderingPath: 1 + m_TargetTexture: {fileID: 8400000, guid: d196505464047f04a97f28689041209b, type: 2} + m_TargetDisplay: 0 + m_TargetEye: 3 + m_HDR: 1 + m_AllowMSAA: 0 + m_AllowDynamicResolution: 0 + m_ForceIntoRT: 0 + m_OcclusionCulling: 0 + m_StereoConvergence: 10 + m_StereoSeparation: 0.022 --- !u!1001 &426221916 PrefabInstance: m_ObjectHideFlags: 0 @@ -1227,7 +1155,7 @@ PrefabInstance: - target: {fileID: 9112456537762432107, guid: 897fa55d98f1f7f40b889f93ce9146f4, type: 3} propertyPath: m_RootOrder - value: 4 + value: 3 objectReference: {fileID: 0} - target: {fileID: 9112456537762432107, guid: 897fa55d98f1f7f40b889f93ce9146f4, type: 3} @@ -1581,10 +1509,10 @@ RectTransform: m_Father: {fileID: 1236141028} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 0, y: 0} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 0, y: 0} + m_AnchorMin: {x: 0, y: 1} + m_AnchorMax: {x: 0, y: 1} + m_AnchoredPosition: {x: 36, y: -10} + m_SizeDelta: {x: 64, y: 12} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &652433665 MonoBehaviour: @@ -1830,7 +1758,7 @@ RectTransform: m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 0, y: 0} + m_SizeDelta: {x: 144, y: 82} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &676739120 MonoBehaviour: @@ -2078,10 +2006,10 @@ RectTransform: m_Father: {fileID: 1187011252} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 0, y: 0} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 0, y: 0} + m_AnchorMin: {x: 0, y: 1} + m_AnchorMax: {x: 0, y: 1} + m_AnchoredPosition: {x: 36, y: -58} + m_SizeDelta: {x: 64, y: 12} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &719378463 MonoBehaviour: @@ -2103,6 +2031,74 @@ MonoBehaviour: m_FlexibleWidth: -1 m_FlexibleHeight: -1 m_LayoutPriority: 1 +--- !u!1 &753458616 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 753458617} + m_Layer: 0 + m_Name: Zone Brushes + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &753458617 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 753458616} + m_LocalRotation: {x: 0.7071068, y: 0, z: 0, w: 0.7071068} + m_LocalPosition: {x: 0, y: -5, z: 0} + m_LocalScale: {x: 1024, y: 1024, z: 1024} + m_Children: + - {fileID: 1807969627} + - {fileID: 1466792827} + - {fileID: 789220865} + - {fileID: 1328848283} + - {fileID: 6977256487279145164} + m_Father: {fileID: 0} + m_RootOrder: 11 + m_LocalEulerAnglesHint: {x: 90, y: 0, z: 0} +--- !u!1 &789220864 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 789220865} + m_Layer: 0 + m_Name: Fog Surface + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &789220865 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 789220864} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 1489231075} + - {fileID: 1223346183} + - {fileID: 215995291} + m_Father: {fileID: 753458617} + m_RootOrder: 2 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &801092328 GameObject: m_ObjectHideFlags: 0 @@ -2365,6 +2361,87 @@ CanvasRenderer: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 840997726} m_CullTransparentMesh: 1 +--- !u!1 &855309154 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 855309155} + - component: {fileID: 855309157} + - component: {fileID: 855309156} + m_Layer: 12 + m_Name: Displacement + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &855309155 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 855309154} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 1328848283} + m_RootOrder: 2 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!23 &855309156 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 855309154} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 0 + m_MotionVectors: 2 + m_LightProbeUsage: 0 + m_ReflectionProbeUsage: 0 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: e5ea41a9e3aa5e64e8c30a66caac256c, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &855309157 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 855309154} + m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0} --- !u!1001 &924112690 PrefabInstance: m_ObjectHideFlags: 0 @@ -2389,7 +2466,7 @@ PrefabInstance: - target: {fileID: 9112456537762432107, guid: 897fa55d98f1f7f40b889f93ce9146f4, type: 3} propertyPath: m_RootOrder - value: 5 + value: 4 objectReference: {fileID: 0} - target: {fileID: 9112456537762432107, guid: 897fa55d98f1f7f40b889f93ce9146f4, type: 3} @@ -2443,6 +2520,228 @@ PrefabInstance: objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 897fa55d98f1f7f40b889f93ce9146f4, type: 3} +--- !u!1 &942014700 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 942014701} + - component: {fileID: 942014702} + m_Layer: 0 + m_Name: Surface Displacement + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &942014701 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 942014700} + m_LocalRotation: {x: 0, y: 0.7071068, z: -0.7071068, w: 0} + m_LocalPosition: {x: 0, y: 10, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 1532567794} + m_RootOrder: 2 + m_LocalEulerAnglesHint: {x: 90, y: 180, z: 0} +--- !u!20 &942014702 +Camera: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 942014700} + m_Enabled: 1 + serializedVersion: 2 + m_ClearFlags: 2 + m_BackGroundColor: {r: 0, g: 0, b: 0, a: 0} + m_projectionMatrixMode: 1 + m_GateFitMode: 2 + m_FOVAxisMode: 0 + m_SensorSize: {x: 36, y: 24} + m_LensShift: {x: 0, y: 0} + m_FocalLength: 50 + m_NormalizedViewPortRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 1 + height: 1 + near clip plane: 0.3 + far clip plane: 1000 + field of view: 60 + orthographic: 1 + orthographic size: 512 + m_Depth: 0 + m_CullingMask: + serializedVersion: 2 + m_Bits: 1536 + m_RenderingPath: 1 + m_TargetTexture: {fileID: 8400000, guid: 2fc21a9d3e9647948b56e384cd9378b3, type: 2} + m_TargetDisplay: 0 + m_TargetEye: 3 + m_HDR: 1 + m_AllowMSAA: 0 + m_AllowDynamicResolution: 0 + m_ForceIntoRT: 0 + m_OcclusionCulling: 0 + m_StereoConvergence: 10 + m_StereoSeparation: 0.022 +--- !u!1 &983613690 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 983613692} + - component: {fileID: 983613691} + m_Layer: 0 + m_Name: Slime Gravity Renderer + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!20 &983613691 +Camera: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 983613690} + m_Enabled: 1 + serializedVersion: 2 + m_ClearFlags: 2 + m_BackGroundColor: {r: 0, g: 0, b: 0, a: 0} + m_projectionMatrixMode: 1 + m_GateFitMode: 2 + m_FOVAxisMode: 0 + m_SensorSize: {x: 36, y: 24} + m_LensShift: {x: 0, y: 0} + m_FocalLength: 50 + m_NormalizedViewPortRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 1 + height: 1 + near clip plane: 0.3 + far clip plane: 1000 + field of view: 60 + orthographic: 1 + orthographic size: 512 + m_Depth: 0 + m_CullingMask: + serializedVersion: 2 + m_Bits: 1536 + m_RenderingPath: 1 + m_TargetTexture: {fileID: 8400000, guid: cc403ed0b6a104445b6534b1877c5556, type: 2} + m_TargetDisplay: 0 + m_TargetEye: 3 + m_HDR: 1 + m_AllowMSAA: 0 + m_AllowDynamicResolution: 0 + m_ForceIntoRT: 0 + m_OcclusionCulling: 0 + m_StereoConvergence: 10 + m_StereoSeparation: 0.022 +--- !u!4 &983613692 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 983613690} + m_LocalRotation: {x: 0.7071068, y: -0, z: -0, w: 0.7071068} + m_LocalPosition: {x: 0, y: 10, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 10 + m_LocalEulerAnglesHint: {x: 90, y: 0, z: 0} +--- !u!1 &1073373262 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1073373264} + - component: {fileID: 1073373263} + m_Layer: 0 + m_Name: Patch + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!20 &1073373263 +Camera: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1073373262} + m_Enabled: 1 + serializedVersion: 2 + m_ClearFlags: 2 + m_BackGroundColor: {r: 0, g: 0, b: 0, a: 0} + m_projectionMatrixMode: 1 + m_GateFitMode: 2 + m_FOVAxisMode: 0 + m_SensorSize: {x: 36, y: 24} + m_LensShift: {x: 0, y: 0} + m_FocalLength: 50 + m_NormalizedViewPortRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 1 + height: 1 + near clip plane: 0.3 + far clip plane: 1000 + field of view: 60 + orthographic: 1 + orthographic size: 512 + m_Depth: 0 + m_CullingMask: + serializedVersion: 2 + m_Bits: 2048 + m_RenderingPath: 1 + m_TargetTexture: {fileID: 8400000, guid: c618a6b20b3c7394590c59a9fa467e86, type: 2} + m_TargetDisplay: 0 + m_TargetEye: 3 + m_HDR: 1 + m_AllowMSAA: 0 + m_AllowDynamicResolution: 0 + m_ForceIntoRT: 0 + m_OcclusionCulling: 0 + m_StereoConvergence: 10 + m_StereoSeparation: 0.022 +--- !u!4 &1073373264 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1073373262} + m_LocalRotation: {x: 0, y: 0.7071068, z: -0.7071068, w: 0} + m_LocalPosition: {x: 0, y: 10, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 1532567794} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 90, y: 180, z: 0} --- !u!1 &1124877094 GameObject: m_ObjectHideFlags: 0 @@ -2524,7 +2823,7 @@ GameObject: m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 - m_IsActive: 1 + m_IsActive: 0 --- !u!4 &1183010124 Transform: m_ObjectHideFlags: 0 @@ -2540,7 +2839,7 @@ Transform: - {fileID: 507446970} - {fileID: 2067021207} m_Father: {fileID: 0} - m_RootOrder: 9 + m_RootOrder: 7 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &1183010125 MonoBehaviour: @@ -2557,23 +2856,6 @@ MonoBehaviour: InfluenceCamera: {fileID: 1462895484} InfluenceRendererPrototype: {fileID: 507446967} SectorRenderer: {fileID: 1940409866} - Settings: - LinkDensity: 0.5 - ZoneCount: 128 - NameGeneratorMinLength: 5 - NameGeneratorMaxLength: 10 - NameGeneratorOrder: 4 - MegaCount: 6 - BossCount: 3 - NoisePosition: 27.806286 - CloudExponent: 10 - CloudAmplitude: 0.01 - NoiseAmplitude: 1 - NoiseOffset: 0.3 - NoiseGain: 0.7 - NoiseLacunarity: 2 - NoiseFrequency: 1 - Zoom: 1 ZonePrototype: {fileID: 1124877096} LinkPrototype: {fileID: 1955533723} IconPrototype: {fileID: 801092330} @@ -2593,6 +2875,14 @@ MonoBehaviour: IconDistance: 1 IconBackgroundSize: 3 LabelDistance: 0.4 + LinkWidth: 0 + CriticalLinkWidth: 0 + IconScaleAnimation: + serializedVersion: 2 + m_Curve: [] + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 --- !u!1 &1187011251 GameObject: m_ObjectHideFlags: 0 @@ -2629,10 +2919,10 @@ RectTransform: m_Father: {fileID: 676739119} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 0, y: 0} - m_AnchoredPosition: {x: 36, y: 0} - m_SizeDelta: {x: 0, y: 0} + m_AnchorMin: {x: 0, y: 1} + m_AnchorMax: {x: 0, y: 1} + m_AnchoredPosition: {x: 36, y: -41} + m_SizeDelta: {x: 72, y: 82} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1187011253 MonoBehaviour: @@ -2770,6 +3060,87 @@ MeshFilter: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1190354608} m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &1223346182 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1223346183} + - component: {fileID: 1223346185} + - component: {fileID: 1223346184} + m_Layer: 10 + m_Name: Waves Medium + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1223346183 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1223346182} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 789220865} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!23 &1223346184 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1223346182} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 0 + m_MotionVectors: 2 + m_LightProbeUsage: 0 + m_ReflectionProbeUsage: 0 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: ebb28acd4b6552d42b312d7451f34337, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &1223346185 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1223346182} + m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0} --- !u!1 &1236141027 GameObject: m_ObjectHideFlags: 0 @@ -2803,10 +3174,10 @@ RectTransform: m_Father: {fileID: 676739119} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 0, y: 0} - m_AnchoredPosition: {x: 108, y: 0} - m_SizeDelta: {x: 0, y: 0} + m_AnchorMin: {x: 0, y: 1} + m_AnchorMax: {x: 0, y: 1} + m_AnchoredPosition: {x: 108, y: -10} + m_SizeDelta: {x: 72, y: 20} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1236141029 MonoBehaviour: @@ -2848,7 +3219,7 @@ MonoBehaviour: m_ChildScaleWidth: 0 m_ChildScaleHeight: 0 m_ReverseArrangement: 0 ---- !u!1 &1311199031 +--- !u!1 &1307174805 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} @@ -2856,55 +3227,254 @@ GameObject: m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - - component: {fileID: 1311199033} - - component: {fileID: 1311199032} + - component: {fileID: 1307174806} + - component: {fileID: 1307174807} m_Layer: 0 - m_Name: WwiseGlobal + m_Name: Patch Displacement m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 ---- !u!114 &1311199032 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1311199031} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: a4eab75687879a445a2a2397d86a2172, type: 3} - m_Name: - m_EditorClassIdentifier: - InitializationSettings: {fileID: 11400000, guid: ca1886ece3dfc5e49902e78defccd355, - type: 2} - basePath: - language: - defaultPoolSize: 0 - lowerPoolSize: 0 - streamingPoolSize: 0 - memoryCutoffThreshold: 0 - monitorPoolSize: 0 - monitorQueuePoolSize: 0 - callbackManagerBufferSize: 0 - spatialAudioPoolSize: 0 - maxSoundPropagationDepth: 0 - diffractionFlags: 11 - engineLogging: 0 ---- !u!4 &1311199033 +--- !u!4 &1307174806 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1311199031} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} + m_GameObject: {fileID: 1307174805} + m_LocalRotation: {x: 0, y: 0.7071068, z: -0.7071068, w: 0} + m_LocalPosition: {x: 0, y: 10, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 1532567794} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 90, y: 180, z: 0} +--- !u!20 &1307174807 +Camera: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1307174805} + m_Enabled: 1 + serializedVersion: 2 + m_ClearFlags: 2 + m_BackGroundColor: {r: 0, g: 0, b: 0, a: 0} + m_projectionMatrixMode: 1 + m_GateFitMode: 2 + m_FOVAxisMode: 0 + m_SensorSize: {x: 36, y: 24} + m_LensShift: {x: 0, y: 0} + m_FocalLength: 50 + m_NormalizedViewPortRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 1 + height: 1 + near clip plane: 0.3 + far clip plane: 1000 + field of view: 60 + orthographic: 1 + orthographic size: 512 + m_Depth: 0 + m_CullingMask: + serializedVersion: 2 + m_Bits: 5632 + m_RenderingPath: 1 + m_TargetTexture: {fileID: 8400000, guid: 06ec5ef8a5830fc44b1ac1a6e123add5, type: 2} + m_TargetDisplay: 0 + m_TargetEye: 3 + m_HDR: 1 + m_AllowMSAA: 0 + m_AllowDynamicResolution: 0 + m_ForceIntoRT: 0 + m_OcclusionCulling: 0 + m_StereoConvergence: 10 + m_StereoSeparation: 0.022 +--- !u!1 &1314993065 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1314993073} + - component: {fileID: 1314993072} + - component: {fileID: 1314993071} + - component: {fileID: 1314993069} + m_Layer: 0 + m_Name: Main Camera + m_TagString: MainCamera + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1314993069 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1314993065} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 8c03374f22d0a3d4882018de66894a84, type: 3} + m_Name: + m_EditorClassIdentifier: + _volMaterial: {fileID: 2100000, guid: ad63650ae6d6cc542a5aad16694b3c46, type: 2} + GridTransform: {fileID: 753458617} +--- !u!114 &1314993071 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1314993065} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 948f4100a11a5c24981795d21301da5c, type: 3} + m_Name: + m_EditorClassIdentifier: + volumeTrigger: {fileID: 1314993073} + volumeLayer: + serializedVersion: 2 + m_Bits: 1048832 + stopNaNPropagation: 1 + finalBlitToCameraTarget: 0 + antialiasingMode: 3 + temporalAntialiasing: + jitterSpread: 1 + sharpness: 0 + stationaryBlending: 0.98 + motionBlending: 0.98 + subpixelMorphologicalAntialiasing: + quality: 2 + fastApproximateAntialiasing: + fastMode: 0 + keepAlpha: 0 + fog: + enabled: 1 + excludeSkybox: 1 + debugLayer: + lightMeter: + width: 512 + height: 256 + showCurves: 1 + histogram: + width: 512 + height: 256 + channel: 3 + waveform: + exposure: 0.12 + height: 256 + vectorscope: + size: 256 + exposure: 0.12 + overlaySettings: + linearDepth: 0 + motionColorIntensity: 4 + motionGridSize: 64 + colorBlindnessType: 0 + colorBlindnessStrength: 1 + m_Resources: {fileID: 11400000, guid: d82512f9c8e5d4a4d938b575d47f88d4, type: 2} + m_ShowToolkit: 0 + m_ShowCustomSorter: 0 + breakBeforeColorGrading: 0 + m_BeforeTransparentBundles: [] + m_BeforeStackBundles: [] + m_AfterStackBundles: [] +--- !u!20 &1314993072 +Camera: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1314993065} + m_Enabled: 1 + serializedVersion: 2 + m_ClearFlags: 2 + m_BackGroundColor: {r: 0, g: 0, b: 0, a: 1} + m_projectionMatrixMode: 1 + m_GateFitMode: 2 + m_FOVAxisMode: 0 + m_SensorSize: {x: 36, y: 24} + m_LensShift: {x: 0, y: 0} + m_FocalLength: 50 + m_NormalizedViewPortRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 1 + height: 1 + near clip plane: 0.3 + far clip plane: 4096 + field of view: 60 + orthographic: 0 + orthographic size: 5 + m_Depth: -1 + m_CullingMask: + serializedVersion: 2 + m_Bits: 33 + m_RenderingPath: 3 + m_TargetTexture: {fileID: 0} + m_TargetDisplay: 0 + m_TargetEye: 3 + m_HDR: 1 + m_AllowMSAA: 0 + m_AllowDynamicResolution: 0 + m_ForceIntoRT: 0 + m_OcclusionCulling: 1 + m_StereoConvergence: 10 + m_StereoSeparation: 0.022 +--- !u!4 &1314993073 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1314993065} + m_LocalRotation: {x: 0.15998425, y: 0.38291913, z: -0.06751901, w: 0.9073143} + m_LocalPosition: {x: -57, y: -66, z: -289} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 6 + m_RootOrder: 9 + m_LocalEulerAnglesHint: {x: 20, y: 45.763, z: 0} +--- !u!1 &1328848282 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1328848283} + m_Layer: 0 + m_Name: Fog Patches + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1328848283 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1328848282} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 1563996706} + - {fileID: 1584275846} + - {fileID: 855309155} + m_Father: {fileID: 753458617} + m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &1388747984 GameObject: @@ -2948,16 +3518,14 @@ GameObject: - component: {fileID: 1404197278} - component: {fileID: 1404197277} - component: {fileID: 1404197275} - - component: {fileID: 1404197279} - - component: {fileID: 1404197276} - component: {fileID: 1404197280} m_Layer: 0 m_Name: Sector Camera - m_TagString: MainCamera + m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 - m_IsActive: 1 + m_IsActive: 0 --- !u!114 &1404197275 MonoBehaviour: m_ObjectHideFlags: 0 @@ -2970,7 +3538,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 948f4100a11a5c24981795d21301da5c, type: 3} m_Name: m_EditorClassIdentifier: - volumeTrigger: {fileID: 104940730} + volumeTrigger: {fileID: 0} volumeLayer: serializedVersion: 2 m_Bits: 1048832 @@ -3018,20 +3586,6 @@ MonoBehaviour: m_BeforeTransparentBundles: [] m_BeforeStackBundles: [] m_AfterStackBundles: [] ---- !u!114 &1404197276 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1404197274} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 4ae335524e949404bb57f1612ec4b9b5, type: 3} - m_Name: - m_EditorClassIdentifier: - isDefaultListener: 1 - listenerId: 0 --- !u!20 &1404197277 Camera: m_ObjectHideFlags: 0 @@ -3063,7 +3617,7 @@ Camera: m_Depth: 0 m_CullingMask: serializedVersion: 2 - m_Bits: 524288 + m_Bits: 1 m_RenderingPath: -1 m_TargetTexture: {fileID: 0} m_TargetDisplay: 0 @@ -3087,30 +3641,8 @@ Transform: m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 7 + m_RootOrder: 5 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &1404197279 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1404197274} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: f27db6b94e477054e96392f94dc50c9d, type: 3} - m_Name: - m_EditorClassIdentifier: - m_listeners: - initialListenerList: [] - useDefaultListeners: 1 - isEnvironmentAware: 0 - isStaticObject: 0 - m_positionOffsetData: - KeepMe: 0 - positionOffset: {x: 0, y: 0, z: 0} - m_posOffsetData: {fileID: 0} - listenerMask: 1 --- !u!114 &1404197280 MonoBehaviour: m_ObjectHideFlags: 0 @@ -3144,7 +3676,7 @@ GameObject: m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 - m_IsActive: 1 + m_IsActive: 0 --- !u!20 &1462895484 Camera: m_ObjectHideFlags: 0 @@ -3200,7 +3732,7 @@ Transform: m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 8 + m_RootOrder: 6 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &1462895486 MonoBehaviour: @@ -3238,6 +3770,168 @@ MonoBehaviour: positionOffset: {x: 0, y: 0, z: 0} m_posOffsetData: {fileID: 0} listenerMask: 1 +--- !u!1 &1466792826 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1466792827} + - component: {fileID: 1466792830} + - component: {fileID: 1466792829} + m_Layer: 13 + m_Name: Ambient Fog Light + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1466792827 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1466792826} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 753458617} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!23 &1466792829 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1466792826} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 0 + m_MotionVectors: 2 + m_LightProbeUsage: 0 + m_ReflectionProbeUsage: 0 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 7b4b425f2959c6444b35fca367641ee2, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &1466792830 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1466792826} + m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &1489231074 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1489231075} + - component: {fileID: 1489231077} + - component: {fileID: 1489231076} + m_Layer: 10 + m_Name: Waves Large + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1489231075 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1489231074} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 789220865} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!23 &1489231076 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1489231074} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 0 + m_MotionVectors: 2 + m_LightProbeUsage: 0 + m_ReflectionProbeUsage: 0 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: b72cec4037c5ff44397e1b39448c9982, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &1489231077 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1489231074} + m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0} --- !u!1 &1520024705 GameObject: m_ObjectHideFlags: 0 @@ -3334,6 +4028,40 @@ MeshFilter: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1520024705} m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &1532567792 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1532567794} + m_Layer: 0 + m_Name: FogRenderers + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1532567794 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1532567792} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 1073373264} + - {fileID: 1307174806} + - {fileID: 942014701} + - {fileID: 375851676} + m_Father: {fileID: 0} + m_RootOrder: 12 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &1538186654 GameObject: m_ObjectHideFlags: 0 @@ -3469,6 +4197,168 @@ CanvasRenderer: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1538186654} m_CullTransparentMesh: 1 +--- !u!1 &1563996705 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1563996706} + - component: {fileID: 1563996708} + - component: {fileID: 1563996707} + m_Layer: 11 + m_Name: Depth Micro + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1563996706 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1563996705} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 1328848283} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!23 &1563996707 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1563996705} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 0 + m_MotionVectors: 2 + m_LightProbeUsage: 0 + m_ReflectionProbeUsage: 0 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 1c402faf2ced255409ffcfafca7af422, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &1563996708 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1563996705} + m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &1584275845 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1584275846} + - component: {fileID: 1584275848} + - component: {fileID: 1584275847} + m_Layer: 11 + m_Name: Depth Macro + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1584275846 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1584275845} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 1328848283} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!23 &1584275847 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1584275845} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 0 + m_MotionVectors: 2 + m_LightProbeUsage: 0 + m_ReflectionProbeUsage: 0 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 0e38792b096624c4cbce26cf019b2a18, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &1584275848 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1584275845} + m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0} --- !u!1 &1691202845 GameObject: m_ObjectHideFlags: 0 @@ -3544,6 +4434,87 @@ CanvasRenderer: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1691202845} m_CullTransparentMesh: 1 +--- !u!1 &1807969626 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1807969627} + - component: {fileID: 1807969630} + - component: {fileID: 1807969629} + m_Layer: 9 + m_Name: Boundary + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1807969627 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1807969626} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 753458617} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!23 &1807969629 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1807969626} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 0 + m_MotionVectors: 2 + m_LightProbeUsage: 0 + m_ReflectionProbeUsage: 0 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 65e5206f4614c85449f822f5bab55199, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &1807969630 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1807969626} + m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0} --- !u!1 &1808942505 GameObject: m_ObjectHideFlags: 0 @@ -3725,7 +4696,7 @@ Transform: m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 2 + m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!850595691 &1821185769 LightingSettings: @@ -3821,10 +4792,10 @@ RectTransform: m_Father: {fileID: 1187011252} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 0, y: 0} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 0, y: 0} + m_AnchorMin: {x: 0, y: 1} + m_AnchorMax: {x: 0, y: 1} + m_AnchoredPosition: {x: 36, y: -30} + m_SizeDelta: {x: 64, y: 12} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1928037891 MonoBehaviour: @@ -4078,7 +5049,7 @@ Transform: m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 1 + m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &2008674249 GameObject: @@ -4398,6 +5369,201 @@ Transform: m_Father: {fileID: 1183010124} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1001 &6977256487279145163 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 753458617} + m_Modifications: + - target: {fileID: 5262902644310250487, guid: efd1f097ce29ffa48bb0045d6502f55d, + type: 3} + propertyPath: ZoneFloor + value: -100 + objectReference: {fileID: 0} + - target: {fileID: 5262902644310250487, guid: efd1f097ce29ffa48bb0045d6502f55d, + type: 3} + propertyPath: AgentCount + value: 262144 + objectReference: {fileID: 0} + - target: {fileID: 5262902644310250487, guid: efd1f097ce29ffa48bb0045d6502f55d, + type: 3} + propertyPath: TextureSize + value: 1024 + objectReference: {fileID: 0} + - target: {fileID: 5262902644310250487, guid: efd1f097ce29ffa48bb0045d6502f55d, + type: 3} + propertyPath: ZoneCeiling + value: -50 + objectReference: {fileID: 0} + - target: {fileID: 5262902644310250487, guid: efd1f097ce29ffa48bb0045d6502f55d, + type: 3} + propertyPath: TargetCamera + value: + objectReference: {fileID: 1314993072} + - target: {fileID: 5262902644310250487, guid: efd1f097ce29ffa48bb0045d6502f55d, + type: 3} + propertyPath: GravityCamera + value: + objectReference: {fileID: 983613691} + - target: {fileID: 5262902644310250487, guid: efd1f097ce29ffa48bb0045d6502f55d, + type: 3} + propertyPath: TrailEndWidth + value: 0.1 + objectReference: {fileID: 0} + - target: {fileID: 5262902644310250487, guid: efd1f097ce29ffa48bb0045d6502f55d, + type: 3} + propertyPath: GravityTexture + value: + objectReference: {fileID: 8400000, guid: cc403ed0b6a104445b6534b1877c5556, type: 2} + - target: {fileID: 5262902644310250487, guid: efd1f097ce29ffa48bb0045d6502f55d, + type: 3} + propertyPath: NoiseAmplitude + value: 5 + objectReference: {fileID: 0} + - target: {fileID: 5262902644310250487, guid: efd1f097ce29ffa48bb0045d6502f55d, + type: 3} + propertyPath: NoiseFrequency + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 5262902644310250487, guid: efd1f097ce29ffa48bb0045d6502f55d, + type: 3} + propertyPath: TrailStartWidth + value: 0.25 + objectReference: {fileID: 0} + - target: {fileID: 5262902644310250487, guid: efd1f097ce29ffa48bb0045d6502f55d, + type: 3} + propertyPath: ParticleMaterial + value: + objectReference: {fileID: 2100000, guid: 3b53e1eb5d8a5d34f9bc8c1928ceba76, type: 2} + - target: {fileID: 5262902644310250487, guid: efd1f097ce29ffa48bb0045d6502f55d, + type: 3} + propertyPath: ParticleHeightRange + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5262902644310250487, guid: efd1f097ce29ffa48bb0045d6502f55d, + type: 3} + propertyPath: SlimeSettings.Decay + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 5262902644310250487, guid: efd1f097ce29ffa48bb0045d6502f55d, + type: 3} + propertyPath: SlimeSettings.Drive + value: 223.83 + objectReference: {fileID: 0} + - target: {fileID: 5262902644310250487, guid: efd1f097ce29ffa48bb0045d6502f55d, + type: 3} + propertyPath: SlimeSettings.Speed + value: 20 + objectReference: {fileID: 0} + - target: {fileID: 5262902644310250487, guid: efd1f097ce29ffa48bb0045d6502f55d, + type: 3} + propertyPath: ParticleHeightOffset + value: 23.77 + objectReference: {fileID: 0} + - target: {fileID: 5262902644310250487, guid: efd1f097ce29ffa48bb0045d6502f55d, + type: 3} + propertyPath: SlimeSettings.TurnSpeed + value: 50 + objectReference: {fileID: 0} + - target: {fileID: 5262902644310250487, guid: efd1f097ce29ffa48bb0045d6502f55d, + type: 3} + propertyPath: SlimeSettings.SensorSpread + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 5262902644310250487, guid: efd1f097ce29ffa48bb0045d6502f55d, + type: 3} + propertyPath: SlimeSettings.SensorDistance + value: 12 + objectReference: {fileID: 0} + - target: {fileID: 6977256487485077368, guid: efd1f097ce29ffa48bb0045d6502f55d, + type: 3} + propertyPath: m_Name + value: Slime Renderer + objectReference: {fileID: 0} + - target: {fileID: 6977256487485077368, guid: efd1f097ce29ffa48bb0045d6502f55d, + type: 3} + propertyPath: m_Layer + value: 13 + objectReference: {fileID: 0} + - target: {fileID: 6977256487485077373, guid: efd1f097ce29ffa48bb0045d6502f55d, + type: 3} + propertyPath: m_RootOrder + value: 4 + objectReference: {fileID: 0} + - target: {fileID: 6977256487485077373, guid: efd1f097ce29ffa48bb0045d6502f55d, + type: 3} + propertyPath: m_LocalScale.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 6977256487485077373, guid: efd1f097ce29ffa48bb0045d6502f55d, + type: 3} + propertyPath: m_LocalScale.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 6977256487485077373, guid: efd1f097ce29ffa48bb0045d6502f55d, + type: 3} + propertyPath: m_LocalScale.z + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 6977256487485077373, guid: efd1f097ce29ffa48bb0045d6502f55d, + type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6977256487485077373, guid: efd1f097ce29ffa48bb0045d6502f55d, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6977256487485077373, guid: efd1f097ce29ffa48bb0045d6502f55d, + type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6977256487485077373, guid: efd1f097ce29ffa48bb0045d6502f55d, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 6977256487485077373, guid: efd1f097ce29ffa48bb0045d6502f55d, + type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6977256487485077373, guid: efd1f097ce29ffa48bb0045d6502f55d, + type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6977256487485077373, guid: efd1f097ce29ffa48bb0045d6502f55d, + type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6977256487485077373, guid: efd1f097ce29ffa48bb0045d6502f55d, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6977256487485077373, guid: efd1f097ce29ffa48bb0045d6502f55d, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6977256487485077373, guid: efd1f097ce29ffa48bb0045d6502f55d, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: efd1f097ce29ffa48bb0045d6502f55d, type: 3} +--- !u!4 &6977256487279145164 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 6977256487485077373, guid: efd1f097ce29ffa48bb0045d6502f55d, + type: 3} + m_PrefabInstance: {fileID: 6977256487279145163} + m_PrefabAsset: {fileID: 0} --- !u!1001 &7383646976240752633 PrefabInstance: m_ObjectHideFlags: 0 @@ -4409,11 +5575,11 @@ PrefabInstance: type: 3} propertyPath: Camera value: - objectReference: {fileID: 104940729} + objectReference: {fileID: 0} - target: {fileID: 7383646976225659342, guid: eb3a880755444d144a4d7f13ef11df77, type: 3} propertyPath: m_RootOrder - value: 3 + value: 2 objectReference: {fileID: 0} - target: {fileID: 7383646976225659342, guid: eb3a880755444d144a4d7f13ef11df77, type: 3} diff --git a/Assets/Scenes/TestScene_Profiles/PP Profile.asset b/Assets/Scenes/TestScene_Profiles/PP Profile.asset index d910d3303..c86eeb715 100644 --- a/Assets/Scenes/TestScene_Profiles/PP Profile.asset +++ b/Assets/Scenes/TestScene_Profiles/PP Profile.asset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b42dddbb85ed2fd6636fbf95746dbb3e8ebc819a330780764521fe5a2844b5e8 -size 22214 +oid sha256:ff80c77bc4c4b8f03de953589368556166c7ddce59f85f36544db2632af51fad +size 22212 diff --git a/Assets/Scripts/AetheriaInput.cs b/Assets/Scripts/AetheriaInput.cs index af416db3a..6211a0f96 100644 --- a/Assets/Scripts/AetheriaInput.cs +++ b/Assets/Scripts/AetheriaInput.cs @@ -201,6 +201,14 @@ public class @AetheriaInput : IInputActionCollection, IDisposable ""expectedControlType"": ""Button"", ""processors"": """", ""interactions"": """" + }, + { + ""name"": ""Hide UI"", + ""type"": ""Button"", + ""id"": ""1cdb2515-91e1-4895-879d-8a7347e60b21"", + ""expectedControlType"": ""Button"", + ""processors"": """", + ""interactions"": """" } ], ""bindings"": [ @@ -643,6 +651,17 @@ public class @AetheriaInput : IInputActionCollection, IDisposable ""action"": ""Ping"", ""isComposite"": false, ""isPartOfComposite"": false + }, + { + ""name"": """", + ""id"": ""3f898572-d165-4e29-93c3-95c3efce5df9"", + ""path"": ""/f2"", + ""interactions"": """", + ""processors"": """", + ""groups"": ""Keyboard&Mouse"", + ""action"": ""Hide UI"", + ""isComposite"": false, + ""isPartOfComposite"": false } ] }, @@ -1232,6 +1251,7 @@ public class @AetheriaInput : IInputActionCollection, IDisposable m_Player_ToggleShield = m_Player.FindAction("Toggle Shield", throwIfNotFound: true); m_Player_OverrideShutdown = m_Player.FindAction("Override Shutdown", throwIfNotFound: true); m_Player_Ping = m_Player.FindAction("Ping", throwIfNotFound: true); + m_Player_HideUI = m_Player.FindAction("Hide UI", throwIfNotFound: true); // UI m_UI = asset.FindActionMap("UI", throwIfNotFound: true); m_UI_Navigate = m_UI.FindAction("Navigate", throwIfNotFound: true); @@ -1320,6 +1340,7 @@ public class @AetheriaInput : IInputActionCollection, IDisposable private readonly InputAction m_Player_ToggleShield; private readonly InputAction m_Player_OverrideShutdown; private readonly InputAction m_Player_Ping; + private readonly InputAction m_Player_HideUI; public struct PlayerActions { private @AetheriaInput m_Wrapper; @@ -1347,6 +1368,7 @@ public class @AetheriaInput : IInputActionCollection, IDisposable public InputAction @ToggleShield => m_Wrapper.m_Player_ToggleShield; public InputAction @OverrideShutdown => m_Wrapper.m_Player_OverrideShutdown; public InputAction @Ping => m_Wrapper.m_Player_Ping; + public InputAction @HideUI => m_Wrapper.m_Player_HideUI; public InputActionMap Get() { return m_Wrapper.m_Player; } public void Enable() { Get().Enable(); } public void Disable() { Get().Disable(); } @@ -1425,6 +1447,9 @@ public class @AetheriaInput : IInputActionCollection, IDisposable @Ping.started -= m_Wrapper.m_PlayerActionsCallbackInterface.OnPing; @Ping.performed -= m_Wrapper.m_PlayerActionsCallbackInterface.OnPing; @Ping.canceled -= m_Wrapper.m_PlayerActionsCallbackInterface.OnPing; + @HideUI.started -= m_Wrapper.m_PlayerActionsCallbackInterface.OnHideUI; + @HideUI.performed -= m_Wrapper.m_PlayerActionsCallbackInterface.OnHideUI; + @HideUI.canceled -= m_Wrapper.m_PlayerActionsCallbackInterface.OnHideUI; } m_Wrapper.m_PlayerActionsCallbackInterface = instance; if (instance != null) @@ -1498,6 +1523,9 @@ public class @AetheriaInput : IInputActionCollection, IDisposable @Ping.started += instance.OnPing; @Ping.performed += instance.OnPing; @Ping.canceled += instance.OnPing; + @HideUI.started += instance.OnHideUI; + @HideUI.performed += instance.OnHideUI; + @HideUI.canceled += instance.OnHideUI; } } } @@ -1700,6 +1728,7 @@ public class @AetheriaInput : IInputActionCollection, IDisposable void OnToggleShield(InputAction.CallbackContext context); void OnOverrideShutdown(InputAction.CallbackContext context); void OnPing(InputAction.CallbackContext context); + void OnHideUI(InputAction.CallbackContext context); } public interface IUIActions { diff --git a/Assets/Scripts/Gameplay/ActionGameManager.cs b/Assets/Scripts/Gameplay/ActionGameManager.cs index 47d706637..378d7b305 100644 --- a/Assets/Scripts/Gameplay/ActionGameManager.cs +++ b/Assets/Scripts/Gameplay/ActionGameManager.cs @@ -68,12 +68,6 @@ public class ActionGameManager : MonoBehaviour public float TargetSpottedBlinkFrequency = 20; public float TargetSpottedBlinkOffset = -.25f; - [Header("Name Generation")] - public TextAsset NameFile; - public int NameGeneratorMinLength = 5; - public int NameGeneratorMaxLength = 10; - public int NameGeneratorOrder = 4; - [Header("Postprocessing")] public float DeathPPTransitionTime; public PostProcessVolume DeathPP; @@ -81,6 +75,7 @@ public class ActionGameManager : MonoBehaviour public PostProcessVolume SevereHeatstrokePP; [Header("Scene Links")] + public Transform EffectManagerParent; public TradeMenu TradeMenu; public Prototype HostileTargetIndicator; public PlaceUIElementWorldspace ViewDot; @@ -91,7 +86,8 @@ public class ActionGameManager : MonoBehaviour [FormerlySerializedAs("SectorRenderer")] public ZoneRenderer ZoneRenderer; public CinemachineVirtualCamera DockCamera; public CinemachineVirtualCamera FollowCamera; - public GameObject GameplayUI; + public CinemachineVirtualCamera WormholeCamera; + public CanvasGroup GameplayUI; public MenuPanel Menu; public MapRenderer MenuMap; //public SectorRenderer SectorRenderer; @@ -101,7 +97,9 @@ public class ActionGameManager : MonoBehaviour public InventoryMenu Inventory; public InventoryPanel ShipPanel; public InventoryPanel TargetShipPanel; - [FormerlySerializedAs("ConfirmationDialog")] public ConfirmationDialog Dialog; + public ConfirmationDialog Dialog; + + public float IntroDuration; //public PlayerInput Input; @@ -111,7 +109,6 @@ public class ActionGameManager : MonoBehaviour private DirectoryInfo _loadoutPath; private bool _editMode; private float _time; - private AetheriaInput _input; private int _zoomLevelIndex; private Entity _currentEntity; @@ -123,7 +120,9 @@ public class ActionGameManager : MonoBehaviour private Dictionary _visibleHostileIndicators = new Dictionary(); private List _shipSubscriptions = new List(); private float _severeHeatstrokePhase; + private bool _uiHidden; + public AetheriaInput Input { get; private set; } public EquippedDockingBay DockingBay { get; private set; } public Entity DockedEntity { get; private set; } @@ -164,12 +163,13 @@ public class ActionGameManager : MonoBehaviour public void SaveState() { - PlayerSettings.CurrentRun = new SavedGame(CurrentSector, Zone, CurrentEntity); + PlayerSettings.CurrentRun = new SavedGame(CurrentSector, Zone, DockedEntity??CurrentEntity); SavePlayerSettings(); } void Start() { + EntityInstance.EffectManagerParent = EffectManagerParent; AkSoundEngine.RegisterGameObj(gameObject); ConsoleController.MessageReceiver = this; @@ -182,18 +182,18 @@ public class ActionGameManager : MonoBehaviour #region Input Handling - _input = new AetheriaInput(); - _input.Global.Enable(); - _input.UI.Enable(); + Input = new AetheriaInput(); + Input.Global.Enable(); + Input.UI.Enable(); _zoomLevelIndex = Settings.DefaultMinimapZoom; - _input.Player.MinimapZoom.performed += context => + Input.Player.MinimapZoom.performed += context => { _zoomLevelIndex = (_zoomLevelIndex + 1) % Settings.MinimapZoomLevels.Length; ZoneRenderer.MinimapDistance = Settings.MinimapZoomLevels[_zoomLevelIndex]; }; - _input.Global.MapToggle.performed += context => + Input.Global.MapToggle.performed += context => { if (Menu.gameObject.activeSelf && Menu.CurrentTab == MenuTab.Map) { @@ -201,8 +201,8 @@ public class ActionGameManager : MonoBehaviour Menu.gameObject.SetActive(false); if (CurrentEntity != null && CurrentEntity.Parent == null) { - _input.Player.Enable(); - GameplayUI.SetActive(true); + Input.Player.Enable(); + GameplayUI.gameObject.SetActive(true); SchematicDisplay.ShowShip(CurrentEntity); ShipPanel.Display(CurrentEntity, true); @@ -212,13 +212,13 @@ public class ActionGameManager : MonoBehaviour } Cursor.lockState = CursorLockMode.None; - _input.Player.Disable(); - GameplayUI.SetActive(false); + Input.Player.Disable(); + GameplayUI.gameObject.SetActive(false); Menu.ShowTab(MenuTab.Map); MenuMap.Position = CurrentEntity.Position.xz; }; - _input.Global.Inventory.performed += context => + Input.Global.Inventory.performed += context => { if (Menu.gameObject.activeSelf && Menu.CurrentTab == MenuTab.Inventory) { @@ -226,8 +226,8 @@ public class ActionGameManager : MonoBehaviour Menu.gameObject.SetActive(false); if (CurrentEntity != null && CurrentEntity.Parent == null) { - _input.Player.Enable(); - GameplayUI.SetActive(true); + Input.Player.Enable(); + GameplayUI.gameObject.SetActive(true); SchematicDisplay.ShowShip(CurrentEntity); ShipPanel.Display(CurrentEntity, true); @@ -236,12 +236,12 @@ public class ActionGameManager : MonoBehaviour } Cursor.lockState = CursorLockMode.None; - _input.Player.Disable(); + Input.Player.Disable(); Menu.ShowTab(MenuTab.Inventory); - GameplayUI.SetActive(false); + GameplayUI.gameObject.SetActive(false); }; - _input.Global.Dock.performed += context => + Input.Global.Dock.performed += context => { if (CurrentEntity == null) { @@ -255,7 +255,7 @@ public class ActionGameManager : MonoBehaviour else Undock(); }; - _input.Player.EnterWormhole.performed += context => + Input.Player.EnterWormhole.performed += context => { if(CurrentEntity is Ship ship) { @@ -264,10 +264,17 @@ public class ActionGameManager : MonoBehaviour if (length(wormhole.Position - CurrentEntity.Position.xz) < Settings.GameplaySettings.WormholeExitRadius) { var oldZone = Zone; + // var wormholeCameraFollow = new GameObject("Wormhole Camera Follow").transform; + // wormholeCameraFollow.position = new Vector3(wormhole.Position.x, -50, wormhole.Position.y); + // wormholeCameraFollow.rotation = Quaternion.LookRotation(Vector3.down, ship.LookDirection); + // WormholeCamera.enabled = true; + // WormholeCamera.Follow = wormholeCameraFollow; + // FollowCamera.enabled = false; ship.EnterWormhole(wormhole.Position); ship.OnEnteredWormhole += () => { - GenerateLevel(wormhole.Target); + PopulateLevel(wormhole.Target); + SectorMap.QueueZoneReveal(wormhole.Target.AdjacentZones); ship.ExitWormhole(ZoneRenderer.WormholeInstances.Keys.First(w=>w.Target==oldZone.SectorZone).Position, Settings.GameplaySettings.WormholeExitVelocity * ItemManager.Random.NextFloat2Direction()); CurrentEntity.Zone = Zone; @@ -278,23 +285,29 @@ public class ActionGameManager : MonoBehaviour } }; - _input.Player.OverrideShutdown.performed += context => + Input.Player.HideUI.performed += context => + { + _uiHidden = !_uiHidden; + GameplayUI.alpha = _uiHidden ? 0 : 1; + }; + + Input.Player.OverrideShutdown.performed += context => { CurrentEntity.OverrideShutdown = !CurrentEntity.OverrideShutdown; }; - _input.Player.Ping.performed += context => + Input.Player.Ping.performed += context => { CurrentEntity.Sensor?.Ping(); }; - _input.Player.ToggleHeatsinks.performed += context => + Input.Player.ToggleHeatsinks.performed += context => { CurrentEntity.HeatsinksEnabled = !CurrentEntity.HeatsinksEnabled; AkSoundEngine.PostEvent(CurrentEntity.HeatsinksEnabled ? "UI_Success" : "UI_Fail", gameObject); }; - _input.Player.ToggleShield.performed += context => + Input.Player.ToggleShield.performed += context => { if (CurrentEntity.Shield != null) { @@ -305,27 +318,27 @@ public class ActionGameManager : MonoBehaviour #region Targeting - _input.Player.TargetReticle.performed += context => + Input.Player.TargetReticle.performed += context => { var underReticle = Zone.Entities.Where(x => x != CurrentEntity) .MaxBy(x => dot(normalize(x.Position - CurrentEntity.Position), CurrentEntity.LookDirection)); CurrentEntity.Target.Value = CurrentEntity.Target.Value == underReticle ? null : underReticle; }; - _input.Player.TargetNearest.performed += context => + Input.Player.TargetNearest.performed += context => { CurrentEntity.Target.Value = Zone.Entities.Where(x=>x!=CurrentEntity) .MaxBy(x => length(x.Position - CurrentEntity.Position)); }; - _input.Player.TargetNext.performed += context => + Input.Player.TargetNext.performed += context => { var targets = Zone.Entities.Where(x => x != CurrentEntity).OrderBy(x => length(x.Position - CurrentEntity.Position)).ToArray(); var currentTargetIndex = Array.IndexOf(targets, CurrentEntity.Target.Value); CurrentEntity.Target.Value = targets[(currentTargetIndex + 1) % targets.Length]; }; - _input.Player.TargetPrevious.performed += context => + Input.Player.TargetPrevious.performed += context => { var targets = Zone.Entities.Where(x => x != CurrentEntity).OrderBy(x => length(x.Position - CurrentEntity.Position)).ToArray(); var currentTargetIndex = Array.IndexOf(targets, CurrentEntity.Target.Value); @@ -337,31 +350,31 @@ public class ActionGameManager : MonoBehaviour #region Trigger Groups - _input.Player.PreviousWeaponGroup.performed += context => + Input.Player.PreviousWeaponGroup.performed += context => { if (CurrentEntity.Parent != null) return; SchematicDisplay.SelectedGroupIndex--; }; - _input.Player.NextWeaponGroup.performed += context => + Input.Player.NextWeaponGroup.performed += context => { if (CurrentEntity.Parent != null) return; SchematicDisplay.SelectedGroupIndex++; }; - _input.Player.PreviousWeapon.performed += context => + Input.Player.PreviousWeapon.performed += context => { if (CurrentEntity.Parent != null) return; SchematicDisplay.SelectedItemIndex--; }; - _input.Player.NextWeapon.performed += context => + Input.Player.NextWeapon.performed += context => { if (CurrentEntity.Parent != null) return; SchematicDisplay.SelectedItemIndex++; }; - _input.Player.ToggleWeaponGroup.performed += context => + Input.Player.ToggleWeaponGroup.performed += context => { if (CurrentEntity.Parent != null) return; var item = SchematicDisplay.SchematicItems[SchematicDisplay.SelectedItemIndex]; @@ -381,73 +394,73 @@ public class ActionGameManager : MonoBehaviour SchematicDisplay.UpdateTriggerGroups(); }; - _input.Player.FireGroup1.started += context => + Input.Player.FireGroup1.started += context => { if (CurrentEntity.Parent != null) return; foreach (var s in CurrentEntity.TriggerGroups[0].weapons) s.Activate(); }; - _input.Player.FireGroup1.canceled += context => + Input.Player.FireGroup1.canceled += context => { if (CurrentEntity.Parent != null) return; foreach (var s in CurrentEntity.TriggerGroups[0].weapons) s.Deactivate(); }; - _input.Player.FireGroup2.started += context => + Input.Player.FireGroup2.started += context => { if (CurrentEntity.Parent != null) return; foreach (var s in CurrentEntity.TriggerGroups[1].weapons) s.Activate(); }; - _input.Player.FireGroup2.canceled += context => + Input.Player.FireGroup2.canceled += context => { if (CurrentEntity.Parent != null) return; foreach (var s in CurrentEntity.TriggerGroups[1].weapons) s.Deactivate(); }; - _input.Player.FireGroup3.started += context => + Input.Player.FireGroup3.started += context => { if (CurrentEntity.Parent != null) return; foreach (var s in CurrentEntity.TriggerGroups[2].weapons) s.Activate(); }; - _input.Player.FireGroup3.canceled += context => + Input.Player.FireGroup3.canceled += context => { if (CurrentEntity.Parent != null) return; foreach (var s in CurrentEntity.TriggerGroups[2].weapons) s.Deactivate(); }; - _input.Player.FireGroup4.started += context => + Input.Player.FireGroup4.started += context => { if (CurrentEntity.Parent != null) return; foreach (var s in CurrentEntity.TriggerGroups[3].weapons) s.Activate(); }; - _input.Player.FireGroup4.canceled += context => + Input.Player.FireGroup4.canceled += context => { if (CurrentEntity.Parent != null) return; foreach (var s in CurrentEntity.TriggerGroups[3].weapons) s.Deactivate(); }; - _input.Player.FireGroup5.started += context => + Input.Player.FireGroup5.started += context => { if (CurrentEntity.Parent != null) return; foreach (var s in CurrentEntity.TriggerGroups[4].weapons) s.Activate(); }; - _input.Player.FireGroup5.canceled += context => + Input.Player.FireGroup5.canceled += context => { if (CurrentEntity.Parent != null) return; foreach (var s in CurrentEntity.TriggerGroups[4].weapons) s.Deactivate(); }; - _input.Player.FireGroup6.started += context => + Input.Player.FireGroup6.started += context => { if (CurrentEntity.Parent != null) return; foreach (var s in CurrentEntity.TriggerGroups[5].weapons) s.Activate(); }; - _input.Player.FireGroup6.canceled += context => + Input.Player.FireGroup6.canceled += context => { if (CurrentEntity.Parent != null) return; foreach (var s in CurrentEntity.TriggerGroups[5].weapons) s.Deactivate(); @@ -458,9 +471,81 @@ public class ActionGameManager : MonoBehaviour #endregion StartGame(); + + ConsoleController.AddCommand("give", + args => + { + var itemName = string.Join(" ", args); + var item = ItemManager.ItemData.GetAll() + .FirstOrDefault(itemData => string.Equals(itemData.Name, itemName, StringComparison.InvariantCultureIgnoreCase)); + if (item != null) + { + _currentEntity.CargoBays.First().TryStore(ItemManager.CreateInstance(item, .95f)); + } + }); + + ConsoleController.AddCommand("trackmissile", + _ => + { + foreach (var missileManager in FindObjectsOfType()) + { + missileManager.OnFireGuided.Where(x => x.source == _currentEntity).Take(1).Subscribe(x => + { + FollowCamera.Follow = x.missile.transform; + FollowCamera.LookAt = x.target; + x.missile.OnKill += () => + { + FollowCamera.LookAt = ZoneRenderer.EntityInstances[CurrentEntity].LookAtPoint; + FollowCamera.Follow = ZoneRenderer.EntityInstances[CurrentEntity].transform; + }; + }); + } + }); + + ConsoleController.AddCommand("pingscene", + _ => + { + var startTime = Time.time; + Observable.EveryUpdate().TakeWhile(_ => Time.time - startTime < 5).Subscribe( + _ => Debug.Log($"{(int) (Time.time - startTime)}"), + () => + { + var nearestFaction = CurrentSector.Factions.MinBy(f => CurrentSector.HomeZones[f].Distance[Zone.SectorZone]); + var nearestFactionHomeZone = CurrentSector.HomeZones[nearestFaction]; + var factionPresence = nearestFaction.InfluenceDistance - nearestFactionHomeZone.Distance[Zone.SectorZone] + 1; + + var loadoutGenerator = new LoadoutGenerator( + ref ItemManager.Random, + ItemManager, + CurrentSector, + Zone.SectorZone, + nearestFaction, + .5f); + + for (int i = 0; i < 8; i++) + { + var ship = EntitySerializer.Unpack(ItemManager, Zone, loadoutGenerator.GenerateShipLoadout(), true); + ship.Position.xz = _currentEntity.Position.xz + + ItemManager.Random.NextFloat2Direction() * ItemManager.Random.NextFloat(50, 500); + ship.Zone = Zone; + Zone.Entities.Add(ship); + ship.Activate(); + } + + for (int i = 0; i < 8; i++) + { + var turret = EntitySerializer.Unpack(ItemManager, Zone, loadoutGenerator.GenerateTurretLoadout(), true); + turret.Position.xz = _currentEntity.Position.xz + + ItemManager.Random.NextFloat2Direction() * ItemManager.Random.NextFloat(50, 500); + turret.Zone = Zone; + Zone.Entities.Add(turret); + turret.Activate(); + } + }); + }); } - public void GenerateLevel(SectorZone sectorZone) + public void PopulateLevel(SectorZone sectorZone) { if (sectorZone == null) throw new ArgumentNullException(nameof(sectorZone)); @@ -502,7 +587,8 @@ public class ActionGameManager : MonoBehaviour { if (PlayerSettings.CurrentRun == null) { - GenerateLevel(CurrentSector.Entrance); + SectorMap.QueueZoneReveal(CurrentSector.Entrance.AdjacentZones.Prepend(CurrentSector.Entrance)); + PopulateLevel(CurrentSector.Entrance); var loadoutGenerator = new LoadoutGenerator(ref ItemManager.Random, ItemManager, CurrentSector, Zone.SectorZone, null, 2); var ship = EntitySerializer.Unpack(ItemManager, Zone, loadoutGenerator.GenerateShipLoadout(), true); // EntitySerializer.Unpack(ItemManager, Zone, Loadouts.First(x => x.Name == StarterShipTemplate), true); @@ -515,16 +601,48 @@ public class ActionGameManager : MonoBehaviour } else { - GenerateLevel(CurrentSector.Zones[PlayerSettings.CurrentRun.CurrentZone]); + PopulateLevel(CurrentSector.Zones[PlayerSettings.CurrentRun.CurrentZone]); var targetEntity = Zone.Entities[PlayerSettings.CurrentRun.CurrentZoneEntity]; if (targetEntity is OrbitalEntity orbitalEntity) DoDock(orbitalEntity, orbitalEntity.DockingBays.First()); else + { + //StartCoroutine(IntroCutscene(targetEntity as Ship)); BindToEntity(targetEntity); + } } } } + private IEnumerator IntroCutscene(Ship ship) + { + ZoneRenderer.PerspectiveEntity = ship; + var entityPosition = ship.Position.xz; + var followOrbit = Zone.Orbits.Keys.MinBy(o => lengthsq(Zone.GetOrbitPosition(o) - entityPosition)); + var followPlanet = ZoneRenderer.Planets[Zone.Planets.FirstOrDefault(p => p.Value.Orbit == followOrbit).Key]; + DockCamera.Follow = followPlanet.Body.transform; + var rootOrbit = followOrbit; + while (Zone.Orbits[rootOrbit].Data.Parent != Guid.Empty) + rootOrbit = Zone.Orbits[rootOrbit].Data.Parent; + var rootPlanet = ZoneRenderer.Planets[Zone.Planets.FirstOrDefault(p => p.Value.Orbit == rootOrbit).Key]; + DockCamera.LookAt = rootPlanet.Body.transform; + + var shipVelocity = ship.GetBehavior().Limit; + var followOrbitPosition = Zone.GetOrbitPosition(followOrbit); + var shipDirection = normalize(Zone.GetOrbitPosition(rootOrbit) - followOrbitPosition); + ship.Position.xz = followOrbitPosition - shipDirection * shipVelocity * IntroDuration; + + var startTime = Time.time; + while (Time.time - startTime < IntroDuration) + { + ship.Direction = shipDirection; + ship.Velocity = shipDirection * shipVelocity; + yield return null; + } + + BindToEntity(ship); + } + public void Dock() { if (CurrentEntity.Parent != null) return; @@ -560,8 +678,10 @@ public class ActionGameManager : MonoBehaviour var orbital = (OrbitalEntity) entity; DockCamera.Follow = ZoneRenderer.EntityInstances[orbital].transform; var parentOrbit = Zone.Orbits[orbital.OrbitData].Data.Parent; - var parentPlanet = ZoneRenderer.Planets[Zone.Planets.FirstOrDefault(p => p.Value.Orbit == parentOrbit).Key]; - DockCamera.LookAt = parentPlanet.Body.transform; + var parentOrbitPlanet = Zone.Planets.FirstOrDefault(p => p.Value.Orbit == parentOrbit).Key; + if (ZoneRenderer.Planets.ContainsKey(parentOrbitPlanet)) + DockCamera.LookAt = ZoneRenderer.Planets[parentOrbitPlanet].Body.transform; + else DockCamera.LookAt = ZoneRenderer.ZoneRoot; Menu.ShowTab(MenuTab.Inventory); } @@ -619,9 +739,9 @@ public class ActionGameManager : MonoBehaviour _visibleHostileIndicators.Clear(); if(_lockingIndicators!=null) foreach(var (_, indicator, _) in _lockingIndicators) indicator.GetComponent().ReturnToPool(); - _input.Player.Disable(); + Input.Player.Disable(); Cursor.lockState = CursorLockMode.None; - GameplayUI.SetActive(false); + GameplayUI.gameObject.SetActive(false); foreach(var subscription in _shipSubscriptions) subscription.Dispose(); _shipSubscriptions.Clear(); @@ -649,8 +769,8 @@ public class ActionGameManager : MonoBehaviour _viewDirection = float3(CurrentEntity.Direction.x,0,CurrentEntity.Direction.y); Cursor.lockState = CursorLockMode.Locked; - GameplayUI.SetActive(true); - _input.Player.Enable(); + Input.Player.Enable(); + GameplayUI.gameObject.SetActive(true); ShipPanel.Display(CurrentEntity, true); SchematicDisplay.ShowShip(CurrentEntity); @@ -706,24 +826,25 @@ public class ActionGameManager : MonoBehaviour var deathTime = Time.time; UnbindEntity(); CurrentEntity = null; - Dialog.Clear(); - Dialog.Title.text = "You have died!"; - Dialog.Show(() => - { - PlayerSettings.CurrentRun = null; - StartGame(); - }, null, "Try again!"); - Dialog.transform.position = new Vector3(Screen.width / 2, Screen.height / 2); + // Dialog.Clear(); + // Dialog.Title.text = "You have died!"; + // Dialog.Show(() => + // { + // PlayerSettings.CurrentRun = null; + // StartGame(); + // }, null, "Try again!"); + // Dialog.transform.position = new Vector3(Screen.width / 2, Screen.height / 2); //Dialog.MoveToCursor(); Observable.EveryUpdate() - .Select(_ => (Time.time - deathTime) / DeathPPTransitionTime) - .Where(t => t < 1) - .Subscribe(t => + .Where(_ => Time.time - deathTime < DeathPPTransitionTime) + .Subscribe(_ => { + var t = (Time.time - deathTime) / DeathPPTransitionTime; HeatstrokePP.weight = 1 - t; SevereHeatstrokePP.weight = 1 - t; DeathPP.weight = t; - }, () => + }, + () => { HeatstrokePP.weight = 0; SevereHeatstrokePP.weight = 0; @@ -789,7 +910,7 @@ public class ActionGameManager : MonoBehaviour !(indicator.Key.EntityInfoGathered[CurrentEntity] > Settings.GameplaySettings.TargetDetectionInfoThreshold) || sin(TargetSpottedBlinkFrequency * Time.time) + TargetSpottedBlinkOffset > 0; } - var look = _input.Player.Look.ReadValue(); + var look = Input.Player.Look.ReadValue(); _entityYawPitch = float2(_entityYawPitch.x + look.x * Sensitivity.x, clamp(_entityYawPitch.y + look.y * Sensitivity.y, -.45f * PI, .45f * PI)); _viewDirection = mul(float3(0, 0, 1), Unity.Mathematics.float3x3.Euler(float3(_entityYawPitch.yx, 0), RotationOrder.YXZ)); CurrentEntity.LookDirection = _viewDirection; @@ -801,12 +922,11 @@ public class ActionGameManager : MonoBehaviour if(CurrentEntity is Ship ship) { - ship.MovementDirection = _input.Player.Move.ReadValue(); + ship.MovementDirection = Input.Player.Move.ReadValue(); } } } - Zone.Update(_time, Time.deltaTime); - ZoneRenderer.GameTime = _time; + Zone.Update(Time.deltaTime); } private void LateUpdate() diff --git a/Assets/Scripts/Gameplay/EntityInstance.cs b/Assets/Scripts/Gameplay/EntityInstance.cs index a4d83a005..ce1a4be2c 100644 --- a/Assets/Scripts/Gameplay/EntityInstance.cs +++ b/Assets/Scripts/Gameplay/EntityInstance.cs @@ -236,20 +236,20 @@ public class EntityInstance : MonoBehaviour } } } - if(hp.Type == HardpointType.Reactor) - { - var reactorHardpoint = EquipmentHardpoints.FirstOrDefault(x => x.name == hp.Transform); - if (reactorHardpoint) - { - var reactor = item.GetBehavior(); - if( reactor != null && !string.IsNullOrEmpty(item.Data.SoundEffectTrigger) ) - { - AkSoundEngine.RegisterGameObj(reactorHardpoint.gameObject); - AkSoundEngine.PostEvent(item.Data.SoundEffectTrigger, reactorHardpoint.gameObject); - _reactor = (reactor, reactorHardpoint.gameObject); - } - } - } + // if(hp.Type == HardpointType.Reactor) + // { + // var reactorHardpoint = EquipmentHardpoints.FirstOrDefault(x => x.name == hp.Transform); + // if (reactorHardpoint) + // { + // var reactor = item.GetBehavior(); + // if( reactor != null && !string.IsNullOrEmpty(item.Data.SoundEffectTrigger) ) + // { + // AkSoundEngine.RegisterGameObj(reactorHardpoint.gameObject); + // AkSoundEngine.PostEvent(item.Data.SoundEffectTrigger, reactorHardpoint.gameObject); + // _reactor = (reactor, reactorHardpoint.gameObject); + // } + // } + // } } } RadiatorMeshes = new Dictionary(); @@ -356,6 +356,7 @@ public class EntityInstance : MonoBehaviour { distance = cellDist; hitCell = v; + hitPos = v + float2(.5f); } } @@ -383,14 +384,15 @@ public class EntityInstance : MonoBehaviour // Find the local 2D vector corresponding to the direction of the incoming hit var localHitDirection = transform.InverseTransformDirection(hit.Direction); var penetrationVector = normalize(float2(localHitDirection.x, localHitDirection.z)); - + // TODO: Bresenham's line algorithm // March a ray through the ship from the hit position var penetrationPoint = hitPos; - var penetrationDistance = 0; - while (penetrationDistance < hit.Penetration) + var penetrationDistance = 0f; + while (penetrationDistance < hit.Penetration && hullData.Shape[int2(penetrationPoint)]) { - penetrationPoint += penetrationVector * .5f; + penetrationDistance += .5f; hitShape[int2(penetrationPoint)] = true; + penetrationPoint += penetrationVector * .5f; } } @@ -496,15 +498,15 @@ public class EntityInstance : MonoBehaviour AkSoundEngine.SetRTPCValue("performance_quality", r.Key.Item.EquippableItem.Quality, r.Value); } - if (_reactor.reactor != null) - { - _reactor.sfxSource.SetActive(_reactor.reactor.Item.Online.Value); - AkSoundEngine.SetObjectPosition(_reactor.sfxSource, _reactor.sfxSource.transform); - AkSoundEngine.SetRTPCValue("reactor_load", _reactor.reactor.CurrentLoadRatio, _reactor.sfxSource); - AkSoundEngine.SetRTPCValue("performance_durability", _reactor.reactor.Item.DurabilityPerformance, _reactor.sfxSource); - AkSoundEngine.SetRTPCValue("performance_thermal", _reactor.reactor.Item.ThermalPerformance, _reactor.sfxSource); - AkSoundEngine.SetRTPCValue("performance_quality", _reactor.reactor.Item.EquippableItem.Quality, _reactor.sfxSource); - } + // if (_reactor.reactor != null) + // { + // _reactor.sfxSource.SetActive(_reactor.reactor.Item.Online.Value); + // AkSoundEngine.SetObjectPosition(_reactor.sfxSource, _reactor.sfxSource.transform); + // AkSoundEngine.SetRTPCValue("reactor_load", _reactor.reactor.CurrentLoadRatio, _reactor.sfxSource); + // AkSoundEngine.SetRTPCValue("performance_durability", _reactor.reactor.Item.DurabilityPerformance, _reactor.sfxSource); + // AkSoundEngine.SetRTPCValue("performance_thermal", _reactor.reactor.Item.ThermalPerformance, _reactor.sfxSource); + // AkSoundEngine.SetRTPCValue("performance_quality", _reactor.reactor.Item.EquippableItem.Quality, _reactor.sfxSource); + // } foreach (var x in RadiatorMeshes) { diff --git a/Assets/Scripts/Gameplay/ShipInstance.cs b/Assets/Scripts/Gameplay/ShipInstance.cs index 1e105f944..956fa85f9 100644 --- a/Assets/Scripts/Gameplay/ShipInstance.cs +++ b/Assets/Scripts/Gameplay/ShipInstance.cs @@ -35,11 +35,11 @@ public class ShipInstance : EntityInstance var thrusterHardpoint = ThrusterHardpoints .FirstOrDefault(t => t.name == thruster.Entity.Hardpoints[thruster.Item.Position.x, thruster.Item.Position.y].Transform); particlesShape.meshRenderer = thrusterHardpoint?.Emitter; - if (!string.IsNullOrEmpty(thruster.Item.Data.SoundEffectTrigger) && thrusterHardpoint != null) - { - AkSoundEngine.RegisterGameObj(thrusterHardpoint.gameObject); - AkSoundEngine.PostEvent(thruster.Item.Data.SoundEffectTrigger, thrusterHardpoint.gameObject); - } + // if (!string.IsNullOrEmpty(thruster.Item.Data.SoundEffectTrigger) && thrusterHardpoint != null) + // { + // AkSoundEngine.RegisterGameObj(thrusterHardpoint.gameObject); + // AkSoundEngine.PostEvent(thruster.Item.Data.SoundEffectTrigger, thrusterHardpoint.gameObject); + // } return new ThrusterInstance { @@ -87,17 +87,17 @@ public class ShipInstance : EntityInstance var data = Entity.ItemManager.GetData(item); thrusterInstance.MaxParticleCount = thrusterInstance.System.particleCount; emissionModule.rateOverTimeMultiplier = thrusterInstance.BaseEmission * thrusterInstance.Thruster.Axis * (item.Durability / data.Durability); - if (thrusterInstance.SfxSource) - { - var throttle = 0f; - if (thrusterInstance.System.particleCount > 0) - throttle = (float) thrusterInstance.System.particleCount / thrusterInstance.MaxParticleCount; - AkSoundEngine.SetObjectPosition(thrusterInstance.SfxSource, thrusterInstance.SfxSource.transform); - AkSoundEngine.SetRTPCValue("thruster_throttle", throttle, thrusterInstance.SfxSource); - AkSoundEngine.SetRTPCValue("performance_durability", thrusterInstance.Thruster.Item.DurabilityPerformance, thrusterInstance.SfxSource); - AkSoundEngine.SetRTPCValue("performance_thermal", thrusterInstance.Thruster.Item.ThermalPerformance, thrusterInstance.SfxSource); - AkSoundEngine.SetRTPCValue("performance_quality", thrusterInstance.Thruster.Item.EquippableItem.Quality, thrusterInstance.SfxSource); - } + // if (thrusterInstance.SfxSource) + // { + // var throttle = 0f; + // if (thrusterInstance.System.particleCount > 0) + // throttle = (float) thrusterInstance.System.particleCount / thrusterInstance.MaxParticleCount; + // AkSoundEngine.SetObjectPosition(thrusterInstance.SfxSource, thrusterInstance.SfxSource.transform); + // AkSoundEngine.SetRTPCValue("thruster_throttle", throttle, thrusterInstance.SfxSource); + // AkSoundEngine.SetRTPCValue("performance_durability", thrusterInstance.Thruster.Item.DurabilityPerformance, thrusterInstance.SfxSource); + // AkSoundEngine.SetRTPCValue("performance_thermal", thrusterInstance.Thruster.Item.ThermalPerformance, thrusterInstance.SfxSource); + // AkSoundEngine.SetRTPCValue("performance_quality", thrusterInstance.Thruster.Item.EquippableItem.Quality, thrusterInstance.SfxSource); + // } } transform.rotation = Ship.Rotation; diff --git a/Assets/Scripts/Gameplay/Weapons/GuidedProjectile.cs b/Assets/Scripts/Gameplay/Weapons/GuidedProjectile.cs index e03b2dc31..e5a90a61a 100644 --- a/Assets/Scripts/Gameplay/Weapons/GuidedProjectile.cs +++ b/Assets/Scripts/Gameplay/Weapons/GuidedProjectile.cs @@ -7,6 +7,7 @@ using static Unity.Mathematics.math; using static Unity.Mathematics.noise; using Random = UnityEngine.Random; using static Noise1D; +using float3 = Unity.Mathematics.float3; public class GuidedProjectile : MonoBehaviour { @@ -31,6 +32,8 @@ public class GuidedProjectile : MonoBehaviour private float _prevDist; private bool _active; private bool _alive; + private Vector3 _targetVelocity; + private Vector3 _previousTargetPosition; public Transform Target { get; set; } public float3 StartPosition { get; set; } @@ -42,6 +45,8 @@ public class GuidedProjectile : MonoBehaviour public DamageType DamageType { get; set; } public Entity SourceEntity { get; set; } + public event Action OnKill; + void OnEnable() { _active = _alive = true; @@ -67,12 +72,15 @@ public class GuidedProjectile : MonoBehaviour StartCoroutine(FadeOut()); return; } + var position = (float3) t.position; var targetPosition = TargetPosition?.Invoke() ?? Target.position; + _targetVelocity = lerp(_targetVelocity, targetPosition - _previousTargetPosition, saturate(Time.deltaTime * 5)); + _previousTargetPosition = targetPosition; + targetPosition = AetheriaMath.FirstOrderIntercept(position,float3.zero, TopSpeed, targetPosition, _targetVelocity); var diff = targetPosition - transform.position; var targetDist = diff.magnitude; - var position = (float3) t.position; var sourceDist = length(StartPosition.xz - position.xz); if (sourceDist > Range || dot(diff,Velocity) < 0) @@ -212,6 +220,7 @@ public class GuidedProjectile : MonoBehaviour { yield return null; } + OnKill?.Invoke(); GetComponent().ReturnToPool(); } } \ No newline at end of file diff --git a/Assets/Scripts/Gameplay/Weapons/GuidedProjectileManager.cs b/Assets/Scripts/Gameplay/Weapons/GuidedProjectileManager.cs index 988ab0227..14b18b1f9 100644 --- a/Assets/Scripts/Gameplay/Weapons/GuidedProjectileManager.cs +++ b/Assets/Scripts/Gameplay/Weapons/GuidedProjectileManager.cs @@ -1,5 +1,7 @@ -using System.Collections; +using System; +using System.Collections; using System.Collections.Generic; +using UniRx; using Unity.Mathematics; using UnityEngine; using static Unity.Mathematics.math; @@ -8,6 +10,8 @@ public class GuidedProjectileManager : InstantWeaponEffectManager { public Prototype ProjectilePrototype; + public Subject<(Entity source, Transform target, GuidedProjectile missile)> OnFireGuided = new Subject<(Entity source, Transform target, GuidedProjectile missile)>(); + public override void Fire(InstantWeapon weapon, EquippedItem item, EntityInstance source, EntityInstance target) { if(weapon.Data is LauncherData launcher) @@ -32,6 +36,7 @@ public class GuidedProjectileManager : InstantWeaponEffectManager p.Velocity = barrel.forward * weapon.Velocity; p.Thrust = item.Evaluate(launcher.Thrust); p.TopSpeed = item.Evaluate(launcher.MissileVelocity); + OnFireGuided.OnNext((source.Entity, target.transform, p)); } else if(weapon.Data is GuidedWeaponData guidance) { diff --git a/Assets/Scripts/Gameplay/Weapons/HitscanManager.cs b/Assets/Scripts/Gameplay/Weapons/HitscanManager.cs index 93af6cbcc..046b99434 100644 --- a/Assets/Scripts/Gameplay/Weapons/HitscanManager.cs +++ b/Assets/Scripts/Gameplay/Weapons/HitscanManager.cs @@ -1,3 +1,5 @@ +using UnityEngine; + public class HitscanManager : InstantWeaponEffectManager { public Prototype Prototype; @@ -8,8 +10,12 @@ public class HitscanManager : InstantWeaponEffectManager var hp = source.Entity.Hardpoints[item.Position.x, item.Position.y]; var barrel = source.GetBarrel(hp); var t = p.transform; - t.position = barrel.position; - t.forward = barrel.forward; + t.SetParent(barrel, false); + t.localRotation = Quaternion.identity; + t.localPosition = Vector3.zero; + // t.position = barrel.position; + // t.forward = barrel.forward; + p.Range = weapon.Range; p.Damage = weapon.Damage; p.Penetration = weapon.Penetration; p.Spread = weapon.DamageSpread; diff --git a/Assets/Scripts/ServerShared/Behaviors/InstantWeapon.cs b/Assets/Scripts/ServerShared/Behaviors/InstantWeapon.cs index 02f5a6bf8..2b727458c 100644 --- a/Assets/Scripts/ServerShared/Behaviors/InstantWeapon.cs +++ b/Assets/Scripts/ServerShared/Behaviors/InstantWeapon.cs @@ -178,8 +178,8 @@ public class InstantWeapon : Weapon, IProgressBehavior, IEventBehavior public override void Activate() { - if(CanFire) - Trigger(); - base.Activate(); + // if(CanFire) + // Trigger(); + // base.Activate(); } } \ No newline at end of file diff --git a/Assets/Scripts/ServerShared/Behaviors/VelocityLimit.cs b/Assets/Scripts/ServerShared/Behaviors/VelocityLimit.cs index e36700cdf..f0e6701d1 100644 --- a/Assets/Scripts/ServerShared/Behaviors/VelocityLimit.cs +++ b/Assets/Scripts/ServerShared/Behaviors/VelocityLimit.cs @@ -38,6 +38,7 @@ public class VelocityLimit : IBehavior _data = data; Entity = entity; Item = item; + Limit = Item.Evaluate(_data.TopSpeed); } public void Initialize() diff --git a/Assets/Scripts/ServerShared/Entity.cs b/Assets/Scripts/ServerShared/Entity.cs index 3efa186b9..df6fe6cca 100644 --- a/Assets/Scripts/ServerShared/Entity.cs +++ b/Assets/Scripts/ServerShared/Entity.cs @@ -135,8 +135,8 @@ public abstract class Entity if(behavior is IInitializableBehavior initializableBehavior) initializableBehavior.Initialize(); } - //foreach(var entity in Zone.Entities) EntityInfoGathered.Add(entity, 0); - _subscriptions.Add(Zone.Entities.ObserveAdd().Subscribe(add => EntityInfoGathered.Add(add.Value, 0))); + foreach(var entity in Zone.Entities) EntityInfoGathered[entity] = 0; + _subscriptions.Add(Zone.Entities.ObserveAdd().Subscribe(add => EntityInfoGathered[add.Value] = 0)); _subscriptions.Add(Zone.Entities.ObserveRemove().Subscribe(remove => { if (Target.Value == remove.Value) Target.Value = null; diff --git a/Assets/Scripts/ServerShared/ItemManager.cs b/Assets/Scripts/ServerShared/ItemManager.cs index 4952c2a37..cb09b4f50 100644 --- a/Assets/Scripts/ServerShared/ItemManager.cs +++ b/Assets/Scripts/ServerShared/ItemManager.cs @@ -166,7 +166,8 @@ public class ItemManager pow(item.Quality, GameplaySettings.DurabilityQualityExponent)); var durability = pow(item.Durability / data.Durability, durabilityExponent * stat.DurabilityExponentMultiplier); var result = lerp(stat.Min, stat.Max, quality * durability); - if (float.IsNaN(result)) throw new InvalidOperationException("Performance Stat evaluating as NaN: input data is invalid!"); + if (float.IsNaN(result)) + throw new InvalidOperationException($"Performance Stat on {data.Name} evaluating as NaN: input data is invalid! Durability: {item.Durability} / {data.Durability}"); return result; } @@ -211,6 +212,27 @@ public class ItemManager } return null; } + + public CraftedItemInstance CreateInstance(CraftedItemData item, float quality) + { + if (item is EquippableItemData equippableItemData) + { + var newGear = new EquippableItem + { + Data = item.ID, + Quality = quality + }; + newGear.Durability = equippableItemData.Durability; + return newGear; + } + + var newCommodity = new CompoundCommodity + { + Data = item.ID, + Quality = quality + }; + return newCommodity; + } public CraftedItemInstance CreateInstance(CraftedItemData item) { @@ -227,24 +249,8 @@ public class ItemManager if (t.Rarity > quality) tier = t; } - - if (item is EquippableItemData equippableItemData) - { - var newGear = new EquippableItem - { - Data = item.ID, - Quality = tier.Quality - }; - newGear.Durability = equippableItemData.Durability; - return newGear; - } - var newCommodity = new CompoundCommodity - { - Data = item.ID, - Quality = tier.Quality - }; - return newCommodity; + return CreateInstance(item, tier.Quality); } public (RarityTier tier, int upgrades) GetTier(CraftedItemInstance item) diff --git a/Assets/Scripts/ServerShared/LoadoutGenerator.cs b/Assets/Scripts/ServerShared/LoadoutGenerator.cs index 4104e9d20..6fc1d635e 100644 --- a/Assets/Scripts/ServerShared/LoadoutGenerator.cs +++ b/Assets/Scripts/ServerShared/LoadoutGenerator.cs @@ -99,7 +99,7 @@ public class LoadoutGenerator { return ItemManager.ItemData.GetAll() .Where(item => Sector.ContainsFaction(item.Manufacturer) && - (Faction == null || item.Manufacturer == Faction.ID || Faction.Allegiance.ContainsKey(item.Manufacturer)) && + (Faction == null || Faction.Allegiance.ContainsKey(item.Manufacturer)) && (filter?.Invoke(item) ?? true)) .WeightedRandomElements(ref Random, item => (Faction == null || item.Manufacturer == Faction.ID ? 1 : Faction.Allegiance[item.Manufacturer]) * // Prioritize items from allied manufacturers @@ -133,7 +133,8 @@ public class LoadoutGenerator { var controllerData = RandomItem(hardpoint, 2, item => item.Behaviors.Any(b => entity is Ship && b is CockpitData || entity is OrbitalEntity && b is TurretControllerData)); - if (controllerData == null) throw new InvalidLoadoutException("No compatible controller found for entity!"); + if (controllerData == null) + throw new InvalidLoadoutException("No compatible controller found for entity!"); var controller = ItemManager.CreateInstance(controllerData) as EquippableItem; if (!entity.TryEquip(controller)) { @@ -145,12 +146,16 @@ public class LoadoutGenerator // If a previously selected item fits, use that one (this is why we must process larger hardpoints first) var itemData = previousItems .FirstOrDefault(i => i.HardpointType == hardpoint.Type && i.Shape.FitsWithin(hardpoint.Shape, hardpoint.Rotation, out _)); + var previousItem = entity.Equipment.FirstOrDefault(item => item.Data == itemData); itemData ??= RandomItem(hardpoint, 2); if (itemData == null) ItemManager.Log($"No compatible item found for entity {Enum.GetName(typeof(HardpointType), hardpoint.Type)} hardpoint!"); else { //throw new InvalidLoadoutException($"No compatible item found for entity {Enum.GetName(typeof(HardpointType), hardpoint.Type)} hardpoint!"); - var item = ItemManager.CreateInstance(itemData) as EquippableItem; + EquippableItem item; + if(previousItem!=null) + item = ItemManager.CreateInstance(itemData, previousItem.EquippableItem.Quality) as EquippableItem; + else item = ItemManager.CreateInstance(itemData) as EquippableItem; if (!entity.TryEquip(item)) { throw new InvalidLoadoutException($"Failed to equip selected {Enum.GetName(typeof(HardpointType), hardpoint.Type)}!"); diff --git a/Assets/Scripts/ServerShared/Ship.cs b/Assets/Scripts/ServerShared/Ship.cs index 3d32ea3fe..7b8127e9f 100644 --- a/Assets/Scripts/ServerShared/Ship.cs +++ b/Assets/Scripts/ServerShared/Ship.cs @@ -78,6 +78,7 @@ public class Ship : Entity public void EnterWormhole(float2 wormholePosition) { + Target.Value = null; _wormholeAnimationProgress = 0; _enteringWormhole = true; _wormholeEntryPosition = Position.xz; diff --git a/Assets/Scripts/ServerShared/Zone.cs b/Assets/Scripts/ServerShared/Zone.cs index e637fafd3..a253ea99a 100644 --- a/Assets/Scripts/ServerShared/Zone.cs +++ b/Assets/Scripts/ServerShared/Zone.cs @@ -30,17 +30,22 @@ public class Zone private HashSet _updatedOrbits = new HashSet(); private ItemManager _itemManager; - private float _time; + private double _time; private Random _random; public List Agents = new List(); private List BeltUpdates = new List(); + public float Time + { + get => (float) _time; + } public ZonePack Pack { get; } public SectorZone SectorZone { get; } public Zone(ItemManager itemManager, PlanetSettings settings, ZonePack pack, SectorZone sectorZone) { + _time = pack.Time; SectorZone = sectorZone; Pack = pack; _itemManager = itemManager; @@ -102,7 +107,8 @@ public class Zone Mass = Pack.Mass, Entities = Entities.Select(EntitySerializer.Pack).ToList(), Orbits = Orbits.Values.Select(o=>o.Data).ToList(), - Planets = Planets.Values.ToList() + Planets = Planets.Values.ToList(), + Time = _time }; } @@ -111,9 +117,9 @@ public class Zone Orbits.Add(orbit.ID, new Orbit(Settings, orbit)); } - public void Update(float time, float deltaTime) + public void Update(float deltaTime) { - _time = time; + _time += deltaTime; _updatedOrbits.Clear(); foreach (var t in BeltUpdates) t.Wait(); @@ -228,10 +234,10 @@ public class Zone } else size = Settings.AsteroidSize.Evaluate(beltData.Asteroids[i].Size); - belt.NewRotations[i] = _time * beltData.Asteroids[i].RotationSpeed % (PI * 2); + belt.NewRotations[i] = (float) (_time * beltData.Asteroids[i].RotationSpeed % (PI * 2)); belt.NewScales[i] = size; - var pos = OrbitData.Evaluate(frac(_time / Settings.OrbitPeriod.Evaluate(beltData.Asteroids[i].Distance) + - beltData.Asteroids[i].Phase)) * beltData.Asteroids[i].Distance + orbitPosition; + var pos = OrbitData.Evaluate((float) frac(_time / Settings.OrbitPeriod.Evaluate(beltData.Asteroids[i].Distance) + + beltData.Asteroids[i].Phase)) * beltData.Asteroids[i].Distance + orbitPosition; belt.NewVelocities[i] = pos - belt.Positions[i].xz; belt.NewPositions[i] = float3(pos.x, GetHeight(pos), pos.y); } @@ -319,7 +325,7 @@ public class Zone var depth = gas.GravityWavesDepth.Value; var frequency = Settings.WaveFrequency.Evaluate(body.BodyData.Mass.Value); var speed = gas.GravityWavesSpeed.Value; - result -= RadialWaves(sqrt(distSqr) / waveRadius, 8, 1.25f, frequency, _time * speed) * depth; + result -= RadialWaves(sqrt(distSqr) / waveRadius, 8, 1.25f, frequency, (float) (_time * speed)) * depth; } } } diff --git a/Assets/Scripts/ServerShared/ZoneData.cs b/Assets/Scripts/ServerShared/ZoneData.cs index c76321563..c06046a01 100644 --- a/Assets/Scripts/ServerShared/ZoneData.cs +++ b/Assets/Scripts/ServerShared/ZoneData.cs @@ -30,6 +30,9 @@ public class ZonePack [JsonProperty("mass"), Key(4)] public float Mass = 10000; + + [JsonProperty("time"), Key(5)] + public double Time; } // [RethinkTable("Galaxy"), MessagePackObject, JsonObject(MemberSerialization.OptIn)] diff --git a/Assets/Scripts/ServerShared/ZoneGenerator.cs b/Assets/Scripts/ServerShared/ZoneGenerator.cs index a633de98e..f31151ef2 100644 --- a/Assets/Scripts/ServerShared/ZoneGenerator.cs +++ b/Assets/Scripts/ServerShared/ZoneGenerator.cs @@ -223,9 +223,9 @@ public static class ZoneGenerator var nearestFaction = sector.Factions.MinBy(f => sector.HomeZones[f].Distance[sectorZone]); var nearestFactionHomeZone = sector.HomeZones[nearestFaction]; - var factionPresence = nearestFaction.InfluenceDistance - nearestFactionHomeZone.Distance[sectorZone]; + var factionPresence = nearestFaction.InfluenceDistance - nearestFactionHomeZone.Distance[sectorZone] + 1; - var loadoutGenerator = new LoadoutGenerator(ref random, itemManager, sector, sectorZone, nearestFaction, 1); + var loadoutGenerator = new LoadoutGenerator(ref random, itemManager, sector, sectorZone, nearestFaction, .5f); for (int i = 0; i < factionPresence; i++) { pack.Entities.Add(loadoutGenerator.GenerateShipLoadout()); diff --git a/Assets/Scripts/UI/ConsoleView.cs b/Assets/Scripts/UI/ConsoleView.cs index bf7b522e0..a2b5b2f8c 100644 --- a/Assets/Scripts/UI/ConsoleView.cs +++ b/Assets/Scripts/UI/ConsoleView.cs @@ -13,12 +13,14 @@ using UnityEngine.InputSystem; public class ConsoleView : MonoBehaviour { bool _didShow = false; + public ActionGameManager GameManager; public GameObject ViewContainer; //Container for console view, should be a child of this GameObject public TextMeshProUGUI LogTextArea; public TextMeshProUGUI InputArea; public ScrollRect Scroll; private string _inputString = ""; + private CursorLockMode _previousCursorLockMode; public string InputString { @@ -110,7 +112,20 @@ public class ConsoleView : MonoBehaviour { ViewContainer.SetActive(visible); Visible = visible; if(visible) + { + GameManager.Input.Global.Disable(); + GameManager.Input.Player.Disable(); + GameManager.Input.UI.Disable(); + _previousCursorLockMode = Cursor.lockState; Cursor.lockState = CursorLockMode.None; + } + else + { + GameManager.Input.Global.Enable(); + GameManager.Input.Player.Enable(); + GameManager.Input.UI.Enable(); + Cursor.lockState = _previousCursorLockMode; + } } void OnVisibilityChanged(bool visible) { diff --git a/Assets/ItemFilter.cs b/Assets/Scripts/UI/ItemFilter.cs similarity index 100% rename from Assets/ItemFilter.cs rename to Assets/Scripts/UI/ItemFilter.cs diff --git a/Assets/ItemFilter.cs.meta b/Assets/Scripts/UI/ItemFilter.cs.meta similarity index 100% rename from Assets/ItemFilter.cs.meta rename to Assets/Scripts/UI/ItemFilter.cs.meta diff --git a/Assets/Scripts/UI/PropertiesPanel.cs b/Assets/Scripts/UI/PropertiesPanel.cs index 83d046ac7..fdc4cc252 100644 --- a/Assets/Scripts/UI/PropertiesPanel.cs +++ b/Assets/Scripts/UI/PropertiesPanel.cs @@ -377,28 +377,35 @@ public class PropertiesPanel : MonoBehaviour AddProperty("Thermal Mass", () => Context.GetThermalMass(item).SignificantDigits(Context.GameplaySettings.SignificantDigits)); if (item is EquippableItem gear) { - var tier = entity.ItemManager.GetTier(gear); + var (tier, upgrades) = entity.ItemManager.GetTier(gear); Title.text = - $"{data.Name} ({tier.tier.Name}{new string('+', tier.upgrades)})"; - var gearData = Context.GetData(gear); - AddProperty("Durability", () => - $"{gear.Durability.SignificantDigits(Context.GameplaySettings.SignificantDigits)}/{gearData.Durability.SignificantDigits(Context.GameplaySettings.SignificantDigits)}"); - foreach (var behavior in gearData.Behaviors) + $"{data.Name} ({tier.Name}{new string('+', upgrades)})"; + if (gear.Durability < .01f) { - var type = behavior.GetType(); - if (type.GetCustomAttribute(typeof(RuntimeInspectable)) != null) + AddProperty("Item destroyed!"); + } + else + { + var gearData = Context.GetData(gear); + AddProperty("Durability", () => + $"{gear.Durability.SignificantDigits(Context.GameplaySettings.SignificantDigits)}/{gearData.Durability.SignificantDigits(Context.GameplaySettings.SignificantDigits)}"); + foreach (var behavior in gearData.Behaviors) { - foreach (var field in type.GetFields().Where(f => f.GetCustomAttribute() != null)) + var type = behavior.GetType(); + if (type.GetCustomAttribute(typeof(RuntimeInspectable)) != null) { - var fieldType = field.FieldType; - if (fieldType == typeof(float)) - AddProperty(field.Name, () => $"{((float) field.GetValue(behavior)).SignificantDigits(Context.GameplaySettings.SignificantDigits)}"); - else if (fieldType == typeof(int)) - AddProperty(field.Name, () => $"{(int) field.GetValue(behavior)}"); - else if (fieldType == typeof(PerformanceStat)) + foreach (var field in type.GetFields().Where(f => f.GetCustomAttribute() != null)) { - var stat = (PerformanceStat) field.GetValue(behavior); - AddProperty(field.Name, () => $"{Context.Evaluate(stat, gear).SignificantDigits(Context.GameplaySettings.SignificantDigits)}"); + var fieldType = field.FieldType; + if (fieldType == typeof(float)) + AddProperty(field.Name, () => $"{((float) field.GetValue(behavior)).SignificantDigits(Context.GameplaySettings.SignificantDigits)}"); + else if (fieldType == typeof(int)) + AddProperty(field.Name, () => $"{(int) field.GetValue(behavior)}"); + else if (fieldType == typeof(PerformanceStat)) + { + var stat = (PerformanceStat) field.GetValue(behavior); + AddProperty(field.Name, () => $"{Context.Evaluate(stat, gear).SignificantDigits(Context.GameplaySettings.SignificantDigits)}"); + } } } } diff --git a/Assets/Scripts/UI/SectorMap.cs b/Assets/Scripts/UI/SectorMap.cs index 841c4551f..b0b87f1ec 100644 --- a/Assets/Scripts/UI/SectorMap.cs +++ b/Assets/Scripts/UI/SectorMap.cs @@ -35,9 +35,205 @@ public class SectorMap : MonoBehaviour public float IconDistance = 1; public float IconBackgroundSize = 3; public float LabelDistance = .4f; + public float LinkWidth; + public float CriticalLinkWidth; + public AnimationCurve IconScaleAnimation; - private Dictionary _factionMaterials = - new Dictionary(); + private HashSet _revealedZones = new HashSet(); + private HashSet<(SectorZone, SectorZone)> _revealedLinks = new HashSet<(SectorZone, SectorZone)>(); + + private Dictionary _factionMaterials = + new Dictionary(); + + private Dictionary _zoneInstances = new Dictionary(); + private Queue> _queuedZoneReveals = new Queue>(); + + public void QueueZoneReveal(IEnumerable zones) + { + _queuedZoneReveals.Enqueue(zones); + } + + public void StartReveal(float linkDuration, float iconDuration) + { + if (_queuedZoneReveals.Count > 0) + { + StartCoroutine(RevealZone(_queuedZoneReveals.Dequeue(), linkDuration, iconDuration)); + } + } + + public IEnumerator RevealZone(IEnumerable zones, float linkDuration, float iconDuration) + { + var linksToReveal = new List<(float2 start, float2 end, Transform linkInstance, bool critical)>(); + var zoneTransforms = new List(); + var zoneInstanceScale = ZonePrototype.transform.localScale; + + foreach (var zone in zones) + { + if (!_revealedZones.Contains(zone)) + { + var zoneInstance = ZonePrototype.Instantiate(); + _zoneInstances[zone] = zoneInstance; + var zoneInstanceTransform = zoneInstance.transform; + zoneTransforms.Add(zoneInstanceTransform); + zoneInstanceTransform.localPosition = new Vector3(zone.Position.x, zone.Position.y); + if(zone.Owner != null) + { + zoneInstance.Primary.sharedMaterial = _factionMaterials[zone.Owner].primaryMaterial; + zoneInstance.Secondary.sharedMaterial = _factionMaterials[zone.Owner].secondaryMaterial; + if(zone == ActionGameManager.CurrentSector.HomeZones[zone.Owner]) + zoneInstance.Secondary.transform.localScale = Vector3.one * 4; + } + else + { + zoneInstance.Secondary.gameObject.SetActive(false); + } + + var isOnCriticalPath = ActionGameManager.CurrentSector.ExitPath.Contains(zone); + foreach (var adjacentZone in zone.AdjacentZones) + { + // If the adjacent zone is in the set already revealed, then show the link + if (_revealedZones.Contains(adjacentZone) && + !(_revealedLinks.Contains((zone, adjacentZone)) || + _revealedLinks.Contains((adjacentZone, zone)))) + { + var link = LinkPrototype.Instantiate(); + var critical = isOnCriticalPath && ActionGameManager.CurrentSector.ExitPath.Contains(adjacentZone); + linksToReveal.Add((zone.Position, adjacentZone.Position, link, critical)); + if (zone.Owner != null && zone.Owner == adjacentZone.Owner) + link.GetComponent().sharedMaterial = _factionMaterials[zone.Owner].linkMaterial; + + var dir = normalize(zone.Position - adjacentZone.Position); + link.rotation = Quaternion.Euler(0,0,atan2(dir.y,dir.x) * Mathf.Rad2Deg); + + placeLink(zone.Position, adjacentZone.Position, link, 0, critical); + } + } + _revealedZones.Add(zone); + + // Determine center of mass for adjacent zone links, used for placement of label and icons + var linkDirection = normalize(zone.AdjacentZones + .Aggregate(float2.zero, (v, adjacentZone) => v + normalize(adjacentZone.Position - zone.Position))); + + var zoneText = zoneInstance.Label; + zoneText.text = zone.Name; + var zoneTextTransform = zoneText.GetComponent(); + zoneTextTransform.pivot = new Vector2(sign(linkDirection.x)/2+.5f,sign(linkDirection.y)/2+.5f); + zoneTextTransform.localPosition = new Vector3(-linkDirection.x * LabelDistance, -linkDirection.y * LabelDistance, -1); + + if (zone == ActionGameManager.CurrentSector.Entrance) + { + var iconInstance = IconPrototype.Instantiate(); + iconInstance.material.mainTexture = EntranceIcon; + var iconTransform = iconInstance.transform; + iconTransform.SetParent(zoneInstanceTransform); + iconTransform.localScale = Vector3.one; + iconTransform.localPosition = new Vector3(-linkDirection.x * IconDistance, -linkDirection.y * IconDistance); + } + + if (zone == ActionGameManager.CurrentSector.Exit) + { + var iconInstance = IconPrototype.Instantiate(); + iconInstance.material.mainTexture = ExitIcon; + var iconTransform = iconInstance.transform; + iconTransform.SetParent(zoneInstanceTransform); + iconTransform.localScale = Vector3.one; + iconTransform.localPosition = new Vector3(-linkDirection.x * IconDistance, -linkDirection.y * IconDistance); + } + + var homeMega = ActionGameManager.CurrentSector.HomeZones.Keys + .FirstOrDefault(m => ActionGameManager.CurrentSector.HomeZones[m] == zone); + if (homeMega != null) + { + var backgroundInstance = IconBackgroundPrototype.Instantiate(); + var iconInstance = IconPrototype.Instantiate(); + + backgroundInstance.material.SetColor("_Color", homeMega.SecondaryColor.ToColor()); + iconInstance.material.mainTexture = HomeIcon; + iconInstance.material.SetColor("_Color", homeMega.PrimaryColor.ToColor()); + + var backgroundTransform = backgroundInstance.transform; + var iconTransform = iconInstance.transform; + + backgroundTransform.SetParent(zoneInstanceTransform); + iconTransform.SetParent(zoneInstanceTransform); + + backgroundTransform.localScale = Vector3.one * IconBackgroundSize; + iconTransform.localScale = Vector3.one; + + backgroundTransform.localPosition = new Vector3(-linkDirection.x * IconDistance, -linkDirection.y * IconDistance, .5f); + iconTransform.localPosition = new Vector3(-linkDirection.x * IconDistance, -linkDirection.y * IconDistance); + } + + var bossMega = ActionGameManager.CurrentSector.BossZones.Keys + .FirstOrDefault(m => ActionGameManager.CurrentSector.BossZones[m] == zone); + if (bossMega != null) + { + var backgroundInstance = IconBackgroundPrototype.Instantiate(); + var iconInstance = IconPrototype.Instantiate(); + + backgroundInstance.material.SetColor("_Color", bossMega.SecondaryColor.ToColor()); + iconInstance.material.mainTexture = BossIcon; + iconInstance.material.SetColor("_Color", bossMega.PrimaryColor.ToColor()); + + var backgroundTransform = backgroundInstance.transform; + var iconTransform = iconInstance.transform; + + backgroundTransform.SetParent(zoneInstanceTransform); + iconTransform.SetParent(zoneInstanceTransform); + + backgroundTransform.localScale = Vector3.one * IconBackgroundSize; + iconTransform.localScale = Vector3.one; + + if (homeMega != null) + { + backgroundTransform.localPosition = new Vector3(linkDirection.x * IconDistance, linkDirection.y * IconDistance, .5f); + iconTransform.localPosition = new Vector3(linkDirection.x * IconDistance, linkDirection.y * IconDistance); + } + else + { + backgroundTransform.localPosition = new Vector3(-linkDirection.x * IconDistance, -linkDirection.y * IconDistance, .5f); + iconTransform.localPosition = new Vector3(-linkDirection.x * IconDistance, -linkDirection.y * IconDistance); + } + } + } + } + foreach (var tr in zoneTransforms) tr.gameObject.SetActive(false); + + // Local function for animating the placement of a link + void placeLink(float2 start, float2 end, Transform link, float t, bool critical) + { + var pos = lerp(start, end, t / 2); + link.localPosition = new Vector3(pos.x, pos.y); + + var localScale = link.localScale; + localScale = new Vector3(length(start - end)*t, critical ? CriticalLinkWidth : LinkWidth, 1); + link.localScale = localScale; + } + + var startTime = Time.time; + while (Time.time - startTime < linkDuration) + { + var t = (Time.time - startTime) / linkDuration; + foreach (var (start, end, link, critical) in linksToReveal) placeLink(end, start, link, t, critical); + + yield return null; + } + foreach (var (start, end, link, critical) in linksToReveal) placeLink(start, end, link, 1, critical); + + foreach (var tr in zoneTransforms) tr.gameObject.SetActive(true); + startTime = Time.time; + while (Time.time - startTime < iconDuration) + { + var t = (Time.time - startTime) / iconDuration; + foreach (var tr in zoneTransforms) tr.localScale = zoneInstanceScale * IconScaleAnimation.Evaluate(t); + RenderInfluence(); + + yield return null; + } + foreach (var tr in zoneTransforms) tr.localScale = zoneInstanceScale; + + StartReveal(linkDuration, iconDuration); + } public void Start() { @@ -48,171 +244,31 @@ public class SectorMap : MonoBehaviour } foreach (var mega in ActionGameManager.CurrentSector.Factions) { + var influenceTexture = new RenderTexture(1024, 1024, 0, RenderTextureFormat.RHalf); + var influenceRenderer = InfluenceRendererPrototype.Instantiate(); + + influenceRenderer.material.mainTexture = influenceTexture; + influenceRenderer.material.SetColor("_Color1", mega.PrimaryColor.ToColor()); + influenceRenderer.material.SetColor("_Color2", mega.SecondaryColor.ToColor()); + influenceRenderer.material.SetFloat("_FillTilt", Random.value * PI); + var primary = Instantiate(ZonePrimaryMaterial); primary.SetColor("_Color", (mega.PrimaryColor * MegaPrimaryBoost).ToColor()); + var secondary = Instantiate(ZoneSecondaryMaterial); secondary.SetColor("_Color", (mega.SecondaryColor * MegaSecondaryBoost).ToColor()); + var link = Instantiate(ZoneLinkMaterial); link.SetColor("_Color", (mega.PrimaryColor * MegaLinkBoost).ToColor()); - _factionMaterials.Add(mega, (new RenderTexture(1024, 1024, 0, RenderTextureFormat.RHalf), primary, secondary, link)); + + _factionMaterials.Add(mega, (influenceRenderer, influenceTexture, primary, secondary, link)); + var legendElement = LegendPrototype.Instantiate(); legendElement.Primary.color = mega.PrimaryColor.ToColor(); legendElement.Secondary.color = mega.SecondaryColor.ToColor(); legendElement.Label.text = mega.ShortName; } - var visitedZones = new HashSet(); - //Debug.Log($"Found {sector.Zones.Count(z=>!z.AdjacentZones.Any())} orphaned zones!"); - - var zoneInstances = new Dictionary(); - foreach (var zone in ActionGameManager.CurrentSector.Zones) - { - var zoneInstance = ZonePrototype.Instantiate(); - zoneInstances[zone] = zoneInstance; - var zoneInstanceTransform = zoneInstance.transform; - zoneInstanceTransform.localPosition = new Vector3(zone.Position.x, zone.Position.y); - if(zone.Owner != null) - { - zoneInstance.Primary.sharedMaterial = _factionMaterials[zone.Owner].primaryMaterial; - zoneInstance.Secondary.sharedMaterial = _factionMaterials[zone.Owner].secondaryMaterial; - } - //zoneInstance.Background.transform.localScale = Vector3.one * (sector.HomeZones.Values.Any(os=>os==zone) ? 4 : 2); - var linkDirection = float2.zero; - foreach (var link in zone.AdjacentZones) - { - linkDirection += normalize(link.Position - zone.Position); - if (!visitedZones.Contains(link)) - { - var linkInstance = LinkPrototype.Instantiate(); - var pos = (zone.Position + link.Position) / 2; - linkInstance.localPosition = new Vector3(pos.x, pos.y); - if (zone.Owner != null && zone.Owner == link.Owner) - linkInstance.GetComponent().sharedMaterial = _factionMaterials[zone.Owner].linkMaterial; - - var localScale = linkInstance.localScale; - localScale = new Vector3(length(zone.Position - link.Position), localScale.y, localScale.z); - linkInstance.localScale = localScale; - - var dir = normalize(zone.Position - link.Position); - linkInstance.rotation = Quaternion.Euler(0,0,atan2(dir.y,dir.x) * Mathf.Rad2Deg); - } - } - - linkDirection = normalize(linkDirection); - var zoneText = zoneInstance.Label; - zoneText.text = zone.Name; - var zoneTextTransform = zoneText.GetComponent(); - zoneTextTransform.pivot = new Vector2(sign(linkDirection.x)/2+.5f,sign(linkDirection.y)/2+.5f); - zoneTextTransform.localPosition = new Vector3(-linkDirection.x * LabelDistance, -linkDirection.y * LabelDistance, -1); - visitedZones.Add(zone); - - if (zone == ActionGameManager.CurrentSector.Entrance) - { - var iconInstance = IconPrototype.Instantiate(); - iconInstance.material.mainTexture = EntranceIcon; - var iconTransform = iconInstance.transform; - iconTransform.SetParent(zoneInstanceTransform); - iconTransform.localScale = Vector3.one; - iconTransform.localPosition = new Vector3(-linkDirection.x * IconDistance, -linkDirection.y * IconDistance); - } - - if (zone == ActionGameManager.CurrentSector.Exit) - { - var iconInstance = IconPrototype.Instantiate(); - iconInstance.material.mainTexture = ExitIcon; - var iconTransform = iconInstance.transform; - iconTransform.SetParent(zoneInstanceTransform); - iconTransform.localScale = Vector3.one; - iconTransform.localPosition = new Vector3(-linkDirection.x * IconDistance, -linkDirection.y * IconDistance); - } - - var homeMega = ActionGameManager.CurrentSector.HomeZones.Keys - .FirstOrDefault(m => ActionGameManager.CurrentSector.HomeZones[m] == zone); - if (homeMega != null) - { - var backgroundInstance = IconBackgroundPrototype.Instantiate(); - var iconInstance = IconPrototype.Instantiate(); - - backgroundInstance.material.SetColor("_Color", homeMega.SecondaryColor.ToColor()); - iconInstance.material.mainTexture = HomeIcon; - iconInstance.material.SetColor("_Color", homeMega.PrimaryColor.ToColor()); - - var backgroundTransform = backgroundInstance.transform; - var iconTransform = iconInstance.transform; - - backgroundTransform.SetParent(zoneInstanceTransform); - iconTransform.SetParent(zoneInstanceTransform); - - backgroundTransform.localScale = Vector3.one * IconBackgroundSize; - iconTransform.localScale = Vector3.one; - - backgroundTransform.localPosition = new Vector3(-linkDirection.x * IconDistance, -linkDirection.y * IconDistance, .5f); - iconTransform.localPosition = new Vector3(-linkDirection.x * IconDistance, -linkDirection.y * IconDistance); - } - - var bossMega = ActionGameManager.CurrentSector.BossZones.Keys - .FirstOrDefault(m => ActionGameManager.CurrentSector.BossZones[m] == zone); - if (bossMega != null) - { - var backgroundInstance = IconBackgroundPrototype.Instantiate(); - var iconInstance = IconPrototype.Instantiate(); - - backgroundInstance.material.SetColor("_Color", bossMega.SecondaryColor.ToColor()); - iconInstance.material.mainTexture = BossIcon; - iconInstance.material.SetColor("_Color", bossMega.PrimaryColor.ToColor()); - - var backgroundTransform = backgroundInstance.transform; - var iconTransform = iconInstance.transform; - - backgroundTransform.SetParent(zoneInstanceTransform); - iconTransform.SetParent(zoneInstanceTransform); - - backgroundTransform.localScale = Vector3.one * IconBackgroundSize; - iconTransform.localScale = Vector3.one; - - if (homeMega != null) - { - backgroundTransform.localPosition = new Vector3(linkDirection.x * IconDistance, linkDirection.y * IconDistance, .5f); - iconTransform.localPosition = new Vector3(linkDirection.x * IconDistance, linkDirection.y * IconDistance); - } - else - { - backgroundTransform.localPosition = new Vector3(-linkDirection.x * IconDistance, -linkDirection.y * IconDistance, .5f); - iconTransform.localPosition = new Vector3(-linkDirection.x * IconDistance, -linkDirection.y * IconDistance); - } - } - } - - // Render Influence Textures - foreach (var mega in ActionGameManager.CurrentSector.Factions) - { - var influenceRenderer = InfluenceRendererPrototype.Instantiate(); - foreach (var zone in ActionGameManager.CurrentSector.Zones) - { - var instance = zoneInstances[zone]; - var influence = 0f; - if (zone.Factions.Length > 0) - { - if (zone.Factions.Contains(mega)) - { - influence = 10; - if (zone.Owner != mega) - influence *= .5f; - } - else influence = -10; - } - instance.Influence.material.SetFloat("_Depth", influence); - } - - InfluenceCamera.targetTexture = _factionMaterials[mega].influence; - InfluenceCamera.Render(); - - influenceRenderer.material.mainTexture = _factionMaterials[mega].influence; - influenceRenderer.material.SetColor("_Color1", mega.PrimaryColor.ToColor()); - influenceRenderer.material.SetColor("_Color2", mega.SecondaryColor.ToColor()); - influenceRenderer.material.SetFloat("_FillTilt", Random.value * PI); - } - SectorRenderer.material.SetFloat("CloudAmplitude", ActionGameManager.CurrentSector.Settings.CloudAmplitude); SectorRenderer.material.SetFloat("CloudExponent", ActionGameManager.CurrentSector.Settings.CloudExponent); SectorRenderer.material.SetFloat("NoisePosition", ActionGameManager.CurrentSector.Settings.NoisePosition); @@ -222,4 +278,35 @@ public class SectorMap : MonoBehaviour SectorRenderer.material.SetFloat("NoiseLacunarity", ActionGameManager.CurrentSector.Settings.NoiseLacunarity); SectorRenderer.material.SetFloat("NoiseFrequency", ActionGameManager.CurrentSector.Settings.NoiseFrequency); } + + private void RenderInfluence() + { + // Render Influence Textures + foreach (var mega in ActionGameManager.CurrentSector.Factions) + { + foreach (var zone in ActionGameManager.CurrentSector.Zones) + { + if(_zoneInstances.ContainsKey(zone)) + { + var instance = _zoneInstances[zone]; + var influence = 0f; + if (zone.Factions.Length > 0) + { + if (zone.Factions.Contains(mega)) + { + influence = 10; + if (zone.Owner != mega) + influence *= .5f; + } + else influence = -10; + } + + instance.Influence.material.SetFloat("_Depth", influence); + } + } + + InfluenceCamera.targetTexture = _factionMaterials[mega].influence; + InfluenceCamera.Render(); + } + } } diff --git a/Assets/SectorRenderer.cs b/Assets/Scripts/UI/SectorRenderer.cs similarity index 64% rename from Assets/SectorRenderer.cs rename to Assets/Scripts/UI/SectorRenderer.cs index 55daa982f..830c3755a 100644 --- a/Assets/SectorRenderer.cs +++ b/Assets/Scripts/UI/SectorRenderer.cs @@ -1,5 +1,6 @@ using System.Collections; using System.Collections.Generic; +using System.Linq; using UnityEngine; using UnityEngine.EventSystems; using UnityEngine.UI; @@ -9,12 +10,22 @@ using float2 = Unity.Mathematics.float2; public class SectorRenderer : MonoBehaviour, IBeginDragHandler, IDragHandler, IScrollHandler { + public Canvas Canvas; + public SectorMap Map; public ActionGameManager GameManager; + public Camera MainCamera; public Camera SectorCamera; public MeshRenderer SectorBackgroundRenderer; public float ZoomSpeed; public float MinViewSize = .1f; public float MaxViewSize = 2; + public Button PathAnimationButton; + public float PathAnimationDamping; + public float PathAnimationDuration; + public float PathAnimationDurationPadding = 1.1f; + public GameObject LegendPanel; + public float LinkAnimationDuration; + public float IconAnimationDuration; private float2 _startMousePosition; private float2 _startMapPosition; @@ -40,6 +51,45 @@ public class SectorRenderer : MonoBehaviour, IBeginDragHandler, IDragHandler, IS _sectorBackgroundDepth = _sectorBackgroundTransform.position.z; _sectorCameraTransform = SectorCamera.transform; _sectorCameraDepth = _sectorCameraTransform.position.z; + PathAnimationButton.onClick.AddListener(() => + { + Map.StartCoroutine(AnimatePath()); + }); + } + + private IEnumerator AnimatePath() + { + var pathZones = ActionGameManager.CurrentSector.ExitPath; + LegendPanel.SetActive(false); + PathAnimationButton.gameObject.SetActive(false); + foreach (var zones in ActionGameManager.CurrentSector.Zones + .GroupBy(z=>z.Distance[ActionGameManager.CurrentSector.Entrance]) + .OrderBy(g=>g.Key)) + { + Map.QueueZoneReveal(zones); + } + + var revealCount = ActionGameManager.CurrentSector.Entrance.Distance[ActionGameManager.CurrentSector.Exit]; + Map.StartReveal( + PathAnimationDuration / revealCount * (LinkAnimationDuration / (IconAnimationDuration + LinkAnimationDuration)), + PathAnimationDuration / revealCount * (IconAnimationDuration / (IconAnimationDuration + LinkAnimationDuration))); + MainCamera.enabled = false; + SectorCamera.targetTexture = null; + Canvas.gameObject.SetActive(false); + SectorCamera.gameObject.SetActive(true); + + var pathAnimationLerp = 0f; + while (pathAnimationLerp < 1) + { + var currentTargetZone = pathZones[(int) (pathZones.Length * pathAnimationLerp)]; + _position = lerp(_position, currentTargetZone.Position, PathAnimationDamping); + pathAnimationLerp += Time.deltaTime / (PathAnimationDuration * PathAnimationDurationPadding); + UpdateCamera(); + yield return null; + } + + LegendPanel.SetActive(true); + PathAnimationButton.gameObject.SetActive(true); } private void OnEnable() @@ -48,6 +98,8 @@ public class SectorRenderer : MonoBehaviour, IBeginDragHandler, IDragHandler, IS SectorCamera.gameObject.SetActive(true); _position = GameManager.Zone.SectorZone.Position; _viewSize = .25f; + + Map.StartReveal(LinkAnimationDuration, IconAnimationDuration); } private void OnDisable() @@ -76,6 +128,11 @@ public class SectorRenderer : MonoBehaviour, IBeginDragHandler, IDragHandler, IS _outputImage.material.SetTexture("_DetailTex", _outputTexture); } + UpdateCamera(); + } + + void UpdateCamera() + { var halfSize = _viewSize / 2; var bounds = float4( _position.x - _aspectRatio * halfSize, diff --git a/Assets/SectorRenderer.cs.meta b/Assets/Scripts/UI/SectorRenderer.cs.meta similarity index 100% rename from Assets/SectorRenderer.cs.meta rename to Assets/Scripts/UI/SectorRenderer.cs.meta diff --git a/Assets/Scripts/UI/TradeMenu.cs b/Assets/Scripts/UI/TradeMenu.cs index 5aedc2076..19d2a084d 100644 --- a/Assets/Scripts/UI/TradeMenu.cs +++ b/Assets/Scripts/UI/TradeMenu.cs @@ -34,6 +34,7 @@ public class TradeMenu : MonoBehaviour private void OnEnable() { + if (GameManager.DockedEntity == null) return; _targetCargo = GameManager.DockingBay; TargetCargoLabel.text = "Docking Bay"; Properties.Context = GameManager.ItemManager; diff --git a/Assets/Scripts/Sector Display.meta b/Assets/Scripts/Zone Display.meta similarity index 100% rename from Assets/Scripts/Sector Display.meta rename to Assets/Scripts/Zone Display.meta diff --git a/Assets/Scripts/Sector Display/BlueNoiseProvider.cs b/Assets/Scripts/Zone Display/BlueNoiseProvider.cs similarity index 100% rename from Assets/Scripts/Sector Display/BlueNoiseProvider.cs rename to Assets/Scripts/Zone Display/BlueNoiseProvider.cs diff --git a/Assets/Scripts/Sector Display/BlueNoiseProvider.cs.meta b/Assets/Scripts/Zone Display/BlueNoiseProvider.cs.meta similarity index 100% rename from Assets/Scripts/Sector Display/BlueNoiseProvider.cs.meta rename to Assets/Scripts/Zone Display/BlueNoiseProvider.cs.meta diff --git a/Assets/Scripts/Sector Display/CopyTransform.cs b/Assets/Scripts/Zone Display/CopyTransform.cs similarity index 100% rename from Assets/Scripts/Sector Display/CopyTransform.cs rename to Assets/Scripts/Zone Display/CopyTransform.cs diff --git a/Assets/Scripts/Sector Display/CopyTransform.cs.meta b/Assets/Scripts/Zone Display/CopyTransform.cs.meta similarity index 100% rename from Assets/Scripts/Sector Display/CopyTransform.cs.meta rename to Assets/Scripts/Zone Display/CopyTransform.cs.meta diff --git a/Assets/Scripts/Sector Display/GasGiantObject.cs b/Assets/Scripts/Zone Display/GasGiantObject.cs similarity index 100% rename from Assets/Scripts/Sector Display/GasGiantObject.cs rename to Assets/Scripts/Zone Display/GasGiantObject.cs diff --git a/Assets/Scripts/Sector Display/GasGiantObject.cs.meta b/Assets/Scripts/Zone Display/GasGiantObject.cs.meta similarity index 100% rename from Assets/Scripts/Sector Display/GasGiantObject.cs.meta rename to Assets/Scripts/Zone Display/GasGiantObject.cs.meta diff --git a/Assets/Scripts/Sector Display/GradientMapper.cs b/Assets/Scripts/Zone Display/GradientMapper.cs similarity index 100% rename from Assets/Scripts/Sector Display/GradientMapper.cs rename to Assets/Scripts/Zone Display/GradientMapper.cs diff --git a/Assets/Scripts/Sector Display/GradientMapper.cs.meta b/Assets/Scripts/Zone Display/GradientMapper.cs.meta similarity index 100% rename from Assets/Scripts/Sector Display/GradientMapper.cs.meta rename to Assets/Scripts/Zone Display/GradientMapper.cs.meta diff --git a/Assets/Scripts/Sector Display/GravityObject.cs b/Assets/Scripts/Zone Display/GravityObject.cs similarity index 100% rename from Assets/Scripts/Sector Display/GravityObject.cs rename to Assets/Scripts/Zone Display/GravityObject.cs diff --git a/Assets/Scripts/Sector Display/GravityObject.cs.meta b/Assets/Scripts/Zone Display/GravityObject.cs.meta similarity index 100% rename from Assets/Scripts/Sector Display/GravityObject.cs.meta rename to Assets/Scripts/Zone Display/GravityObject.cs.meta diff --git a/Assets/Scripts/Sector Display/MapView.cs b/Assets/Scripts/Zone Display/MapView.cs similarity index 100% rename from Assets/Scripts/Sector Display/MapView.cs rename to Assets/Scripts/Zone Display/MapView.cs diff --git a/Assets/Scripts/Sector Display/MapView.cs.meta b/Assets/Scripts/Zone Display/MapView.cs.meta similarity index 100% rename from Assets/Scripts/Sector Display/MapView.cs.meta rename to Assets/Scripts/Zone Display/MapView.cs.meta diff --git a/Assets/Scripts/Sector Display/PlanetObject.cs b/Assets/Scripts/Zone Display/PlanetObject.cs similarity index 100% rename from Assets/Scripts/Sector Display/PlanetObject.cs rename to Assets/Scripts/Zone Display/PlanetObject.cs diff --git a/Assets/Scripts/Sector Display/PlanetObject.cs.meta b/Assets/Scripts/Zone Display/PlanetObject.cs.meta similarity index 100% rename from Assets/Scripts/Sector Display/PlanetObject.cs.meta rename to Assets/Scripts/Zone Display/PlanetObject.cs.meta diff --git a/Assets/Scripts/Sector Display/SnapToGrid.cs b/Assets/Scripts/Zone Display/SnapToGrid.cs similarity index 100% rename from Assets/Scripts/Sector Display/SnapToGrid.cs rename to Assets/Scripts/Zone Display/SnapToGrid.cs diff --git a/Assets/Scripts/Sector Display/SnapToGrid.cs.meta b/Assets/Scripts/Zone Display/SnapToGrid.cs.meta similarity index 100% rename from Assets/Scripts/Sector Display/SnapToGrid.cs.meta rename to Assets/Scripts/Zone Display/SnapToGrid.cs.meta diff --git a/Assets/Scripts/Sector Display/SunMaterial.cs b/Assets/Scripts/Zone Display/SunMaterial.cs similarity index 100% rename from Assets/Scripts/Sector Display/SunMaterial.cs rename to Assets/Scripts/Zone Display/SunMaterial.cs diff --git a/Assets/Scripts/Sector Display/SunMaterial.cs.meta b/Assets/Scripts/Zone Display/SunMaterial.cs.meta similarity index 100% rename from Assets/Scripts/Sector Display/SunMaterial.cs.meta rename to Assets/Scripts/Zone Display/SunMaterial.cs.meta diff --git a/Assets/Scripts/Sector Display/SunObject.cs b/Assets/Scripts/Zone Display/SunObject.cs similarity index 100% rename from Assets/Scripts/Sector Display/SunObject.cs rename to Assets/Scripts/Zone Display/SunObject.cs diff --git a/Assets/Scripts/Sector Display/SunObject.cs.meta b/Assets/Scripts/Zone Display/SunObject.cs.meta similarity index 100% rename from Assets/Scripts/Sector Display/SunObject.cs.meta rename to Assets/Scripts/Zone Display/SunObject.cs.meta diff --git a/Assets/Scripts/Sector Display/VolumeSampling.cs b/Assets/Scripts/Zone Display/VolumeSampling.cs similarity index 98% rename from Assets/Scripts/Sector Display/VolumeSampling.cs rename to Assets/Scripts/Zone Display/VolumeSampling.cs index 71b8dd85c..706919fda 100644 --- a/Assets/Scripts/Sector Display/VolumeSampling.cs +++ b/Assets/Scripts/Zone Display/VolumeSampling.cs @@ -41,7 +41,7 @@ public class VolumeSampling : MonoBehaviour // Shader needs to know the position and scale of cameras used to render input textures if(GridTransform != null) - _volMaterial.SetVector("_GridTransform", new Vector4(GridTransform.position.x,GridTransform.position.z,GridTransform.localScale.x*4)); + _volMaterial.SetVector("_GridTransform", new Vector4(GridTransform.position.x,GridTransform.position.z,GridTransform.localScale.x)); Graphics.Blit( source, destination, _volMaterial, 0 ); } diff --git a/Assets/Scripts/Sector Display/VolumeSampling.cs.meta b/Assets/Scripts/Zone Display/VolumeSampling.cs.meta similarity index 100% rename from Assets/Scripts/Sector Display/VolumeSampling.cs.meta rename to Assets/Scripts/Zone Display/VolumeSampling.cs.meta diff --git a/Assets/Scripts/Sector Display/WaveScroll.cs b/Assets/Scripts/Zone Display/WaveScroll.cs similarity index 100% rename from Assets/Scripts/Sector Display/WaveScroll.cs rename to Assets/Scripts/Zone Display/WaveScroll.cs diff --git a/Assets/Scripts/Sector Display/WaveScroll.cs.meta b/Assets/Scripts/Zone Display/WaveScroll.cs.meta similarity index 100% rename from Assets/Scripts/Sector Display/WaveScroll.cs.meta rename to Assets/Scripts/Zone Display/WaveScroll.cs.meta diff --git a/Assets/Scripts/Sector Display/ZoneRenderer.cs b/Assets/Scripts/Zone Display/ZoneRenderer.cs similarity index 98% rename from Assets/Scripts/Sector Display/ZoneRenderer.cs rename to Assets/Scripts/Zone Display/ZoneRenderer.cs index 24b204c8e..17b0cb6ba 100644 --- a/Assets/Scripts/Sector Display/ZoneRenderer.cs +++ b/Assets/Scripts/Zone Display/ZoneRenderer.cs @@ -20,7 +20,6 @@ public class ZoneRenderer : MonoBehaviour { public Transform WormholePrefab; public float EntityFadeTime; - public Transform EffectManagerParent; public Transform FogCameraParent; public GameSettings Settings; public Transform ZoneRoot; @@ -36,6 +35,8 @@ public class ZoneRenderer : MonoBehaviour public int AsteroidSpritesheetWidth = 4; public int AsteroidSpritesheetHeight = 4; public LODHandler LODHandler; + public Slime SlimeRenderer; + public Camera SlimeGravityCamera; [Header("Tour")] public bool Tour; @@ -88,6 +89,7 @@ public class ZoneRenderer : MonoBehaviour get => _perspectiveEntity; set { + //if (_perspectiveEntity == value) return; _perspectiveEntity = value; _perspectiveSubscriptions[0]?.Dispose(); _perspectiveSubscriptions[1]?.Dispose(); @@ -112,8 +114,6 @@ public class ZoneRenderer : MonoBehaviour } } - public float GameTime { get; set; } - public float ViewDistance { set @@ -139,7 +139,6 @@ public class ZoneRenderer : MonoBehaviour void Start() { - EntityInstance.EffectManagerParent = EffectManagerParent; ViewDistance = Settings.DefaultViewDistance; MinimapDistance = Settings.MinimapZoomLevels[Settings.DefaultMinimapZoom]; @@ -153,6 +152,8 @@ public class ZoneRenderer : MonoBehaviour _maxDepth = 0; Zone = zone; SectorBrushes.localScale = zone.Pack.Radius * 2 * Vector3.one; + SlimeGravityCamera.orthographicSize = zone.Pack.Radius; + SlimeRenderer.ZoneRadius = zone.Pack.Radius; foreach(var p in zone.Planets.Values) LoadPlanet(p); @@ -440,7 +441,7 @@ public class ZoneRenderer : MonoBehaviour planet.Value.Body.transform.localPosition = new Vector3(0, Zone.GetHeight(p) + planetInstance.BodyRadius.Value * 2, 0); if(planet.Value is GasGiantObject gasGiantObject) { - gasGiantObject.GravityWaves.material.SetFloat("_Phase", GameTime * ((GasGiant) Zone.PlanetInstances[planet.Key]).GravityWavesSpeed.Value); + gasGiantObject.GravityWaves.material.SetFloat("_Phase", Zone.Time * ((GasGiant) Zone.PlanetInstances[planet.Key]).GravityWavesSpeed.Value); if(!(planet.Value is SunObject)) { var toParent = normalize(Zone.GetOrbitPosition(Zone.Orbits[planetInstance.BodyData.Orbit].Data.Parent) - p); diff --git a/Assets/Scripts/Sector Display/ZoneRenderer.cs.meta b/Assets/Scripts/Zone Display/ZoneRenderer.cs.meta similarity index 100% rename from Assets/Scripts/Sector Display/ZoneRenderer.cs.meta rename to Assets/Scripts/Zone Display/ZoneRenderer.cs.meta diff --git a/Assets/Shaders/Compute/Slime.meta b/Assets/Shaders/Compute/Slime.meta new file mode 100644 index 000000000..09a506a93 --- /dev/null +++ b/Assets/Shaders/Compute/Slime.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: c4f8746e2c2a794408521ecd19539f1c +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Shaders/Compute/Slime/RenderAccumulation.shader b/Assets/Shaders/Compute/Slime/RenderAccumulation.shader new file mode 100644 index 000000000..8862a8fd5 --- /dev/null +++ b/Assets/Shaders/Compute/Slime/RenderAccumulation.shader @@ -0,0 +1,54 @@ +Shader "Unlit/RenderAccumulation" +{ + Properties + { + _MainTex ("Texture", 2D) = "white" {} + } + SubShader + { + Tags { "Queue"="Transparent" "IgnoreProjector"="True" "RenderType"="Transparent" "PreviewType"="Plane" } + Blend One One + ColorMask RGB + Cull Off Lighting Off ZWrite Off + + Pass + { + CGPROGRAM + #pragma vertex vert + #pragma fragment frag + + #include "UnityCG.cginc" + + struct appdata + { + float4 vertex : POSITION; + float2 uv : TEXCOORD0; + }; + + struct v2f + { + float2 uv : TEXCOORD0; + float4 vertex : SV_POSITION; + }; + + sampler2D _MainTex; + float4 _MainTex_ST; + + v2f vert (appdata v) + { + v2f o; + o.vertex = UnityObjectToClipPos(v.vertex); + o.uv = TRANSFORM_TEX(v.uv, _MainTex); + return o; + } + + fixed4 frag (v2f i) : SV_Target + { + // sample the texture + float x = tex2D(_MainTex, i.uv).r; + return float4(x,x,x,1); + } + ENDCG + } + } +} diff --git a/Assets/Shaders/Compute/Slime/RenderAccumulation.shader.meta b/Assets/Shaders/Compute/Slime/RenderAccumulation.shader.meta new file mode 100644 index 000000000..76da2ec84 --- /dev/null +++ b/Assets/Shaders/Compute/Slime/RenderAccumulation.shader.meta @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: 1775d5166e85428488b54c358301ec7b +ShaderImporter: + externalObjects: {} + defaultTextures: [] + nonModifiableTextures: [] + preprocessorOverride: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Shaders/Compute/Slime/Slime Accumulation.mat b/Assets/Shaders/Compute/Slime/Slime Accumulation.mat new file mode 100644 index 000000000..6721cb760 --- /dev/null +++ b/Assets/Shaders/Compute/Slime/Slime Accumulation.mat @@ -0,0 +1,97 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Slime Accumulation + m_Shader: {fileID: 4800000, guid: 1775d5166e85428488b54c358301ec7b, type: 3} + m_ShaderKeywords: + m_LightmapFlags: 0 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + - _BlendOp: 0 + - _BumpScale: 1 + - _CameraFadingEnabled: 0 + - _CameraFarFadeDistance: 2 + - _CameraNearFadeDistance: 1 + - _ColorMode: 0 + - _Cull: 2 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DistortionBlend: 0.5 + - _DistortionEnabled: 0 + - _DistortionStrength: 1 + - _DistortionStrengthScaled: 0 + - _DstBlend: 0 + - _EmissionEnabled: 0 + - _FlipbookMode: 0 + - _GlossMapScale: 1 + - _Glossiness: 0.5 + - _GlossyReflections: 1 + - _LightingEnabled: 0 + - _Metallic: 0 + - _Mode: 0 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 0 + - _SoftParticlesEnabled: 0 + - _SoftParticlesFarFadeDistance: 1 + - _SoftParticlesNearFadeDistance: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 1 + m_Colors: + - _CameraFadeParams: {r: 0, g: Infinity, b: 0, a: 0} + - _Color: {r: 1, g: 1, b: 1, a: 1} + - _ColorAddSubDiff: {r: 0, g: 0, b: 0, a: 0} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} + - _SoftParticleFadeParams: {r: 0, g: 0, b: 0, a: 0} + m_BuildTextureStacks: [] diff --git a/Assets/Shaders/Compute/Slime/Slime Accumulation.mat.meta b/Assets/Shaders/Compute/Slime/Slime Accumulation.mat.meta new file mode 100644 index 000000000..b4260af36 --- /dev/null +++ b/Assets/Shaders/Compute/Slime/Slime Accumulation.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 817815ac1f000054ab738bb243cd7dba +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Shaders/Compute/Slime/Slime.compute b/Assets/Shaders/Compute/Slime/Slime.compute new file mode 100644 index 000000000..03736a85d --- /dev/null +++ b/Assets/Shaders/Compute/Slime/Slime.compute @@ -0,0 +1,301 @@ +#include "SlimeVertex.cginc" +#include "UnityCG.cginc" +#define NUM_THREAD_X 64 + +// Each #kernel tells which function to compile; you can have many kernels +#pragma kernel UpdateAgents +#pragma kernel Diffuse +#pragma kernel CreateAgentParticles +#pragma kernel CreateParticleGeometry + +// Struct for storing the current state of each simulated slime agent +struct Agent +{ + float2 position; + float angle; +}; + +struct Particle +{ + float3 start; + float3 middle; + float3 end; +}; + +// Accumulation Buffer +RWTexture2D accumulation; + +// Output of the diffusion kernel +RWTexture2D diffusedAccumulation; + +// Agent data buffer +RWStructuredBuffer agents; + +// Use this texture to sample level terrain shape for shenanigans +Texture2D Heightmap; +SamplerState samplerHeightmap; + +int randomOffset; +int numAgents; +float speed; +//float deltaTime; +int textureWidth; +float zoneRadius; +float deposition; +float diffusion; +float decay; +float sensorDistance; +float sensorSpread; +int sensorSize; +float randomSteering; +float turnSpeed; +float drive; + +// Hash function from H. Schechter & R. Bridson, goo.gl/RXiKaH +inline uint hash(uint s) +{ + s ^= 2747636419u; + s *= 2654435769u; + s ^= s >> 16; + s *= 2654435769u; + s ^= s >> 16; + s *= 2654435769u; + return s; +} + +inline float random(uint seed) +{ + return float(hash(seed)) / 4294967295.0; // 2^32-1 +} + +inline float2 uvToPos(float2 uv) +{ + return (uv - float2(.5, .5)) * (zoneRadius * 2); +} + +inline float2 posToUv(float2 pos) +{ + return pos / (zoneRadius * 2) + float2(.5, .5); +} + +float sense(float2 position, float angle, float directionSign) +{ + float sensorAngle = angle + directionSign * sensorSpread; + float2 sensorDir = float2(cos(sensorAngle), sin(sensorAngle)); + int2 sensorCenter = position + sensorDir * sensorDistance; + + float sum = 0; + for(int x = -sensorSize; x <= sensorSize; x++) + { + for(int y = -sensorSize; y <= sensorSize; y++) + { + int2 sample = sensorCenter + int2(x, y); + if(sample.x >= 0 && sample.x < textureWidth && sample.y >= 0 && sample.y < textureWidth) + { + sum += accumulation[sample]; + } + } + } + return sum; +} + +inline float unlerp(float x, float min, float max) +{ + return (x - min) / (max - min); +} + +[numthreads(NUM_THREAD_X,1,1)] +void UpdateAgents (uint3 id : SV_DispatchThreadID) +{ + if (id.x >= numAgents) return; + + Agent agent = agents[id.x]; + + // Move Agents based on direction and speed + float2 direction = float2(cos(agent.angle), sin(agent.angle)); + agent.position += direction * speed; + + float r = random(id.x + randomOffset); + + // Clamp position within bounds and randomize direction + if(dot(agent.position, agent.position) > zoneRadius * zoneRadius || isnan(agent.position.x)) + { + agent.position = normalize(agent.position) * zoneRadius; + //agent.position = float2(0,0); + agent.angle = r * UNITY_TWO_PI; + } + + // if(isnan(agent.position.x)) + // { + // agent.position = float2(0,0); + // agent.angle = r * UNITY_TWO_PI; + // } + + float2 texPos = posToUv(agent.position) * textureWidth; + + // Acquire sensory data + float forwardSensor = sense(texPos, agent.angle, 0); + float leftSensor = sense(texPos, agent.angle, -1); + float rightSensor = sense(texPos, agent.angle, 1); + + // Determine the range of the sensor inputs + float minSensor = min(min(leftSensor, rightSensor), forwardSensor); + float maxSensor = max(max(max(leftSensor, rightSensor), forwardSensor), .01); + float range = min(maxSensor - minSensor, .01); + + // Normalize sensor inputs + forwardSensor = unlerp(forwardSensor, minSensor, maxSensor); + leftSensor = unlerp(leftSensor, minSensor, maxSensor); + rightSensor = unlerp(rightSensor, minSensor, maxSensor); + + // Which direction it wants to turn in + float desire = leftSensor - rightSensor; + + // Strength of its directional preference + float motivation = pow(range / maxSensor, 1 / drive); + + agent.angle += turnSpeed * lerp(r * 2 - 1, desire, motivation); + + agents[id.x] = agent; + accumulation[int2(texPos)] += deposition; +} + +[numthreads(8,8,1)] +void Diffuse (uint3 id : SV_DispatchThreadID) +{ + if(id.x >= textureWidth || id.y >= textureWidth) return; + + float previous = accumulation[id.xy]; + + float sum = 0; + for(int x = -1; x <= 1; x++) + { + for(int y=-1; y <= 1; y++) + { + int2 sample = int2(id.x+x, id.y+y); + if(sample.x >= 0 && sample.x < textureWidth && sample.y >= 0 && sample.y < textureWidth) + { + sum += accumulation[sample]; + } + } + } + float average = sum / 9; + + diffusedAccumulation[id.xy] = lerp(previous, average, diffusion) * decay; +} + +// Buffer containing the leading position of the agent particle +RWStructuredBuffer particles; + +// Output buffer for particle trail geometry +RWStructuredBuffer vertexBuffer; + +// Perlin noise parameters +float noiseAmplitude; +float time; +float heightRange; +float heightOffset; +float trailDamping; +int particleCount; + +#define HASHSCALE 0.1031 +float hashp(float p) +{ + float3 p3 = frac(p.xxx * HASHSCALE); + p3 += dot(p3, p3.yzx + 19.19); + return frac((p3.x + p3.y) * p3.z); +} + +float fade(float t) { return t*t*t*(t*(6.*t-15.)+10.); } + +float grad(float hash, float p) +{ + int i = int(1e4*hash); + return (i & 1) == 0 ? p : -p; +} + +float perlinNoise1D(float p) +{ + float pi = floor(p), pf = p - pi, w = fade(pf); + return lerp(grad(hashp(pi), pf), grad(hashp(pi + 1.0), pf - 1.0), w) * 2.0; +} + +[numthreads(NUM_THREAD_X,1,1)] +void CreateAgentParticles (uint3 id : SV_DispatchThreadID) +{ + Agent agent = agents[id.x]; + float sequence = (float)id.x/particleCount; + float height = Heightmap.SampleLevel(samplerHeightmap, posToUv(agent.position), 0); + float particleHeight = -height + random(id.x) * heightRange + heightOffset; + Particle particle = particles[id.x]; + particle.end = lerp(particle.end, particle.middle, trailDamping); + particle.middle = lerp(particle.middle, particle.start, trailDamping); + particle.start = lerp(particle.start, float3( + agent.position.x + perlinNoise1D(id.x*3 + time + sequence) * noiseAmplitude, + particleHeight + perlinNoise1D(id.x*3 + 1 + time + sequence) * noiseAmplitude, + agent.position.y + perlinNoise1D(id.x*3 + 2 + time + sequence) * noiseAmplitude), trailDamping); + particles[id.x] = particle; +} + +// https://catlikecoding.com/unity/tutorials/curves-and-splines/ +inline float3 QuadraticSplinePosition(float3 p0, float3 p1, float3 p2, float t) +{ + //return lerp(lerp(p0,p1,t),lerp(p1,p2,t),t); + float oneMinusT = 1 - t; + return + oneMinusT * oneMinusT * p0 + + 2 * oneMinusT * t * p1 + + t * t * p2; +} + +inline float3 QuadraticSplineDerivative (float3 p0, float3 p1, float3 p2, float t) { + return + 2 * (1 - t) * (p1 - p0) + + 2 * t * (p2 - p1); +} + +int trailPoints; +float trailStartWidth; +float trailEndWidth; +float3 cameraPos; + +inline float3 calcToCameraDir(float3 pos) +{ + return normalize(cameraPos - pos); +} + +[numthreads(NUM_THREAD_X,1,1)] +void CreateParticleGeometry (uint3 id : SV_DispatchThreadID) +{ + Vertex v0 = GetDefaultVertex(); + Vertex v1 = GetDefaultVertex(); + + int idx = id.x; + int particleIndex = id.x / trailPoints; + int trailIndex = id.x % trailPoints; + float trailLerp = (float) trailIndex / trailPoints; + + Particle particle = particles[particleIndex]; + + //float3 pos = float3(particle, 0, trailIndex); + //float3 dir = float3(0,0,1); + //float3 pos = lerp(particle.start, particle.end, trailLerp); + //float3 dir = normalize(particle.end-particle.start); + float3 pos = QuadraticSplinePosition(particle.start, particle.middle, particle.end, trailLerp); + float3 dir = QuadraticSplineDerivative(particle.start, particle.middle, particle.end, trailLerp); + + float width = lerp(trailStartWidth, trailEndWidth, trailLerp); + + float3 toCameraDir = calcToCameraDir(pos); + float3 right = normalize(cross(dir, toCameraDir)) * width * 0.5f; + + v0.pos = pos - right; + v0.uv = float2(trailLerp, 0); + + v1.pos = pos + right; + v1.uv = float2(trailLerp, 1); + + uint vId = idx * 2; + vertexBuffer[vId] = v0; + vertexBuffer[vId+1] = v1; +} \ No newline at end of file diff --git a/Assets/Shaders/Compute/Slime/Slime.compute.meta b/Assets/Shaders/Compute/Slime/Slime.compute.meta new file mode 100644 index 000000000..80cb14b62 --- /dev/null +++ b/Assets/Shaders/Compute/Slime/Slime.compute.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 33eea2339ec4dc143b0e192a0b7f0a33 +ComputeShaderImporter: + externalObjects: {} + currentAPIMask: 4 + preprocessorOverride: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Shaders/Compute/Slime/Slime.cs b/Assets/Shaders/Compute/Slime/Slime.cs new file mode 100644 index 000000000..2f7fa5dde --- /dev/null +++ b/Assets/Shaders/Compute/Slime/Slime.cs @@ -0,0 +1,229 @@ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Runtime.InteropServices; +using MessagePack; +using UnityEngine; +using UnityEngine.Experimental.Rendering; +using UnityEngine.Rendering; +using Random = UnityEngine.Random; +using static Unity.Mathematics.math; + +public class Slime : MonoBehaviour +{ + #region variables + + [Header("Scene Links")] + public Camera TargetCamera; + + [Header("Materials")] + public ComputeShader SlimeCompute; + public Material AccumulationMaterial; + public Material ParticleMaterial; + public RenderTexture GravityTexture; + + [Header("Performance")] + public int TextureSize = 1024; + public float ZoneRadius = 512; + public int AgentCount = 524288; + public int ParticleCount = 65536; + public int TrailPoints = 8; + + [Header("Parameters")] + public SlimeSettings SlimeSettings; + public float ZoneCeiling; + public float ZoneFloor; + public float NoiseFrequency = 1; + public float NoiseAmplitude = 5; + public float ParticleHeightRange; + public float ParticleHeightOffset; + public float TrailStartWidth = .5f; + public float TrailEndWidth = .1f; + public float TrailDamping = .05f; + + private const int GROUP_SIZE = 64; + private int _updateAgentsKernel; + private int _diffuseKernel; + private int _particleKernel; + private int _geometryKernel; + + private int IndexBufferSize => ParticleCount * 6 * (TrailPoints - 1); + + #endregion + + #region buffers + + private ComputeBuffer _agentsBuffer; + private RenderTexture _accumulationTexture; + private RenderTexture _previousAccumulationTexture; + + private ComputeBuffer _particlesBuffer; + + private ComputeBuffer _indexBuffer; + private ComputeBuffer _vertexBuffer; + + #endregion + + #region Structs + + struct Agent + { + public Vector2 Position; + public float Angle; + } + + struct Particle + { + public Vector3 Start; + public Vector3 Middle; + public Vector3 End; + } + + struct Vertex + { + public Vector3 Position; + public Vector2 UV; + } + + #endregion + + void Start() + { + _updateAgentsKernel = SlimeCompute.FindKernel("UpdateAgents"); + _diffuseKernel = SlimeCompute.FindKernel("Diffuse"); + _particleKernel = SlimeCompute.FindKernel("CreateAgentParticles"); + _geometryKernel = SlimeCompute.FindKernel("CreateParticleGeometry"); + + _accumulationTexture = new RenderTexture(TextureSize, TextureSize, 1, RenderTextureFormat.RFloat); + _accumulationTexture.enableRandomWrite = true; + _previousAccumulationTexture = new RenderTexture(TextureSize, TextureSize, 1, RenderTextureFormat.RFloat); + _previousAccumulationTexture.enableRandomWrite = true; + AccumulationMaterial.SetTexture("_MainTex", _accumulationTexture); + + _agentsBuffer = new ComputeBuffer(AgentCount, Marshal.SizeOf(typeof(Agent))); + var agents = new Agent[AgentCount]; + for (var i = 0; i < agents.Length; i++) + { + agents[i] = new Agent + { + Position = Random.insideUnitCircle * ZoneRadius, + Angle = Random.value * Mathf.PI * 2 + }; + } + _agentsBuffer.SetData(agents); + + _particlesBuffer = new ComputeBuffer(ParticleCount, Marshal.SizeOf(typeof(Particle))); + + _vertexBuffer = new ComputeBuffer(ParticleCount * 2 * TrailPoints, Marshal.SizeOf(typeof(Vertex))); + + var indexData = new int[IndexBufferSize]; + var index = 0; + for (int iTrail = 0; iTrail < ParticleCount; iTrail++) + { + var trailOffset = iTrail * TrailPoints * 2; + for (int iTrailPoint = 0; iTrailPoint < TrailPoints - 1; iTrailPoint++) + { + var offset = trailOffset + iTrailPoint * 2; + indexData[index++] = 0 + offset; + indexData[index++] = 1 + offset; + indexData[index++] = 2 + offset; + indexData[index++] = 2 + offset; + indexData[index++] = 1 + offset; + indexData[index++] = 3 + offset; + } + } + + _indexBuffer = new ComputeBuffer(indexData.Length, Marshal.SizeOf(typeof(uint))); // 1 trail point to 2 triangles (6 vertices) + _indexBuffer.SetData(indexData); + } + + // Update is called once per frame + void Update() + { + SlimeCompute.SetInt("randomOffset", Random.Range(0,65536)); + SlimeCompute.SetInt("textureWidth", TextureSize); + SlimeCompute.SetInt("numAgents", AgentCount); + SlimeCompute.SetFloat("zoneRadius", ZoneRadius); + SlimeCompute.SetFloat("deposition", SlimeSettings.Deposition * Time.deltaTime); + SlimeCompute.SetFloat("diffusion", SlimeSettings.Diffusion * Time.deltaTime); + SlimeCompute.SetFloat("decay", max(1 - SlimeSettings.Decay * Time.deltaTime, 0.01f)); + SlimeCompute.SetFloat("speed", SlimeSettings.Speed * Time.deltaTime); + SlimeCompute.SetFloat("turnSpeed", SlimeSettings.TurnSpeed * Time.deltaTime); + SlimeCompute.SetFloat("randomSteering", SlimeSettings.RandomSteering); + SlimeCompute.SetFloat("sensorDistance", SlimeSettings.SensorDistance); + SlimeCompute.SetFloat("drive", SlimeSettings.Drive); + SlimeCompute.SetFloat("sensorSpread", SlimeSettings.SensorSpread * Mathf.PI / 2); + SlimeCompute.SetInt("sensorSize", SlimeSettings.SensorSize); + + SlimeCompute.SetBuffer(_updateAgentsKernel, "agents", _agentsBuffer); + SlimeCompute.SetTexture(_updateAgentsKernel, "accumulation", _accumulationTexture); + SlimeCompute.SetTexture(_updateAgentsKernel, "Heightmap", GravityTexture); + + var numberOfGroups = Mathf.CeilToInt((float)AgentCount / GROUP_SIZE); + SlimeCompute.Dispatch(_updateAgentsKernel, numberOfGroups, 1, 1); + + Graphics.Blit(_accumulationTexture, _previousAccumulationTexture); + SlimeCompute.SetTexture(_diffuseKernel, "accumulation", _previousAccumulationTexture); + SlimeCompute.SetTexture(_diffuseKernel, "diffusedAccumulation", _accumulationTexture); + numberOfGroups = Mathf.CeilToInt((float)TextureSize / 8); + SlimeCompute.Dispatch(_diffuseKernel, numberOfGroups, numberOfGroups, 1); + + SlimeCompute.SetTexture(_particleKernel, "Heightmap", GravityTexture); + SlimeCompute.SetBuffer(_particleKernel, "agents", _agentsBuffer); + SlimeCompute.SetBuffer(_particleKernel, "particles", _particlesBuffer); + SlimeCompute.SetFloat("time", Time.time * NoiseFrequency); + SlimeCompute.SetFloat("noiseAmplitude", NoiseAmplitude); + SlimeCompute.SetFloat("heightRange", ParticleHeightRange); + SlimeCompute.SetFloat("heightOffset", ParticleHeightOffset); + SlimeCompute.SetFloat("trailDamping", TrailDamping); + SlimeCompute.SetInt("particleCount", ParticleCount); + + numberOfGroups = ParticleCount / GROUP_SIZE; + SlimeCompute.Dispatch(_particleKernel, numberOfGroups, 1, 1); + + SlimeCompute.SetInt("trailPoints", TrailPoints); + SlimeCompute.SetFloat("trailStartWidth", TrailStartWidth); + SlimeCompute.SetFloat("trailEndWidth", TrailEndWidth); + SlimeCompute.SetVector("cameraPos", TargetCamera.transform.position); + SlimeCompute.SetBuffer(_geometryKernel, "particles", _particlesBuffer); + SlimeCompute.SetBuffer(_geometryKernel, "vertexBuffer", _vertexBuffer); + + numberOfGroups = ParticleCount * TrailPoints / GROUP_SIZE; + SlimeCompute.Dispatch(_geometryKernel, numberOfGroups, 1, 1); + + ParticleMaterial.SetBuffer("_IndexBuffer", _indexBuffer); + ParticleMaterial.SetBuffer("_VertexBuffer", _vertexBuffer); + Graphics.DrawProcedural( + ParticleMaterial, + new Bounds(Vector3.zero, ZoneRadius * Vector3.one), + MeshTopology.Triangles, + IndexBufferSize, + 1, + TargetCamera, + null, + ShadowCastingMode.Off, + false, + 0); + } + + private void OnDisable() + { + _accumulationTexture.Release(); + _agentsBuffer.Release(); + } +} + +[Serializable, MessagePackObject(keyAsPropertyName:true)] +public class SlimeSettings +{ + public float Deposition; + public float Diffusion; + public float Decay; + public float TurnSpeed; + public float RandomSteering; + public float Speed; + public float Drive; + public float SensorDistance; + public float SensorSpread; + public int SensorSize; +} diff --git a/Assets/Shaders/Compute/Slime/Slime.cs.meta b/Assets/Shaders/Compute/Slime/Slime.cs.meta new file mode 100644 index 000000000..34464dd01 --- /dev/null +++ b/Assets/Shaders/Compute/Slime/Slime.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 8ffec49d55e3429418714ceb048bfeae +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Shaders/Compute/Slime/Slime.shader b/Assets/Shaders/Compute/Slime/Slime.shader new file mode 100644 index 000000000..28699295f --- /dev/null +++ b/Assets/Shaders/Compute/Slime/Slime.shader @@ -0,0 +1,159 @@ +Shader "Aetheria/Stardust (Compute)" +{ + Properties { + [HDR] _TintColor("Tint Color", Color) = (0.5,0.5,0.5,0.5) + _EmissionGain("Emission Gain", Range(0, 1)) = 0.3 + _Power("Power", Float) = 2 + } + + SubShader { + Tags { "Queue"="AlphaTest" "RenderType"="TransparentCutout" "IgnoreProjector"="True" } + Pass { + + CGPROGRAM + #pragma vertex particle_vertex + #pragma fragment frag + + #pragma target 5.0 + #include "UnityCG.cginc" + #include "Assets/Shaders/Dither Functions.cginc" + + struct Particle + { + float3 position; + float3 color; + float size; + }; + + StructuredBuffer particles; + StructuredBuffer quadPoints; + + float4 _TintColor; + float _EmissionGain; + float _Power; + + struct v2f + { + float4 pos : SV_POSITION; + float2 uv : TEXCOORD0; + float4 screenPos : TEXCOORD1; + float4 color : COLOR; + }; + + //Vertex shader with no inputs + //Uses the system values SV_VertexID and SV_InstanceID to read from compute buffers + v2f particle_vertex(uint id : SV_VertexID, uint inst : SV_InstanceID) + { + v2f o; + + //Only transform world pos by view matrix + //To Create a billboarding effect + float3 worldPosition = particles[inst].position; + + float4 cameraSpacePosition = mul(UNITY_MATRIX_V, float4(worldPosition, 1.0f)); + + float3 quadPoint = float3(quadPoints[id].xy, 0.0f) * particles[inst].size; + o.pos = mul(UNITY_MATRIX_P, cameraSpacePosition + float4(quadPoint, 0.0f)); + + //Shift coordinates for uvs + o.uv = quadPoints[id] + 0.5f; + + //transfer color of particle and global tint to vertex + o.color = float4(particles[inst].color, 1) * _TintColor; + o.screenPos = ComputeScreenPos(o.pos); + + return o; + } + + float powerPulse( float x, float power ) + { + x = saturate(abs(x)); + return pow((x + 1.0f) * (1.0f - x), power); + } + + float4 frag(v2f i) : COLOR + { + float emission = powerPulse(length(i.uv-float2(.5,.5))*2,_Power); + float2 screenUV = i.screenPos.xy / i.screenPos.w; + ditherClip(screenUV, emission * i.color.a); + return i.color * emission * (exp(_EmissionGain * 5.0f)); + } + ENDCG + } + Pass + { + Name "ShadowCaster" + Tags { "LightMode" = "ShadowCaster" } + + CGPROGRAM + #pragma vertex particle_vertex + #pragma fragment frag + + #pragma target 5.0 + #include "UnityCG.cginc" + #include "Assets/Shaders/Dither Functions.cginc" + + struct Particle + { + float3 position; + float3 color; + float size; + }; + + StructuredBuffer particles; + StructuredBuffer quadPoints; + + float4 _TintColor; + float _EmissionGain; + float _Power; + + struct v2f + { + float4 pos : SV_POSITION; + float2 uv : TEXCOORD0; + float4 screenPos : TEXCOORD1; + float4 color : COLOR; + }; + + //Vertex shader with no inputs + //Uses the system values SV_VertexID and SV_InstanceID to read from compute buffers + v2f particle_vertex(uint id : SV_VertexID, uint inst : SV_InstanceID) + { + v2f o; + + //Only transform world pos by view matrix + //To Create a billboarding effect + float3 worldPosition = particles[inst].position; + + float4 cameraSpacePosition = mul(UNITY_MATRIX_V, float4(worldPosition, 1.0f)); + + float3 quadPoint = float3(quadPoints[id].xy, 0.0f) * particles[inst].size; + o.pos = mul(UNITY_MATRIX_P, cameraSpacePosition + float4(quadPoint, 0.0f)); + + //Shift coordinates for uvs + o.uv = quadPoints[id] + 0.5f; + + //transfer color of particle and global tint to vertex + o.color = float4(particles[inst].color, 1) * _TintColor; + o.screenPos = ComputeScreenPos(o.pos); + + return o; + } + + float powerPulse( float x, float power ) + { + x = saturate(abs(x)); + return pow((x + 1.0f) * (1.0f - x), power); + } + + float4 frag(v2f i) : COLOR + { + float emission = powerPulse(length(i.uv-float2(.5,.5))*2,_Power); + float2 screenUV = i.screenPos.xy / i.screenPos.w; + ditherClip(screenUV, emission * i.color.a); + SHADOW_CASTER_FRAGMENT(i) + } + ENDCG + } + } +} \ No newline at end of file diff --git a/Assets/Shaders/Compute/Slime/Slime.shader.meta b/Assets/Shaders/Compute/Slime/Slime.shader.meta new file mode 100644 index 000000000..298093f98 --- /dev/null +++ b/Assets/Shaders/Compute/Slime/Slime.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: c848f868eca8c46478b322cbae002d21 +ShaderImporter: + externalObjects: {} + defaultTextures: [] + nonModifiableTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Shaders/Compute/Slime/SlimeParticles.shader b/Assets/Shaders/Compute/Slime/SlimeParticles.shader new file mode 100644 index 000000000..f14a99af8 --- /dev/null +++ b/Assets/Shaders/Compute/Slime/SlimeParticles.shader @@ -0,0 +1,136 @@ +Shader "Aetheria/Slime Particles" { +Properties { + _StartColor("StartColor", Color) = (1,1,1,1) + _EndColor("EndColor", Color) = (0,0,0,1) + _Intensity("Intensity", Float) = 1 + _Roundedness("Roundedness", Float) = .1 +} + +SubShader { +Pass{ + Tags { "RenderType"="Opaque" } + + CGPROGRAM + #pragma target 5.0 + + #pragma vertex vert + #pragma fragment frag + + #include "UnityCG.cginc" + #include "SlimeVertex.cginc" + #include "Assets/Shaders/Dither Functions.cginc" + + float _Intensity; + float _Roundedness; + fixed4 _StartColor; + fixed4 _EndColor; + StructuredBuffer _IndexBuffer; + StructuredBuffer _VertexBuffer; + + Vertex GetVertex(uint indexBufferIdx) { + uint idx = _IndexBuffer[indexBufferIdx]; + return _VertexBuffer[idx]; + } + + struct vs_out { + float4 pos : SV_POSITION; + float4 col : COLOR; + float2 uv : TEXCOORD; + float4 screenPos : TEXCOORD1; + }; + + vs_out vert (uint id : SV_VertexID, uint iId : SV_InstanceID) + { + vs_out Out; + Vertex vtx = GetVertex(id); + + Out.pos = UnityObjectToClipPos(float4(vtx.pos, 1.0)); + Out.uv = vtx.uv; + Out.col = lerp(_StartColor, _EndColor, vtx.uv.x); + Out.screenPos = ComputeScreenPos(float4(vtx.pos, 1.0)); + + return Out; + } + + fixed4 frag (vs_out In) : COLOR0 + { + // Simple quadratic curve "texture" + float x = 1 - 2 * abs(In.uv.y - .5); + //return float4(x,In.uv.x, 0 ,1); + float i = x * x * smoothstep(0, _Roundedness, In.uv.x) * (1-In.uv.x) * _Intensity; + + // Apply screen space dithering + float2 screenUV = In.screenPos.xy / In.screenPos.w; + ditherClip(screenUV, i); + + return In.col * i; + } + + ENDCG + + } +Pass{ + Name "ShadowCaster" + Tags { "LightMode" = "ShadowCaster" } + + CGPROGRAM + #pragma target 5.0 + + #pragma vertex vert + #pragma fragment frag + + #include "UnityCG.cginc" + #include "SlimeVertex.cginc" + #include "Assets/Shaders/Dither Functions.cginc" + + float _Intensity; + float _Roundedness; + StructuredBuffer _IndexBuffer; + StructuredBuffer _VertexBuffer; + + Vertex GetVertex(uint indexBufferIdx) { + uint idx = _IndexBuffer[indexBufferIdx]; + return _VertexBuffer[idx]; + } + + struct vs_out { + float4 pos : SV_POSITION; + float4 col : COLOR; + float2 uv : TEXCOORD; + float4 screenPos : TEXCOORD1; + }; + + vs_out vert (uint id : SV_VertexID, uint iId : SV_InstanceID) + { + vs_out Out; + Vertex vtx = GetVertex(id); + + Out.pos = UnityObjectToClipPos(float4(vtx.pos, 1.0)); + Out.uv = vtx.uv; + Out.col = 1; + Out.screenPos = ComputeScreenPos(float4(vtx.pos, 1.0)); + + return Out; + } + + fixed4 frag (vs_out In) : COLOR0 + { + // Simple quadratic curve "texture" + float x = 1 - 2 * abs(In.uv.y - .5); + float i = x * x * smoothstep(0, _Roundedness, In.uv.x) * (1-In.uv.x) * _Intensity; + + // Apply screen space dithering + float2 screenUV = In.screenPos.xy / In.screenPos.w; + ditherClip(screenUV, i); + + SHADOW_CASTER_FRAGMENT(In) + } + + ENDCG + + } +} + +Fallback Off +} + diff --git a/Assets/Shaders/Compute/Slime/SlimeParticles.shader.meta b/Assets/Shaders/Compute/Slime/SlimeParticles.shader.meta new file mode 100644 index 000000000..a31d6689c --- /dev/null +++ b/Assets/Shaders/Compute/Slime/SlimeParticles.shader.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: ce0edf879efdfd147a9fda662bb77ef4 +timeCreated: 1612395387 \ No newline at end of file diff --git a/Assets/Shaders/Compute/Slime/SlimeTrails.mat b/Assets/Shaders/Compute/Slime/SlimeTrails.mat new file mode 100644 index 000000000..8f8425369 --- /dev/null +++ b/Assets/Shaders/Compute/Slime/SlimeTrails.mat @@ -0,0 +1,82 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: SlimeTrails + m_Shader: {fileID: 4800000, guid: ce0edf879efdfd147a9fda662bb77ef4, type: 3} + m_ShaderKeywords: + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _GlossMapScale: 1 + - _Glossiness: 0.5 + - _GlossyReflections: 1 + - _Intensity: 24.1 + - _Metallic: 0 + - _Mode: 0 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _Roundedness: 0.1 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 1 + m_Colors: + - _Color: {r: 1, g: 1, b: 1, a: 1} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} + - _EndColor: {r: 0.5849056, g: 0.19037023, b: 0.40103197, a: 1} + - _StartColor: {r: 0.9339623, g: 0.31624126, b: 0.13656995, a: 1} + m_BuildTextureStacks: [] diff --git a/Assets/Shaders/Compute/Slime/SlimeTrails.mat.meta b/Assets/Shaders/Compute/Slime/SlimeTrails.mat.meta new file mode 100644 index 000000000..d8bff922c --- /dev/null +++ b/Assets/Shaders/Compute/Slime/SlimeTrails.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 3b53e1eb5d8a5d34f9bc8c1928ceba76 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Shaders/Compute/Slime/SlimeVertex.cginc b/Assets/Shaders/Compute/Slime/SlimeVertex.cginc new file mode 100644 index 000000000..96e020668 --- /dev/null +++ b/Assets/Shaders/Compute/Slime/SlimeVertex.cginc @@ -0,0 +1,20 @@ +#ifndef SLIME_VERTEX_INCLUDED +#define SLIME_VERTEX_INCLUDED + +struct Vertex +{ + float3 pos; + float2 uv; +}; + +inline Vertex GetDefaultVertex() { + + Vertex ret; + ret.pos = (0).xxx; + ret.uv = (-1).xx; + + return ret; +} + + +#endif // SLIME_VERTEX_INCLUDED diff --git a/Assets/Shaders/Compute/Slime/SlimeVertex.cginc.meta b/Assets/Shaders/Compute/Slime/SlimeVertex.cginc.meta new file mode 100644 index 000000000..f28fcc48e --- /dev/null +++ b/Assets/Shaders/Compute/Slime/SlimeVertex.cginc.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: c65df586c8bb4d46a5ed08410ea43579 +timeCreated: 1616800817 \ No newline at end of file diff --git a/Assets/Shaders/Compute/Stardust/Stardust.compute b/Assets/Shaders/Compute/Stardust/Stardust.compute index 4ceebda8a..ad79ecd10 100644 --- a/Assets/Shaders/Compute/Stardust/Stardust.compute +++ b/Assets/Shaders/Compute/Stardust/Stardust.compute @@ -13,13 +13,13 @@ RWStructuredBuffer particles; // Use this texture to spawn particles over terrain Texture2D Heightmap; -SamplerState samplerHeightmap; +SamplerState samplerHeightmap; // Use this texture to choose the color of the particle Texture2D HueTexture; SamplerState samplerHueTexture; -uniform float4x4 noiseOffsetMatrix; +//uniform float4x4 noiseOffsetMatrix; float time; float3 transform; diff --git a/Assets/Shaders/Compute/Stardust/Stardust.cs b/Assets/Shaders/Compute/Stardust/Stardust.cs index 82183b6f3..5d4f099b2 100644 --- a/Assets/Shaders/Compute/Stardust/Stardust.cs +++ b/Assets/Shaders/Compute/Stardust/Stardust.cs @@ -29,12 +29,8 @@ public class Stardust : MonoBehaviour //public Transform TargetTransform; public Camera GravityCamera; - private Vector3[] _vertices; - private const int GROUP_SIZE = 128; private int _updateParticlesKernel; - - private float _maxTemperature = 0; #endregion #region Structs @@ -65,7 +61,6 @@ public class Stardust : MonoBehaviour //Create particle buffer _particlesBuffer = new ComputeBuffer(Span * Span, PARTICLE_STRIDE); -// _temperature = new ComputeBuffer(128, TEMP_STRIDE); Particle[] particles = new Particle[Span * Span]; diff --git a/Assets/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF - Fallback.asset b/Assets/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF - Fallback.asset index 95acc7bfd..74a076a51 100644 --- a/Assets/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF - Fallback.asset +++ b/Assets/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF - Fallback.asset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:654b92db6060267b074c52439d799d78af20ff8e1f412799ec8eb714c7ac1cb9 -size 534185 +oid sha256:38cb30498503efdf14d88d5bb75e20296a4d22df4e257b6f26e9a327e4e255a3 +size 534653 diff --git a/Assets/WwiseSettings.xml b/Assets/WwiseSettings.xml index 8645173a3..797b3beca 100644 --- a/Assets/WwiseSettings.xml +++ b/Assets/WwiseSettings.xml @@ -2,8 +2,8 @@ true true - true - true + false + false false true true diff --git a/GameData/AetherDB.msgpack b/GameData/AetherDB.msgpack index 4251f866e..65f10e00d 100644 --- a/GameData/AetherDB.msgpack +++ b/GameData/AetherDB.msgpack @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7614cfd2dcf83ffc3f73d98fb6f85e12fb341be330c7bd72460133a5d6f14281 -size 67141 +oid sha256:a9be613366ded4b1b3bd6b76ea80004c7f42638822ea26671a8d31e6245267dc +size 78023 diff --git a/GameData/PlayerSettings.msgpack b/GameData/PlayerSettings.msgpack index ed04ea775..b004789a1 100644 --- a/GameData/PlayerSettings.msgpack +++ b/GameData/PlayerSettings.msgpack @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f914616fca6c1f79f6b9b03c29056574195127622453e5ad3bac1b1b3db17fae -size 29254 +oid sha256:3f1ed3931b1a6b0235d45ec961e3e5c05e6437398319b045d4dfa417cf6d0c2a +size 90830 diff --git a/UserSettings/EditorUserSettings.asset b/UserSettings/EditorUserSettings.asset index 0f2118614..e241e21d4 100644 --- a/UserSettings/EditorUserSettings.asset +++ b/UserSettings/EditorUserSettings.asset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e2a4311cc59f90f70a8406d44edb74bea447aae948dba0fbaab2e7e03e517784 +oid sha256:7c6216d4180f1c0f2a7f14a0a4ba0f0d7265b969c20453eb9d5769062d201a8d size 1749