From 122d7e55c270a46e3af52d64a277ea107146be25 Mon Sep 17 00:00:00 2001 From: Konstantin Dyachenko Date: Tue, 31 Mar 2026 09:02:06 +0700 Subject: [PATCH] [Add] Voxel World Generator --- Assets/{Generated.meta => Data.meta} | 2 +- Assets/{ => Data}/ChunkTemplate.asset | 0 Assets/{ => Data}/ChunkTemplate.asset.meta | 0 Assets/Data/DefaultPrefabObjects.asset | 27 + Assets/Data/DefaultPrefabObjects.asset.meta | 8 + Assets/Data/VoxelBiomeProfile 1.asset | 18 + Assets/Data/VoxelBiomeProfile 1.asset.meta | 8 + Assets/Data/VoxelBiomeProfile 2.asset | 18 + Assets/Data/VoxelBiomeProfile 2.asset.meta | 8 + Assets/Data/VoxelBiomeProfile.asset | 18 + Assets/Data/VoxelBiomeProfile.asset.meta | 8 + Assets/{ => Data}/WorldAutotileProfile.asset | 0 .../WorldAutotileProfile.asset.meta | 0 Assets/DefaultPrefabObjects.asset.meta | 2 +- ...orldAutotileProfile_PaletteLayout 1.prefab | 1210 ----------------- .../WorldAutotileProfile_PaletteLayout.prefab | 820 ----------- Assets/Scenes/New Scene.unity | 218 +++ .../New Scene.unity.meta} | 4 +- Assets/Scenes/VoxelWorldTestScene.unity | 463 +++++++ .../VoxelWorldTestScene.unity.meta} | 4 +- .../VoxelWorld.meta} | 2 +- Assets/Scripts/VoxelWorld/Runtime.meta | 8 + .../Runtime/VoxelWorld.Runtime.asmdef | 16 + .../Runtime/VoxelWorld.Runtime.asmdef.meta | 7 + .../VoxelWorld/Runtime/VoxelWorldAtlas.cs | 340 +++++ .../Runtime/VoxelWorldAtlas.cs.meta | 2 + .../VoxelWorld/Runtime/VoxelWorldGenerator.cs | 958 +++++++++++++ .../Runtime/VoxelWorldGenerator.cs.meta | 2 + Assets/Sprites.meta | 8 + Assets/Sprites/Pack1.meta | 8 + Assets/Sprites/Pack1/light_gray_concrete.png | 3 + .../Pack1/light_gray_concrete.png.meta | 143 ++ .../Sprites/Pack1/smooth_stone_slab_side.png | 3 + .../Pack1/smooth_stone_slab_side.png.meta | 143 ++ Assets/Sprites/Pack1/stone.png | 3 + Assets/Sprites/Pack1/stone.png.meta | 143 ++ Assets/Sprites/Pack1/stone_bricks.png | 3 + Assets/Sprites/Pack1/stone_bricks.png.meta | 143 ++ Assets/Sprites/Pack2.meta | 8 + Assets/Sprites/Pack2/cut_sandstone_2.png | 3 + Assets/Sprites/Pack2/cut_sandstone_2.png.meta | 143 ++ Assets/Sprites/Pack2/sand.png | 3 + Assets/Sprites/Pack2/sand.png.meta | 143 ++ Assets/Sprites/Pack2/sandstone.png | 3 + Assets/Sprites/Pack2/sandstone.png.meta | 143 ++ Assets/Sprites/Pack2/sandstone_top.png | 3 + Assets/Sprites/Pack2/sandstone_top.png.meta | 143 ++ Assets/Sprites/Pack3.meta | 8 + Assets/Sprites/Pack3/dirt.png | 3 + Assets/Sprites/Pack3/dirt.png.meta | 143 ++ Assets/Sprites/Pack3/dirt_path_side.png | 3 + Assets/Sprites/Pack3/dirt_path_side.png.meta | 143 ++ Assets/Sprites/Pack3/dirt_path_top_2.png | 3 + Assets/Sprites/Pack3/dirt_path_top_2.png.meta | 143 ++ Assets/Sprites/Pack3/rooted_dirt.png | 3 + Assets/Sprites/Pack3/rooted_dirt.png.meta | 143 ++ Assets/vFavorites/vFavorites Data.asset | 16 + Assets/vFavorites/vFavorites Data.asset.meta | 8 + 58 files changed, 3942 insertions(+), 2037 deletions(-) rename Assets/{Generated.meta => Data.meta} (77%) rename Assets/{ => Data}/ChunkTemplate.asset (100%) rename Assets/{ => Data}/ChunkTemplate.asset.meta (100%) create mode 100644 Assets/Data/DefaultPrefabObjects.asset create mode 100644 Assets/Data/DefaultPrefabObjects.asset.meta create mode 100644 Assets/Data/VoxelBiomeProfile 1.asset create mode 100644 Assets/Data/VoxelBiomeProfile 1.asset.meta create mode 100644 Assets/Data/VoxelBiomeProfile 2.asset create mode 100644 Assets/Data/VoxelBiomeProfile 2.asset.meta create mode 100644 Assets/Data/VoxelBiomeProfile.asset create mode 100644 Assets/Data/VoxelBiomeProfile.asset.meta rename Assets/{ => Data}/WorldAutotileProfile.asset (100%) rename Assets/{ => Data}/WorldAutotileProfile.asset.meta (100%) delete mode 100644 Assets/Generated/PaletteLayouts/WorldAutotileProfile_PaletteLayout 1.prefab delete mode 100644 Assets/Generated/PaletteLayouts/WorldAutotileProfile_PaletteLayout.prefab create mode 100644 Assets/Scenes/New Scene.unity rename Assets/{Generated/PaletteLayouts/WorldAutotileProfile_PaletteLayout.prefab.meta => Scenes/New Scene.unity.meta} (63%) create mode 100644 Assets/Scenes/VoxelWorldTestScene.unity rename Assets/{Generated/PaletteLayouts/WorldAutotileProfile_PaletteLayout 1.prefab.meta => Scenes/VoxelWorldTestScene.unity.meta} (63%) rename Assets/{Generated/PaletteLayouts.meta => Scripts/VoxelWorld.meta} (77%) create mode 100644 Assets/Scripts/VoxelWorld/Runtime.meta create mode 100644 Assets/Scripts/VoxelWorld/Runtime/VoxelWorld.Runtime.asmdef create mode 100644 Assets/Scripts/VoxelWorld/Runtime/VoxelWorld.Runtime.asmdef.meta create mode 100644 Assets/Scripts/VoxelWorld/Runtime/VoxelWorldAtlas.cs create mode 100644 Assets/Scripts/VoxelWorld/Runtime/VoxelWorldAtlas.cs.meta create mode 100644 Assets/Scripts/VoxelWorld/Runtime/VoxelWorldGenerator.cs create mode 100644 Assets/Scripts/VoxelWorld/Runtime/VoxelWorldGenerator.cs.meta create mode 100644 Assets/Sprites.meta create mode 100644 Assets/Sprites/Pack1.meta create mode 100644 Assets/Sprites/Pack1/light_gray_concrete.png create mode 100644 Assets/Sprites/Pack1/light_gray_concrete.png.meta create mode 100644 Assets/Sprites/Pack1/smooth_stone_slab_side.png create mode 100644 Assets/Sprites/Pack1/smooth_stone_slab_side.png.meta create mode 100644 Assets/Sprites/Pack1/stone.png create mode 100644 Assets/Sprites/Pack1/stone.png.meta create mode 100644 Assets/Sprites/Pack1/stone_bricks.png create mode 100644 Assets/Sprites/Pack1/stone_bricks.png.meta create mode 100644 Assets/Sprites/Pack2.meta create mode 100644 Assets/Sprites/Pack2/cut_sandstone_2.png create mode 100644 Assets/Sprites/Pack2/cut_sandstone_2.png.meta create mode 100644 Assets/Sprites/Pack2/sand.png create mode 100644 Assets/Sprites/Pack2/sand.png.meta create mode 100644 Assets/Sprites/Pack2/sandstone.png create mode 100644 Assets/Sprites/Pack2/sandstone.png.meta create mode 100644 Assets/Sprites/Pack2/sandstone_top.png create mode 100644 Assets/Sprites/Pack2/sandstone_top.png.meta create mode 100644 Assets/Sprites/Pack3.meta create mode 100644 Assets/Sprites/Pack3/dirt.png create mode 100644 Assets/Sprites/Pack3/dirt.png.meta create mode 100644 Assets/Sprites/Pack3/dirt_path_side.png create mode 100644 Assets/Sprites/Pack3/dirt_path_side.png.meta create mode 100644 Assets/Sprites/Pack3/dirt_path_top_2.png create mode 100644 Assets/Sprites/Pack3/dirt_path_top_2.png.meta create mode 100644 Assets/Sprites/Pack3/rooted_dirt.png create mode 100644 Assets/Sprites/Pack3/rooted_dirt.png.meta create mode 100644 Assets/vFavorites/vFavorites Data.asset create mode 100644 Assets/vFavorites/vFavorites Data.asset.meta diff --git a/Assets/Generated.meta b/Assets/Data.meta similarity index 77% rename from Assets/Generated.meta rename to Assets/Data.meta index e5185128..0acf6f72 100644 --- a/Assets/Generated.meta +++ b/Assets/Data.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: f44c96a916e244c4a988e0551b27b3e4 +guid: 6f0ac81b911bd5e4eb8659dbd0edd665 folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Assets/ChunkTemplate.asset b/Assets/Data/ChunkTemplate.asset similarity index 100% rename from Assets/ChunkTemplate.asset rename to Assets/Data/ChunkTemplate.asset diff --git a/Assets/ChunkTemplate.asset.meta b/Assets/Data/ChunkTemplate.asset.meta similarity index 100% rename from Assets/ChunkTemplate.asset.meta rename to Assets/Data/ChunkTemplate.asset.meta diff --git a/Assets/Data/DefaultPrefabObjects.asset b/Assets/Data/DefaultPrefabObjects.asset new file mode 100644 index 00000000..ec9afc82 --- /dev/null +++ b/Assets/Data/DefaultPrefabObjects.asset @@ -0,0 +1,27 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 3ad70174b079c2f4ebc7931d3dd1af6f, type: 3} + m_Name: DefaultPrefabObjects + m_EditorClassIdentifier: FishNet.Runtime::FishNet.Managing.Object.DefaultPrefabObjects + _prefabs: + - {fileID: 4512293259955182956, guid: fe2b65b02f0484b41aa8cfa9fbbb0e1d, type: 3} + - {fileID: 4512293259955182956, guid: 35639798ad77fc145871588b25d66259, type: 3} + - {fileID: 4512293259955182956, guid: 0d6d0f48b03b17f49a6340103cd9b9d0, type: 3} + - {fileID: 8475222101369129519, guid: 8cf33e8e99a9b0c4c8f29ff725650de6, type: 3} + - {fileID: 4512293259955182956, guid: dafef736ca1ae384e9a19eb672843563, type: 3} + - {fileID: 201277550, guid: 5b712878ecece354ba4ffb026c0a221c, type: 3} + - {fileID: 4512293259955182956, guid: b8017cef39731ba439c70fecc09488e3, type: 3} + - {fileID: 201277550, guid: 26a567abbe21227428f5c3d309d1d73c, type: 3} + - {fileID: 4512293259955182956, guid: 44611030e61220d42ab7c37ba3c0ea92, type: 3} + - {fileID: 8192566354860284824, guid: 6331b3542e64a564c81bc39cedf70c8d, type: 3} + - {fileID: 4512293259955182956, guid: f32d4c19de900e64cb73cedcb8ba6f70, type: 3} + - {fileID: 611616139817875448, guid: bf5f023b4017a5e41a9815ec5745df3d, type: 3} diff --git a/Assets/Data/DefaultPrefabObjects.asset.meta b/Assets/Data/DefaultPrefabObjects.asset.meta new file mode 100644 index 00000000..0fc68651 --- /dev/null +++ b/Assets/Data/DefaultPrefabObjects.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 84148460c5f94a24282a444e7d59caa0 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Data/VoxelBiomeProfile 1.asset b/Assets/Data/VoxelBiomeProfile 1.asset new file mode 100644 index 00000000..dbcfecc4 --- /dev/null +++ b/Assets/Data/VoxelBiomeProfile 1.asset @@ -0,0 +1,18 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 0} + m_Name: VoxelBiomeProfile 1 + m_EditorClassIdentifier: VoxelWorld.Runtime:InfiniteWorld.VoxelWorld:VoxelBiomeProfile + cliffTopSprite: {fileID: 3392429205621607710, guid: 48c8cb6b6e758e74e852e27073d0e263, type: 3} + cliffSideSprite: {fileID: -5744119150125800539, guid: f4c696ca947bbaf4ba5a27cc0f6a2cb8, type: 3} + dirtSprite: {fileID: -4783801984881171517, guid: 841a59b6af0505448b39ad06ddbc067f, type: 3} + walkableSurfaceSprite: {fileID: 4360390788417139489, guid: 5f3d8f393d5c64b489163ff940369b2d, type: 3} diff --git a/Assets/Data/VoxelBiomeProfile 1.asset.meta b/Assets/Data/VoxelBiomeProfile 1.asset.meta new file mode 100644 index 00000000..ea1e1496 --- /dev/null +++ b/Assets/Data/VoxelBiomeProfile 1.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: eac8d825dd62e1c439235d273a4ca613 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Data/VoxelBiomeProfile 2.asset b/Assets/Data/VoxelBiomeProfile 2.asset new file mode 100644 index 00000000..be98b7d5 --- /dev/null +++ b/Assets/Data/VoxelBiomeProfile 2.asset @@ -0,0 +1,18 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 0} + m_Name: VoxelBiomeProfile 2 + m_EditorClassIdentifier: VoxelWorld.Runtime:InfiniteWorld.VoxelWorld:VoxelBiomeProfile + cliffTopSprite: {fileID: 904681902854485019, guid: 3d70b2fe747c8134c8a38cc0e089d139, type: 3} + cliffSideSprite: {fileID: -1499911416505331838, guid: 0891183432730d34c8a41445947b6e85, type: 3} + dirtSprite: {fileID: -1865540202983660084, guid: 152cabc665e467d448f550899fcd56e8, type: 3} + walkableSurfaceSprite: {fileID: 5634026908348037240, guid: e5bbac025bbdb444ab5b16d34a3f38de, type: 3} diff --git a/Assets/Data/VoxelBiomeProfile 2.asset.meta b/Assets/Data/VoxelBiomeProfile 2.asset.meta new file mode 100644 index 00000000..0ef65eb6 --- /dev/null +++ b/Assets/Data/VoxelBiomeProfile 2.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 6d0dbe510ed048440a3925ef40aeeb5b +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Data/VoxelBiomeProfile.asset b/Assets/Data/VoxelBiomeProfile.asset new file mode 100644 index 00000000..288edb41 --- /dev/null +++ b/Assets/Data/VoxelBiomeProfile.asset @@ -0,0 +1,18 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 0} + m_Name: VoxelBiomeProfile + m_EditorClassIdentifier: VoxelWorld.Runtime:InfiniteWorld.VoxelWorld:VoxelBiomeProfile + cliffTopSprite: {fileID: 5725184139431673129, guid: d8a251553db3e5d43ac029f301167578, type: 3} + cliffSideSprite: {fileID: 8591976868863569928, guid: b44be66700acb8d4ba360bdeb7c0bf2f, type: 3} + dirtSprite: {fileID: 4285751004304663802, guid: 89b3d97a04bee1e4d85e5d28c13de1f8, type: 3} + walkableSurfaceSprite: {fileID: 5613978133511580594, guid: 5702a47030ece9f42b0b513238c05bf4, type: 3} diff --git a/Assets/Data/VoxelBiomeProfile.asset.meta b/Assets/Data/VoxelBiomeProfile.asset.meta new file mode 100644 index 00000000..a77f3e05 --- /dev/null +++ b/Assets/Data/VoxelBiomeProfile.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: ae25f699f7f7d4144bbd148907fda668 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/WorldAutotileProfile.asset b/Assets/Data/WorldAutotileProfile.asset similarity index 100% rename from Assets/WorldAutotileProfile.asset rename to Assets/Data/WorldAutotileProfile.asset diff --git a/Assets/WorldAutotileProfile.asset.meta b/Assets/Data/WorldAutotileProfile.asset.meta similarity index 100% rename from Assets/WorldAutotileProfile.asset.meta rename to Assets/Data/WorldAutotileProfile.asset.meta diff --git a/Assets/DefaultPrefabObjects.asset.meta b/Assets/DefaultPrefabObjects.asset.meta index 0fc68651..7200e9b9 100644 --- a/Assets/DefaultPrefabObjects.asset.meta +++ b/Assets/DefaultPrefabObjects.asset.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 84148460c5f94a24282a444e7d59caa0 +guid: 4ec3872aba40595448fd43a68bbb722a NativeFormatImporter: externalObjects: {} mainObjectFileID: 11400000 diff --git a/Assets/Generated/PaletteLayouts/WorldAutotileProfile_PaletteLayout 1.prefab b/Assets/Generated/PaletteLayouts/WorldAutotileProfile_PaletteLayout 1.prefab deleted file mode 100644 index 55118c14..00000000 --- a/Assets/Generated/PaletteLayouts/WorldAutotileProfile_PaletteLayout 1.prefab +++ /dev/null @@ -1,1210 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!1 &1390368529443346841 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 7929865742883847230} - - component: {fileID: 5621474446824399857} - - component: {fileID: 3906500003454838650} - m_Layer: 0 - m_Name: Environment - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &7929865742883847230 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1390368529443346841} - serializedVersion: 2 - 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_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 8770489571236103283} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!1839735485 &5621474446824399857 -Tilemap: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1390368529443346841} - m_Enabled: 1 - m_Tiles: {} - m_AnimatedTiles: {} - m_TileAssetArray: [] - m_TileSpriteArray: [] - m_TileMatrixArray: [] - m_TileColorArray: [] - m_TileObjectToInstantiateArray: [] - m_AnimationFrameRate: 1 - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_Origin: {x: 0, y: 0, z: 0} - m_Size: {x: 0, y: 0, z: 1} - m_TileAnchor: {x: 0.5, y: 0.5, z: 0} - m_TileOrientation: 0 - m_TileOrientationMatrix: - e00: 1 - e01: 0 - e02: 0 - e03: 0 - e10: 0 - e11: 1 - e12: 0 - e13: 0 - e20: 0 - e21: 0 - e22: 1 - e23: 0 - e30: 0 - e31: 0 - e32: 0 - e33: 1 ---- !u!483693784 &3906500003454838650 -TilemapRenderer: - serializedVersion: 2 - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1390368529443346841} - m_Enabled: 1 - m_CastShadows: 0 - m_ReceiveShadows: 0 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 0 - m_ReflectionProbeUsage: 0 - m_RayTracingMode: 0 - m_RayTraceProcedural: 0 - m_RayTracingAccelStructBuildFlagsOverride: 0 - m_RayTracingAccelStructBuildFlags: 1 - m_SmallMeshCulling: 1 - m_ForceMeshLod: -1 - m_MeshLodSelectionBias: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, 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: 0 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_GlobalIlluminationMeshLod: 0 - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 2 - m_MaskInteraction: 0 - m_ChunkSize: {x: 32, y: 32, z: 32} - m_ChunkCullingBounds: {x: 0, y: 0, z: 0} - m_MaxChunkCount: 16 - m_MaxFrameAge: 16 - m_SortOrder: 0 - m_Mode: 0 - m_DetectChunkCullingBounds: 0 ---- !u!1 &2850790532020550207 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 7903234780153735449} - - component: {fileID: 7562578496861508208} - - component: {fileID: 1850526002676046357} - m_Layer: 0 - m_Name: Background - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &7903234780153735449 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 2850790532020550207} - serializedVersion: 2 - 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_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 8770489571236103283} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!1839735485 &7562578496861508208 -Tilemap: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 2850790532020550207} - m_Enabled: 1 - m_Tiles: - - first: {x: 0, y: 0, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 1, y: 0, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 2, y: 0, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 5, y: 0, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 6, y: 0, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 7, y: 0, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 8, y: 0, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 9, y: 0, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 0, y: 1, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 1, y: 1, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 2, y: 1, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 5, y: 1, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 6, y: 1, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 7, y: 1, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 8, y: 1, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 9, y: 1, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 0, y: 2, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 1, y: 2, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 2, y: 2, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 5, y: 2, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 6, y: 2, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 7, y: 2, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 8, y: 2, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 9, y: 2, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 0, y: 3, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 1, y: 3, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 2, y: 3, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 0, y: 4, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 1, y: 4, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 2, y: 4, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - m_AnimatedTiles: {} - m_TileAssetArray: - - m_RefCount: 30 - m_Data: {fileID: 11400000, guid: df0b218249524df498eb759c25743036, type: 2} - m_TileSpriteArray: - - m_RefCount: 30 - m_Data: {fileID: 1461740870, guid: 57384e3e200e7894ab6388c334a13241, type: 3} - m_TileMatrixArray: - - m_RefCount: 30 - m_Data: - e00: 1 - e01: 0 - e02: 0 - e03: 0 - e10: 0 - e11: 1 - e12: 0 - e13: 0 - e20: 0 - e21: 0 - e22: 1 - e23: 0 - e30: 0 - e31: 0 - e32: 0 - e33: 1 - m_TileColorArray: - - m_RefCount: 30 - m_Data: {r: 1, g: 1, b: 1, a: 1} - m_TileObjectToInstantiateArray: [] - m_AnimationFrameRate: 1 - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_Origin: {x: 0, y: 0, z: 0} - m_Size: {x: 10, y: 5, z: 1} - m_TileAnchor: {x: 0.5, y: 0.5, z: 0} - m_TileOrientation: 0 - m_TileOrientationMatrix: - e00: 1 - e01: 0 - e02: 0 - e03: 0 - e10: 0 - e11: 1 - e12: 0 - e13: 0 - e20: 0 - e21: 0 - e22: 1 - e23: 0 - e30: 0 - e31: 0 - e32: 0 - e33: 1 ---- !u!483693784 &1850526002676046357 -TilemapRenderer: - serializedVersion: 2 - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 2850790532020550207} - m_Enabled: 1 - m_CastShadows: 0 - m_ReceiveShadows: 0 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 0 - m_ReflectionProbeUsage: 0 - m_RayTracingMode: 0 - m_RayTraceProcedural: 0 - m_RayTracingAccelStructBuildFlagsOverride: 0 - m_RayTracingAccelStructBuildFlags: 1 - m_SmallMeshCulling: 1 - m_ForceMeshLod: -1 - m_MeshLodSelectionBias: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, 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: 0 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_GlobalIlluminationMeshLod: 0 - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 0 - m_MaskInteraction: 0 - m_ChunkSize: {x: 32, y: 32, z: 32} - m_ChunkCullingBounds: {x: 0, y: 0, z: 0} - m_MaxChunkCount: 16 - m_MaxFrameAge: 16 - m_SortOrder: 0 - m_Mode: 0 - m_DetectChunkCullingBounds: 0 ---- !u!1 &4057670246112680828 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 5327703525539153083} - - component: {fileID: 5277413518454091202} - - component: {fileID: 7198370327884960055} - m_Layer: 0 - m_Name: Walls - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &5327703525539153083 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 4057670246112680828} - serializedVersion: 2 - 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_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 8770489571236103283} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!1839735485 &5277413518454091202 -Tilemap: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 4057670246112680828} - m_Enabled: 1 - m_Tiles: - - first: {x: 0, y: 0, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 5 - m_TileSpriteIndex: 5 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 1, y: 0, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 7 - m_TileSpriteIndex: 7 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 2, y: 0, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 6 - m_TileSpriteIndex: 6 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 5, y: 0, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 11 - m_TileSpriteIndex: 11 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 6, y: 0, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 12 - m_TileSpriteIndex: 12 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 7, y: 0, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 13 - m_TileSpriteIndex: 13 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 8, y: 0, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 14 - m_TileSpriteIndex: 14 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 9, y: 0, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 15 - m_TileSpriteIndex: 15 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 0, y: 1, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 4 - m_TileSpriteIndex: 4 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 1, y: 1, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 8 - m_TileSpriteIndex: 8 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 2, y: 1, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 3 - m_TileSpriteIndex: 3 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 5, y: 1, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 16 - m_TileSpriteIndex: 16 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 6, y: 1, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 17 - m_TileSpriteIndex: 17 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 7, y: 1, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 18 - m_TileSpriteIndex: 18 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 8, y: 1, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 19 - m_TileSpriteIndex: 19 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 9, y: 1, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 20 - m_TileSpriteIndex: 20 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 0, y: 2, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 4 - m_TileSpriteIndex: 4 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 1, y: 2, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 9 - m_TileSpriteIndex: 9 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 2, y: 2, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 3 - m_TileSpriteIndex: 3 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 5, y: 2, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 21 - m_TileSpriteIndex: 21 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 6, y: 2, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 22 - m_TileSpriteIndex: 22 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 7, y: 2, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 23 - m_TileSpriteIndex: 23 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 8, y: 2, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 24 - m_TileSpriteIndex: 24 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 9, y: 2, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 25 - m_TileSpriteIndex: 25 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 0, y: 3, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 4 - m_TileSpriteIndex: 4 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 1, y: 3, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 10 - m_TileSpriteIndex: 10 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 2, y: 3, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 3 - m_TileSpriteIndex: 3 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 0, y: 4, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 1, y: 4, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 1 - m_TileSpriteIndex: 1 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 2, y: 4, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 2 - m_TileSpriteIndex: 2 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - m_AnimatedTiles: {} - m_TileAssetArray: - - m_RefCount: 1 - m_Data: {fileID: 11400000, guid: c6a45bba13468b748ad4fab6c672046b, type: 2} - - m_RefCount: 1 - m_Data: {fileID: 11400000, guid: 65f89f01815e7dd4d93a548938631099, type: 2} - - m_RefCount: 1 - m_Data: {fileID: 11400000, guid: c00bb76a569ae984ca39348926646fea, type: 2} - - m_RefCount: 3 - m_Data: {fileID: 11400000, guid: 8c7ba2e68fab35d42913ce495b6f343f, type: 2} - - m_RefCount: 3 - m_Data: {fileID: 11400000, guid: 73fa500fe22b9f14c83a6c7345834bf9, type: 2} - - m_RefCount: 1 - m_Data: {fileID: 11400000, guid: e39be6b6bd9da6a47a1b41965a674b64, type: 2} - - m_RefCount: 1 - m_Data: {fileID: 11400000, guid: 481251978f4c9224eb178ffcb77ce47b, type: 2} - - m_RefCount: 1 - m_Data: {fileID: 11400000, guid: d7aad65646a3b354f90651a6cd6bebb5, type: 2} - - m_RefCount: 1 - m_Data: {fileID: 11400000, guid: 1ef8c975b29a5a74a8e5c4d95f2644de, type: 2} - - m_RefCount: 1 - m_Data: {fileID: 11400000, guid: 097b45895953d074eb802b0614de39e3, type: 2} - - m_RefCount: 1 - m_Data: {fileID: 11400000, guid: b6b641f0005e44644af4b8690226fa60, type: 2} - - m_RefCount: 1 - m_Data: {fileID: 11400000, guid: c763544a350107144874761fad2ead38, type: 2} - - m_RefCount: 1 - m_Data: {fileID: 11400000, guid: 1a1ceb959ce7827489d3f7140dc04ffc, type: 2} - - m_RefCount: 1 - m_Data: {fileID: 11400000, guid: c10f69343aed55d4f9c3b4b877aa1208, type: 2} - - m_RefCount: 1 - m_Data: {fileID: 11400000, guid: a5eeb8098cc5ac3409d23780ace58fa6, type: 2} - - m_RefCount: 1 - m_Data: {fileID: 11400000, guid: d76b1cb54cb40da49b6793fc8dadc0cc, type: 2} - - m_RefCount: 1 - m_Data: {fileID: 11400000, guid: df48e9a1e57fccf43a804105eb5a6ae2, type: 2} - - m_RefCount: 1 - m_Data: {fileID: 11400000, guid: 079f27e12cafdf147948ba77f27eb18b, type: 2} - - m_RefCount: 1 - m_Data: {fileID: 11400000, guid: 26d9824fccd6a2a4ba31e1d828a68d35, type: 2} - - m_RefCount: 1 - m_Data: {fileID: 11400000, guid: b2b3dff7063947545b6a9d49d25d15ff, type: 2} - - m_RefCount: 1 - m_Data: {fileID: 11400000, guid: a578f729aeec0dc4b80190da404f8ce8, type: 2} - - m_RefCount: 1 - m_Data: {fileID: 11400000, guid: 81af9b4171b03ac489d702093da51948, type: 2} - - m_RefCount: 1 - m_Data: {fileID: 11400000, guid: ed5002c78478f7e44ac98362b32af24a, type: 2} - - m_RefCount: 1 - m_Data: {fileID: 11400000, guid: 5e24cb56a22c0b44f84bf843662de3c4, type: 2} - - m_RefCount: 1 - m_Data: {fileID: 11400000, guid: e7d7bd4888e4ab94da3614c2aa15d3ed, type: 2} - - m_RefCount: 1 - m_Data: {fileID: 11400000, guid: 5063b5eaeb751ad4bba5769e202461d5, type: 2} - m_TileSpriteArray: - - m_RefCount: 1 - m_Data: {fileID: 1584128887, guid: 577888f9a093e794584bfdcecb0bbc82, type: 3} - - m_RefCount: 1 - m_Data: {fileID: 1700821697, guid: 577888f9a093e794584bfdcecb0bbc82, type: 3} - - m_RefCount: 1 - m_Data: {fileID: -1239936740, guid: 577888f9a093e794584bfdcecb0bbc82, type: 3} - - m_RefCount: 3 - m_Data: {fileID: -1265663485, guid: 577888f9a093e794584bfdcecb0bbc82, type: 3} - - m_RefCount: 3 - m_Data: {fileID: 752833139, guid: 577888f9a093e794584bfdcecb0bbc82, type: 3} - - m_RefCount: 1 - m_Data: {fileID: 859764688, guid: 577888f9a093e794584bfdcecb0bbc82, type: 3} - - m_RefCount: 1 - m_Data: {fileID: -91567511, guid: 577888f9a093e794584bfdcecb0bbc82, type: 3} - - m_RefCount: 1 - m_Data: {fileID: 1140741099, guid: 577888f9a093e794584bfdcecb0bbc82, type: 3} - - m_RefCount: 1 - m_Data: {fileID: -944116523, guid: 577888f9a093e794584bfdcecb0bbc82, type: 3} - - m_RefCount: 1 - m_Data: {fileID: 2029158586, guid: 577888f9a093e794584bfdcecb0bbc82, type: 3} - - m_RefCount: 1 - m_Data: {fileID: -132390118, guid: 577888f9a093e794584bfdcecb0bbc82, type: 3} - - m_RefCount: 1 - m_Data: {fileID: -448671654, guid: 577888f9a093e794584bfdcecb0bbc82, type: 3} - - m_RefCount: 1 - m_Data: {fileID: 126381316, guid: 577888f9a093e794584bfdcecb0bbc82, type: 3} - - m_RefCount: 1 - m_Data: {fileID: 649237227, guid: 577888f9a093e794584bfdcecb0bbc82, type: 3} - - m_RefCount: 1 - m_Data: {fileID: 1538222582, guid: 577888f9a093e794584bfdcecb0bbc82, type: 3} - - m_RefCount: 1 - m_Data: {fileID: -1091920563, guid: 577888f9a093e794584bfdcecb0bbc82, type: 3} - - m_RefCount: 1 - m_Data: {fileID: -546700205, guid: 577888f9a093e794584bfdcecb0bbc82, type: 3} - - m_RefCount: 1 - m_Data: {fileID: 378432783, guid: 577888f9a093e794584bfdcecb0bbc82, type: 3} - - m_RefCount: 1 - m_Data: {fileID: -1731966413, guid: 577888f9a093e794584bfdcecb0bbc82, type: 3} - - m_RefCount: 1 - m_Data: {fileID: 1121543955, guid: 577888f9a093e794584bfdcecb0bbc82, type: 3} - - m_RefCount: 1 - m_Data: {fileID: -346443928, guid: 577888f9a093e794584bfdcecb0bbc82, type: 3} - - m_RefCount: 1 - m_Data: {fileID: 1011134882, guid: 577888f9a093e794584bfdcecb0bbc82, type: 3} - - m_RefCount: 1 - m_Data: {fileID: -817006446, guid: 577888f9a093e794584bfdcecb0bbc82, type: 3} - - m_RefCount: 1 - m_Data: {fileID: 1160481729, guid: 577888f9a093e794584bfdcecb0bbc82, type: 3} - - m_RefCount: 1 - m_Data: {fileID: -1853734596, guid: 577888f9a093e794584bfdcecb0bbc82, type: 3} - - m_RefCount: 1 - m_Data: {fileID: -179331807, guid: 577888f9a093e794584bfdcecb0bbc82, type: 3} - m_TileMatrixArray: - - m_RefCount: 30 - m_Data: - e00: 1 - e01: 0 - e02: 0 - e03: 0 - e10: 0 - e11: 1 - e12: 0 - e13: 0 - e20: 0 - e21: 0 - e22: 1 - e23: 0 - e30: 0 - e31: 0 - e32: 0 - e33: 1 - m_TileColorArray: - - m_RefCount: 30 - m_Data: {r: 1, g: 1, b: 1, a: 1} - m_TileObjectToInstantiateArray: [] - m_AnimationFrameRate: 1 - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_Origin: {x: 0, y: 0, z: 0} - m_Size: {x: 10, y: 5, z: 1} - m_TileAnchor: {x: 0.5, y: 0.5, z: 0} - m_TileOrientation: 0 - m_TileOrientationMatrix: - e00: 1 - e01: 0 - e02: 0 - e03: 0 - e10: 0 - e11: 1 - e12: 0 - e13: 0 - e20: 0 - e21: 0 - e22: 1 - e23: 0 - e30: 0 - e31: 0 - e32: 0 - e33: 1 ---- !u!483693784 &7198370327884960055 -TilemapRenderer: - serializedVersion: 2 - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 4057670246112680828} - m_Enabled: 1 - m_CastShadows: 0 - m_ReceiveShadows: 0 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 0 - m_ReflectionProbeUsage: 0 - m_RayTracingMode: 0 - m_RayTraceProcedural: 0 - m_RayTracingAccelStructBuildFlagsOverride: 0 - m_RayTracingAccelStructBuildFlags: 1 - m_SmallMeshCulling: 1 - m_ForceMeshLod: -1 - m_MeshLodSelectionBias: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, 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: 0 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_GlobalIlluminationMeshLod: 0 - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 1 - m_MaskInteraction: 0 - m_ChunkSize: {x: 32, y: 32, z: 32} - m_ChunkCullingBounds: {x: 0, y: 0, z: 0} - m_MaxChunkCount: 16 - m_MaxFrameAge: 16 - m_SortOrder: 0 - m_Mode: 0 - m_DetectChunkCullingBounds: 0 ---- !u!1 &7621145453991342411 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 7881650432324260526} - m_Layer: 0 - m_Name: RandomPrefabs - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &7881650432324260526 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 7621145453991342411} - serializedVersion: 2 - 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_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 8770489571236103283} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!1 &8052457567406562996 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 8770489571236103283} - - component: {fileID: 7529873544082654866} - m_Layer: 0 - m_Name: WorldAutotileProfile_PaletteLayout 1 - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &8770489571236103283 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8052457567406562996} - serializedVersion: 2 - 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_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 7903234780153735449} - - {fileID: 5327703525539153083} - - {fileID: 7929865742883847230} - - {fileID: 7881650432324260526} - m_Father: {fileID: 0} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!156049354 &7529873544082654866 -Grid: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8052457567406562996} - m_Enabled: 1 - m_CellSize: {x: 1, y: 1, z: 1} - m_CellGap: {x: 0, y: 0, z: 0} - m_CellLayout: 0 - m_CellSwizzle: 0 diff --git a/Assets/Generated/PaletteLayouts/WorldAutotileProfile_PaletteLayout.prefab b/Assets/Generated/PaletteLayouts/WorldAutotileProfile_PaletteLayout.prefab deleted file mode 100644 index 536a419c..00000000 --- a/Assets/Generated/PaletteLayouts/WorldAutotileProfile_PaletteLayout.prefab +++ /dev/null @@ -1,820 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!1 &1390368529443346841 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 7929865742883847230} - - component: {fileID: 5621474446824399857} - - component: {fileID: 3906500003454838650} - m_Layer: 0 - m_Name: Environment - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &7929865742883847230 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1390368529443346841} - serializedVersion: 2 - 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_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 8770489571236103283} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!1839735485 &5621474446824399857 -Tilemap: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1390368529443346841} - m_Enabled: 1 - m_Tiles: {} - m_AnimatedTiles: {} - m_TileAssetArray: [] - m_TileSpriteArray: [] - m_TileMatrixArray: [] - m_TileColorArray: [] - m_TileObjectToInstantiateArray: [] - m_AnimationFrameRate: 1 - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_Origin: {x: 0, y: 0, z: 0} - m_Size: {x: 0, y: 0, z: 1} - m_TileAnchor: {x: 0.5, y: 0.5, z: 0} - m_TileOrientation: 0 - m_TileOrientationMatrix: - e00: 1 - e01: 0 - e02: 0 - e03: 0 - e10: 0 - e11: 1 - e12: 0 - e13: 0 - e20: 0 - e21: 0 - e22: 1 - e23: 0 - e30: 0 - e31: 0 - e32: 0 - e33: 1 ---- !u!483693784 &3906500003454838650 -TilemapRenderer: - serializedVersion: 2 - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1390368529443346841} - m_Enabled: 1 - m_CastShadows: 0 - m_ReceiveShadows: 0 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 0 - m_ReflectionProbeUsage: 0 - m_RayTracingMode: 0 - m_RayTraceProcedural: 0 - m_RayTracingAccelStructBuildFlagsOverride: 0 - m_RayTracingAccelStructBuildFlags: 1 - m_SmallMeshCulling: 1 - m_ForceMeshLod: -1 - m_MeshLodSelectionBias: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, 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: 0 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_GlobalIlluminationMeshLod: 0 - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 2 - m_MaskInteraction: 0 - m_ChunkSize: {x: 32, y: 32, z: 32} - m_ChunkCullingBounds: {x: 0, y: 0, z: 0} - m_MaxChunkCount: 16 - m_MaxFrameAge: 16 - m_SortOrder: 0 - m_Mode: 0 - m_DetectChunkCullingBounds: 0 ---- !u!1 &2850790532020550207 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 7903234780153735449} - - component: {fileID: 7562578496861508208} - - component: {fileID: 1850526002676046357} - m_Layer: 0 - m_Name: Background - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &7903234780153735449 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 2850790532020550207} - serializedVersion: 2 - 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_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 8770489571236103283} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!1839735485 &7562578496861508208 -Tilemap: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 2850790532020550207} - m_Enabled: 1 - m_Tiles: - - first: {x: 0, y: 0, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 1, y: 0, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 2, y: 0, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 5, y: 0, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 6, y: 0, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 7, y: 0, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 8, y: 0, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 9, y: 0, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 0, y: 1, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 1, y: 1, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 2, y: 1, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 5, y: 1, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 6, y: 1, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 7, y: 1, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 8, y: 1, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 9, y: 1, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 0, y: 2, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 1, y: 2, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 2, y: 2, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 5, y: 2, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 6, y: 2, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 7, y: 2, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 8, y: 2, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 9, y: 2, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 0, y: 3, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 1, y: 3, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 2, y: 3, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 0, y: 4, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 1, y: 4, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - - first: {x: 2, y: 4, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - m_AnimatedTiles: {} - m_TileAssetArray: - - m_RefCount: 30 - m_Data: {fileID: 11400000, guid: df0b218249524df498eb759c25743036, type: 2} - m_TileSpriteArray: - - m_RefCount: 30 - m_Data: {fileID: 1461740870, guid: 57384e3e200e7894ab6388c334a13241, type: 3} - m_TileMatrixArray: - - m_RefCount: 30 - m_Data: - e00: 1 - e01: 0 - e02: 0 - e03: 0 - e10: 0 - e11: 1 - e12: 0 - e13: 0 - e20: 0 - e21: 0 - e22: 1 - e23: 0 - e30: 0 - e31: 0 - e32: 0 - e33: 1 - m_TileColorArray: - - m_RefCount: 30 - m_Data: {r: 1, g: 1, b: 1, a: 1} - m_TileObjectToInstantiateArray: [] - m_AnimationFrameRate: 1 - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_Origin: {x: 0, y: 0, z: 0} - m_Size: {x: 10, y: 5, z: 1} - m_TileAnchor: {x: 0.5, y: 0.5, z: 0} - m_TileOrientation: 0 - m_TileOrientationMatrix: - e00: 1 - e01: 0 - e02: 0 - e03: 0 - e10: 0 - e11: 1 - e12: 0 - e13: 0 - e20: 0 - e21: 0 - e22: 1 - e23: 0 - e30: 0 - e31: 0 - e32: 0 - e33: 1 ---- !u!483693784 &1850526002676046357 -TilemapRenderer: - serializedVersion: 2 - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 2850790532020550207} - m_Enabled: 1 - m_CastShadows: 0 - m_ReceiveShadows: 0 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 0 - m_ReflectionProbeUsage: 0 - m_RayTracingMode: 0 - m_RayTraceProcedural: 0 - m_RayTracingAccelStructBuildFlagsOverride: 0 - m_RayTracingAccelStructBuildFlags: 1 - m_SmallMeshCulling: 1 - m_ForceMeshLod: -1 - m_MeshLodSelectionBias: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, 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: 0 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_GlobalIlluminationMeshLod: 0 - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 0 - m_MaskInteraction: 0 - m_ChunkSize: {x: 32, y: 32, z: 32} - m_ChunkCullingBounds: {x: 0, y: 0, z: 0} - m_MaxChunkCount: 16 - m_MaxFrameAge: 16 - m_SortOrder: 0 - m_Mode: 0 - m_DetectChunkCullingBounds: 0 ---- !u!1 &4057670246112680828 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 5327703525539153083} - - component: {fileID: 5277413518454091202} - - component: {fileID: 7198370327884960055} - m_Layer: 0 - m_Name: Walls - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &5327703525539153083 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 4057670246112680828} - serializedVersion: 2 - 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_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 8770489571236103283} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!1839735485 &5277413518454091202 -Tilemap: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 4057670246112680828} - m_Enabled: 1 - m_Tiles: - - first: {x: 0, y: 4, z: 0} - second: - serializedVersion: 2 - m_TileIndex: 0 - m_TileSpriteIndex: 0 - m_TileMatrixIndex: 0 - m_TileColorIndex: 0 - m_TileObjectToInstantiateIndex: 65535 - dummyAlignment: 0 - m_AllTileFlags: 1073741825 - m_AnimatedTiles: {} - m_TileAssetArray: - - m_RefCount: 1 - m_Data: {fileID: 11400000, guid: 3bdb6ff2f25795d4fb49746c6399f8be, type: 2} - m_TileSpriteArray: - - m_RefCount: 1 - m_Data: {fileID: -1220055131, guid: 57384e3e200e7894ab6388c334a13241, type: 3} - m_TileMatrixArray: - - m_RefCount: 1 - m_Data: - e00: 1 - e01: 0 - e02: 0 - e03: 0 - e10: 0 - e11: 1 - e12: 0 - e13: 0 - e20: 0 - e21: 0 - e22: 1 - e23: 0 - e30: 0 - e31: 0 - e32: 0 - e33: 1 - m_TileColorArray: - - m_RefCount: 1 - m_Data: {r: 1, g: 1, b: 1, a: 1} - m_TileObjectToInstantiateArray: [] - m_AnimationFrameRate: 1 - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_Origin: {x: 0, y: 0, z: 0} - m_Size: {x: 1, y: 5, z: 1} - m_TileAnchor: {x: 0.5, y: 0.5, z: 0} - m_TileOrientation: 0 - m_TileOrientationMatrix: - e00: 1 - e01: 0 - e02: 0 - e03: 0 - e10: 0 - e11: 1 - e12: 0 - e13: 0 - e20: 0 - e21: 0 - e22: 1 - e23: 0 - e30: 0 - e31: 0 - e32: 0 - e33: 1 ---- !u!483693784 &7198370327884960055 -TilemapRenderer: - serializedVersion: 2 - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 4057670246112680828} - m_Enabled: 1 - m_CastShadows: 0 - m_ReceiveShadows: 0 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 0 - m_ReflectionProbeUsage: 0 - m_RayTracingMode: 0 - m_RayTraceProcedural: 0 - m_RayTracingAccelStructBuildFlagsOverride: 0 - m_RayTracingAccelStructBuildFlags: 1 - m_SmallMeshCulling: 1 - m_ForceMeshLod: -1 - m_MeshLodSelectionBias: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, 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: 0 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_GlobalIlluminationMeshLod: 0 - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 1 - m_MaskInteraction: 0 - m_ChunkSize: {x: 32, y: 32, z: 32} - m_ChunkCullingBounds: {x: 0, y: 0, z: 0} - m_MaxChunkCount: 16 - m_MaxFrameAge: 16 - m_SortOrder: 0 - m_Mode: 0 - m_DetectChunkCullingBounds: 0 ---- !u!1 &7621145453991342411 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 7881650432324260526} - m_Layer: 0 - m_Name: RandomPrefabs - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &7881650432324260526 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 7621145453991342411} - serializedVersion: 2 - 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_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 8770489571236103283} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!1 &8052457567406562996 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 8770489571236103283} - - component: {fileID: 7529873544082654866} - m_Layer: 0 - m_Name: WorldAutotileProfile_PaletteLayout - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &8770489571236103283 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8052457567406562996} - serializedVersion: 2 - 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_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 7903234780153735449} - - {fileID: 5327703525539153083} - - {fileID: 7929865742883847230} - - {fileID: 7881650432324260526} - m_Father: {fileID: 0} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!156049354 &7529873544082654866 -Grid: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8052457567406562996} - m_Enabled: 1 - m_CellSize: {x: 1, y: 1, z: 1} - m_CellGap: {x: 0, y: 0, z: 0} - m_CellLayout: 0 - m_CellSwizzle: 0 diff --git a/Assets/Scenes/New Scene.unity b/Assets/Scenes/New Scene.unity new file mode 100644 index 00000000..2c52cf18 --- /dev/null +++ b/Assets/Scenes/New Scene.unity @@ -0,0 +1,218 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!29 &1 +OcclusionCullingSettings: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_OcclusionBakeSettings: + smallestOccluder: 5 + smallestHole: 0.25 + backfaceThreshold: 100 + m_SceneGUID: 00000000000000000000000000000000 + m_OcclusionCullingData: {fileID: 0} +--- !u!104 &2 +RenderSettings: + m_ObjectHideFlags: 0 + serializedVersion: 10 + m_Fog: 0 + m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} + m_FogMode: 3 + m_FogDensity: 0.01 + m_LinearFogStart: 0 + m_LinearFogEnd: 300 + m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} + m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} + m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} + m_AmbientIntensity: 1 + m_AmbientMode: 3 + m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} + m_SkyboxMaterial: {fileID: 0} + m_HaloStrength: 0.5 + m_FlareStrength: 1 + m_FlareFadeSpeed: 3 + m_HaloTexture: {fileID: 0} + m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} + m_DefaultReflectionMode: 0 + m_DefaultReflectionResolution: 128 + m_ReflectionBounces: 1 + m_ReflectionIntensity: 1 + m_CustomReflection: {fileID: 0} + m_Sun: {fileID: 0} + m_UseRadianceAmbientProbe: 0 +--- !u!157 &3 +LightmapSettings: + m_ObjectHideFlags: 0 + serializedVersion: 13 + m_BakeOnSceneLoad: 0 + m_GISettings: + serializedVersion: 2 + m_BounceScale: 1 + m_IndirectOutputScale: 1 + m_AlbedoBoost: 1 + m_EnvironmentLightingMode: 0 + m_EnableBakedLightmaps: 0 + m_EnableRealtimeLightmaps: 0 + m_LightmapEditorSettings: + serializedVersion: 12 + m_Resolution: 2 + m_BakeResolution: 40 + m_AtlasSize: 1024 + m_AO: 0 + m_AOMaxDistance: 1 + m_CompAOExponent: 1 + m_CompAOExponentDirect: 0 + m_ExtractAmbientOcclusion: 0 + m_Padding: 2 + m_LightmapParameters: {fileID: 0} + m_LightmapsBakeMode: 1 + m_TextureCompression: 1 + m_ReflectionCompression: 2 + m_MixedBakeMode: 2 + m_BakeBackend: 2 + m_PVRSampling: 1 + m_PVRDirectSampleCount: 32 + m_PVRSampleCount: 512 + m_PVRBounces: 2 + m_PVREnvironmentSampleCount: 256 + m_PVREnvironmentReferencePointCount: 2048 + m_PVRFilteringMode: 1 + m_PVRDenoiserTypeDirect: 1 + m_PVRDenoiserTypeIndirect: 1 + m_PVRDenoiserTypeAO: 1 + m_PVRFilterTypeDirect: 0 + m_PVRFilterTypeIndirect: 0 + m_PVRFilterTypeAO: 0 + m_PVREnvironmentMIS: 1 + m_PVRCulling: 1 + m_PVRFilteringGaussRadiusDirect: 1 + m_PVRFilteringGaussRadiusIndirect: 1 + m_PVRFilteringGaussRadiusAO: 1 + m_PVRFilteringAtrousPositionSigmaDirect: 0.5 + m_PVRFilteringAtrousPositionSigmaIndirect: 2 + m_PVRFilteringAtrousPositionSigmaAO: 1 + m_ExportTrainingData: 0 + m_TrainingDataDestination: TrainingData + m_LightProbeSampleCountMultiplier: 4 + m_LightingDataAsset: {fileID: 20201, guid: 0000000000000000f000000000000000, type: 0} + m_LightingSettings: {fileID: 0} +--- !u!196 &4 +NavMeshSettings: + serializedVersion: 2 + m_ObjectHideFlags: 0 + m_BuildSettings: + serializedVersion: 3 + agentTypeID: 0 + agentRadius: 0.5 + agentHeight: 2 + agentSlope: 45 + agentClimb: 0.4 + ledgeDropHeight: 0 + maxJumpAcrossDistance: 0 + minRegionArea: 2 + manualCellSize: 0 + cellSize: 0.16666667 + manualTileSize: 0 + tileSize: 256 + buildHeightMesh: 0 + maxJobWorkers: 0 + preserveTilesOutsideBounds: 0 + debug: + m_Flags: 0 + m_NavMeshData: {fileID: 0} +--- !u!1 &344668594 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 344668597} + - component: {fileID: 344668596} + - component: {fileID: 344668595} + m_Layer: 0 + m_Name: Main Camera + m_TagString: MainCamera + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!81 &344668595 +AudioListener: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 344668594} + m_Enabled: 1 +--- !u!20 &344668596 +Camera: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 344668594} + m_Enabled: 1 + serializedVersion: 2 + m_ClearFlags: 1 + m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0} + m_projectionMatrixMode: 1 + m_GateFitMode: 2 + m_FOVAxisMode: 0 + m_Iso: 200 + m_ShutterSpeed: 0.005 + m_Aperture: 16 + m_FocusDistance: 10 + m_FocalLength: 50 + m_BladeCount: 5 + m_Curvature: {x: 2, y: 11} + m_BarrelClipping: 0.25 + m_Anamorphism: 0 + m_SensorSize: {x: 36, y: 24} + m_LensShift: {x: 0, y: 0} + 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: 5 + m_Depth: -1 + 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 &344668597 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 344668594} + serializedVersion: 2 + 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_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1660057539 &9223372036854775807 +SceneRoots: + m_ObjectHideFlags: 0 + m_Roots: + - {fileID: 344668597} diff --git a/Assets/Generated/PaletteLayouts/WorldAutotileProfile_PaletteLayout.prefab.meta b/Assets/Scenes/New Scene.unity.meta similarity index 63% rename from Assets/Generated/PaletteLayouts/WorldAutotileProfile_PaletteLayout.prefab.meta rename to Assets/Scenes/New Scene.unity.meta index 60fba45c..0abf5033 100644 --- a/Assets/Generated/PaletteLayouts/WorldAutotileProfile_PaletteLayout.prefab.meta +++ b/Assets/Scenes/New Scene.unity.meta @@ -1,6 +1,6 @@ fileFormatVersion: 2 -guid: f75266ba36ad9b44b922ed5f2cbba8ec -PrefabImporter: +guid: 59087e33113ec8341b84efbb7d9d7f55 +DefaultImporter: externalObjects: {} userData: assetBundleName: diff --git a/Assets/Scenes/VoxelWorldTestScene.unity b/Assets/Scenes/VoxelWorldTestScene.unity new file mode 100644 index 00000000..f579601c --- /dev/null +++ b/Assets/Scenes/VoxelWorldTestScene.unity @@ -0,0 +1,463 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!29 &1 +OcclusionCullingSettings: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_OcclusionBakeSettings: + smallestOccluder: 5 + smallestHole: 0.25 + backfaceThreshold: 100 + m_SceneGUID: 00000000000000000000000000000000 + m_OcclusionCullingData: {fileID: 0} +--- !u!104 &2 +RenderSettings: + m_ObjectHideFlags: 0 + serializedVersion: 10 + m_Fog: 0 + m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} + m_FogMode: 3 + m_FogDensity: 0.01 + m_LinearFogStart: 0 + m_LinearFogEnd: 300 + m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} + m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} + m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} + m_AmbientIntensity: 1 + m_AmbientMode: 3 + m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} + m_SkyboxMaterial: {fileID: 0} + m_HaloStrength: 0.5 + m_FlareStrength: 1 + m_FlareFadeSpeed: 3 + m_HaloTexture: {fileID: 0} + m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} + m_DefaultReflectionMode: 0 + m_DefaultReflectionResolution: 128 + m_ReflectionBounces: 1 + m_ReflectionIntensity: 1 + m_CustomReflection: {fileID: 0} + m_Sun: {fileID: 0} + m_UseRadianceAmbientProbe: 0 +--- !u!157 &3 +LightmapSettings: + m_ObjectHideFlags: 0 + serializedVersion: 13 + m_BakeOnSceneLoad: 0 + m_GISettings: + serializedVersion: 2 + m_BounceScale: 1 + m_IndirectOutputScale: 1 + m_AlbedoBoost: 1 + m_EnvironmentLightingMode: 0 + m_EnableBakedLightmaps: 0 + m_EnableRealtimeLightmaps: 0 + m_LightmapEditorSettings: + serializedVersion: 12 + m_Resolution: 2 + m_BakeResolution: 40 + m_AtlasSize: 1024 + m_AO: 0 + m_AOMaxDistance: 1 + m_CompAOExponent: 1 + m_CompAOExponentDirect: 0 + m_ExtractAmbientOcclusion: 0 + m_Padding: 2 + m_LightmapParameters: {fileID: 0} + m_LightmapsBakeMode: 1 + m_TextureCompression: 1 + m_ReflectionCompression: 2 + m_MixedBakeMode: 2 + m_BakeBackend: 2 + m_PVRSampling: 1 + m_PVRDirectSampleCount: 32 + m_PVRSampleCount: 512 + m_PVRBounces: 2 + m_PVREnvironmentSampleCount: 256 + m_PVREnvironmentReferencePointCount: 2048 + m_PVRFilteringMode: 1 + m_PVRDenoiserTypeDirect: 1 + m_PVRDenoiserTypeIndirect: 1 + m_PVRDenoiserTypeAO: 1 + m_PVRFilterTypeDirect: 0 + m_PVRFilterTypeIndirect: 0 + m_PVRFilterTypeAO: 0 + m_PVREnvironmentMIS: 1 + m_PVRCulling: 1 + m_PVRFilteringGaussRadiusDirect: 1 + m_PVRFilteringGaussRadiusIndirect: 1 + m_PVRFilteringGaussRadiusAO: 1 + m_PVRFilteringAtrousPositionSigmaDirect: 0.5 + m_PVRFilteringAtrousPositionSigmaIndirect: 2 + m_PVRFilteringAtrousPositionSigmaAO: 1 + m_ExportTrainingData: 0 + m_TrainingDataDestination: TrainingData + m_LightProbeSampleCountMultiplier: 4 + m_LightingDataAsset: {fileID: 20201, guid: 0000000000000000f000000000000000, type: 0} + m_LightingSettings: {fileID: 0} +--- !u!196 &4 +NavMeshSettings: + serializedVersion: 2 + m_ObjectHideFlags: 0 + m_BuildSettings: + serializedVersion: 3 + agentTypeID: 0 + agentRadius: 0.5 + agentHeight: 2 + agentSlope: 45 + agentClimb: 0.4 + ledgeDropHeight: 0 + maxJumpAcrossDistance: 0 + minRegionArea: 2 + manualCellSize: 0 + cellSize: 0.16666667 + manualTileSize: 0 + tileSize: 256 + buildHeightMesh: 0 + maxJobWorkers: 0 + preserveTilesOutsideBounds: 0 + debug: + m_Flags: 0 + m_NavMeshData: {fileID: 0} +--- !u!1 &47249969 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 47249972} + - component: {fileID: 47249971} + - component: {fileID: 47249970} + m_Layer: 0 + m_Name: Directional Light + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &47249970 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 47249969} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 474bcb49853aa07438625e644c072ee6, type: 3} + m_Name: + m_EditorClassIdentifier: Unity.RenderPipelines.Universal.Runtime::UnityEngine.Rendering.Universal.UniversalAdditionalLightData + m_UsePipelineSettings: 1 + m_AdditionalLightsShadowResolutionTier: 2 + m_CustomShadowLayers: 0 + m_LightCookieSize: {x: 1, y: 1} + m_LightCookieOffset: {x: 0, y: 0} + m_SoftShadowQuality: 0 + m_RenderingLayersMask: + serializedVersion: 0 + m_Bits: 1 + m_ShadowRenderingLayersMask: + serializedVersion: 0 + m_Bits: 1 + m_Version: 4 + m_LightLayerMask: 1 + m_ShadowLayerMask: 1 + m_RenderingLayers: 1 + m_ShadowRenderingLayers: 1 +--- !u!108 &47249971 +Light: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 47249969} + m_Enabled: 1 + serializedVersion: 12 + m_Type: 1 + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Intensity: 1 + m_Range: 10 + m_SpotAngle: 30 + m_InnerSpotAngle: 21.80208 + m_CookieSize2D: {x: 0.5, y: 0.5} + m_Shadows: + m_Type: 0 + m_Resolution: -1 + m_CustomResolution: -1 + m_Strength: 1 + m_Bias: 0.05 + m_NormalBias: 0.4 + m_NearPlane: 0.2 + m_CullingMatrixOverride: + e00: 1 + e01: 0 + e02: 0 + e03: 0 + e10: 0 + e11: 1 + e12: 0 + e13: 0 + e20: 0 + e21: 0 + e22: 1 + e23: 0 + e30: 0 + e31: 0 + e32: 0 + e33: 1 + m_UseCullingMatrixOverride: 0 + m_Cookie: {fileID: 0} + m_DrawHalo: 0 + m_Flare: {fileID: 0} + m_RenderMode: 0 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingLayerMask: 1 + m_Lightmapping: 4 + m_LightShadowCasterMode: 0 + m_AreaSize: {x: 1, y: 1} + m_BounceIntensity: 1 + m_ColorTemperature: 6570 + m_UseColorTemperature: 0 + m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0} + m_UseBoundingSphereOverride: 0 + m_UseViewFrustumForShadowCasterCull: 1 + m_ForceVisible: 0 + m_ShadowRadius: 0 + m_ShadowAngle: 0 + m_LightUnit: 1 + m_LuxAtDistance: 1 + m_EnableSpotReflector: 1 +--- !u!4 &47249972 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 47249969} + serializedVersion: 2 + m_LocalRotation: {x: 0.40821794, y: -0.23456973, z: 0.10938166, w: 0.8754261} + m_LocalPosition: {x: 0, y: 8, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1331065945 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1331065949} + - component: {fileID: 1331065948} + - component: {fileID: 1331065947} + - component: {fileID: 1331065946} + 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 &1331065946 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1331065945} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: a79441f348de89743a2939f4d699eac1, type: 3} + m_Name: + m_EditorClassIdentifier: Unity.RenderPipelines.Universal.Runtime::UnityEngine.Rendering.Universal.UniversalAdditionalCameraData + m_RenderShadows: 1 + m_RequiresDepthTextureOption: 2 + m_RequiresOpaqueTextureOption: 2 + m_CameraType: 0 + m_Cameras: [] + m_RendererIndex: -1 + m_VolumeLayerMask: + serializedVersion: 2 + m_Bits: 1 + m_VolumeTrigger: {fileID: 0} + m_VolumeFrameworkUpdateModeOption: 2 + m_RenderPostProcessing: 0 + m_Antialiasing: 0 + m_AntialiasingQuality: 2 + m_StopNaN: 0 + m_Dithering: 0 + m_ClearDepth: 1 + m_AllowXRRendering: 1 + m_AllowHDROutput: 1 + m_UseScreenCoordOverride: 0 + m_ScreenSizeOverride: {x: 0, y: 0, z: 0, w: 0} + m_ScreenCoordScaleBias: {x: 0, y: 0, z: 0, w: 0} + m_RequiresDepthTexture: 0 + m_RequiresColorTexture: 0 + m_TaaSettings: + m_Quality: 3 + m_FrameInfluence: 0.1 + m_JitterScale: 1 + m_MipBias: 0 + m_VarianceClampScale: 0.9 + m_ContrastAdaptiveSharpening: 0 + m_Version: 2 +--- !u!81 &1331065947 +AudioListener: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1331065945} + m_Enabled: 1 +--- !u!20 &1331065948 +Camera: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1331065945} + m_Enabled: 1 + serializedVersion: 2 + m_ClearFlags: 1 + m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0} + m_projectionMatrixMode: 1 + m_GateFitMode: 2 + m_FOVAxisMode: 0 + m_Iso: 200 + m_ShutterSpeed: 0.005 + m_Aperture: 16 + m_FocusDistance: 10 + m_FocalLength: 50 + m_BladeCount: 5 + m_Curvature: {x: 2, y: 11} + m_BarrelClipping: 0.25 + m_Anamorphism: 0 + m_SensorSize: {x: 36, y: 24} + m_LensShift: {x: 0, y: 0} + m_NormalizedViewPortRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 1 + height: 1 + near clip plane: 0.3 + far clip plane: 300 + 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 &1331065949 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1331065945} + serializedVersion: 2 + m_LocalRotation: {x: 0.2778159, y: 0.3649717, z: -0.115075134, w: 0.88111955} + m_LocalPosition: {x: 8, y: 12, z: -10} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1842209026 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1842209028} + - component: {fileID: 1842209027} + m_Layer: 0 + m_Name: VoxelWorld + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1842209027 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1842209026} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 62cd563780165844caddc098f92ff23f, type: 3} + m_Name: + m_EditorClassIdentifier: VoxelWorld.Runtime::InfiniteWorld.VoxelWorld.VoxelWorldGenerator + streamTarget: {fileID: 1331065949} + chunkSize: 16 + generationRadius: 4 + blockingGenerationRadius: 1 + seed: 12345 + maxMountainHeight: 5 + macroNoiseScale: 0.05 + detailNoiseScale: 0.12 + ridgeNoiseScale: 0.18 + wallThreshold: 0.6 + rockBias: 0.04 + smoothingPasses: 2 + passNoiseScale: 0.018 + passDetailScale: 0.041 + passThreshold: 0.22 + passFeather: 0.12 + heightNoiseScale: 0.08 + terraceNoiseScale: 0.17 + heightBias: 0.05 + biomeProfiles: + - {fileID: 11400000, guid: ae25f699f7f7d4144bbd148907fda668, type: 2} + - {fileID: 11400000, guid: eac8d825dd62e1c439235d273a4ca613, type: 2} + - {fileID: 11400000, guid: 6d0dbe510ed048440a3925ef40aeeb5b, type: 2} + biomeNoiseScale: 0.02 + biomeSize: 12 + maxAsyncChunkJobs: 8 + maxChunkBuildsPerFrame: 2 +--- !u!4 &1842209028 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1842209026} + serializedVersion: 2 + 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_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1660057539 &9223372036854775807 +SceneRoots: + m_ObjectHideFlags: 0 + m_Roots: + - {fileID: 1331065949} + - {fileID: 47249972} + - {fileID: 1842209028} diff --git a/Assets/Generated/PaletteLayouts/WorldAutotileProfile_PaletteLayout 1.prefab.meta b/Assets/Scenes/VoxelWorldTestScene.unity.meta similarity index 63% rename from Assets/Generated/PaletteLayouts/WorldAutotileProfile_PaletteLayout 1.prefab.meta rename to Assets/Scenes/VoxelWorldTestScene.unity.meta index 10f6e199..cd9b6550 100644 --- a/Assets/Generated/PaletteLayouts/WorldAutotileProfile_PaletteLayout 1.prefab.meta +++ b/Assets/Scenes/VoxelWorldTestScene.unity.meta @@ -1,6 +1,6 @@ fileFormatVersion: 2 -guid: aaeceb767a7bf1e49b69be2fa5c000ec -PrefabImporter: +guid: a0ae584ed532105449545cd0c38404e5 +DefaultImporter: externalObjects: {} userData: assetBundleName: diff --git a/Assets/Generated/PaletteLayouts.meta b/Assets/Scripts/VoxelWorld.meta similarity index 77% rename from Assets/Generated/PaletteLayouts.meta rename to Assets/Scripts/VoxelWorld.meta index 9543012e..9eaa8b9b 100644 --- a/Assets/Generated/PaletteLayouts.meta +++ b/Assets/Scripts/VoxelWorld.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: f17bdc21ff1b47a4da52d9cb106b47f2 +guid: c58482c592be1ac41ad4ad194e9175c0 folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Assets/Scripts/VoxelWorld/Runtime.meta b/Assets/Scripts/VoxelWorld/Runtime.meta new file mode 100644 index 00000000..6f7934f7 --- /dev/null +++ b/Assets/Scripts/VoxelWorld/Runtime.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: a6692637cf5eb1b41a9d619e7557b2f0 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/VoxelWorld/Runtime/VoxelWorld.Runtime.asmdef b/Assets/Scripts/VoxelWorld/Runtime/VoxelWorld.Runtime.asmdef new file mode 100644 index 00000000..6e69c3c6 --- /dev/null +++ b/Assets/Scripts/VoxelWorld/Runtime/VoxelWorld.Runtime.asmdef @@ -0,0 +1,16 @@ +{ + "name": "VoxelWorld.Runtime", + "rootNamespace": "InfiniteWorld.VoxelWorld", + "references": [ + "UniTask" + ], + "includePlatforms": [], + "excludePlatforms": [], + "allowUnsafeCode": false, + "overrideReferences": false, + "precompiledReferences": [], + "autoReferenced": true, + "defineConstraints": [], + "versionDefines": [], + "noEngineReferences": false +} diff --git a/Assets/Scripts/VoxelWorld/Runtime/VoxelWorld.Runtime.asmdef.meta b/Assets/Scripts/VoxelWorld/Runtime/VoxelWorld.Runtime.asmdef.meta new file mode 100644 index 00000000..26cc607d --- /dev/null +++ b/Assets/Scripts/VoxelWorld/Runtime/VoxelWorld.Runtime.asmdef.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: f0a085d6765d01448bb424934e24ed9c +AssemblyDefinitionImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/VoxelWorld/Runtime/VoxelWorldAtlas.cs b/Assets/Scripts/VoxelWorld/Runtime/VoxelWorldAtlas.cs new file mode 100644 index 00000000..17bdbcae --- /dev/null +++ b/Assets/Scripts/VoxelWorld/Runtime/VoxelWorldAtlas.cs @@ -0,0 +1,340 @@ +using System; +using System.Collections.Generic; +using UnityEngine; + +namespace InfiniteWorld.VoxelWorld +{ + public enum VoxelSurfaceType : byte + { + CliffTop, + CliffSide, + Dirt, + WalkableSurface + } + + [CreateAssetMenu(menuName = "Infinite World/Voxel Biome Profile", fileName = "VoxelBiomeProfile")] + public sealed class VoxelBiomeProfile : ScriptableObject + { + public Sprite cliffTopSprite; + public Sprite cliffSideSprite; + public Sprite dirtSprite; + public Sprite walkableSurfaceSprite; + + public Sprite GetSprite(VoxelSurfaceType surfaceType) + { + return surfaceType switch + { + VoxelSurfaceType.CliffTop => cliffTopSprite, + VoxelSurfaceType.CliffSide => cliffSideSprite, + VoxelSurfaceType.Dirt => dirtSprite, + VoxelSurfaceType.WalkableSurface => walkableSurfaceSprite, + _ => walkableSurfaceSprite + }; + } + + public bool HasAnyAssignedSprites() + { + return cliffTopSprite != null || cliffSideSprite != null || dirtSprite != null || walkableSurfaceSprite != null; + } + } + + internal sealed class VoxelWorldAtlas : IDisposable + { + private const int FallbackTileSize = 32; + private static readonly VoxelSurfaceType[] SurfaceOrder = + { + VoxelSurfaceType.CliffTop, + VoxelSurfaceType.CliffSide, + VoxelSurfaceType.Dirt, + VoxelSurfaceType.WalkableSurface + }; + + private readonly Dictionary> uvLookup; + + public VoxelWorldAtlas(Texture2D texture, Material material, Dictionary> uvRects) + { + Texture = texture; + Material = material; + uvLookup = uvRects; + } + + public Texture2D Texture { get; } + + public Material Material { get; } + + public int BiomeCount => uvLookup.Count; + + public Rect GetUvRect(int biomeIndex, VoxelSurfaceType surfaceType) + { + if (uvLookup.TryGetValue(biomeIndex, out Dictionary biomeRects) && biomeRects.TryGetValue(surfaceType, out Rect rect)) + { + return rect; + } + + return uvLookup[0][surfaceType]; + } + + public static VoxelWorldAtlas CreateRuntimeAtlas(IReadOnlyList biomeProfiles) + { + List sourceBiomes = new List(); + if (biomeProfiles != null) + { + for (int i = 0; i < biomeProfiles.Count; i++) + { + if (biomeProfiles[i] != null) + { + sourceBiomes.Add(biomeProfiles[i]); + } + } + } + + if (sourceBiomes.Count == 0) + { + sourceBiomes.Add(null); + } + + int tileSize = DetermineTileSize(sourceBiomes); + Texture2D texture = new Texture2D(tileSize * SurfaceOrder.Length, tileSize * sourceBiomes.Count, TextureFormat.RGBA32, false) + { + filterMode = FilterMode.Point, + wrapMode = TextureWrapMode.Clamp, + name = "VoxelWorld_RuntimeAtlas", + hideFlags = HideFlags.HideAndDontSave + }; + + Fill(texture, new Color(1f, 0f, 1f, 1f)); + + Dictionary> uvRects = new Dictionary>(sourceBiomes.Count); + for (int biomeIndex = 0; biomeIndex < sourceBiomes.Count; biomeIndex++) + { + Dictionary biomeRects = new Dictionary(SurfaceOrder.Length); + uvRects[biomeIndex] = biomeRects; + + for (int surfaceIndex = 0; surfaceIndex < SurfaceOrder.Length; surfaceIndex++) + { + VoxelSurfaceType surfaceType = SurfaceOrder[surfaceIndex]; + RectInt rect = new RectInt(surfaceIndex * tileSize, biomeIndex * tileSize, tileSize, tileSize); + DrawSurfaceTile(texture, rect, sourceBiomes[biomeIndex], surfaceType, tileSize); + biomeRects[surfaceType] = BuildUvRect(rect, texture.width, texture.height); + } + } + + texture.Apply(false, false); + + Shader shader = Shader.Find("Universal Render Pipeline/Unlit") ?? Shader.Find("Universal Render Pipeline/Lit") ?? Shader.Find("Standard"); + Material material = new Material(shader) + { + name = "VoxelWorld_RuntimeMaterial", + hideFlags = HideFlags.HideAndDontSave + }; + + if (material.HasProperty("_BaseMap")) + { + material.SetTexture("_BaseMap", texture); + } + + if (material.HasProperty("_MainTex")) + { + material.SetTexture("_MainTex", texture); + } + + if (material.HasProperty("_BaseColor")) + { + material.SetColor("_BaseColor", Color.white); + } + + if (material.HasProperty("_Color")) + { + material.SetColor("_Color", Color.white); + } + + return new VoxelWorldAtlas(texture, material, uvRects); + } + + public void Dispose() + { + if (Application.isPlaying) + { + UnityEngine.Object.Destroy(Texture); + UnityEngine.Object.Destroy(Material); + } + else + { + UnityEngine.Object.DestroyImmediate(Texture); + UnityEngine.Object.DestroyImmediate(Material); + } + } + + private static int DetermineTileSize(IReadOnlyList biomeProfiles) + { + int tileSize = FallbackTileSize; + for (int biomeIndex = 0; biomeIndex < biomeProfiles.Count; biomeIndex++) + { + VoxelBiomeProfile biome = biomeProfiles[biomeIndex]; + for (int surfaceIndex = 0; surfaceIndex < SurfaceOrder.Length; surfaceIndex++) + { + Sprite sprite = biome != null ? biome.GetSprite(SurfaceOrder[surfaceIndex]) : null; + if (sprite == null) + { + continue; + } + + Rect rect = sprite.textureRect; + tileSize = Mathf.Max(tileSize, Mathf.CeilToInt(Mathf.Max(rect.width, rect.height))); + } + } + + return Mathf.Max(FallbackTileSize, tileSize); + } + + private static Rect BuildUvRect(RectInt rect, int textureWidth, int textureHeight) + { + float paddingX = 0.5f / textureWidth; + float paddingY = 0.5f / textureHeight; + return new Rect( + rect.xMin / (float)textureWidth + paddingX, + rect.yMin / (float)textureHeight + paddingY, + rect.width / (float)textureWidth - paddingX * 2f, + rect.height / (float)textureHeight - paddingY * 2f); + } + + private static void DrawSurfaceTile(Texture2D atlas, RectInt targetRect, VoxelBiomeProfile biome, VoxelSurfaceType surfaceType, int tileSize) + { + Sprite sprite = biome != null ? biome.GetSprite(surfaceType) : null; + if (sprite != null && TryBlitSprite(atlas, targetRect, sprite)) + { + return; + } + + DrawFallbackSurface(atlas, targetRect, surfaceType); + } + + private static bool TryBlitSprite(Texture2D atlas, RectInt targetRect, Sprite sprite) + { + try + { + Texture2D source = sprite.texture; + Rect spriteRect = sprite.textureRect; + + for (int y = 0; y < targetRect.height; y++) + { + float sampleY = Mathf.Lerp(spriteRect.yMin, spriteRect.yMax - 1f, y / (float)Mathf.Max(1, targetRect.height - 1)); + int sourceY = Mathf.Clamp(Mathf.RoundToInt(sampleY), 0, source.height - 1); + + for (int x = 0; x < targetRect.width; x++) + { + float sampleX = Mathf.Lerp(spriteRect.xMin, spriteRect.xMax - 1f, x / (float)Mathf.Max(1, targetRect.width - 1)); + int sourceX = Mathf.Clamp(Mathf.RoundToInt(sampleX), 0, source.width - 1); + atlas.SetPixel(targetRect.x + x, targetRect.y + y, source.GetPixel(sourceX, sourceY)); + } + } + + return true; + } + catch (UnityException) + { + Debug.LogWarning($"Sprite '{sprite.name}' texture is not readable. Falling back to generated tile for voxel biome atlas."); + return false; + } + } + + private static void DrawFallbackSurface(Texture2D texture, RectInt rect, VoxelSurfaceType surfaceType) + { + Color baseColor; + Color accentColor; + switch (surfaceType) + { + case VoxelSurfaceType.CliffTop: + baseColor = new Color(0.40f, 0.72f, 0.28f, 1f); + accentColor = new Color(0.18f, 0.35f, 0.13f, 1f); + break; + case VoxelSurfaceType.CliffSide: + baseColor = new Color(0.47f, 0.34f, 0.22f, 1f); + accentColor = new Color(0.25f, 0.52f, 0.18f, 1f); + break; + case VoxelSurfaceType.Dirt: + baseColor = new Color(0.44f, 0.31f, 0.20f, 1f); + accentColor = new Color(0.31f, 0.20f, 0.12f, 1f); + break; + default: + baseColor = new Color(0.28f, 0.58f, 0.25f, 1f); + accentColor = new Color(0.18f, 0.40f, 0.16f, 1f); + break; + } + + FillRect(texture, rect, baseColor); + ApplyNoise(texture, rect, 0.06f, 101 + (int)surfaceType * 43); + + if (surfaceType == VoxelSurfaceType.CliffSide) + { + FillRect(texture, new RectInt(rect.x, rect.yMax - Mathf.Max(4, rect.height / 6), rect.width, Mathf.Max(4, rect.height / 6)), accentColor); + } + else if (surfaceType == VoxelSurfaceType.CliffTop) + { + FillRect(texture, new RectInt(rect.x, rect.yMax - Mathf.Max(4, rect.height / 5), rect.width, Mathf.Max(4, rect.height / 5)), accentColor); + } + else + { + for (int y = rect.y + 4; y < rect.yMax - 4; y += Mathf.Max(6, rect.height / 4)) + { + for (int x = rect.x + 4; x < rect.xMax - 4; x += Mathf.Max(6, rect.width / 4)) + { + DrawDisc(texture, x, y, 2, accentColor); + } + } + } + } + + private static void Fill(Texture2D texture, Color color) + { + Color[] pixels = new Color[texture.width * texture.height]; + for (int i = 0; i < pixels.Length; i++) + { + pixels[i] = color; + } + + texture.SetPixels(pixels); + } + + private static void FillRect(Texture2D texture, RectInt rect, Color color) + { + for (int y = rect.yMin; y < rect.yMax; y++) + { + for (int x = rect.xMin; x < rect.xMax; x++) + { + texture.SetPixel(x, y, color); + } + } + } + + private static void DrawDisc(Texture2D texture, int centerX, int centerY, int radius, Color color) + { + int sqrRadius = radius * radius; + for (int y = -radius; y <= radius; y++) + { + for (int x = -radius; x <= radius; x++) + { + if (x * x + y * y > sqrRadius) + { + continue; + } + + texture.SetPixel(centerX + x, centerY + y, color); + } + } + } + + private static void ApplyNoise(Texture2D texture, RectInt rect, float strength, int seed) + { + for (int y = rect.yMin; y < rect.yMax; y++) + { + for (int x = rect.xMin; x < rect.xMax; x++) + { + Color pixel = texture.GetPixel(x, y); + float noise = Mathf.PerlinNoise((x + seed) * 0.18f, (y - seed) * 0.18f) - 0.5f; + texture.SetPixel(x, y, pixel * (1f + noise * strength * 2f)); + } + } + } + } +} diff --git a/Assets/Scripts/VoxelWorld/Runtime/VoxelWorldAtlas.cs.meta b/Assets/Scripts/VoxelWorld/Runtime/VoxelWorldAtlas.cs.meta new file mode 100644 index 00000000..90d8a9f3 --- /dev/null +++ b/Assets/Scripts/VoxelWorld/Runtime/VoxelWorldAtlas.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 981858f28439459429fa291e1f6cb935 \ No newline at end of file diff --git a/Assets/Scripts/VoxelWorld/Runtime/VoxelWorldGenerator.cs b/Assets/Scripts/VoxelWorld/Runtime/VoxelWorldGenerator.cs new file mode 100644 index 00000000..7acae019 --- /dev/null +++ b/Assets/Scripts/VoxelWorld/Runtime/VoxelWorldGenerator.cs @@ -0,0 +1,958 @@ +using System; +using System.Collections.Generic; +using Cysharp.Threading.Tasks; +using UnityEngine; + +namespace InfiniteWorld.VoxelWorld +{ + public sealed class VoxelWorldGenerator : MonoBehaviour + { + [Header("Streaming")] + [SerializeField] private Transform streamTarget; + [SerializeField, Min(8)] private int chunkSize = 16; + [SerializeField, Min(1)] private int generationRadius = 3; + [SerializeField, Min(0)] private int blockingGenerationRadius = 0; + [SerializeField] private int seed = 12345; + [SerializeField, Min(1)] private int maxMountainHeight = 3; + + [Header("Shape Noise")] + [SerializeField] private float macroNoiseScale = 0.05f; + [SerializeField] private float detailNoiseScale = 0.12f; + [SerializeField] private float ridgeNoiseScale = 0.18f; + [SerializeField] private float wallThreshold = 0.6f; + [SerializeField] private float rockBias = 0.04f; + [SerializeField, Min(0)] private int smoothingPasses = 2; + + [Header("Global Passes")] + [SerializeField] private float passNoiseScale = 0.018f; + [SerializeField] private float passDetailScale = 0.041f; + [SerializeField] private float passThreshold = 0.22f; + [SerializeField] private float passFeather = 0.12f; + + [Header("Height")] + [SerializeField] private float heightNoiseScale = 0.08f; + [SerializeField] private float terraceNoiseScale = 0.17f; + [SerializeField] private float heightBias = 0.05f; + + [Header("Biomes")] + [SerializeField] private List biomeProfiles = new List(); + [SerializeField] private float biomeNoiseScale = 0.02f; + [SerializeField, Min(1f)] private float biomeSize = 48f; + + [Header("Runtime")] + [SerializeField, Min(1)] private int maxAsyncChunkJobs = 2; + [SerializeField, Min(1)] private int maxChunkBuildsPerFrame = 1; + + private readonly Dictionary chunks = new Dictionary(); + private readonly Queue completedBuilds = new Queue(); + private readonly object generationLock = new object(); + + private Transform chunkRoot; + private Vector2Int lastGeneratedCenter = new Vector2Int(int.MinValue, int.MinValue); + private int activeGenerationJobs; + private VoxelWorldAtlas atlas; + private int atlasBiomeCount; + + private void Awake() + { + EnsureRuntimeData(); + EnsureChunkRoot(); + TryResolveStreamTarget(); + } + + private void Update() + { + EnsureRuntimeData(); + EnsureChunkRoot(); + if (!TryResolveStreamTarget()) + { + return; + } + + Vector2Int centerChunk = WorldToChunk(streamTarget.position); + if (centerChunk != lastGeneratedCenter) + { + lastGeneratedCenter = centerChunk; + UnloadDistantChunks(centerChunk); + } + + DrainCompletedBuilds(maxChunkBuildsPerFrame); + ScheduleChunkGeneration(centerChunk); + EnsureBlockingChunksLoaded(centerChunk); + } + + private void OnDisable() + { + CleanupChunks(); + atlas?.Dispose(); + atlas = null; + } + + private void EnsureRuntimeData() + { + maxMountainHeight = Mathf.Max(1, maxMountainHeight); + chunkSize = Mathf.Max(8, chunkSize); + int configuredBiomeCount = CountConfiguredBiomes(); + + if (atlas != null && atlasBiomeCount == configuredBiomeCount) + { + return; + } + + atlas?.Dispose(); + atlas = VoxelWorldAtlas.CreateRuntimeAtlas(biomeProfiles); + atlasBiomeCount = atlas.BiomeCount; + } + + private void EnsureChunkRoot() + { + if (chunkRoot != null) + { + return; + } + + Transform existing = transform.Find("VoxelChunks"); + if (existing != null) + { + chunkRoot = existing; + return; + } + + GameObject root = new GameObject("VoxelChunks"); + root.transform.SetParent(transform, false); + chunkRoot = root.transform; + } + + private bool TryResolveStreamTarget() + { + if (streamTarget != null) + { + return true; + } + + Camera mainCamera = Camera.main; + if (mainCamera == null) + { + return false; + } + + streamTarget = mainCamera.transform; + return true; + } + + private void ScheduleChunkGeneration(Vector2Int centerChunk) + { + List coords = GetCoordsByPriority(centerChunk, generationRadius); + for (int i = 0; i < coords.Count; i++) + { + Vector2Int coord = coords[i]; + ChunkRuntime runtime = GetOrCreateChunkRuntime(coord); + if (runtime.IsRendered || runtime.HasData || runtime.State == ChunkState.Generating) + { + continue; + } + + if (IsWithinRadius(coord, centerChunk, blockingGenerationRadius)) + { + continue; + } + + if (!TryReserveGenerationSlot()) + { + break; + } + + runtime.State = ChunkState.Generating; + runtime.Version++; + GenerateChunkDataAsync(coord, runtime.Version).Forget(); + } + } + + private void EnsureBlockingChunksLoaded(Vector2Int centerChunk) + { + List requiredCoords = GetCoordsByPriority(centerChunk, blockingGenerationRadius); + for (int i = 0; i < requiredCoords.Count; i++) + { + Vector2Int coord = requiredCoords[i]; + ChunkRuntime runtime = GetOrCreateChunkRuntime(coord); + if (runtime.IsRendered) + { + continue; + } + + if (runtime.State == ChunkState.Generating) + { + continue; + } + + runtime.Version++; + runtime.State = ChunkState.SyncBuilding; + ApplyBuildResult(GenerateChunkData(coord, runtime.Version)); + RenderChunk(coord); + RefreshNeighborBorders(coord); + } + } + + private void UnloadDistantChunks(Vector2Int centerChunk) + { + List coordsToRemove = new List(); + foreach (KeyValuePair pair in chunks) + { + if (IsWithinRadius(pair.Key, centerChunk, generationRadius)) + { + continue; + } + + coordsToRemove.Add(pair.Key); + } + + for (int i = 0; i < coordsToRemove.Count; i++) + { + Vector2Int coord = coordsToRemove[i]; + if (!chunks.TryGetValue(coord, out ChunkRuntime runtime)) + { + continue; + } + + chunks.Remove(coord); + runtime.Dispose(); + RefreshNeighborBorders(coord); + } + } + + private ChunkBuildResult GenerateChunkData(Vector2Int coord, int version) + { + int margin = Mathf.Max(2, smoothingPasses + 1); + int sampleSize = chunkSize + margin * 2; + bool[,] sampled = new bool[sampleSize, sampleSize]; + + for (int z = 0; z < sampleSize; z++) + { + for (int x = 0; x < sampleSize; x++) + { + int localX = x - margin; + int localZ = z - margin; + Vector2Int worldCell = ChunkToWorldCell(coord, localX, localZ); + sampled[x, z] = SampleRock(worldCell); + } + } + + for (int pass = 0; pass < smoothingPasses; pass++) + { + sampled = SmoothSampledMask(sampled); + } + + int[] heights = new int[chunkSize * chunkSize]; + byte[] biomeIndices = new byte[chunkSize * chunkSize]; + for (int z = 0; z < chunkSize; z++) + { + for (int x = 0; x < chunkSize; x++) + { + Vector2Int worldCell = ChunkToWorldCell(coord, x, z); + biomeIndices[z * chunkSize + x] = SampleBiomeIndex(worldCell); + bool hasMountain = sampled[x + margin, z + margin]; + if (!hasMountain) + { + continue; + } + + heights[z * chunkSize + x] = SampleHeight(worldCell); + } + } + + return new ChunkBuildResult(coord, heights, biomeIndices, version); + } + + private bool[,] SmoothSampledMask(bool[,] source) + { + int width = source.GetLength(0); + int height = source.GetLength(1); + bool[,] result = new bool[width, height]; + + for (int z = 0; z < height; z++) + { + for (int x = 0; x < width; x++) + { + int solidNeighbors = CountSampledNeighbors(source, x, z); + if (solidNeighbors >= 5) + { + result[x, z] = true; + } + else if (solidNeighbors <= 2) + { + result[x, z] = false; + } + else + { + result[x, z] = source[x, z]; + } + } + } + + return result; + } + + private static int CountSampledNeighbors(bool[,] sampled, int x, int z) + { + int width = sampled.GetLength(0); + int height = sampled.GetLength(1); + int count = 0; + + for (int oz = -1; oz <= 1; oz++) + { + for (int ox = -1; ox <= 1; ox++) + { + if (ox == 0 && oz == 0) + { + continue; + } + + int nx = x + ox; + int nz = z + oz; + if (nx < 0 || nz < 0 || nx >= width || nz >= height) + { + count++; + continue; + } + + if (sampled[nx, nz]) + { + count++; + } + } + } + + return count; + } + + private bool SampleRock(Vector2Int worldCell) + { + float macro = Mathf.PerlinNoise((worldCell.x + seed * 0.13f) * macroNoiseScale, (worldCell.y - seed * 0.17f) * macroNoiseScale); + float detail = Mathf.PerlinNoise((worldCell.x - seed * 0.23f) * detailNoiseScale, (worldCell.y + seed * 0.19f) * detailNoiseScale); + float ridge = 1f - Mathf.Abs(Mathf.PerlinNoise((worldCell.x + seed * 0.31f) * ridgeNoiseScale, (worldCell.y + seed * 0.29f) * ridgeNoiseScale) * 2f - 1f); + + float rockValue = macro * 0.62f + detail * 0.18f + ridge * 0.20f + rockBias; + if (IsInsideGlobalPass(worldCell)) + { + rockValue -= 0.45f; + } + + return rockValue >= wallThreshold; + } + + private bool IsInsideGlobalPass(Vector2Int worldCell) + { + float primary = Mathf.PerlinNoise((worldCell.x + seed * 0.41f) * passNoiseScale, (worldCell.y - seed * 0.43f) * passNoiseScale); + float detail = Mathf.PerlinNoise((worldCell.x - seed * 0.17f) * passDetailScale, (worldCell.y + seed * 0.23f) * passDetailScale); + float ridged = Mathf.Abs(primary * 2f - 1f); + float warped = Mathf.Lerp(ridged, Mathf.Abs(detail * 2f - 1f), 0.35f); + return warped <= passThreshold + passFeather * detail; + } + + private int SampleHeight(Vector2Int worldCell) + { + float macro = Mathf.PerlinNoise((worldCell.x - seed * 0.47f) * heightNoiseScale, (worldCell.y + seed * 0.37f) * heightNoiseScale); + float terrace = Mathf.PerlinNoise((worldCell.x + seed * 0.67f) * terraceNoiseScale, (worldCell.y - seed * 0.59f) * terraceNoiseScale); + float ridge = 1f - Mathf.Abs(Mathf.PerlinNoise((worldCell.x + seed * 0.71f) * ridgeNoiseScale, (worldCell.y - seed * 0.73f) * ridgeNoiseScale) * 2f - 1f); + float heightValue = macro * 0.55f + terrace * 0.2f + ridge * 0.25f + heightBias; + int height = 1 + Mathf.FloorToInt(Mathf.Clamp01(heightValue) * maxMountainHeight); + return Mathf.Clamp(height, 1, maxMountainHeight); + } + + private byte SampleBiomeIndex(Vector2Int worldCell) + { + int biomeCount = Mathf.Max(1, atlasBiomeCount > 0 ? atlasBiomeCount : CountConfiguredBiomes()); + if (biomeCount <= 1) + { + return 0; + } + + float effectiveScale = biomeNoiseScale / Mathf.Max(1f, biomeSize); + float noise = Mathf.PerlinNoise((worldCell.x + seed * 0.83f) * effectiveScale, (worldCell.y - seed * 0.79f) * effectiveScale); + int biomeIndex = Mathf.FloorToInt(Mathf.Clamp01(noise) * biomeCount); + return (byte)Mathf.Clamp(biomeIndex, 0, biomeCount - 1); + } + + private void RenderChunk(Vector2Int coord) + { + if (!chunks.TryGetValue(coord, out ChunkRuntime runtime) || !runtime.HasData || atlas == null) + { + return; + } + + runtime.EnsureCreated(coord, chunkRoot, chunkSize, atlas.Material); + ChunkMeshBuild meshBuild = BuildChunkMesh(coord, runtime.Heights, runtime.BiomeIndices); + runtime.ApplyMeshes(meshBuild, chunkSize); + runtime.State = ChunkState.Rendered; + } + + private ChunkMeshBuild BuildChunkMesh(Vector2Int coord, int[] heights, byte[] biomeIndices) + { + MeshBuffers renderBuffers = new MeshBuffers(); + MeshBuffers colliderBuffers = new MeshBuffers(); + + BuildGroundSurface(heights, biomeIndices, renderBuffers); + BuildMountainTops(coord, heights, biomeIndices, renderBuffers, colliderBuffers); + BuildMountainSides(coord, heights, biomeIndices, renderBuffers, colliderBuffers); + + return new ChunkMeshBuild(renderBuffers.ToMesh($"Render_{coord.x}_{coord.y}"), colliderBuffers.ToMesh($"Collider_{coord.x}_{coord.y}")); + } + + private void BuildGroundSurface(int[] heights, byte[] biomeIndices, MeshBuffers renderBuffers) + { + for (int z = 0; z < chunkSize; z++) + { + for (int x = 0; x < chunkSize; x++) + { + if (heights[z * chunkSize + x] > 0) + { + continue; + } + + int index = z * chunkSize + x; + AddTopQuad(renderBuffers, x, z, 1f, 1f, 0f, atlas.GetUvRect(biomeIndices[index], VoxelSurfaceType.WalkableSurface)); + } + } + } + + private void BuildMountainTops(Vector2Int coord, int[] heights, byte[] biomeIndices, MeshBuffers renderBuffers, MeshBuffers colliderBuffers) + { + for (int z = 0; z < chunkSize; z++) + { + for (int x = 0; x < chunkSize; x++) + { + int height = heights[z * chunkSize + x]; + if (height <= 0) + { + continue; + } + + int index = z * chunkSize + x; + VoxelSurfaceType surfaceType = IsCliffTop(ChunkToWorldCell(coord, x, z), height) ? VoxelSurfaceType.CliffTop : VoxelSurfaceType.WalkableSurface; + Rect uvRect = atlas.GetUvRect(biomeIndices[index], surfaceType); + AddTopQuad(renderBuffers, x, z, 1f, 1f, height, uvRect); + AddTopQuad(colliderBuffers, x, z, 1f, 1f, height, Rect.zero, false); + } + } + } + + private void BuildMountainSides(Vector2Int coord, int[] heights, byte[] biomeIndices, MeshBuffers renderBuffers, MeshBuffers colliderBuffers) + { + for (int z = 0; z < chunkSize; z++) + { + for (int x = 0; x < chunkSize; x++) + { + int current = heights[z * chunkSize + x]; + if (current <= 0) + { + continue; + } + + int worldX = coord.x * chunkSize + x; + int worldZ = coord.y * chunkSize + z; + byte biomeIndex = biomeIndices[z * chunkSize + x]; + + AddNorthSouthFace(renderBuffers, colliderBuffers, x, z, current, GetHeightAtWorldCell(new Vector2Int(worldX, worldZ + 1)), biomeIndex, true); + AddNorthSouthFace(renderBuffers, colliderBuffers, x, z, current, GetHeightAtWorldCell(new Vector2Int(worldX, worldZ - 1)), biomeIndex, false); + AddEastWestFace(renderBuffers, colliderBuffers, x, z, current, GetHeightAtWorldCell(new Vector2Int(worldX + 1, worldZ)), biomeIndex, true); + AddEastWestFace(renderBuffers, colliderBuffers, x, z, current, GetHeightAtWorldCell(new Vector2Int(worldX - 1, worldZ)), biomeIndex, false); + } + } + } + + private void AddNorthSouthFace(MeshBuffers renderBuffers, MeshBuffers colliderBuffers, int x, int z, int current, int neighbor, byte biomeIndex, bool north) + { + if (current <= neighbor) + { + return; + } + + int bottom = Mathf.Min(current, neighbor); + float faceZ = north ? z + 1f : z; + + for (int y = bottom; y < current; y++) + { + VoxelSurfaceType surfaceType = y == current - 1 ? VoxelSurfaceType.CliffSide : VoxelSurfaceType.Dirt; + Rect uvRect = atlas.GetUvRect(biomeIndex, surfaceType); + Vector3 bl = new Vector3(x, y, faceZ); + Vector3 br = new Vector3(x + 1f, y, faceZ); + Vector3 tr = new Vector3(x + 1f, y + 1f, faceZ); + Vector3 tl = new Vector3(x, y + 1f, faceZ); + + if (north) + { + AddVerticalQuad(renderBuffers, bl, br, tr, tl, uvRect, 1f, 1f); + AddVerticalQuad(colliderBuffers, bl, br, tr, tl, Rect.zero, 1f, 1f, false); + } + else + { + AddVerticalQuad(renderBuffers, br, bl, tl, tr, uvRect, 1f, 1f); + AddVerticalQuad(colliderBuffers, br, bl, tl, tr, Rect.zero, 1f, 1f, false); + } + } + } + + private void AddEastWestFace(MeshBuffers renderBuffers, MeshBuffers colliderBuffers, int x, int z, int current, int neighbor, byte biomeIndex, bool east) + { + if (current <= neighbor) + { + return; + } + + int bottom = Mathf.Min(current, neighbor); + float faceX = east ? x + 1f : x; + + for (int y = bottom; y < current; y++) + { + VoxelSurfaceType surfaceType = y == current - 1 ? VoxelSurfaceType.CliffSide : VoxelSurfaceType.Dirt; + Rect uvRect = atlas.GetUvRect(biomeIndex, surfaceType); + Vector3 bl = new Vector3(faceX, y, z); + Vector3 br = new Vector3(faceX, y, z + 1f); + Vector3 tr = new Vector3(faceX, y + 1f, z + 1f); + Vector3 tl = new Vector3(faceX, y + 1f, z); + + if (east) + { + AddVerticalQuad(renderBuffers, br, bl, tl, tr, uvRect, 1f, 1f); + AddVerticalQuad(colliderBuffers, br, bl, tl, tr, Rect.zero, 1f, 1f, false); + } + else + { + AddVerticalQuad(renderBuffers, bl, br, tr, tl, uvRect, 1f, 1f); + AddVerticalQuad(colliderBuffers, bl, br, tr, tl, Rect.zero, 1f, 1f, false); + } + } + } + + private void AddTopQuad(MeshBuffers buffers, float x, float z, float width, float depth, float height, Rect uvRect, bool withUv = true) + { + int baseIndex = buffers.Vertices.Count; + buffers.Vertices.Add(new Vector3(x, height, z)); + buffers.Vertices.Add(new Vector3(x + width, height, z)); + buffers.Vertices.Add(new Vector3(x + width, height, z + depth)); + buffers.Vertices.Add(new Vector3(x, height, z + depth)); + + if (withUv) + { + buffers.Uvs.Add(new Vector2(uvRect.xMin, uvRect.yMin)); + buffers.Uvs.Add(new Vector2(uvRect.xMax, uvRect.yMin)); + buffers.Uvs.Add(new Vector2(uvRect.xMax, uvRect.yMax)); + buffers.Uvs.Add(new Vector2(uvRect.xMin, uvRect.yMax)); + } + + buffers.Triangles.Add(baseIndex); + buffers.Triangles.Add(baseIndex + 2); + buffers.Triangles.Add(baseIndex + 1); + buffers.Triangles.Add(baseIndex); + buffers.Triangles.Add(baseIndex + 3); + buffers.Triangles.Add(baseIndex + 2); + } + + private void AddVerticalQuad(MeshBuffers buffers, Vector3 bottomLeft, Vector3 bottomRight, Vector3 topRight, Vector3 topLeft, Rect uvRect, float width, float height, bool withUv = true) + { + int baseIndex = buffers.Vertices.Count; + buffers.Vertices.Add(bottomLeft); + buffers.Vertices.Add(bottomRight); + buffers.Vertices.Add(topRight); + buffers.Vertices.Add(topLeft); + + if (withUv) + { + buffers.Uvs.Add(new Vector2(uvRect.xMin, uvRect.yMin)); + buffers.Uvs.Add(new Vector2(uvRect.xMax, uvRect.yMin)); + buffers.Uvs.Add(new Vector2(uvRect.xMax, uvRect.yMax)); + buffers.Uvs.Add(new Vector2(uvRect.xMin, uvRect.yMax)); + } + + buffers.Triangles.Add(baseIndex); + buffers.Triangles.Add(baseIndex + 1); + buffers.Triangles.Add(baseIndex + 2); + buffers.Triangles.Add(baseIndex); + buffers.Triangles.Add(baseIndex + 2); + buffers.Triangles.Add(baseIndex + 3); + } + + private bool IsCliffTop(Vector2Int worldCell, int currentHeight) + { + return GetHeightAtWorldCell(worldCell + Vector2Int.up) < currentHeight || + GetHeightAtWorldCell(worldCell + Vector2Int.right) < currentHeight || + GetHeightAtWorldCell(worldCell + Vector2Int.down) < currentHeight || + GetHeightAtWorldCell(worldCell + Vector2Int.left) < currentHeight; + } + + private int GetHeightAtWorldCell(Vector2Int worldCell) + { + Vector2Int coord = new Vector2Int( + Mathf.FloorToInt(worldCell.x / (float)chunkSize), + Mathf.FloorToInt(worldCell.y / (float)chunkSize)); + + if (!chunks.TryGetValue(coord, out ChunkRuntime runtime) || !runtime.HasData) + { + return SampleRock(worldCell) ? SampleHeight(worldCell) : 0; + } + + int localX = worldCell.x - coord.x * chunkSize; + int localZ = worldCell.y - coord.y * chunkSize; + if (localX < 0 || localZ < 0 || localX >= chunkSize || localZ >= chunkSize) + { + return SampleRock(worldCell) ? SampleHeight(worldCell) : 0; + } + + return runtime.Heights[localZ * chunkSize + localX]; + } + + private Vector2Int WorldToChunk(Vector3 position) + { + return new Vector2Int( + Mathf.FloorToInt(position.x / chunkSize), + Mathf.FloorToInt(position.z / chunkSize)); + } + + private Vector2Int ChunkToWorldCell(Vector2Int coord, int localX, int localZ) + { + return new Vector2Int(coord.x * chunkSize + localX, coord.y * chunkSize + localZ); + } + + private async UniTaskVoid GenerateChunkDataAsync(Vector2Int coord, int version) + { + try + { + ChunkBuildResult result = await UniTask.RunOnThreadPool(() => GenerateChunkData(coord, version)); + lock (generationLock) + { + completedBuilds.Enqueue(result); + activeGenerationJobs = Mathf.Max(0, activeGenerationJobs - 1); + } + } + catch (Exception exception) + { + lock (generationLock) + { + activeGenerationJobs = Mathf.Max(0, activeGenerationJobs - 1); + } + + Debug.LogException(exception, this); + } + } + + private void DrainCompletedBuilds(int maxBuilds) + { + int builds = 0; + while (builds < maxBuilds) + { + ChunkBuildResult result; + lock (generationLock) + { + if (completedBuilds.Count == 0) + { + break; + } + + result = completedBuilds.Dequeue(); + } + + if (!ApplyBuildResult(result)) + { + continue; + } + + RenderChunk(result.Coord); + RefreshNeighborBorders(result.Coord); + builds++; + } + } + + private void RefreshNeighborBorders(Vector2Int coord) + { + TryRenderNeighbor(coord + Vector2Int.up); + TryRenderNeighbor(coord + Vector2Int.right); + TryRenderNeighbor(coord + Vector2Int.down); + TryRenderNeighbor(coord + Vector2Int.left); + } + + private void TryRenderNeighbor(Vector2Int coord) + { + if (!chunks.TryGetValue(coord, out ChunkRuntime runtime) || !runtime.HasData) + { + return; + } + + RenderChunk(coord); + } + + private bool ApplyBuildResult(ChunkBuildResult result) + { + if (!chunks.TryGetValue(result.Coord, out ChunkRuntime runtime)) + { + return false; + } + + if (runtime.Version != result.Version) + { + return false; + } + + runtime.Heights = result.Heights; + runtime.BiomeIndices = result.BiomeIndices; + if (!runtime.IsRendered) + { + runtime.State = ChunkState.ReadyToRender; + } + + return true; + } + + private bool TryReserveGenerationSlot() + { + lock (generationLock) + { + if (activeGenerationJobs >= maxAsyncChunkJobs) + { + return false; + } + + activeGenerationJobs++; + return true; + } + } + + private List GetCoordsByPriority(Vector2Int centerChunk, int radius) + { + List coords = new List((radius * 2 + 1) * (radius * 2 + 1)); + for (int z = -radius; z <= radius; z++) + { + for (int x = -radius; x <= radius; x++) + { + coords.Add(new Vector2Int(centerChunk.x + x, centerChunk.y + z)); + } + } + + coords.Sort((left, right) => CompareChunkPriority(centerChunk, left, right)); + return coords; + } + + private static int CompareChunkPriority(Vector2Int centerChunk, Vector2Int left, Vector2Int right) + { + int leftDx = Mathf.Abs(left.x - centerChunk.x); + int leftDz = Mathf.Abs(left.y - centerChunk.y); + int rightDx = Mathf.Abs(right.x - centerChunk.x); + int rightDz = Mathf.Abs(right.y - centerChunk.y); + + int leftChebyshev = Mathf.Max(leftDx, leftDz); + int rightChebyshev = Mathf.Max(rightDx, rightDz); + int chebyshevCompare = leftChebyshev.CompareTo(rightChebyshev); + if (chebyshevCompare != 0) + { + return chebyshevCompare; + } + + int leftDistance = leftDx * leftDx + leftDz * leftDz; + int rightDistance = rightDx * rightDx + rightDz * rightDz; + int distanceCompare = leftDistance.CompareTo(rightDistance); + if (distanceCompare != 0) + { + return distanceCompare; + } + + int zCompare = left.y.CompareTo(right.y); + return zCompare != 0 ? zCompare : left.x.CompareTo(right.x); + } + + private ChunkRuntime GetOrCreateChunkRuntime(Vector2Int coord) + { + if (!chunks.TryGetValue(coord, out ChunkRuntime runtime)) + { + runtime = new ChunkRuntime(); + chunks.Add(coord, runtime); + } + + return runtime; + } + + private static bool IsWithinRadius(Vector2Int coord, Vector2Int centerChunk, int radius) + { + int dx = Mathf.Abs(coord.x - centerChunk.x); + int dz = Mathf.Abs(coord.y - centerChunk.y); + return dx <= radius && dz <= radius; + } + + private void CleanupChunks() + { + foreach (KeyValuePair pair in chunks) + { + pair.Value.Dispose(); + } + + chunks.Clear(); + } + + private int CountConfiguredBiomes() + { + int count = 0; + for (int i = 0; i < biomeProfiles.Count; i++) + { + if (biomeProfiles[i] != null) + { + count++; + } + } + + return Mathf.Max(1, count); + } + + private readonly struct ChunkBuildResult + { + public ChunkBuildResult(Vector2Int coord, int[] heights, byte[] biomeIndices, int version) + { + Coord = coord; + Heights = heights; + BiomeIndices = biomeIndices; + Version = version; + } + + public Vector2Int Coord { get; } + public int[] Heights { get; } + public byte[] BiomeIndices { get; } + public int Version { get; } + } + + private readonly struct ChunkMeshBuild + { + public ChunkMeshBuild(Mesh renderMesh, Mesh colliderMesh) + { + RenderMesh = renderMesh; + ColliderMesh = colliderMesh; + } + + public Mesh RenderMesh { get; } + public Mesh ColliderMesh { get; } + } + + private sealed class MeshBuffers + { + public readonly List Vertices = new List(512); + public readonly List Uvs = new List(512); + public readonly List Triangles = new List(1024); + + public Mesh ToMesh(string meshName) + { + Mesh mesh = new Mesh { name = meshName }; + if (Vertices.Count == 0) + { + return mesh; + } + + mesh.indexFormat = Vertices.Count > 65535 ? UnityEngine.Rendering.IndexFormat.UInt32 : UnityEngine.Rendering.IndexFormat.UInt16; + mesh.SetVertices(Vertices); + if (Uvs.Count == Vertices.Count) + { + mesh.SetUVs(0, Uvs); + } + mesh.SetTriangles(Triangles, 0, true); + mesh.RecalculateNormals(); + mesh.RecalculateBounds(); + return mesh; + } + } + + private sealed class ChunkRuntime + { + public Transform Root; + public MeshFilter Filter; + public MeshRenderer Renderer; + public MeshCollider MountainCollider; + public BoxCollider GroundCollider; + public Mesh RenderMesh; + public Mesh ColliderMesh; + public int[] Heights; + public byte[] BiomeIndices; + public ChunkState State; + public int Version; + + public bool HasData => Heights != null && BiomeIndices != null; + public bool IsRendered => State == ChunkState.Rendered && Root != null; + + public void EnsureCreated(Vector2Int coord, Transform parent, int chunkSize, Material material) + { + if (Root == null) + { + GameObject chunkObject = new GameObject($"VoxelChunk_{coord.x}_{coord.y}"); + chunkObject.transform.SetParent(parent, false); + Root = chunkObject.transform; + Filter = chunkObject.AddComponent(); + Renderer = chunkObject.AddComponent(); + MountainCollider = chunkObject.AddComponent(); + GroundCollider = chunkObject.AddComponent(); + } + + Root.localPosition = new Vector3(coord.x * chunkSize, 0f, coord.y * chunkSize); + Renderer.sharedMaterial = material; + GroundCollider.size = new Vector3(chunkSize, 0.2f, chunkSize); + GroundCollider.center = new Vector3(chunkSize * 0.5f, -0.1f, chunkSize * 0.5f); + } + + public void ApplyMeshes(ChunkMeshBuild build, int chunkSize) + { + if (RenderMesh != null) + { + DestroyMesh(RenderMesh); + } + + if (ColliderMesh != null) + { + DestroyMesh(ColliderMesh); + } + + RenderMesh = build.RenderMesh; + ColliderMesh = build.ColliderMesh; + Filter.sharedMesh = RenderMesh; + MountainCollider.sharedMesh = null; + MountainCollider.sharedMesh = ColliderMesh != null && ColliderMesh.vertexCount > 0 ? ColliderMesh : null; + } + + public void Dispose() + { + if (Root != null) + { + if (Application.isPlaying) + { + UnityEngine.Object.Destroy(Root.gameObject); + } + else + { + UnityEngine.Object.DestroyImmediate(Root.gameObject); + } + } + + DestroyMesh(RenderMesh); + DestroyMesh(ColliderMesh); + } + + private static void DestroyMesh(Mesh mesh) + { + if (mesh == null) + { + return; + } + + if (Application.isPlaying) + { + UnityEngine.Object.Destroy(mesh); + } + else + { + UnityEngine.Object.DestroyImmediate(mesh); + } + } + } + + private enum ChunkState + { + None, + Generating, + SyncBuilding, + ReadyToRender, + Rendered + } + } +} diff --git a/Assets/Scripts/VoxelWorld/Runtime/VoxelWorldGenerator.cs.meta b/Assets/Scripts/VoxelWorld/Runtime/VoxelWorldGenerator.cs.meta new file mode 100644 index 00000000..d6830846 --- /dev/null +++ b/Assets/Scripts/VoxelWorld/Runtime/VoxelWorldGenerator.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 62cd563780165844caddc098f92ff23f \ No newline at end of file diff --git a/Assets/Sprites.meta b/Assets/Sprites.meta new file mode 100644 index 00000000..de0b599b --- /dev/null +++ b/Assets/Sprites.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: ec064c329a47f8a4d8acfaebb92ff1c4 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Sprites/Pack1.meta b/Assets/Sprites/Pack1.meta new file mode 100644 index 00000000..b827e17a --- /dev/null +++ b/Assets/Sprites/Pack1.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 5071842e400e8c045b3a96d3987e8bc5 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Sprites/Pack1/light_gray_concrete.png b/Assets/Sprites/Pack1/light_gray_concrete.png new file mode 100644 index 00000000..6eba83d3 --- /dev/null +++ b/Assets/Sprites/Pack1/light_gray_concrete.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aee8b084af858dc20b335920b5a131da98752129d5fd5ab98a21b23df84a2852 +size 3066 diff --git a/Assets/Sprites/Pack1/light_gray_concrete.png.meta b/Assets/Sprites/Pack1/light_gray_concrete.png.meta new file mode 100644 index 00000000..201f9b5d --- /dev/null +++ b/Assets/Sprites/Pack1/light_gray_concrete.png.meta @@ -0,0 +1,143 @@ +fileFormatVersion: 2 +guid: 5702a47030ece9f42b0b513238c05bf4 +TextureImporter: + internalIDToNameTable: + - first: + 213: 5613978133511580594 + second: light_gray_concrete_0 + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 1 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 2 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 16 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 4 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: + - serializedVersion: 2 + name: light_gray_concrete_0 + rect: + serializedVersion: 2 + x: 0 + y: 0 + width: 16 + height: 16 + alignment: 0 + pivot: {x: 0, y: 0} + border: {x: 0, y: 0, z: 0, w: 0} + customData: + outline: [] + physicsShape: [] + tessellationDetail: -1 + bones: [] + spriteID: 2bba4c84e5bd8ed40800000000000000 + internalID: 5613978133511580594 + vertices: [] + indices: + edges: [] + weights: [] + outline: [] + customData: + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spriteCustomMetadata: + entries: [] + nameFileIdTable: + light_gray_concrete_0: 5613978133511580594 + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Sprites/Pack1/smooth_stone_slab_side.png b/Assets/Sprites/Pack1/smooth_stone_slab_side.png new file mode 100644 index 00000000..b37e9f30 --- /dev/null +++ b/Assets/Sprites/Pack1/smooth_stone_slab_side.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:26873939d76aaf54f4b2cd4d65242596e6304bd2192c258544c0db0bda6b4ba1 +size 1499 diff --git a/Assets/Sprites/Pack1/smooth_stone_slab_side.png.meta b/Assets/Sprites/Pack1/smooth_stone_slab_side.png.meta new file mode 100644 index 00000000..9df3c6b4 --- /dev/null +++ b/Assets/Sprites/Pack1/smooth_stone_slab_side.png.meta @@ -0,0 +1,143 @@ +fileFormatVersion: 2 +guid: b44be66700acb8d4ba360bdeb7c0bf2f +TextureImporter: + internalIDToNameTable: + - first: + 213: 8591976868863569928 + second: smooth_stone_slab_side_0 + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 1 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 2 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 16 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 4 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: + - serializedVersion: 2 + name: smooth_stone_slab_side_0 + rect: + serializedVersion: 2 + x: 0 + y: 0 + width: 16 + height: 16 + alignment: 0 + pivot: {x: 0, y: 0} + border: {x: 0, y: 0, z: 0, w: 0} + customData: + outline: [] + physicsShape: [] + tessellationDetail: -1 + bones: [] + spriteID: 8007cf2a075dc3770800000000000000 + internalID: 8591976868863569928 + vertices: [] + indices: + edges: [] + weights: [] + outline: [] + customData: + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spriteCustomMetadata: + entries: [] + nameFileIdTable: + smooth_stone_slab_side_0: 8591976868863569928 + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Sprites/Pack1/stone.png b/Assets/Sprites/Pack1/stone.png new file mode 100644 index 00000000..fd719130 --- /dev/null +++ b/Assets/Sprites/Pack1/stone.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:230d90c6d1989b267f0e7a50a90836e11a23bd88028c9c604a0ce1b0faeae7c1 +size 1123 diff --git a/Assets/Sprites/Pack1/stone.png.meta b/Assets/Sprites/Pack1/stone.png.meta new file mode 100644 index 00000000..2223f540 --- /dev/null +++ b/Assets/Sprites/Pack1/stone.png.meta @@ -0,0 +1,143 @@ +fileFormatVersion: 2 +guid: d8a251553db3e5d43ac029f301167578 +TextureImporter: + internalIDToNameTable: + - first: + 213: 5725184139431673129 + second: stone_0 + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 1 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 2 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 16 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 4 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: + - serializedVersion: 2 + name: stone_0 + rect: + serializedVersion: 2 + x: 0 + y: 0 + width: 16 + height: 16 + alignment: 0 + pivot: {x: 0, y: 0} + border: {x: 0, y: 0, z: 0, w: 0} + customData: + outline: [] + physicsShape: [] + tessellationDetail: -1 + bones: [] + spriteID: 92d768834a0f37f40800000000000000 + internalID: 5725184139431673129 + vertices: [] + indices: + edges: [] + weights: [] + outline: [] + customData: + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spriteCustomMetadata: + entries: [] + nameFileIdTable: + stone_0: 5725184139431673129 + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Sprites/Pack1/stone_bricks.png b/Assets/Sprites/Pack1/stone_bricks.png new file mode 100644 index 00000000..55858996 --- /dev/null +++ b/Assets/Sprites/Pack1/stone_bricks.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4d1cccbf09704e794b7a0721516cf2cafdccbdc445d9527e3207ae664ded77b2 +size 1059 diff --git a/Assets/Sprites/Pack1/stone_bricks.png.meta b/Assets/Sprites/Pack1/stone_bricks.png.meta new file mode 100644 index 00000000..07a49cf3 --- /dev/null +++ b/Assets/Sprites/Pack1/stone_bricks.png.meta @@ -0,0 +1,143 @@ +fileFormatVersion: 2 +guid: 89b3d97a04bee1e4d85e5d28c13de1f8 +TextureImporter: + internalIDToNameTable: + - first: + 213: 4285751004304663802 + second: stone_bricks_0 + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 1 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 2 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 16 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 4 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: + - serializedVersion: 2 + name: stone_bricks_0 + rect: + serializedVersion: 2 + x: 0 + y: 0 + width: 16 + height: 16 + alignment: 0 + pivot: {x: 0, y: 0} + border: {x: 0, y: 0, z: 0, w: 0} + customData: + outline: [] + physicsShape: [] + tessellationDetail: -1 + bones: [] + spriteID: af46a5fd4db0a7b30800000000000000 + internalID: 4285751004304663802 + vertices: [] + indices: + edges: [] + weights: [] + outline: [] + customData: + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spriteCustomMetadata: + entries: [] + nameFileIdTable: + stone_bricks_0: 4285751004304663802 + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Sprites/Pack2.meta b/Assets/Sprites/Pack2.meta new file mode 100644 index 00000000..73a1dfa5 --- /dev/null +++ b/Assets/Sprites/Pack2.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: e75d318e2ac496f4392789c4f53b7959 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Sprites/Pack2/cut_sandstone_2.png b/Assets/Sprites/Pack2/cut_sandstone_2.png new file mode 100644 index 00000000..b690f9b6 --- /dev/null +++ b/Assets/Sprites/Pack2/cut_sandstone_2.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ba4346ef310603cd6325a795eb536c662fa380647a59948628d6502b1f807809 +size 2097 diff --git a/Assets/Sprites/Pack2/cut_sandstone_2.png.meta b/Assets/Sprites/Pack2/cut_sandstone_2.png.meta new file mode 100644 index 00000000..734e3a08 --- /dev/null +++ b/Assets/Sprites/Pack2/cut_sandstone_2.png.meta @@ -0,0 +1,143 @@ +fileFormatVersion: 2 +guid: f4c696ca947bbaf4ba5a27cc0f6a2cb8 +TextureImporter: + internalIDToNameTable: + - first: + 213: -5744119150125800539 + second: cut_sandstone_2_0 + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 1 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 2 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 16 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 4 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: + - serializedVersion: 2 + name: cut_sandstone_2_0 + rect: + serializedVersion: 2 + x: 0 + y: 0 + width: 16 + height: 16 + alignment: 0 + pivot: {x: 0, y: 0} + border: {x: 0, y: 0, z: 0, w: 0} + customData: + outline: [] + physicsShape: [] + tessellationDetail: -1 + bones: [] + spriteID: 5a3ab3d011ac840b0800000000000000 + internalID: -5744119150125800539 + vertices: [] + indices: + edges: [] + weights: [] + outline: [] + customData: + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spriteCustomMetadata: + entries: [] + nameFileIdTable: + cut_sandstone_2_0: -5744119150125800539 + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Sprites/Pack2/sand.png b/Assets/Sprites/Pack2/sand.png new file mode 100644 index 00000000..1a8dd427 --- /dev/null +++ b/Assets/Sprites/Pack2/sand.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2267f97130693fc53cca8691ac5a43d0e0d7688aca23cd7fe64e10c3078028de +size 218 diff --git a/Assets/Sprites/Pack2/sand.png.meta b/Assets/Sprites/Pack2/sand.png.meta new file mode 100644 index 00000000..51917e8a --- /dev/null +++ b/Assets/Sprites/Pack2/sand.png.meta @@ -0,0 +1,143 @@ +fileFormatVersion: 2 +guid: 5f3d8f393d5c64b489163ff940369b2d +TextureImporter: + internalIDToNameTable: + - first: + 213: 4360390788417139489 + second: sand_0 + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 1 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 2 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 16 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 4 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: + - serializedVersion: 2 + name: sand_0 + rect: + serializedVersion: 2 + x: 0 + y: 0 + width: 16 + height: 16 + alignment: 0 + pivot: {x: 0, y: 0} + border: {x: 0, y: 0, z: 0, w: 0} + customData: + outline: [] + physicsShape: [] + tessellationDetail: -1 + bones: [] + spriteID: 1233d79d158338c30800000000000000 + internalID: 4360390788417139489 + vertices: [] + indices: + edges: [] + weights: [] + outline: [] + customData: + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spriteCustomMetadata: + entries: [] + nameFileIdTable: + sand_0: 4360390788417139489 + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Sprites/Pack2/sandstone.png b/Assets/Sprites/Pack2/sandstone.png new file mode 100644 index 00000000..9e77a579 --- /dev/null +++ b/Assets/Sprites/Pack2/sandstone.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:14c37b38b1165fc04f84d184dbc6244cf2ea76690ea9a8d0cdb2ff171a0181e8 +size 245 diff --git a/Assets/Sprites/Pack2/sandstone.png.meta b/Assets/Sprites/Pack2/sandstone.png.meta new file mode 100644 index 00000000..b25cd413 --- /dev/null +++ b/Assets/Sprites/Pack2/sandstone.png.meta @@ -0,0 +1,143 @@ +fileFormatVersion: 2 +guid: 841a59b6af0505448b39ad06ddbc067f +TextureImporter: + internalIDToNameTable: + - first: + 213: -4783801984881171517 + second: sandstone_0 + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 1 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 2 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 16 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 4 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: + - serializedVersion: 2 + name: sandstone_0 + rect: + serializedVersion: 2 + x: 0 + y: 0 + width: 16 + height: 16 + alignment: 0 + pivot: {x: 0, y: 0} + border: {x: 0, y: 0, z: 0, w: 0} + customData: + outline: [] + physicsShape: [] + tessellationDetail: -1 + bones: [] + spriteID: 3c3695fb0758c9db0800000000000000 + internalID: -4783801984881171517 + vertices: [] + indices: + edges: [] + weights: [] + outline: [] + customData: + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spriteCustomMetadata: + entries: [] + nameFileIdTable: + sandstone_0: -4783801984881171517 + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Sprites/Pack2/sandstone_top.png b/Assets/Sprites/Pack2/sandstone_top.png new file mode 100644 index 00000000..735eee10 --- /dev/null +++ b/Assets/Sprites/Pack2/sandstone_top.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5d37d0fa6381f8042b1558ed8a0527d585b40ceefb7679e2c8304a3aff7866ab +size 181 diff --git a/Assets/Sprites/Pack2/sandstone_top.png.meta b/Assets/Sprites/Pack2/sandstone_top.png.meta new file mode 100644 index 00000000..473118b1 --- /dev/null +++ b/Assets/Sprites/Pack2/sandstone_top.png.meta @@ -0,0 +1,143 @@ +fileFormatVersion: 2 +guid: 48c8cb6b6e758e74e852e27073d0e263 +TextureImporter: + internalIDToNameTable: + - first: + 213: 3392429205621607710 + second: sandstone_top_0 + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 1 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 2 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 16 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 4 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: + - serializedVersion: 2 + name: sandstone_top_0 + rect: + serializedVersion: 2 + x: 0 + y: 0 + width: 16 + height: 16 + alignment: 0 + pivot: {x: 0, y: 0} + border: {x: 0, y: 0, z: 0, w: 0} + customData: + outline: [] + physicsShape: [] + tessellationDetail: -1 + bones: [] + spriteID: e1d8cbe7364541f20800000000000000 + internalID: 3392429205621607710 + vertices: [] + indices: + edges: [] + weights: [] + outline: [] + customData: + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spriteCustomMetadata: + entries: [] + nameFileIdTable: + sandstone_top_0: 3392429205621607710 + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Sprites/Pack3.meta b/Assets/Sprites/Pack3.meta new file mode 100644 index 00000000..b0b19520 --- /dev/null +++ b/Assets/Sprites/Pack3.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 6787e3778d2aa4c40b539eb550647a74 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Sprites/Pack3/dirt.png b/Assets/Sprites/Pack3/dirt.png new file mode 100644 index 00000000..043ea39c --- /dev/null +++ b/Assets/Sprites/Pack3/dirt.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e9a41f924da7724346913c5153b8c976587b5c91b2aa7291054a58952f5f016b +size 6335 diff --git a/Assets/Sprites/Pack3/dirt.png.meta b/Assets/Sprites/Pack3/dirt.png.meta new file mode 100644 index 00000000..586675d8 --- /dev/null +++ b/Assets/Sprites/Pack3/dirt.png.meta @@ -0,0 +1,143 @@ +fileFormatVersion: 2 +guid: e5bbac025bbdb444ab5b16d34a3f38de +TextureImporter: + internalIDToNameTable: + - first: + 213: 5634026908348037240 + second: dirt_0 + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 1 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 2 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 16 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 4 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: + - serializedVersion: 2 + name: dirt_0 + rect: + serializedVersion: 2 + x: 0 + y: 0 + width: 16 + height: 16 + alignment: 0 + pivot: {x: 0, y: 0} + border: {x: 0, y: 0, z: 0, w: 0} + customData: + outline: [] + physicsShape: [] + tessellationDetail: -1 + bones: [] + spriteID: 878b31f6f95103e40800000000000000 + internalID: 5634026908348037240 + vertices: [] + indices: + edges: [] + weights: [] + outline: [] + customData: + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spriteCustomMetadata: + entries: [] + nameFileIdTable: + dirt_0: 5634026908348037240 + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Sprites/Pack3/dirt_path_side.png b/Assets/Sprites/Pack3/dirt_path_side.png new file mode 100644 index 00000000..e8963cfd --- /dev/null +++ b/Assets/Sprites/Pack3/dirt_path_side.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9801b06fcc581793d45e073518b20b714d62f303673866e1403973defcc68fb9 +size 4563 diff --git a/Assets/Sprites/Pack3/dirt_path_side.png.meta b/Assets/Sprites/Pack3/dirt_path_side.png.meta new file mode 100644 index 00000000..b07756f7 --- /dev/null +++ b/Assets/Sprites/Pack3/dirt_path_side.png.meta @@ -0,0 +1,143 @@ +fileFormatVersion: 2 +guid: 0891183432730d34c8a41445947b6e85 +TextureImporter: + internalIDToNameTable: + - first: + 213: -1499911416505331838 + second: dirt_path_side_0 + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 1 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 2 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 16 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 4 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: + - serializedVersion: 2 + name: dirt_path_side_0 + rect: + serializedVersion: 2 + x: 0 + y: 0 + width: 16 + height: 16 + alignment: 0 + pivot: {x: 0, y: 0} + border: {x: 0, y: 0, z: 0, w: 0} + customData: + outline: [] + physicsShape: [] + tessellationDetail: -1 + bones: [] + spriteID: 28f85a8738e3f2be0800000000000000 + internalID: -1499911416505331838 + vertices: [] + indices: + edges: [] + weights: [] + outline: [] + customData: + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spriteCustomMetadata: + entries: [] + nameFileIdTable: + dirt_path_side_0: -1499911416505331838 + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Sprites/Pack3/dirt_path_top_2.png b/Assets/Sprites/Pack3/dirt_path_top_2.png new file mode 100644 index 00000000..f5b88128 --- /dev/null +++ b/Assets/Sprites/Pack3/dirt_path_top_2.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:45bb36d5772b1a4f47902f34761e7677789d8e7c159073ddb56201c205693e15 +size 2572 diff --git a/Assets/Sprites/Pack3/dirt_path_top_2.png.meta b/Assets/Sprites/Pack3/dirt_path_top_2.png.meta new file mode 100644 index 00000000..8f8f0754 --- /dev/null +++ b/Assets/Sprites/Pack3/dirt_path_top_2.png.meta @@ -0,0 +1,143 @@ +fileFormatVersion: 2 +guid: 3d70b2fe747c8134c8a38cc0e089d139 +TextureImporter: + internalIDToNameTable: + - first: + 213: 904681902854485019 + second: dirt_path_top_2_0 + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 1 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 2 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 16 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 4 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: + - serializedVersion: 2 + name: dirt_path_top_2_0 + rect: + serializedVersion: 2 + x: 0 + y: 0 + width: 16 + height: 16 + alignment: 0 + pivot: {x: 0, y: 0} + border: {x: 0, y: 0, z: 0, w: 0} + customData: + outline: [] + physicsShape: [] + tessellationDetail: -1 + bones: [] + spriteID: b14bd5eb5631e8c00800000000000000 + internalID: 904681902854485019 + vertices: [] + indices: + edges: [] + weights: [] + outline: [] + customData: + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spriteCustomMetadata: + entries: [] + nameFileIdTable: + dirt_path_top_2_0: 904681902854485019 + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Sprites/Pack3/rooted_dirt.png b/Assets/Sprites/Pack3/rooted_dirt.png new file mode 100644 index 00000000..9562dd24 --- /dev/null +++ b/Assets/Sprites/Pack3/rooted_dirt.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:86ae8d1b44589623c61a149eedb52eb68cd7905bca461dec83d7e12b76f93c1b +size 2015 diff --git a/Assets/Sprites/Pack3/rooted_dirt.png.meta b/Assets/Sprites/Pack3/rooted_dirt.png.meta new file mode 100644 index 00000000..2679ad2d --- /dev/null +++ b/Assets/Sprites/Pack3/rooted_dirt.png.meta @@ -0,0 +1,143 @@ +fileFormatVersion: 2 +guid: 152cabc665e467d448f550899fcd56e8 +TextureImporter: + internalIDToNameTable: + - first: + 213: -1865540202983660084 + second: rooted_dirt_0 + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 1 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 2 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 16 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 4 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: + - serializedVersion: 2 + name: rooted_dirt_0 + rect: + serializedVersion: 2 + x: 0 + y: 0 + width: 16 + height: 16 + alignment: 0 + pivot: {x: 0, y: 0} + border: {x: 0, y: 0, z: 0, w: 0} + customData: + outline: [] + physicsShape: [] + tessellationDetail: -1 + bones: [] + spriteID: cc5e2f6c1154c16e0800000000000000 + internalID: -1865540202983660084 + vertices: [] + indices: + edges: [] + weights: [] + outline: [] + customData: + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spriteCustomMetadata: + entries: [] + nameFileIdTable: + rooted_dirt_0: -1865540202983660084 + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/vFavorites/vFavorites Data.asset b/Assets/vFavorites/vFavorites Data.asset new file mode 100644 index 00000000..bc1b79ff --- /dev/null +++ b/Assets/vFavorites/vFavorites Data.asset @@ -0,0 +1,16 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 066cf82f8f80d408c856e48fc8f1127b, type: 3} + m_Name: vFavorites Data + m_EditorClassIdentifier: VFavorites::VFavorites.VFavoritesData + pages: [] + rowScale: 1 diff --git a/Assets/vFavorites/vFavorites Data.asset.meta b/Assets/vFavorites/vFavorites Data.asset.meta new file mode 100644 index 00000000..8f4eaee7 --- /dev/null +++ b/Assets/vFavorites/vFavorites Data.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 4f7b515f7cb1e934c9b6172725645766 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: