├── .gitignore ├── .idea └── .idea.GPU Voxel Test │ └── .idea │ ├── .gitignore │ ├── encodings.xml │ └── vcs.xml ├── Assets ├── Compute.meta ├── Compute │ ├── feedback.comp │ ├── feedback.comp.meta │ ├── feedback.compute │ ├── feedback.compute.meta │ ├── generate_voxels.compute │ ├── generate_voxels.compute.meta │ ├── voxelizer.comp │ ├── voxelizer.comp.meta │ ├── voxelizer.compute │ ├── voxelizer.compute.meta │ ├── voxels.hlsl │ └── voxels.hlsl.meta ├── Materials.meta ├── Materials │ ├── Voxel Basic.mat │ ├── Voxel Basic.mat.meta │ ├── Voxel Procedural.mat │ └── Voxel Procedural.mat.meta ├── OutdoorsScene.unity ├── OutdoorsScene.unity.meta ├── Scripts.meta ├── Scripts │ ├── CameraController.cs │ ├── CameraController.cs.meta │ ├── Data.meta │ ├── Data │ │ ├── ChunkFeedback.cs │ │ ├── ChunkFeedback.cs.meta │ │ ├── SubChunkFeedback.cs │ │ ├── SubChunkFeedback.cs.meta │ │ ├── Vertex.cs │ │ └── Vertex.cs.meta │ ├── Native.meta │ ├── Native │ │ ├── GenerateRandomVoxelsJob.cs │ │ └── GenerateRandomVoxelsJob.cs.meta │ ├── VoxelChunkGenerator.cs │ └── VoxelChunkGenerator.cs.meta ├── Settings.meta ├── Settings │ ├── HDRP Balanced.asset │ ├── HDRP Balanced.asset.meta │ ├── HDRP High Fidelity.asset │ ├── HDRP High Fidelity.asset.meta │ ├── HDRP Performant.asset │ ├── HDRP Performant.asset.meta │ ├── HDRPDefaultResources.meta │ ├── HDRPDefaultResources │ │ ├── DefaultLookDevProfile.asset │ │ ├── DefaultLookDevProfile.asset.meta │ │ ├── DefaultSettingsVolumeProfile.asset │ │ ├── DefaultSettingsVolumeProfile.asset.meta │ │ ├── FoliageDiffusionProfile.asset │ │ ├── FoliageDiffusionProfile.asset.meta │ │ ├── HDRenderPipelineAsset.asset │ │ ├── HDRenderPipelineAsset.asset.meta │ │ ├── HDRenderPipelineGlobalSettings.asset │ │ ├── HDRenderPipelineGlobalSettings.asset.meta │ │ ├── SkinDiffusionProfile.asset │ │ └── SkinDiffusionProfile.asset.meta │ ├── SkyandFogSettingsProfile.asset │ └── SkyandFogSettingsProfile.asset.meta ├── Shaders.meta └── Shaders │ ├── DrawVoxelsGraph.shadergraph │ ├── DrawVoxelsGraph.shadergraph.meta │ ├── GetVertexData.hlsl │ ├── GetVertexData.hlsl.meta │ ├── ShadowPass.hlsl │ └── ShadowPass.hlsl.meta ├── LICENSE ├── Packages ├── manifest.json └── packages-lock.json ├── ProjectSettings ├── AudioManager.asset ├── ClusterInputManager.asset ├── DynamicsManager.asset ├── EditorBuildSettings.asset ├── EditorSettings.asset ├── GraphicsSettings.asset ├── HDRPProjectSettings.asset ├── InputManager.asset ├── MemorySettings.asset ├── NavMeshAreas.asset ├── PackageManagerSettings.asset ├── Packages │ └── com.unity.testtools.codecoverage │ │ └── Settings.json ├── Physics2DSettings.asset ├── PresetManager.asset ├── ProjectSettings.asset ├── ProjectVersion.txt ├── QualitySettings.asset ├── SceneTemplateSettings.json ├── ShaderGraphSettings.asset ├── TagManager.asset ├── TimeManager.asset ├── UnityConnectSettings.asset ├── VFXManager.asset ├── VersionControlSettings.asset ├── XRSettings.asset └── boot.config ├── README.md └── UserSettings ├── EditorUserSettings.asset ├── HDRPUserSettings.asset └── Search.settings /.gitignore: -------------------------------------------------------------------------------- 1 | # This .gitignore file should be placed at the root of your Unity project directory 2 | 3 | /[Ll]ibrary/ 4 | /[Tt]emp/ 5 | /[Oo]bj/ 6 | /[Bb]uild/ 7 | /[Bb]uild_IL2CPP/ 8 | /[Bb]uilds/ 9 | /[Ll]ogs/ 10 | /[Ss]creenshots/ 11 | /[Rr]ecordings/ 12 | 13 | # Never ignore Asset meta data 14 | !/[Aa]ssets/**/*.meta 15 | 16 | # Uncomment this line if you wish to ignore the asset store tools plugin 17 | # /[Aa]ssets/AssetStoreTools* 18 | 19 | # TextMesh Pro files 20 | [Aa]ssets/TextMesh*Pro/ 21 | 22 | # Visual Studio cache directory 23 | .vs/ 24 | 25 | # Gradle cache directory 26 | .gradle/ 27 | 28 | Build*.zip 29 | 30 | # Autogenerated VS/MD/Consulo solution and project files 31 | ExportedObj/ 32 | .consulo/ 33 | *.csproj 34 | *.unityproj 35 | *.sln 36 | *.suo 37 | *.tmp 38 | *.user 39 | *.userprefs 40 | *.pidb 41 | *.booproj 42 | *.svd 43 | *.pdb 44 | *.mdb 45 | *.opendb 46 | *.VC.db 47 | 48 | # Unity3D generated meta files 49 | *.pidb.meta 50 | *.pdb.meta 51 | *.mdb.meta 52 | 53 | # Unity3D generated file on crash reports 54 | sysinfo.txt 55 | 56 | # Builds 57 | *.apk 58 | *.unitypackage 59 | 60 | Tiled*Assets 61 | 62 | 63 | # Crashlytics generated file 64 | crashlytics-build.properties 65 | /.idea/.idea.Punch/.idea/statistic.xml 66 | /buildversion.txt 67 | 68 | # Common IntelliJ Platform excludes 69 | 70 | # User specific 71 | **/.idea/**/workspace.xml 72 | indexLayout.xml 73 | **/.idea/**/tasks.xml 74 | **/.idea/shelf/* 75 | **/.idea/dictionaries 76 | **/.idea/httpRequests/ 77 | 78 | # Sensitive or high-churn files 79 | **/.idea/**/dataSources/ 80 | **/.idea/**/dataSources.ids 81 | **/.idea/**/dataSources.xml 82 | **/.idea/**/dataSources.local.xml 83 | **/.idea/**/sqlDataSources.xml 84 | **/.idea/**/dynamic.xml 85 | 86 | # Rider 87 | # Rider auto-generates .iml files, and contentModel.xml 88 | **/.idea/**/*.iml 89 | **/.idea/**/contentModel.xml 90 | **/.idea/**/modules.xml 91 | /Assets/Deform/EditorResources/DeformSettings.asset 92 | Assets/Plugins/Sirenix/Demos/Sample - RPG Editor.unitypackage.meta 93 | Assets/Plugins/Sirenix/Demos/Editor Windows.unitypackage.meta 94 | Assets/Plugins/Sirenix/Demos/Custom Drawers.unitypackage.meta 95 | Assets/Plugins/Sirenix/Demos/Custom Attribute Processors.unitypackage.meta 96 | Assets/Imported/AmplifyImpostors/Plugins/EditorResources/RenderPipelinePackages/ImpostorsURP.unitypackage.meta 97 | Assets/Imported/AmplifyImpostors/Plugins/EditorResources/RenderPipelinePackages/ImpostorsLWRP.unitypackage.meta 98 | Assets/Imported/AmplifyImpostors/Plugins/EditorResources/RenderPipelinePackages/ImpostorsHDRP.unitypackage.meta 99 | Assets/Imported/AmplifyImpostors/Examples/SamplesURP.unitypackage.meta 100 | Assets/Imported/AmplifyImpostors/Examples/SamplesLWRP.unitypackage.meta 101 | Assets/Imported/AmplifyImpostors/Examples/SamplesHDRP.unitypackage.meta 102 | UserSettings/Layouts/CurrentMaximizeLayout.dwlt 103 | UserSettings/Layouts/default-2021.dwlt 104 | ProjectSettings/RiderScriptEditorPersistedState.asset 105 | -------------------------------------------------------------------------------- /.idea/.idea.GPU Voxel Test/.idea/.gitignore: -------------------------------------------------------------------------------- 1 | # Default ignored files 2 | /shelf/ 3 | /workspace.xml 4 | # Rider ignored files 5 | /contentModel.xml 6 | /.idea.GPU Voxel Test.iml 7 | /projectSettingsUpdater.xml 8 | /modules.xml 9 | # Editor-based HTTP Client requests 10 | /httpRequests/ 11 | # Datasource local storage ignored files 12 | /dataSources/ 13 | /dataSources.local.xml 14 | -------------------------------------------------------------------------------- /.idea/.idea.GPU Voxel Test/.idea/encodings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /.idea/.idea.GPU Voxel Test/.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Assets/Compute.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 97557a5d513709241b6862e91b4a83c1 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Compute/feedback.comp: -------------------------------------------------------------------------------- 1 | #version 460 core 2 | 3 | #define CHUNK_SIZE 80 4 | 5 | layout (local_size_x = 8, local_size_y = 8, local_size_z = 8) in; 6 | 7 | struct GeometryData { 8 | uint vertexCount; 9 | uint indexCount; 10 | }; 11 | 12 | struct ChunkFeedback { 13 | uint vertexOffset; 14 | uint vertexCount; 15 | uint indexOffset; 16 | uint indexCount; 17 | }; 18 | 19 | layout (std430, binding = 1) readonly buffer VoxelBuffer { 20 | int data[]; 21 | } uVoxels; 22 | 23 | layout (std430, binding = 6) buffer FeedbackBuffer { 24 | GeometryData data; 25 | } uFeedback; 26 | 27 | layout (std430, binding = 7) writeonly buffer ChunkFeedbackBuffer { 28 | ChunkFeedback data[]; 29 | } uChunkFeedback; 30 | 31 | shared uint sVertexCount; 32 | shared uint sIndexCount; 33 | 34 | uint to1D(in uvec3 pos) { 35 | return pos.x + CHUNK_SIZE * (pos.y + CHUNK_SIZE * pos.z); 36 | } 37 | 38 | int to1D(in ivec3 pos) { 39 | return pos.x + CHUNK_SIZE * (pos.y + CHUNK_SIZE * pos.z); 40 | } 41 | 42 | uvec3 to3D(in uint idx) { 43 | uint x = idx % CHUNK_SIZE; 44 | uint y = (idx / CHUNK_SIZE) % CHUNK_SIZE; 45 | uint z = idx / (CHUNK_SIZE * CHUNK_SIZE); 46 | 47 | // uint z = idx / (CHUNK_SIZE * CHUNK_SIZE); 48 | // idx -= (z * CHUNK_SIZE * CHUNK_SIZE); 49 | // uint y = idx / CHUNK_SIZE; 50 | // uint x = idx % CHUNK_SIZE; 51 | return uvec3(x, y, z); 52 | } 53 | 54 | bool hasVoxel(in ivec3 coord) { 55 | if (coord.x < 0 || coord.x >= CHUNK_SIZE || 56 | coord.y < 0 || coord.y >= CHUNK_SIZE || 57 | coord.z < 0 || coord.z >= CHUNK_SIZE) { 58 | return false; 59 | } 60 | 61 | int idx = to1D(coord); 62 | return uVoxels.data[idx] > 0; 63 | } 64 | 65 | void main() { 66 | if (gl_LocalInvocationIndex == 0) { 67 | sVertexCount = 0; 68 | sIndexCount = 0; 69 | } 70 | 71 | barrier(); 72 | 73 | uint globalVoxelIndex = to1D(gl_GlobalInvocationID); 74 | 75 | if (uVoxels.data[globalVoxelIndex] > 0) { 76 | ivec3 coord = ivec3(gl_GlobalInvocationID); 77 | 78 | uint vertexCount = 0; 79 | uint indexCount = 0; 80 | 81 | if (!hasVoxel(coord + ivec3(1, 0, 0))) { 82 | vertexCount += 4; 83 | indexCount += 6; 84 | } 85 | 86 | if (!hasVoxel(coord + ivec3(-1, 0, 0))) { 87 | vertexCount += 4; 88 | indexCount += 6; 89 | } 90 | 91 | if (!hasVoxel(coord + ivec3(0, 1, 0))) { 92 | vertexCount += 4; 93 | indexCount += 6; 94 | } 95 | 96 | if (!hasVoxel(coord + ivec3(0, -1, 0))) { 97 | vertexCount += 4; 98 | indexCount += 6; 99 | } 100 | 101 | if (!hasVoxel(coord + ivec3(0, 0, 1))) { 102 | vertexCount += 4; 103 | indexCount += 6; 104 | } 105 | 106 | if (!hasVoxel(coord + ivec3(0, 0, -1))) { 107 | vertexCount += 4; 108 | indexCount += 6; 109 | } 110 | 111 | atomicAdd(sVertexCount, vertexCount); 112 | atomicAdd(sIndexCount, indexCount); 113 | } 114 | 115 | barrier(); 116 | 117 | if (gl_LocalInvocationIndex == 0) { 118 | uint vertexOffset = atomicAdd(uFeedback.data.vertexCount, sVertexCount); 119 | uint indexOffset = atomicAdd(uFeedback.data.indexCount, sIndexCount); 120 | 121 | uint index = gl_WorkGroupID.x + 10 * (gl_WorkGroupID.y + 10 * gl_WorkGroupID.z); 122 | 123 | uChunkFeedback.data[index].vertexOffset = vertexOffset; 124 | uChunkFeedback.data[index].vertexCount = sVertexCount; 125 | uChunkFeedback.data[index].indexOffset = indexOffset; 126 | uChunkFeedback.data[index].indexCount = sIndexCount; 127 | } 128 | } 129 | -------------------------------------------------------------------------------- /Assets/Compute/feedback.comp.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: aaecea494d1a3ed4fb1e13c29abe2eef 3 | ComputeShaderImporter: 4 | externalObjects: {} 5 | preprocessorOverride: 0 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Compute/feedback.compute: -------------------------------------------------------------------------------- 1 | #pragma kernel CSMain 2 | #include "voxels.hlsl" 3 | 4 | RWStructuredBuffer uVoxels; 5 | RWStructuredBuffer uIndirectArgs; 6 | RWStructuredBuffer uFeedback; 7 | RWStructuredBuffer uChunkFeedback; 8 | 9 | groupshared uint sVertexCount; 10 | groupshared uint sIndexCount; 11 | 12 | bool hasVoxel(int3 coord) { 13 | if (coord.x < 0 || coord.x >= CHUNK_SIZE || 14 | coord.y < 0 || coord.y >= CHUNK_SIZE || 15 | coord.z < 0 || coord.z >= CHUNK_SIZE) { 16 | return false; 17 | } 18 | 19 | int idx = to1D(coord); 20 | return uVoxels[idx] > 0; 21 | } 22 | 23 | [numthreads(8, 8, 8)] 24 | void CSMain (uint3 dispatchID : SV_DispatchThreadID, uint3 groupID : SV_GroupID, uint3 groupThreadID : SV_GroupThreadID) 25 | { 26 | if (groupThreadID.x == 0 && groupThreadID.y == 0 && groupThreadID.z == 0) { 27 | sVertexCount = 0; 28 | sIndexCount = 0; 29 | } 30 | 31 | AllMemoryBarrierWithGroupSync(); 32 | 33 | uint globalVoxelIndex = to1D(dispatchID); 34 | 35 | if (uVoxels[globalVoxelIndex] > 0) { 36 | int3 coord = int3(dispatchID); 37 | 38 | uint vertexCount = 0; 39 | uint indexCount = 0; 40 | 41 | if (!hasVoxel(coord + int3(1, 0, 0))) { 42 | vertexCount += 4; 43 | indexCount += 6; 44 | } 45 | 46 | if (!hasVoxel(coord + int3(-1, 0, 0))) { 47 | vertexCount += 4; 48 | indexCount += 6; 49 | } 50 | 51 | if (!hasVoxel(coord + int3(0, 1, 0))) { 52 | vertexCount += 4; 53 | indexCount += 6; 54 | } 55 | 56 | if (!hasVoxel(coord + int3(0, -1, 0))) { 57 | vertexCount += 4; 58 | indexCount += 6; 59 | } 60 | 61 | if (!hasVoxel(coord + int3(0, 0, 1))) { 62 | vertexCount += 4; 63 | indexCount += 6; 64 | } 65 | 66 | if (!hasVoxel(coord + int3(0, 0, -1))) { 67 | vertexCount += 4; 68 | indexCount += 6; 69 | } 70 | 71 | InterlockedAdd(sVertexCount, vertexCount); 72 | InterlockedAdd(sIndexCount, indexCount); 73 | } 74 | 75 | AllMemoryBarrierWithGroupSync(); 76 | 77 | if (groupThreadID.x == 0 && groupThreadID.y == 0 && groupThreadID.z == 0) 78 | { 79 | uint vertexOffset = 0, indexOffset = 0; 80 | 81 | InterlockedAdd(uFeedback[0].vertexCount, sVertexCount, vertexOffset); 82 | InterlockedAdd(uFeedback[0].indexCount, sIndexCount, indexOffset); 83 | 84 | uint index = groupID.x + 10 * (groupID.y + 10 * groupID.z); 85 | 86 | uChunkFeedback[index].vertexOffset = vertexOffset; 87 | uChunkFeedback[index].vertexCount = sVertexCount; 88 | uChunkFeedback[index].indexOffset = indexOffset; 89 | uChunkFeedback[index].indexCount = sIndexCount; 90 | 91 | uIndirectArgs[0] = uFeedback[0].indexCount; 92 | } 93 | } -------------------------------------------------------------------------------- /Assets/Compute/feedback.compute.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: dcf5afbcdd664499ba15c19b51a26d36 3 | timeCreated: 1681064567 -------------------------------------------------------------------------------- /Assets/Compute/generate_voxels.compute: -------------------------------------------------------------------------------- 1 | #pragma kernel CSMain 2 | #include "voxels.hlsl" 3 | #include "Library\PackageCache\jp.keijiro.noiseshader@2.0.0/Shader/ClassicNoise3D.hlsl" 4 | 5 | RWStructuredBuffer uVoxels; 6 | 7 | float3 uPosition = float3(0, 0, 0); 8 | float uFrequency = 0.1f; 9 | float uAmplitude = 0.5f; 10 | 11 | [numthreads(8, 8, 8)] 12 | void CSMain (uint3 dispatchID : SV_DispatchThreadID) 13 | { 14 | const uint globalVoxelIndex = to1D(dispatchID); 15 | 16 | int3 coord = int3(dispatchID); 17 | float3 position = float3(coord) + uPosition; 18 | 19 | float noise = ClassicNoise(position * uFrequency) * uAmplitude; 20 | 21 | if (noise > 0) 22 | { 23 | uVoxels[globalVoxelIndex] = 1; 24 | } else 25 | { 26 | uVoxels[globalVoxelIndex] = 0; 27 | } 28 | } -------------------------------------------------------------------------------- /Assets/Compute/generate_voxels.compute.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7c81d6f263c142b0ab66023d5cb2aefa 3 | timeCreated: 1681424603 -------------------------------------------------------------------------------- /Assets/Compute/voxelizer.comp: -------------------------------------------------------------------------------- 1 | #version 460 core 2 | 3 | #define CHUNK_SIZE 80 4 | 5 | layout (local_size_x = 8, local_size_y = 8, local_size_z = 8) in; 6 | 7 | struct Vertex { 8 | float px, py, pz; 9 | float tx, ty; 10 | float nx, ny, nz; 11 | }; 12 | 13 | struct GeometryData { 14 | uint vertexCount; 15 | uint indexCount; 16 | }; 17 | 18 | struct ChunkFeedback { 19 | uint vertexOffset; 20 | uint vertexCount; 21 | uint indexOffset; 22 | uint indexCount; 23 | }; 24 | 25 | struct DrawCommandData { 26 | uint indexCount; 27 | uint instanceCount; 28 | uint firstIndex; 29 | int vertexOffset; 30 | uint firstInstance; 31 | }; 32 | 33 | layout (std430, binding = 1) readonly buffer VoxelBuffer { 34 | int data[]; 35 | } uVoxels; 36 | 37 | layout (std430, binding = 2) writeonly buffer VertexBuffer { 38 | Vertex data[]; 39 | } uVertices; 40 | 41 | layout (std430, binding = 3) writeonly buffer IndexBuffer { 42 | uint data[]; 43 | } uIndices; 44 | 45 | layout (std430, binding = 6) readonly buffer FeedbackBuffer { 46 | GeometryData data; 47 | } uFeedback; 48 | 49 | layout (std430, binding = 7) readonly buffer ChunkFeedbackBuffer { 50 | ChunkFeedback data[]; 51 | } uChunkFeedback; 52 | 53 | shared uint sVertexOffset; 54 | shared uint sVertexCount; 55 | shared uint sIndexOffset; 56 | shared uint sIndexCount; 57 | shared uint sChunkIndex; 58 | 59 | uint to1D(in uvec3 pos) { 60 | return pos.x + CHUNK_SIZE * (pos.y + CHUNK_SIZE * pos.z); 61 | } 62 | 63 | int to1D(in ivec3 pos) { 64 | return pos.x + CHUNK_SIZE * (pos.y + CHUNK_SIZE * pos.z); 65 | } 66 | 67 | uvec3 to3D(in uint idx) { 68 | uint x = idx % CHUNK_SIZE; 69 | uint y = (idx / CHUNK_SIZE) % CHUNK_SIZE; 70 | uint z = idx / (CHUNK_SIZE * CHUNK_SIZE); 71 | 72 | // uint z = idx / (CHUNK_SIZE * CHUNK_SIZE); 73 | // idx -= (z * CHUNK_SIZE * CHUNK_SIZE); 74 | // uint y = idx / CHUNK_SIZE; 75 | // uint x = idx % CHUNK_SIZE; 76 | return uvec3(x, y, z); 77 | } 78 | 79 | bool hasVoxel(in ivec3 coord) { 80 | if (coord.x < 0 || coord.x >= CHUNK_SIZE || 81 | coord.y < 0 || coord.y >= CHUNK_SIZE || 82 | coord.z < 0 || coord.z >= CHUNK_SIZE) { 83 | return false; 84 | } 85 | 86 | int idx = to1D(coord); 87 | return uVoxels.data[idx] > 0; 88 | } 89 | 90 | void setVertex(out Vertex vertex, in vec3 position, in vec2 texcoord, in vec3 normal) { 91 | vertex.px = position.x; vertex.py = position.y; vertex.pz = position.z; 92 | vertex.tx = texcoord.x; vertex.ty = texcoord.y; 93 | vertex.nx = normal.x; vertex.ny = normal.y; vertex.nz = normal.z; 94 | } 95 | 96 | void main() { 97 | if (gl_LocalInvocationIndex == 0) { 98 | // sChunkIndex = uChunkIndices.data[gl_WorkGroupID.x + 10 * (gl_WorkGroupID.y + 10 * gl_WorkGroupID.z)]; 99 | sChunkIndex = gl_WorkGroupID.x + 10 * (gl_WorkGroupID.y + 10 * gl_WorkGroupID.z); 100 | sVertexOffset = uChunkFeedback.data[sChunkIndex].vertexOffset; 101 | sIndexOffset = uChunkFeedback.data[sChunkIndex].indexOffset; 102 | sVertexCount = uChunkFeedback.data[sChunkIndex].vertexCount; 103 | sIndexCount = uChunkFeedback.data[sChunkIndex].indexCount; 104 | } 105 | 106 | barrier(); 107 | 108 | uint globalVoxelIndex = to1D(gl_GlobalInvocationID); 109 | 110 | if (uVoxels.data[globalVoxelIndex] > 0) { 111 | ivec3 coord = ivec3(gl_GlobalInvocationID); 112 | 113 | uint vertexCount = 0; 114 | uint indexCount = 0; 115 | 116 | vec3 position = vec3(coord); 117 | // +X 118 | if (!hasVoxel(coord + ivec3(1, 0, 0))) { 119 | uint vertexOffset = atomicAdd(sVertexOffset, 4); 120 | uint indexOffset = atomicAdd(sIndexOffset, 6); 121 | 122 | setVertex(uVertices.data[vertexOffset + 0], position + vec3(0.5, 0.5, 0.5), vec2(0.0, 0.0), vec3(1.0, 0.0, 0.0)); 123 | setVertex(uVertices.data[vertexOffset + 1], position + vec3(0.5, -0.5, 0.5), vec2(0.0, 1.0), vec3(1.0, 0.0, 0.0)); 124 | setVertex(uVertices.data[vertexOffset + 2], position + vec3(0.5, -0.5, -0.5), vec2(1.0, 1.0), vec3(1.0, 0.0, 0.0)); 125 | setVertex(uVertices.data[vertexOffset + 3], position + vec3(0.5, 0.5, -0.5), vec2(1.0, 0.0), vec3(1.0, 0.0, 0.0)); 126 | 127 | uIndices.data[indexOffset + 0] = vertexOffset; 128 | uIndices.data[indexOffset + 1] = vertexOffset + 1; 129 | uIndices.data[indexOffset + 2] = vertexOffset + 2; 130 | 131 | uIndices.data[indexOffset + 3] = vertexOffset + 2; 132 | uIndices.data[indexOffset + 4] = vertexOffset + 3; 133 | uIndices.data[indexOffset + 5] = vertexOffset; 134 | } 135 | 136 | // -X 137 | if (!hasVoxel(coord + ivec3(-1, 0, 0))) { 138 | uint vertexOffset = atomicAdd(sVertexOffset, 4); 139 | uint indexOffset = atomicAdd(sIndexOffset, 6); 140 | 141 | setVertex(uVertices.data[vertexOffset + 0], position + vec3(-0.5, 0.5, -0.5), vec2(0.0, 0.0), vec3(-1.0, 0.0, 0.0)); 142 | setVertex(uVertices.data[vertexOffset + 1], position + vec3(-0.5, -0.5, -0.5), vec2(0.0, 1.0), vec3(-1.0, 0.0, 0.0)); 143 | setVertex(uVertices.data[vertexOffset + 2], position + vec3(-0.5, -0.5, 0.5), vec2(1.0, 1.0), vec3(-1.0, 0.0, 0.0)); 144 | setVertex(uVertices.data[vertexOffset + 3], position + vec3(-0.5, 0.5, 0.5), vec2(1.0, 0.0), vec3(-1.0, 0.0, 0.0)); 145 | 146 | uIndices.data[indexOffset + 0] = vertexOffset; 147 | uIndices.data[indexOffset + 1] = vertexOffset + 1; 148 | uIndices.data[indexOffset + 2] = vertexOffset + 2; 149 | 150 | uIndices.data[indexOffset + 3] = vertexOffset + 2; 151 | uIndices.data[indexOffset + 4] = vertexOffset + 3; 152 | uIndices.data[indexOffset + 5] = vertexOffset; 153 | } 154 | 155 | // +Y 156 | if (!hasVoxel(coord + ivec3(0, 1, 0))) { 157 | uint vertexOffset = atomicAdd(sVertexOffset, 4); 158 | uint indexOffset = atomicAdd(sIndexOffset, 6); 159 | 160 | setVertex(uVertices.data[vertexOffset + 0], position + vec3(-0.5, 0.5, -0.5), vec2(0.0, 0.0), vec3(0.0, 1.0, 0.0)); 161 | setVertex(uVertices.data[vertexOffset + 1], position + vec3(-0.5, 0.5, 0.5), vec2(0.0, 1.0), vec3(0.0, 1.0, 0.0)); 162 | setVertex(uVertices.data[vertexOffset + 2], position + vec3(0.5, 0.5, 0.5), vec2(1.0, 1.0), vec3(0.0, 1.0, 0.0)); 163 | setVertex(uVertices.data[vertexOffset + 3], position + vec3(0.5, 0.5, -0.5), vec2(1.0, 0.0), vec3(0.0, 1.0, 0.0)); 164 | 165 | uIndices.data[indexOffset + 0] = vertexOffset; 166 | uIndices.data[indexOffset + 1] = vertexOffset + 1; 167 | uIndices.data[indexOffset + 2] = vertexOffset + 2; 168 | 169 | uIndices.data[indexOffset + 3] = vertexOffset + 2; 170 | uIndices.data[indexOffset + 4] = vertexOffset + 3; 171 | uIndices.data[indexOffset + 5] = vertexOffset; 172 | } 173 | 174 | // -Y 175 | if (!hasVoxel(coord + ivec3(0, -1, 0))) { 176 | uint vertexOffset = atomicAdd(sVertexOffset, 4); 177 | uint indexOffset = atomicAdd(sIndexOffset, 6); 178 | 179 | setVertex(uVertices.data[vertexOffset + 0], position + vec3(-0.5, -0.5, 0.5), vec2(0.0, 0.0), vec3(0.0, -1.0, 0.0)); 180 | setVertex(uVertices.data[vertexOffset + 1], position + vec3(-0.5, -0.5, -0.5), vec2(0.0, 1.0), vec3(0.0, -1.0, 0.0)); 181 | setVertex(uVertices.data[vertexOffset + 2], position + vec3(0.5, -0.5, -0.5), vec2(1.0, 1.0), vec3(0.0, -1.0, 0.0)); 182 | setVertex(uVertices.data[vertexOffset + 3], position + vec3(0.5, -0.5, 0.5), vec2(1.0, 0.0), vec3(0.0, -1.0, 0.0)); 183 | 184 | uIndices.data[indexOffset + 0] = vertexOffset; 185 | uIndices.data[indexOffset + 1] = vertexOffset + 1; 186 | uIndices.data[indexOffset + 2] = vertexOffset + 2; 187 | 188 | uIndices.data[indexOffset + 3] = vertexOffset + 2; 189 | uIndices.data[indexOffset + 4] = vertexOffset + 3; 190 | uIndices.data[indexOffset + 5] = vertexOffset; 191 | } 192 | 193 | // +Z 194 | if (!hasVoxel(coord + ivec3(0, 0, 1))) { 195 | uint vertexOffset = atomicAdd(sVertexOffset, 4); 196 | uint indexOffset = atomicAdd(sIndexOffset, 6); 197 | 198 | setVertex(uVertices.data[vertexOffset + 0], position + vec3(-0.5, 0.5, 0.5), vec2(0.0, 0.0), vec3(0.0, 0.0, 1.0)); 199 | setVertex(uVertices.data[vertexOffset + 1], position + vec3(-0.5, -0.5, 0.5), vec2(0.0, 1.0), vec3(0.0, 0.0, 1.0)); 200 | setVertex(uVertices.data[vertexOffset + 2], position + vec3(0.5, -0.5, 0.5), vec2(1.0, 1.0), vec3(0.0, 0.0, 1.0)); 201 | setVertex(uVertices.data[vertexOffset + 3], position + vec3(0.5, 0.5, 0.5), vec2(1.0, 0.0), vec3(0.0, 0.0, 1.0)); 202 | 203 | uIndices.data[indexOffset + 0] = vertexOffset; 204 | uIndices.data[indexOffset + 1] = vertexOffset + 1; 205 | uIndices.data[indexOffset + 2] = vertexOffset + 2; 206 | 207 | uIndices.data[indexOffset + 3] = vertexOffset + 2; 208 | uIndices.data[indexOffset + 4] = vertexOffset + 3; 209 | uIndices.data[indexOffset + 5] = vertexOffset; 210 | } 211 | 212 | // -Z 213 | if (!hasVoxel(coord + ivec3(0, 0, -1))) { 214 | uint vertexOffset = atomicAdd(sVertexOffset, 4); 215 | uint indexOffset = atomicAdd(sIndexOffset, 6); 216 | 217 | setVertex(uVertices.data[vertexOffset + 0], position + vec3(0.5, 0.5, -0.5), vec2(0.0, 0.0), vec3(0.0, 0.0, -1.0)); 218 | setVertex(uVertices.data[vertexOffset + 1], position + vec3(0.5, -0.5, -0.5), vec2(0.0, 1.0), vec3(0.0, 0.0, -1.0)); 219 | setVertex(uVertices.data[vertexOffset + 2], position + vec3(-0.5, -0.5, -0.5), vec2(1.0, 1.0), vec3(0.0, 0.0, -1.0)); 220 | setVertex(uVertices.data[vertexOffset + 3], position + vec3(-0.5, 0.5, -0.5), vec2(1.0, 0.0), vec3(0.0, 0.0, -1.0)); 221 | 222 | uIndices.data[indexOffset + 0] = vertexOffset; 223 | uIndices.data[indexOffset + 1] = vertexOffset + 1; 224 | uIndices.data[indexOffset + 2] = vertexOffset + 2; 225 | 226 | uIndices.data[indexOffset + 3] = vertexOffset + 2; 227 | uIndices.data[indexOffset + 4] = vertexOffset + 3; 228 | uIndices.data[indexOffset + 5] = vertexOffset; 229 | } 230 | } 231 | } 232 | -------------------------------------------------------------------------------- /Assets/Compute/voxelizer.comp.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e1e8df077af7c8e49a384ad7e0c9a18f 3 | ComputeShaderImporter: 4 | externalObjects: {} 5 | preprocessorOverride: 0 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Compute/voxelizer.compute: -------------------------------------------------------------------------------- 1 | #pragma kernel CSMain 2 | #include "voxels.hlsl" 3 | 4 | RWStructuredBuffer uVertices; 5 | RWStructuredBuffer uIndices; 6 | StructuredBuffer uVoxels; 7 | StructuredBuffer uChunkFeedback; 8 | 9 | groupshared uint sVertexOffset; 10 | groupshared uint sVertexCount; 11 | groupshared uint sIndexOffset; 12 | groupshared uint sIndexCount; 13 | groupshared uint sChunkIndex; 14 | 15 | bool hasVoxel(int3 coord) { 16 | if (coord.x < 0 || coord.x >= CHUNK_SIZE || 17 | coord.y < 0 || coord.y >= CHUNK_SIZE || 18 | coord.z < 0 || coord.z >= CHUNK_SIZE) { 19 | return false; 20 | } 21 | 22 | int idx = to1D(coord); 23 | return uVoxels[idx] > 0; 24 | } 25 | 26 | void setVertex(out Vertex vertex, in float3 position, in float2 texcoord, in float3 normal) { 27 | vertex.position = position; 28 | vertex.texcoord = texcoord; 29 | vertex.normal = normal; 30 | } 31 | 32 | [numthreads(8, 8, 8)] 33 | void CSMain (uint3 dispatchID : SV_DispatchThreadID, uint3 groupID : SV_GroupID, uint3 groupThreadID : SV_GroupThreadID) 34 | { 35 | if (groupThreadID.x == 0 && groupThreadID.y == 0 && groupThreadID.z == 0) { 36 | sChunkIndex = groupID.x + 10 * (groupID.y + 10 * groupID.z); 37 | sVertexOffset = uChunkFeedback[sChunkIndex].vertexOffset; 38 | sIndexOffset = uChunkFeedback[sChunkIndex].indexOffset; 39 | sVertexCount = uChunkFeedback[sChunkIndex].vertexCount; 40 | sIndexCount = uChunkFeedback[sChunkIndex].indexCount; 41 | } 42 | 43 | AllMemoryBarrierWithGroupSync(); 44 | 45 | uint globalVoxelIndex = to1D(dispatchID); 46 | 47 | if (uVoxels[globalVoxelIndex] > 0) 48 | { 49 | int3 coord = int3(dispatchID); 50 | float3 position = float3(coord); 51 | 52 | uint vertexOffset = 0, indexOffset = 0; 53 | 54 | // +X 55 | if (!hasVoxel(coord + int3(1, 0, 0))) { 56 | InterlockedAdd(sVertexOffset, 4, vertexOffset); 57 | InterlockedAdd(sIndexOffset, 6, indexOffset); 58 | 59 | setVertex(uVertices[vertexOffset + 0], position + float3(0.5, 0.5, 0.5), float2(0.0, 0.0), float3(1.0, 0.0, 0.0)); 60 | setVertex(uVertices[vertexOffset + 1], position + float3(0.5, -0.5, 0.5), float2(0.0, 1.0), float3(1.0, 0.0, 0.0)); 61 | setVertex(uVertices[vertexOffset + 2], position + float3(0.5, -0.5, -0.5), float2(1.0, 1.0), float3(1.0, 0.0, 0.0)); 62 | setVertex(uVertices[vertexOffset + 3], position + float3(0.5, 0.5, -0.5), float2(1.0, 0.0), float3(1.0, 0.0, 0.0)); 63 | 64 | uIndices[indexOffset + 0] = vertexOffset; 65 | uIndices[indexOffset + 1] = vertexOffset + 1; 66 | uIndices[indexOffset + 2] = vertexOffset + 2; 67 | 68 | uIndices[indexOffset + 3] = vertexOffset + 2; 69 | uIndices[indexOffset + 4] = vertexOffset + 3; 70 | uIndices[indexOffset + 5] = vertexOffset; 71 | } 72 | 73 | // -X 74 | if (!hasVoxel(coord + int3(-1, 0, 0))) { 75 | InterlockedAdd(sVertexOffset, 4, vertexOffset); 76 | InterlockedAdd(sIndexOffset, 6, indexOffset); 77 | 78 | setVertex(uVertices[vertexOffset + 0], position + float3(-0.5, 0.5, -0.5), float2(0.0, 0.0), float3(-1.0, 0.0, 0.0)); 79 | setVertex(uVertices[vertexOffset + 1], position + float3(-0.5, -0.5, -0.5), float2(0.0, 1.0), float3(-1.0, 0.0, 0.0)); 80 | setVertex(uVertices[vertexOffset + 2], position + float3(-0.5, -0.5, 0.5), float2(1.0, 1.0), float3(-1.0, 0.0, 0.0)); 81 | setVertex(uVertices[vertexOffset + 3], position + float3(-0.5, 0.5, 0.5), float2(1.0, 0.0), float3(-1.0, 0.0, 0.0)); 82 | 83 | uIndices[indexOffset + 0] = vertexOffset; 84 | uIndices[indexOffset + 1] = vertexOffset + 1; 85 | uIndices[indexOffset + 2] = vertexOffset + 2; 86 | 87 | uIndices[indexOffset + 3] = vertexOffset + 2; 88 | uIndices[indexOffset + 4] = vertexOffset + 3; 89 | uIndices[indexOffset + 5] = vertexOffset; 90 | } 91 | 92 | // +Y 93 | if (!hasVoxel(coord + int3(0, 1, 0))) { 94 | InterlockedAdd(sVertexOffset, 4, vertexOffset); 95 | InterlockedAdd(sIndexOffset, 6, indexOffset); 96 | 97 | setVertex(uVertices[vertexOffset + 0], position + float3(-0.5, 0.5, -0.5), float2(0.0, 0.0), float3(0.0, 1.0, 0.0)); 98 | setVertex(uVertices[vertexOffset + 1], position + float3(-0.5, 0.5, 0.5), float2(0.0, 1.0), float3(0.0, 1.0, 0.0)); 99 | setVertex(uVertices[vertexOffset + 2], position + float3(0.5, 0.5, 0.5), float2(1.0, 1.0), float3(0.0, 1.0, 0.0)); 100 | setVertex(uVertices[vertexOffset + 3], position + float3(0.5, 0.5, -0.5), float2(1.0, 0.0), float3(0.0, 1.0, 0.0)); 101 | 102 | uIndices[indexOffset + 0] = vertexOffset; 103 | uIndices[indexOffset + 1] = vertexOffset + 1; 104 | uIndices[indexOffset + 2] = vertexOffset + 2; 105 | 106 | uIndices[indexOffset + 3] = vertexOffset + 2; 107 | uIndices[indexOffset + 4] = vertexOffset + 3; 108 | uIndices[indexOffset + 5] = vertexOffset; 109 | } 110 | 111 | // -Y 112 | if (!hasVoxel(coord + int3(0, -1, 0))) { 113 | InterlockedAdd(sVertexOffset, 4, vertexOffset); 114 | InterlockedAdd(sIndexOffset, 6, indexOffset); 115 | 116 | setVertex(uVertices[vertexOffset + 0], position + float3(-0.5, -0.5, 0.5), float2(0.0, 0.0), float3(0.0, -1.0, 0.0)); 117 | setVertex(uVertices[vertexOffset + 1], position + float3(-0.5, -0.5, -0.5), float2(0.0, 1.0), float3(0.0, -1.0, 0.0)); 118 | setVertex(uVertices[vertexOffset + 2], position + float3(0.5, -0.5, -0.5), float2(1.0, 1.0), float3(0.0, -1.0, 0.0)); 119 | setVertex(uVertices[vertexOffset + 3], position + float3(0.5, -0.5, 0.5), float2(1.0, 0.0), float3(0.0, -1.0, 0.0)); 120 | 121 | uIndices[indexOffset + 0] = vertexOffset; 122 | uIndices[indexOffset + 1] = vertexOffset + 1; 123 | uIndices[indexOffset + 2] = vertexOffset + 2; 124 | 125 | uIndices[indexOffset + 3] = vertexOffset + 2; 126 | uIndices[indexOffset + 4] = vertexOffset + 3; 127 | uIndices[indexOffset + 5] = vertexOffset; 128 | } 129 | 130 | // +Z 131 | if (!hasVoxel(coord + int3(0, 0, 1))) { 132 | InterlockedAdd(sVertexOffset, 4, vertexOffset); 133 | InterlockedAdd(sIndexOffset, 6, indexOffset); 134 | 135 | setVertex(uVertices[vertexOffset + 0], position + float3(-0.5, 0.5, 0.5), float2(0.0, 0.0), float3(0.0, 0.0, 1.0)); 136 | setVertex(uVertices[vertexOffset + 1], position + float3(-0.5, -0.5, 0.5), float2(0.0, 1.0), float3(0.0, 0.0, 1.0)); 137 | setVertex(uVertices[vertexOffset + 2], position + float3(0.5, -0.5, 0.5), float2(1.0, 1.0), float3(0.0, 0.0, 1.0)); 138 | setVertex(uVertices[vertexOffset + 3], position + float3(0.5, 0.5, 0.5), float2(1.0, 0.0), float3(0.0, 0.0, 1.0)); 139 | 140 | uIndices[indexOffset + 0] = vertexOffset; 141 | uIndices[indexOffset + 1] = vertexOffset + 1; 142 | uIndices[indexOffset + 2] = vertexOffset + 2; 143 | 144 | uIndices[indexOffset + 3] = vertexOffset + 2; 145 | uIndices[indexOffset + 4] = vertexOffset + 3; 146 | uIndices[indexOffset + 5] = vertexOffset; 147 | } 148 | 149 | // -Z 150 | if (!hasVoxel(coord + int3(0, 0, -1))) { 151 | InterlockedAdd(sVertexOffset, 4, vertexOffset); 152 | InterlockedAdd(sIndexOffset, 6, indexOffset); 153 | 154 | setVertex(uVertices[vertexOffset + 0], position + float3(0.5, 0.5, -0.5), float2(0.0, 0.0), float3(0.0, 0.0, -1.0)); 155 | setVertex(uVertices[vertexOffset + 1], position + float3(0.5, -0.5, -0.5), float2(0.0, 1.0), float3(0.0, 0.0, -1.0)); 156 | setVertex(uVertices[vertexOffset + 2], position + float3(-0.5, -0.5, -0.5), float2(1.0, 1.0), float3(0.0, 0.0, -1.0)); 157 | setVertex(uVertices[vertexOffset + 3], position + float3(-0.5, 0.5, -0.5), float2(1.0, 0.0), float3(0.0, 0.0, -1.0)); 158 | 159 | uIndices[indexOffset + 0] = vertexOffset; 160 | uIndices[indexOffset + 1] = vertexOffset + 1; 161 | uIndices[indexOffset + 2] = vertexOffset + 2; 162 | 163 | uIndices[indexOffset + 3] = vertexOffset + 2; 164 | uIndices[indexOffset + 4] = vertexOffset + 3; 165 | uIndices[indexOffset + 5] = vertexOffset; 166 | } 167 | } 168 | } -------------------------------------------------------------------------------- /Assets/Compute/voxelizer.compute.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f1d02a3d7f264bc2a4f0b6abea7722c4 3 | timeCreated: 1681066741 -------------------------------------------------------------------------------- /Assets/Compute/voxels.hlsl: -------------------------------------------------------------------------------- 1 | #define CHUNK_SIZE 80 2 | 3 | struct Vertex { 4 | float3 position; 5 | float2 texcoord; 6 | float3 normal; 7 | }; 8 | 9 | struct GeometryData { 10 | uint vertexCount; 11 | uint indexCount; 12 | }; 13 | 14 | struct ChunkFeedback { 15 | uint vertexOffset; 16 | uint vertexCount; 17 | uint indexOffset; 18 | uint indexCount; 19 | }; 20 | 21 | uint to1D(uint3 pos) { 22 | return pos.x + CHUNK_SIZE * (pos.y + CHUNK_SIZE * pos.z); 23 | } 24 | 25 | int to1D(int3 pos) { 26 | return pos.x + CHUNK_SIZE * (pos.y + CHUNK_SIZE * pos.z); 27 | } 28 | 29 | uint3 to3D(uint idx) { 30 | uint x = idx % CHUNK_SIZE; 31 | uint y = (idx / CHUNK_SIZE) % CHUNK_SIZE; 32 | uint z = idx / (CHUNK_SIZE * CHUNK_SIZE); 33 | 34 | return uint3(x, y, z); 35 | } -------------------------------------------------------------------------------- /Assets/Compute/voxels.hlsl.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d2f9452409a84a0b9d18155a56c63681 3 | timeCreated: 1681424706 -------------------------------------------------------------------------------- /Assets/Materials.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: dcc3491270151a049b12e4d3dc65d2a2 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Materials/Voxel Basic.mat: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!114 &-1930274549535486110 4 | MonoBehaviour: 5 | m_ObjectHideFlags: 11 6 | m_CorrespondingSourceObject: {fileID: 0} 7 | m_PrefabInstance: {fileID: 0} 8 | m_PrefabAsset: {fileID: 0} 9 | m_GameObject: {fileID: 0} 10 | m_Enabled: 1 11 | m_EditorHideFlags: 0 12 | m_Script: {fileID: 11500000, guid: da692e001514ec24dbc4cca1949ff7e8, type: 3} 13 | m_Name: 14 | m_EditorClassIdentifier: 15 | version: 12 16 | hdPluginSubTargetMaterialVersions: 17 | m_Keys: [] 18 | m_Values: 19 | --- !u!21 &2100000 20 | Material: 21 | serializedVersion: 8 22 | m_ObjectHideFlags: 0 23 | m_CorrespondingSourceObject: {fileID: 0} 24 | m_PrefabInstance: {fileID: 0} 25 | m_PrefabAsset: {fileID: 0} 26 | m_Name: Voxel Basic 27 | m_Shader: {fileID: 4800000, guid: 6e4ae4064600d784cac1e41a9e6f2e59, type: 3} 28 | m_ValidKeywords: 29 | - _DISABLE_SSR_TRANSPARENT 30 | - _NORMALMAP_TANGENT_SPACE 31 | m_InvalidKeywords: [] 32 | m_LightmapFlags: 4 33 | m_EnableInstancingVariants: 0 34 | m_DoubleSidedGI: 0 35 | m_CustomRenderQueue: 2225 36 | stringTagMap: {} 37 | disabledShaderPasses: 38 | - TransparentDepthPrepass 39 | - TransparentDepthPostpass 40 | - TransparentBackface 41 | - RayTracingPrepass 42 | - MOTIONVECTORS 43 | m_SavedProperties: 44 | serializedVersion: 3 45 | m_TexEnvs: 46 | - _AnisotropyMap: 47 | m_Texture: {fileID: 0} 48 | m_Scale: {x: 1, y: 1} 49 | m_Offset: {x: 0, y: 0} 50 | - _BaseColorMap: 51 | m_Texture: {fileID: 0} 52 | m_Scale: {x: 1, y: 1} 53 | m_Offset: {x: 0, y: 0} 54 | - _BentNormalMap: 55 | m_Texture: {fileID: 0} 56 | m_Scale: {x: 1, y: 1} 57 | m_Offset: {x: 0, y: 0} 58 | - _BentNormalMapOS: 59 | m_Texture: {fileID: 0} 60 | m_Scale: {x: 1, y: 1} 61 | m_Offset: {x: 0, y: 0} 62 | - _CoatMaskMap: 63 | m_Texture: {fileID: 0} 64 | m_Scale: {x: 1, y: 1} 65 | m_Offset: {x: 0, y: 0} 66 | - _DetailMap: 67 | m_Texture: {fileID: 0} 68 | m_Scale: {x: 1, y: 1} 69 | m_Offset: {x: 0, y: 0} 70 | - _EmissiveColorMap: 71 | m_Texture: {fileID: 0} 72 | m_Scale: {x: 1, y: 1} 73 | m_Offset: {x: 0, y: 0} 74 | - _HeightMap: 75 | m_Texture: {fileID: 0} 76 | m_Scale: {x: 1, y: 1} 77 | m_Offset: {x: 0, y: 0} 78 | - _IridescenceMaskMap: 79 | m_Texture: {fileID: 0} 80 | m_Scale: {x: 1, y: 1} 81 | m_Offset: {x: 0, y: 0} 82 | - _IridescenceThicknessMap: 83 | m_Texture: {fileID: 0} 84 | m_Scale: {x: 1, y: 1} 85 | m_Offset: {x: 0, y: 0} 86 | - _MainTex: 87 | m_Texture: {fileID: 0} 88 | m_Scale: {x: 1, y: 1} 89 | m_Offset: {x: 0, y: 0} 90 | - _MaskMap: 91 | m_Texture: {fileID: 0} 92 | m_Scale: {x: 1, y: 1} 93 | m_Offset: {x: 0, y: 0} 94 | - _NormalMap: 95 | m_Texture: {fileID: 0} 96 | m_Scale: {x: 1, y: 1} 97 | m_Offset: {x: 0, y: 0} 98 | - _NormalMapOS: 99 | m_Texture: {fileID: 0} 100 | m_Scale: {x: 1, y: 1} 101 | m_Offset: {x: 0, y: 0} 102 | - _SpecularColorMap: 103 | m_Texture: {fileID: 0} 104 | m_Scale: {x: 1, y: 1} 105 | m_Offset: {x: 0, y: 0} 106 | - _SubsurfaceMaskMap: 107 | m_Texture: {fileID: 0} 108 | m_Scale: {x: 1, y: 1} 109 | m_Offset: {x: 0, y: 0} 110 | - _TangentMap: 111 | m_Texture: {fileID: 0} 112 | m_Scale: {x: 1, y: 1} 113 | m_Offset: {x: 0, y: 0} 114 | - _TangentMapOS: 115 | m_Texture: {fileID: 0} 116 | m_Scale: {x: 1, y: 1} 117 | m_Offset: {x: 0, y: 0} 118 | - _ThicknessMap: 119 | m_Texture: {fileID: 0} 120 | m_Scale: {x: 1, y: 1} 121 | m_Offset: {x: 0, y: 0} 122 | - _TransmittanceColorMap: 123 | m_Texture: {fileID: 0} 124 | m_Scale: {x: 1, y: 1} 125 | m_Offset: {x: 0, y: 0} 126 | - unity_Lightmaps: 127 | m_Texture: {fileID: 0} 128 | m_Scale: {x: 1, y: 1} 129 | m_Offset: {x: 0, y: 0} 130 | - unity_LightmapsInd: 131 | m_Texture: {fileID: 0} 132 | m_Scale: {x: 1, y: 1} 133 | m_Offset: {x: 0, y: 0} 134 | - unity_ShadowMasks: 135 | m_Texture: {fileID: 0} 136 | m_Scale: {x: 1, y: 1} 137 | m_Offset: {x: 0, y: 0} 138 | m_Ints: [] 139 | m_Floats: 140 | - _AORemapMax: 1 141 | - _AORemapMin: 0 142 | - _ATDistance: 1 143 | - _AddPrecomputedVelocity: 0 144 | - _AlbedoAffectEmissive: 0 145 | - _AlphaCutoff: 0.5 146 | - _AlphaCutoffEnable: 0 147 | - _AlphaCutoffPostpass: 0.5 148 | - _AlphaCutoffPrepass: 0.5 149 | - _AlphaCutoffShadow: 0.5 150 | - _AlphaDstBlend: 0 151 | - _AlphaSrcBlend: 1 152 | - _AlphaToMask: 0 153 | - _AlphaToMaskInspectorValue: 0 154 | - _Anisotropy: 0 155 | - _BlendMode: 0 156 | - _CoatMask: 0 157 | - _CullMode: 2 158 | - _CullModeForward: 2 159 | - _Cutoff: 0.5 160 | - _DepthOffsetEnable: 0 161 | - _DetailAlbedoScale: 1 162 | - _DetailNormalScale: 1 163 | - _DetailSmoothnessScale: 1 164 | - _DiffusionProfile: 0 165 | - _DiffusionProfileHash: 0 166 | - _DisplacementLockObjectScale: 1 167 | - _DisplacementLockTilingScale: 1 168 | - _DisplacementMode: 0 169 | - _DoubleSidedEnable: 0 170 | - _DoubleSidedGIMode: 0 171 | - _DoubleSidedNormalMode: 1 172 | - _DstBlend: 0 173 | - _EmissiveColorMode: 1 174 | - _EmissiveExposureWeight: 1 175 | - _EmissiveIntensity: 1 176 | - _EmissiveIntensityUnit: 0 177 | - _EnableBlendModePreserveSpecularLighting: 1 178 | - _EnableFogOnTransparent: 1 179 | - _EnableGeometricSpecularAA: 0 180 | - _EnergyConservingSpecularColor: 1 181 | - _HeightAmplitude: 0.02 182 | - _HeightCenter: 0.5 183 | - _HeightMapParametrization: 0 184 | - _HeightMax: 1 185 | - _HeightMin: -1 186 | - _HeightOffset: 0 187 | - _HeightPoMAmplitude: 2 188 | - _HeightTessAmplitude: 2 189 | - _HeightTessCenter: 0.5 190 | - _InvTilingScale: 1 191 | - _Ior: 1.5 192 | - _IridescenceMask: 1 193 | - _IridescenceThickness: 1 194 | - _LinkDetailsWithBase: 1 195 | - _MaterialID: 1 196 | - _Metallic: 0 197 | - _MetallicRemapMax: 1 198 | - _MetallicRemapMin: 0 199 | - _NormalMapSpace: 0 200 | - _NormalScale: 1 201 | - _OpaqueCullMode: 2 202 | - _PPDLodThreshold: 5 203 | - _PPDMaxSamples: 15 204 | - _PPDMinSamples: 5 205 | - _PPDPrimitiveLength: 1 206 | - _PPDPrimitiveWidth: 1 207 | - _RayTracing: 0 208 | - _ReceivesSSR: 1 209 | - _ReceivesSSRTransparent: 0 210 | - _RefractionModel: 0 211 | - _Smoothness: 0.5 212 | - _SmoothnessRemapMax: 1 213 | - _SmoothnessRemapMin: 0 214 | - _SpecularAAScreenSpaceVariance: 0.1 215 | - _SpecularAAThreshold: 0.2 216 | - _SpecularOcclusionMode: 1 217 | - _SrcBlend: 1 218 | - _StencilRef: 0 219 | - _StencilRefDepth: 8 220 | - _StencilRefGBuffer: 10 221 | - _StencilRefMV: 40 222 | - _StencilWriteMask: 6 223 | - _StencilWriteMaskDepth: 8 224 | - _StencilWriteMaskGBuffer: 14 225 | - _StencilWriteMaskMV: 40 226 | - _SubsurfaceMask: 1 227 | - _SupportDecals: 1 228 | - _SurfaceType: 0 229 | - _TexWorldScale: 1 230 | - _TexWorldScaleEmissive: 1 231 | - _Thickness: 1 232 | - _TransmissionEnable: 1 233 | - _TransparentBackfaceEnable: 0 234 | - _TransparentCullMode: 2 235 | - _TransparentDepthPostpassEnable: 0 236 | - _TransparentDepthPrepassEnable: 0 237 | - _TransparentSortPriority: 0 238 | - _TransparentWritingMotionVec: 0 239 | - _TransparentZWrite: 0 240 | - _UVBase: 0 241 | - _UVDetail: 0 242 | - _UVEmissive: 0 243 | - _UseEmissiveIntensity: 0 244 | - _UseShadowThreshold: 0 245 | - _ZTestDepthEqualForOpaque: 3 246 | - _ZTestGBuffer: 4 247 | - _ZTestTransparent: 4 248 | - _ZWrite: 1 249 | m_Colors: 250 | - _BaseColor: {r: 1, g: 1, b: 1, a: 1} 251 | - _BaseColorMap_MipInfo: {r: 0, g: 0, b: 0, a: 0} 252 | - _Color: {r: 1, g: 1, b: 1, a: 1} 253 | - _DiffusionProfileAsset: {r: 0, g: 0, b: 0, a: 0} 254 | - _DoubleSidedConstants: {r: 1, g: 1, b: -1, a: 0} 255 | - _EmissionColor: {r: 1, g: 1, b: 1, a: 1} 256 | - _EmissiveColor: {r: 0, g: 0, b: 0, a: 1} 257 | - _EmissiveColorLDR: {r: 0, g: 0, b: 0, a: 1} 258 | - _InvPrimScale: {r: 1, g: 1, b: 0, a: 0} 259 | - _IridescenceThicknessRemap: {r: 0, g: 1, b: 0, a: 0} 260 | - _SpecularColor: {r: 1, g: 1, b: 1, a: 1} 261 | - _ThicknessRemap: {r: 0, g: 1, b: 0, a: 0} 262 | - _TransmittanceColor: {r: 1, g: 1, b: 1, a: 1} 263 | - _UVDetailsMappingMask: {r: 1, g: 0, b: 0, a: 0} 264 | - _UVMappingMask: {r: 1, g: 0, b: 0, a: 0} 265 | - _UVMappingMaskEmissive: {r: 1, g: 0, b: 0, a: 0} 266 | m_BuildTextureStacks: [] 267 | -------------------------------------------------------------------------------- /Assets/Materials/Voxel Basic.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 27ec1cb09045e8a45a5b3e5948414f7e 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 2100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Materials/Voxel Procedural.mat: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!21 &2100000 4 | Material: 5 | serializedVersion: 8 6 | m_ObjectHideFlags: 0 7 | m_CorrespondingSourceObject: {fileID: 0} 8 | m_PrefabInstance: {fileID: 0} 9 | m_PrefabAsset: {fileID: 0} 10 | m_Name: Voxel Procedural 11 | m_Shader: {fileID: -6465566751694194690, guid: 4886858e341babe4f965524c01a1c3b2, 12 | type: 3} 13 | m_ValidKeywords: 14 | - _DISABLE_SSR_TRANSPARENT 15 | m_InvalidKeywords: 16 | - _NORMALMAP_TANGENT_SPACE 17 | m_LightmapFlags: 4 18 | m_EnableInstancingVariants: 0 19 | m_DoubleSidedGI: 0 20 | m_CustomRenderQueue: 2225 21 | stringTagMap: 22 | MotionVector: User 23 | disabledShaderPasses: 24 | - TransparentDepthPrepass 25 | - TransparentDepthPostpass 26 | - TransparentBackface 27 | - RayTracingPrepass 28 | - MOTIONVECTORS 29 | m_SavedProperties: 30 | serializedVersion: 3 31 | m_TexEnvs: 32 | - _AnisotropyMap: 33 | m_Texture: {fileID: 0} 34 | m_Scale: {x: 1, y: 1} 35 | m_Offset: {x: 0, y: 0} 36 | - _BaseColorMap: 37 | m_Texture: {fileID: 0} 38 | m_Scale: {x: 1, y: 1} 39 | m_Offset: {x: 0, y: 0} 40 | - _BentNormalMap: 41 | m_Texture: {fileID: 0} 42 | m_Scale: {x: 1, y: 1} 43 | m_Offset: {x: 0, y: 0} 44 | - _BentNormalMapOS: 45 | m_Texture: {fileID: 0} 46 | m_Scale: {x: 1, y: 1} 47 | m_Offset: {x: 0, y: 0} 48 | - _CoatMaskMap: 49 | m_Texture: {fileID: 0} 50 | m_Scale: {x: 1, y: 1} 51 | m_Offset: {x: 0, y: 0} 52 | - _DetailMap: 53 | m_Texture: {fileID: 0} 54 | m_Scale: {x: 1, y: 1} 55 | m_Offset: {x: 0, y: 0} 56 | - _EmissiveColorMap: 57 | m_Texture: {fileID: 0} 58 | m_Scale: {x: 1, y: 1} 59 | m_Offset: {x: 0, y: 0} 60 | - _HeightMap: 61 | m_Texture: {fileID: 0} 62 | m_Scale: {x: 1, y: 1} 63 | m_Offset: {x: 0, y: 0} 64 | - _IridescenceMaskMap: 65 | m_Texture: {fileID: 0} 66 | m_Scale: {x: 1, y: 1} 67 | m_Offset: {x: 0, y: 0} 68 | - _IridescenceThicknessMap: 69 | m_Texture: {fileID: 0} 70 | m_Scale: {x: 1, y: 1} 71 | m_Offset: {x: 0, y: 0} 72 | - _MainTex: 73 | m_Texture: {fileID: 0} 74 | m_Scale: {x: 1, y: 1} 75 | m_Offset: {x: 0, y: 0} 76 | - _MaskMap: 77 | m_Texture: {fileID: 0} 78 | m_Scale: {x: 1, y: 1} 79 | m_Offset: {x: 0, y: 0} 80 | - _NormalMap: 81 | m_Texture: {fileID: 0} 82 | m_Scale: {x: 1, y: 1} 83 | m_Offset: {x: 0, y: 0} 84 | - _NormalMapOS: 85 | m_Texture: {fileID: 0} 86 | m_Scale: {x: 1, y: 1} 87 | m_Offset: {x: 0, y: 0} 88 | - _SpecularColorMap: 89 | m_Texture: {fileID: 0} 90 | m_Scale: {x: 1, y: 1} 91 | m_Offset: {x: 0, y: 0} 92 | - _SubsurfaceMaskMap: 93 | m_Texture: {fileID: 0} 94 | m_Scale: {x: 1, y: 1} 95 | m_Offset: {x: 0, y: 0} 96 | - _TangentMap: 97 | m_Texture: {fileID: 0} 98 | m_Scale: {x: 1, y: 1} 99 | m_Offset: {x: 0, y: 0} 100 | - _TangentMapOS: 101 | m_Texture: {fileID: 0} 102 | m_Scale: {x: 1, y: 1} 103 | m_Offset: {x: 0, y: 0} 104 | - _ThicknessMap: 105 | m_Texture: {fileID: 0} 106 | m_Scale: {x: 1, y: 1} 107 | m_Offset: {x: 0, y: 0} 108 | - _TransmittanceColorMap: 109 | m_Texture: {fileID: 0} 110 | m_Scale: {x: 1, y: 1} 111 | m_Offset: {x: 0, y: 0} 112 | - unity_Lightmaps: 113 | m_Texture: {fileID: 0} 114 | m_Scale: {x: 1, y: 1} 115 | m_Offset: {x: 0, y: 0} 116 | - unity_LightmapsInd: 117 | m_Texture: {fileID: 0} 118 | m_Scale: {x: 1, y: 1} 119 | m_Offset: {x: 0, y: 0} 120 | - unity_ShadowMasks: 121 | m_Texture: {fileID: 0} 122 | m_Scale: {x: 1, y: 1} 123 | m_Offset: {x: 0, y: 0} 124 | m_Ints: [] 125 | m_Floats: 126 | - _AORemapMax: 1 127 | - _AORemapMin: 0 128 | - _ATDistance: 1 129 | - _AddPrecomputedVelocity: 0 130 | - _AlbedoAffectEmissive: 0 131 | - _AlphaCutoff: 0.5 132 | - _AlphaCutoffEnable: 0 133 | - _AlphaCutoffPostpass: 0.5 134 | - _AlphaCutoffPrepass: 0.5 135 | - _AlphaCutoffShadow: 0.5 136 | - _AlphaDstBlend: 0 137 | - _AlphaSrcBlend: 1 138 | - _AlphaToMask: 0 139 | - _AlphaToMaskInspectorValue: 0 140 | - _Anisotropy: 0 141 | - _BlendMode: 0 142 | - _CoatMask: 0 143 | - _ConservativeDepthOffsetEnable: 0 144 | - _CullMode: 2 145 | - _CullModeForward: 2 146 | - _Cutoff: 0.5 147 | - _DepthOffsetEnable: 0 148 | - _DetailAlbedoScale: 1 149 | - _DetailNormalScale: 1 150 | - _DetailSmoothnessScale: 1 151 | - _DiffusionProfile: 0 152 | - _DiffusionProfileHash: 0 153 | - _DisplacementLockObjectScale: 1 154 | - _DisplacementLockTilingScale: 1 155 | - _DisplacementMode: 0 156 | - _DoubleSidedEnable: 0 157 | - _DoubleSidedGIMode: 0 158 | - _DoubleSidedNormalMode: 1 159 | - _DstBlend: 0 160 | - _EmissiveColorMode: 1 161 | - _EmissiveExposureWeight: 1 162 | - _EmissiveIntensity: 1 163 | - _EmissiveIntensityUnit: 0 164 | - _EnableBlendModePreserveSpecularLighting: 1 165 | - _EnableFogOnTransparent: 1 166 | - _EnableGeometricSpecularAA: 0 167 | - _EnergyConservingSpecularColor: 1 168 | - _HeightAmplitude: 0.02 169 | - _HeightCenter: 0.5 170 | - _HeightMapParametrization: 0 171 | - _HeightMax: 1 172 | - _HeightMin: -1 173 | - _HeightOffset: 0 174 | - _HeightPoMAmplitude: 2 175 | - _HeightTessAmplitude: 2 176 | - _HeightTessCenter: 0.5 177 | - _InvTilingScale: 1 178 | - _Ior: 1.5 179 | - _IridescenceMask: 1 180 | - _IridescenceThickness: 1 181 | - _LinkDetailsWithBase: 1 182 | - _MaterialID: 1 183 | - _Metallic: 0 184 | - _MetallicRemapMax: 1 185 | - _MetallicRemapMin: 0 186 | - _NormalMapSpace: 0 187 | - _NormalScale: 1 188 | - _OpaqueCullMode: 2 189 | - _PPDLodThreshold: 5 190 | - _PPDMaxSamples: 15 191 | - _PPDMinSamples: 5 192 | - _PPDPrimitiveLength: 1 193 | - _PPDPrimitiveWidth: 1 194 | - _RayTracing: 0 195 | - _ReceivesSSR: 1 196 | - _ReceivesSSRTransparent: 0 197 | - _RefractionModel: 0 198 | - _RenderQueueType: 1 199 | - _RequireSplitLighting: 0 200 | - _Smoothness: 0.5 201 | - _SmoothnessRemapMax: 1 202 | - _SmoothnessRemapMin: 0 203 | - _SpecularAAScreenSpaceVariance: 0.1 204 | - _SpecularAAThreshold: 0.2 205 | - _SpecularOcclusionMode: 1 206 | - _SrcBlend: 1 207 | - _StencilRef: 0 208 | - _StencilRefDepth: 8 209 | - _StencilRefDistortionVec: 4 210 | - _StencilRefGBuffer: 10 211 | - _StencilRefMV: 40 212 | - _StencilWriteMask: 6 213 | - _StencilWriteMaskDepth: 8 214 | - _StencilWriteMaskDistortionVec: 4 215 | - _StencilWriteMaskGBuffer: 14 216 | - _StencilWriteMaskMV: 40 217 | - _SubsurfaceMask: 1 218 | - _SupportDecals: 1 219 | - _SurfaceType: 0 220 | - _TexWorldScale: 1 221 | - _TexWorldScaleEmissive: 1 222 | - _Thickness: 1 223 | - _TransmissionEnable: 1 224 | - _TransparentBackfaceEnable: 0 225 | - _TransparentCullMode: 2 226 | - _TransparentDepthPostpassEnable: 0 227 | - _TransparentDepthPrepassEnable: 0 228 | - _TransparentSortPriority: 0 229 | - _TransparentWritingMotionVec: 0 230 | - _TransparentZWrite: 0 231 | - _UVBase: 0 232 | - _UVDetail: 0 233 | - _UVEmissive: 0 234 | - _UseEmissiveIntensity: 0 235 | - _UseShadowThreshold: 0 236 | - _ZTestDepthEqualForOpaque: 3 237 | - _ZTestGBuffer: 4 238 | - _ZTestTransparent: 4 239 | - _ZWrite: 1 240 | m_Colors: 241 | - _BaseColor: {r: 1, g: 1, b: 1, a: 1} 242 | - _BaseColorMap_MipInfo: {r: 0, g: 0, b: 0, a: 0} 243 | - _Color: {r: 1, g: 1, b: 1, a: 1} 244 | - _DiffusionProfileAsset: {r: 0, g: 0, b: 0, a: 0} 245 | - _DoubleSidedConstants: {r: 1, g: 1, b: -1, a: 0} 246 | - _EmissionColor: {r: 1, g: 1, b: 1, a: 1} 247 | - _EmissiveColor: {r: 0, g: 0, b: 0, a: 1} 248 | - _EmissiveColorLDR: {r: 0, g: 0, b: 0, a: 1} 249 | - _InvPrimScale: {r: 1, g: 1, b: 0, a: 0} 250 | - _IridescenceThicknessRemap: {r: 0, g: 1, b: 0, a: 0} 251 | - _SpecularColor: {r: 1, g: 1, b: 1, a: 1} 252 | - _ThicknessRemap: {r: 0, g: 1, b: 0, a: 0} 253 | - _TransmittanceColor: {r: 1, g: 1, b: 1, a: 1} 254 | - _UVDetailsMappingMask: {r: 1, g: 0, b: 0, a: 0} 255 | - _UVMappingMask: {r: 1, g: 0, b: 0, a: 0} 256 | - _UVMappingMaskEmissive: {r: 1, g: 0, b: 0, a: 0} 257 | m_BuildTextureStacks: [] 258 | --- !u!114 &3738809750443317519 259 | MonoBehaviour: 260 | m_ObjectHideFlags: 11 261 | m_CorrespondingSourceObject: {fileID: 0} 262 | m_PrefabInstance: {fileID: 0} 263 | m_PrefabAsset: {fileID: 0} 264 | m_GameObject: {fileID: 0} 265 | m_Enabled: 1 266 | m_EditorHideFlags: 0 267 | m_Script: {fileID: 11500000, guid: da692e001514ec24dbc4cca1949ff7e8, type: 3} 268 | m_Name: 269 | m_EditorClassIdentifier: 270 | version: 12 271 | hdPluginSubTargetMaterialVersions: 272 | m_Keys: [] 273 | m_Values: 274 | -------------------------------------------------------------------------------- /Assets/Materials/Voxel Procedural.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4f8827c503848cc4fa6848f453f1f190 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 2100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/OutdoorsScene.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8124e5870f4fd4c779e7a5f994e84ad1 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/Scripts.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e6fdd2588309bdf4d9262b89013a3164 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Scripts/CameraController.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | public class CameraController : MonoBehaviour 4 | { 5 | public float moveSpeed = 5; 6 | public float sensitivity = 100.0f; 7 | 8 | private float _rotationX; 9 | private float _rotationY; 10 | 11 | private void Awake() 12 | { 13 | // lock cursor 14 | Cursor.lockState = CursorLockMode.Locked; 15 | } 16 | 17 | void Update() 18 | { 19 | Move(); 20 | MouseLook(); 21 | UpdateMouseLock(); 22 | } 23 | 24 | private void UpdateMouseLock() 25 | { 26 | if (Input.GetKeyDown(KeyCode.Escape)) 27 | { 28 | Cursor.lockState = Cursor.lockState == CursorLockMode.None ? CursorLockMode.Locked : CursorLockMode.None; 29 | } 30 | } 31 | 32 | private void OnApplicationFocus(bool hasFocus) 33 | { 34 | Cursor.lockState = CursorLockMode.Locked; 35 | } 36 | 37 | private void Move() 38 | { 39 | if (Input.GetKey(KeyCode.W)) 40 | { 41 | transform.Translate(Vector3.forward * moveSpeed * Time.deltaTime); 42 | } 43 | if (Input.GetKey(KeyCode.S)) 44 | { 45 | transform.Translate(Vector3.back * moveSpeed * Time.deltaTime); 46 | } 47 | if (Input.GetKey(KeyCode.A)) 48 | { 49 | transform.Translate(Vector3.left * moveSpeed * Time.deltaTime); 50 | } 51 | if (Input.GetKey(KeyCode.D)) 52 | { 53 | transform.Translate(Vector3.right * moveSpeed * Time.deltaTime); 54 | } 55 | } 56 | 57 | private void MouseLook() 58 | { 59 | // only update if cursor is locked 60 | if (Cursor.lockState != CursorLockMode.Locked) 61 | return; 62 | 63 | var mouseX = Input.GetAxis("Mouse X") * sensitivity * Time.deltaTime; 64 | var mouseY = -Input.GetAxis("Mouse Y") * sensitivity * Time.deltaTime; 65 | 66 | _rotationX -= mouseY; 67 | _rotationX = Mathf.Clamp(_rotationX, -90.0f, 90.0f); 68 | 69 | _rotationY += mouseX; 70 | 71 | transform.localEulerAngles = new Vector3(-_rotationX, _rotationY, 0.0f); 72 | } 73 | } 74 | -------------------------------------------------------------------------------- /Assets/Scripts/CameraController.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e7ac782bd1a2744438db82d578e0dc82 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Scripts/Data.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 68e0c584d67a4ec09457ef16d95200e9 3 | timeCreated: 1681068634 -------------------------------------------------------------------------------- /Assets/Scripts/Data/ChunkFeedback.cs: -------------------------------------------------------------------------------- 1 | namespace Data 2 | { 3 | public struct ChunkFeedback { 4 | public uint vertexCount; 5 | public uint indexCount; 6 | } 7 | } -------------------------------------------------------------------------------- /Assets/Scripts/Data/ChunkFeedback.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e16b20b5775d42068ef202cc45856e0b 3 | timeCreated: 1681068641 -------------------------------------------------------------------------------- /Assets/Scripts/Data/SubChunkFeedback.cs: -------------------------------------------------------------------------------- 1 | namespace Data 2 | { 3 | public struct SubChunkFeedback { 4 | public uint vertexOffset; 5 | public uint vertexCount; 6 | public uint indexOffset; 7 | public uint indexCount; 8 | } 9 | } -------------------------------------------------------------------------------- /Assets/Scripts/Data/SubChunkFeedback.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: eeb829513b32415f8860be8af3a376fb 3 | timeCreated: 1681068656 -------------------------------------------------------------------------------- /Assets/Scripts/Data/Vertex.cs: -------------------------------------------------------------------------------- 1 | using System.Runtime.InteropServices; 2 | using UnityEngine; 3 | 4 | namespace Data 5 | { 6 | [StructLayout(LayoutKind.Sequential)] 7 | public struct Vertex 8 | { 9 | public Vector3 Position; // 12 10 | public Vector2 UV; // 8 11 | public Vector3 Normal; // 12 12 | } 13 | } -------------------------------------------------------------------------------- /Assets/Scripts/Data/Vertex.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: bb1f96dca8084e52bd35120e606ab2ad 3 | timeCreated: 1681070557 -------------------------------------------------------------------------------- /Assets/Scripts/Native.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: fabe03daea6941cea1d24735bb9eff74 3 | timeCreated: 1681423736 -------------------------------------------------------------------------------- /Assets/Scripts/Native/GenerateRandomVoxelsJob.cs: -------------------------------------------------------------------------------- 1 | using Unity.Burst; 2 | using Unity.Collections; 3 | using Unity.Jobs; 4 | using Unity.Mathematics; 5 | 6 | namespace Native 7 | { 8 | [BurstCompile] 9 | public struct GenerateRandomVoxelsJob : IJobParallelFor 10 | { 11 | public NativeArray Voxels; 12 | 13 | public void Execute(int index) 14 | { 15 | Voxels[index] = Random.CreateFromIndex((uint)index).NextInt(0, 2); 16 | } 17 | } 18 | } -------------------------------------------------------------------------------- /Assets/Scripts/Native/GenerateRandomVoxelsJob.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0a3a360f8eef4c47a2a9493d4e3c4b47 3 | timeCreated: 1681423989 -------------------------------------------------------------------------------- /Assets/Scripts/VoxelChunkGenerator.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using Data; 3 | using Native; 4 | using Unity.Collections; 5 | using Unity.Jobs; 6 | using UnityEngine; 7 | using UnityEngine.Rendering; 8 | 9 | [RequireComponent(typeof(MeshFilter), typeof(MeshRenderer))] 10 | public class VoxelChunkGenerator : MonoBehaviour 11 | { 12 | private const int ChunkSize = 80; 13 | private const int ChunkSize3 = ChunkSize * ChunkSize * ChunkSize; 14 | private const int WorkGroupSize = 8; 15 | private const int SubChunkSize = ChunkSize / WorkGroupSize; 16 | private const int VoxelCount = ChunkSize * ChunkSize * ChunkSize; 17 | 18 | public bool draw = true; 19 | public float frequency = 0.1f; 20 | public float amplitude = 1f; 21 | public Vector3 position; 22 | public Vector3 movementSpeed = new Vector3(5, 5, 5); 23 | 24 | public ComputeShader generateVoxelsComputeShader; 25 | public ComputeShader voxelizerComputeShader; 26 | public ComputeShader feedbackComputeShader; 27 | public Material drawMaterial; 28 | 29 | private ComputeBuffer _voxelBuffer; 30 | private ComputeBuffer _chunkFeedbackBuffer; 31 | private ComputeBuffer _subChunkFeedbackBuffer; 32 | private ComputeBuffer _vertexBuffer; 33 | private ComputeBuffer _indexBuffer; 34 | private ComputeBuffer _indirectBuffer; 35 | 36 | private int _generateVoxelsKernelId; 37 | private int _voxelizerKernelId; 38 | private int _feedbackKernelId; 39 | private Mesh _mesh; 40 | private MeshFilter _meshFilter; 41 | 42 | private readonly ChunkFeedback[] _chunkFeedback = new ChunkFeedback[1]; 43 | 44 | private unsafe void Start() 45 | { 46 | // get mesh filter 47 | _meshFilter = GetComponent(); 48 | 49 | // create mesh 50 | _mesh = new Mesh 51 | { 52 | name = "Voxel Chunk", 53 | indexFormat = IndexFormat.UInt32 54 | }; 55 | _meshFilter.sharedMesh = _mesh; 56 | 57 | // get kernel ids 58 | _generateVoxelsKernelId = generateVoxelsComputeShader.FindKernel("CSMain"); 59 | _voxelizerKernelId = voxelizerComputeShader.FindKernel("CSMain"); 60 | _feedbackKernelId = feedbackComputeShader.FindKernel("CSMain"); 61 | 62 | // create buffers 63 | _voxelBuffer = new ComputeBuffer(ChunkSize3, sizeof(int)); 64 | _chunkFeedbackBuffer = new ComputeBuffer(1, sizeof(ChunkFeedback)); 65 | _chunkFeedbackBuffer.SetData(new []{ new ChunkFeedback() }); 66 | _subChunkFeedbackBuffer = new ComputeBuffer(SubChunkSize * SubChunkSize * SubChunkSize, sizeof(SubChunkFeedback)); 67 | _subChunkFeedbackBuffer.SetData(new SubChunkFeedback[SubChunkSize * SubChunkSize * SubChunkSize]); 68 | // max voxels * 4 vertices per face * 6 faces per voxel 69 | _vertexBuffer = new ComputeBuffer(VoxelCount * 4 * 6, sizeof(Vertex)); 70 | // max voxels * 6 faces per voxel * 6 indices per face 71 | _indexBuffer = new ComputeBuffer(VoxelCount * 6 * 6, sizeof(int)); 72 | 73 | _indirectBuffer = new ComputeBuffer(1, sizeof(uint) * 5, ComputeBufferType.IndirectArguments); 74 | _indirectBuffer.SetData(new uint[] { 0, 1, 0, 0, 0 }); 75 | 76 | // bind buffers 77 | generateVoxelsComputeShader.SetBuffer(_generateVoxelsKernelId, "uVoxels", _voxelBuffer); 78 | 79 | voxelizerComputeShader.SetBuffer(_voxelizerKernelId, "uVertices", _vertexBuffer); 80 | voxelizerComputeShader.SetBuffer(_voxelizerKernelId, "uIndices", _indexBuffer); 81 | voxelizerComputeShader.SetBuffer(_voxelizerKernelId, "uVoxels", _voxelBuffer); 82 | voxelizerComputeShader.SetBuffer(_voxelizerKernelId, "uChunkFeedback", _subChunkFeedbackBuffer); 83 | 84 | feedbackComputeShader.SetBuffer(_feedbackKernelId, "uVoxels", _voxelBuffer); 85 | feedbackComputeShader.SetBuffer(_feedbackKernelId, "uFeedback", _chunkFeedbackBuffer); 86 | feedbackComputeShader.SetBuffer(_feedbackKernelId, "uChunkFeedback", _subChunkFeedbackBuffer); 87 | feedbackComputeShader.SetBuffer(_voxelizerKernelId, "uIndirectArgs", _indirectBuffer); 88 | 89 | // copy material 90 | drawMaterial = new Material(drawMaterial); 91 | drawMaterial.SetBuffer("Vertices", _vertexBuffer); 92 | drawMaterial.SetBuffer("Indices", _indexBuffer); 93 | } 94 | 95 | private void Update() 96 | { 97 | MoveNoiseOrigin(); 98 | 99 | // generate voxels 100 | generateVoxelsComputeShader.Dispatch(_generateVoxelsKernelId, SubChunkSize, SubChunkSize, SubChunkSize); 101 | // gather index and vertex count 102 | feedbackComputeShader.Dispatch(_feedbackKernelId, SubChunkSize, SubChunkSize, SubChunkSize); 103 | // generate mesh 104 | voxelizerComputeShader.Dispatch(_voxelizerKernelId, SubChunkSize, SubChunkSize, SubChunkSize); 105 | 106 | if (draw) 107 | DrawProcedural(); 108 | 109 | Reset(); 110 | } 111 | 112 | private void MoveNoiseOrigin() 113 | { 114 | position += movementSpeed * Time.deltaTime; 115 | 116 | generateVoxelsComputeShader.SetFloat("uFrequency", frequency); 117 | generateVoxelsComputeShader.SetFloat("uAmplitude", amplitude); 118 | generateVoxelsComputeShader.SetVector("uPosition", position); 119 | } 120 | 121 | private void DrawProcedural() 122 | { 123 | var bounds = new Bounds(Vector3.one * ChunkSize / 2f, Vector3.one * ChunkSize); 124 | Graphics.DrawProceduralIndirect(drawMaterial, bounds, MeshTopology.Triangles, _indirectBuffer); 125 | } 126 | 127 | private void Reset() 128 | { 129 | _chunkFeedback[0] = new ChunkFeedback(); 130 | _chunkFeedbackBuffer.SetData(_chunkFeedback); 131 | } 132 | 133 | private void OnDestroy() 134 | { 135 | _voxelBuffer.Release(); 136 | _chunkFeedbackBuffer.Release(); 137 | _subChunkFeedbackBuffer.Release(); 138 | _vertexBuffer.Release(); 139 | _indexBuffer.Release(); 140 | _indirectBuffer.Release(); 141 | Destroy(_mesh); 142 | } 143 | 144 | #region Legacy examples 145 | 146 | /// 147 | /// Create a mesh in the usual way, read data from buffers and assign to mesh 148 | /// 149 | private void VisualiseChunkMesh() 150 | { 151 | var chunkFeedback = _chunkFeedback[0]; 152 | 153 | // get vertices and indices 154 | var vertices = new Vertex[chunkFeedback.vertexCount]; 155 | var indices = new int[chunkFeedback.indexCount]; 156 | 157 | _vertexBuffer.GetData(vertices, 0, 0, (int) chunkFeedback.vertexCount); 158 | _indexBuffer.GetData(indices, 0, 0, (int) chunkFeedback.indexCount); 159 | 160 | // create mesh data arrays 161 | var meshVertices = new Vector3[chunkFeedback.vertexCount]; 162 | var meshUVs = new Vector2[chunkFeedback.vertexCount]; 163 | var meshNormals = new Vector3[chunkFeedback.vertexCount]; 164 | 165 | for (var i = 0; i < chunkFeedback.vertexCount; i++) 166 | { 167 | var vertex = vertices[i]; 168 | meshVertices[i] = vertex.Position; 169 | meshUVs[i] = vertex.UV; 170 | meshNormals[i] = vertex.Normal; 171 | } 172 | 173 | // assign data to mesh 174 | _mesh.Clear(); 175 | _mesh.vertices = meshVertices; 176 | _mesh.uv = meshUVs; 177 | _mesh.normals = meshNormals; 178 | _mesh.SetIndices(indices, MeshTopology.Triangles, 0); 179 | } 180 | 181 | /// 182 | /// Fill the voxel buffer with random values 183 | /// 184 | private void GenerateRandomVoxelsCpu() 185 | { 186 | var voxels = new NativeArray(ChunkSize * ChunkSize * ChunkSize, Allocator.Temp); 187 | 188 | var generateRandomVoxelsJob = new GenerateRandomVoxelsJob 189 | { 190 | Voxels = voxels 191 | }; 192 | 193 | generateRandomVoxelsJob.Schedule(voxels.Length, ChunkSize).Complete(); 194 | 195 | // set buffer data 196 | _voxelBuffer.SetData(voxels); 197 | 198 | voxels.Dispose(); 199 | } 200 | 201 | #endregion 202 | } 203 | -------------------------------------------------------------------------------- /Assets/Scripts/VoxelChunkGenerator.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a9fb7a8e7188dde4c9ddcaf0ba5f9eeb 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Settings.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b912c280ff3334ce98f15a14956a3e5c 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Settings/HDRP Balanced.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3e2e6bfc59709614ab90c0cd7d755e48 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 0 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Settings/HDRP High Fidelity.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!114 &11400000 4 | MonoBehaviour: 5 | m_ObjectHideFlags: 0 6 | m_CorrespondingSourceObject: {fileID: 0} 7 | m_PrefabInstance: {fileID: 0} 8 | m_PrefabAsset: {fileID: 0} 9 | m_GameObject: {fileID: 0} 10 | m_Enabled: 1 11 | m_EditorHideFlags: 0 12 | m_Script: {fileID: 11500000, guid: 0cf1dab834d4ec34195b920ea7bbf9ec, type: 3} 13 | m_Name: HDRP High Fidelity 14 | m_EditorClassIdentifier: 15 | m_RenderPipelineSettings: 16 | supportShadowMask: 0 17 | supportSSR: 0 18 | supportSSRTransparent: 0 19 | supportSSAO: 1 20 | supportSSGI: 0 21 | supportSubsurfaceScattering: 1 22 | sssSampleBudget: 23 | m_Values: 140000002800000050000000 24 | m_SchemaId: 25 | m_Id: With3Levels 26 | supportVolumetrics: 1 27 | supportVolumetricClouds: 0 28 | supportLightLayers: 1 29 | supportDistortion: 1 30 | supportTransparentBackface: 1 31 | supportTransparentDepthPrepass: 1 32 | supportTransparentDepthPostpass: 1 33 | colorBufferFormat: 48 34 | supportCustomPass: 1 35 | customBufferFormat: 12 36 | supportedLitShaderMode: 2 37 | planarReflectionResolution: 38 | m_Values: 000100000004000000080000 39 | m_SchemaId: 40 | m_Id: With3Levels 41 | supportDecals: 1 42 | supportDecalLayers: 0 43 | supportSurfaceGradient: 0 44 | decalNormalBufferHP: 0 45 | msaaSampleCount: 1 46 | supportMotionVectors: 1 47 | supportRuntimeAOVAPI: 0 48 | supportDitheringCrossFade: 1 49 | supportTerrainHole: 0 50 | supportProbeVolume: 0 51 | probeVolumeMemoryBudget: 1024 52 | probeVolumeSHBands: 1 53 | supportRayTracing: 0 54 | supportedRayTracingMode: 3 55 | lightLoopSettings: 56 | cookieAtlasSize: 512 57 | cookieFormat: 74 58 | cookieAtlasLastValidMip: 0 59 | cookieTexArraySize: 16 60 | planarReflectionAtlasSize: 2048 61 | reflectionProbeCacheSize: 32 62 | reflectionCubemapSize: 256 63 | reflectionCacheCompressed: 1 64 | reflectionProbeFormat: 74 65 | skyReflectionSize: 1024 66 | skyLightingOverrideLayerMask: 67 | serializedVersion: 2 68 | m_Bits: 0 69 | supportFabricConvolution: 0 70 | maxDirectionalLightsOnScreen: 16 71 | maxPunctualLightsOnScreen: 512 72 | maxAreaLightsOnScreen: 64 73 | maxEnvLightsOnScreen: 32 74 | maxDecalsOnScreen: 512 75 | maxPlanarReflectionOnScreen: 16 76 | maxLightsPerClusterCell: 16 77 | maxLocalVolumetricFogSize: 32 78 | maxLocalVolumetricFogOnScreen: 64 79 | hdShadowInitParams: 80 | maxShadowRequests: 128 81 | directionalShadowsDepthBits: 16 82 | shadowFilteringQuality: 2 83 | punctualLightShadowAtlas: 84 | shadowAtlasResolution: 4096 85 | shadowAtlasDepthBits: 16 86 | useDynamicViewportRescale: 1 87 | areaLightShadowAtlas: 88 | shadowAtlasResolution: 4096 89 | shadowAtlasDepthBits: 16 90 | useDynamicViewportRescale: 0 91 | cachedPunctualLightShadowAtlas: 4096 92 | cachedAreaLightShadowAtlas: 4096 93 | shadowResolutionDirectional: 94 | m_Values: 00020000000400000008000000100000 95 | m_SchemaId: 96 | m_Id: With4Levels 97 | shadowResolutionPunctual: 98 | m_Values: 00020000000400000008000000100000 99 | m_SchemaId: 100 | m_Id: With4Levels 101 | shadowResolutionArea: 102 | m_Values: 00020000000400000008000000100000 103 | m_SchemaId: 104 | m_Id: With4Levels 105 | maxDirectionalShadowMapResolution: 4096 106 | maxPunctualShadowMapResolution: 4096 107 | maxAreaShadowMapResolution: 4096 108 | supportScreenSpaceShadows: 0 109 | maxScreenSpaceShadowSlots: 4 110 | screenSpaceShadowBufferFormat: 48 111 | decalSettings: 112 | drawDistance: 1000 113 | atlasWidth: 2048 114 | atlasHeight: 2048 115 | perChannelMask: 1 116 | postProcessSettings: 117 | m_LutSize: 32 118 | lutFormat: 48 119 | bufferFormat: 74 120 | dynamicResolutionSettings: 121 | enabled: 0 122 | useMipBias: 0 123 | enableDLSS: 0 124 | DLSSPerfQualitySetting: 0 125 | DLSSUseOptimalSettings: 0 126 | DLSSSharpness: 0 127 | maxPercentage: 100 128 | minPercentage: 100 129 | dynResType: 1 130 | upsampleFilter: 1 131 | forceResolution: 0 132 | forcedPercentage: 100 133 | lowResTransparencyMinimumThreshold: 0 134 | rayTracingHalfResThreshold: 50 135 | lowresTransparentSettings: 136 | enabled: 1 137 | checkerboardDepthBuffer: 1 138 | upsampleType: 1 139 | xrSettings: 140 | singlePass: 1 141 | occlusionMesh: 1 142 | cameraJitter: 0 143 | postProcessQualitySettings: 144 | NearBlurSampleCount: 030000000500000008000000 145 | NearBlurMaxRadius: 146 | - 2 147 | - 4 148 | - 7 149 | FarBlurSampleCount: 04000000070000000e000000 150 | FarBlurMaxRadius: 151 | - 5 152 | - 8 153 | - 13 154 | DoFResolution: 040000000200000001000000 155 | DoFHighQualityFiltering: 000101 156 | DoFPhysicallyBased: 000000 157 | MotionBlurSampleCount: 04000000080000000c000000 158 | BloomRes: 040000000200000002000000 159 | BloomHighQualityFiltering: 000101 160 | BloomHighQualityPrefiltering: 000001 161 | ChromaticAberrationMaxSamples: 03000000060000000c000000 162 | lightSettings: 163 | useContactShadow: 164 | m_Values: 000101 165 | m_SchemaId: 166 | m_Id: 167 | maximumLODLevel: 168 | m_Values: 000000000000000000000000 169 | m_SchemaId: 170 | m_Id: With3Levels 171 | lodBias: 172 | m_Values: 173 | - 1 174 | - 1 175 | - 1 176 | m_SchemaId: 177 | m_Id: With3Levels 178 | lightingQualitySettings: 179 | AOStepCount: 040000000600000010000000 180 | AOFullRes: 000001 181 | AOMaximumRadiusPixels: 200000002800000050000000 182 | AOBilateralUpsample: 000101 183 | AODirectionCount: 010000000200000004000000 184 | ContactShadowSampleCount: 060000000a00000010000000 185 | SSRMaxRaySteps: 100000002000000040000000 186 | SSGIRaySteps: 200000004000000080000000 187 | SSGIDenoise: 010101 188 | SSGIHalfResDenoise: 010000 189 | SSGIDenoiserRadius: 190 | - 0.75 191 | - 0.5 192 | - 0.5 193 | SSGISecondDenoise: 010101 194 | RTAORayLength: 195 | - 0.5 196 | - 3 197 | - 20 198 | RTAOSampleCount: 010000000200000008000000 199 | RTAODenoise: 010101 200 | RTAODenoiserRadius: 201 | - 0.25 202 | - 0.5 203 | - 0.65 204 | RTGIRayLength: 205 | - 50 206 | - 50 207 | - 50 208 | RTGIFullResolution: 000001 209 | RTGIClampValue: 210 | - 0.5 211 | - 0.8 212 | - 1.5 213 | RTGIRaySteps: 200000003000000040000000 214 | RTGIDenoise: 010101 215 | RTGIHalfResDenoise: 010000 216 | RTGIDenoiserRadius: 217 | - 0.66 218 | - 0.66 219 | - 1 220 | RTGISecondDenoise: 010101 221 | RTRMinSmoothness: 222 | - 0.6 223 | - 0.4 224 | - 0 225 | RTRSmoothnessFadeStart: 226 | - 0.7 227 | - 0.5 228 | - 0 229 | RTRRayLength: 230 | - 50 231 | - 50 232 | - 50 233 | RTRClampValue: 234 | - 0.8 235 | - 1 236 | - 1.2 237 | RTRFullResolution: 000001 238 | RTRRayMaxIterations: 200000003000000040000000 239 | RTRDenoise: 010101 240 | RTRDenoiserRadius: 080000000c00000010000000 241 | RTRSmoothDenoising: 010000 242 | Fog_ControlMode: 000000000000000000000000 243 | Fog_Budget: 244 | - 0.25 245 | - 0.5 246 | - 0.75 247 | Fog_DepthRatio: 248 | - 0.5 249 | - 0.5 250 | - 0.5 251 | m_ObsoleteLightLayerName0: Light LayerDefault 252 | m_ObsoleteLightLayerName1: InteriorOnly 253 | m_ObsoleteLightLayerName2: ExteriorOnly 254 | m_ObsoleteLightLayerName3: LampsOnly 255 | m_ObsoleteLightLayerName4: Light Layer 4 256 | m_ObsoleteLightLayerName5: Light Layer 5 257 | m_ObsoleteLightLayerName6: Light Layer 6 258 | m_ObsoleteLightLayerName7: Light Layer 7 259 | m_ObsoleteDecalLayerName0: Decal Layer default 260 | m_ObsoleteDecalLayerName1: Decal Layer 1 261 | m_ObsoleteDecalLayerName2: Decal Layer 2 262 | m_ObsoleteDecalLayerName3: Decal Layer 3 263 | m_ObsoleteDecalLayerName4: Decal Layer 4 264 | m_ObsoleteDecalLayerName5: Decal Layer 5 265 | m_ObsoleteDecalLayerName6: Decal Layer 6 266 | m_ObsoleteDecalLayerName7: Decal Layer 7 267 | m_ObsoleteSupportRuntimeDebugDisplay: 0 268 | allowShaderVariantStripping: 1 269 | enableSRPBatcher: 1 270 | availableMaterialQualityLevels: -1 271 | m_DefaultMaterialQualityLevel: 4 272 | diffusionProfileSettings: {fileID: 0} 273 | virtualTexturingSettings: 274 | streamingCpuCacheSizeInMegaBytes: 256 275 | streamingGpuCacheSettings: 276 | - format: 0 277 | sizeInMegaBytes: 128 278 | m_UseRenderGraph: 1 279 | m_Version: 21 280 | m_ObsoleteFrameSettings: 281 | overrides: 0 282 | enableShadow: 0 283 | enableContactShadows: 0 284 | enableShadowMask: 0 285 | enableSSR: 0 286 | enableSSAO: 0 287 | enableSubsurfaceScattering: 0 288 | enableTransmission: 0 289 | enableAtmosphericScattering: 0 290 | enableVolumetrics: 0 291 | enableReprojectionForVolumetrics: 0 292 | enableLightLayers: 0 293 | enableExposureControl: 1 294 | diffuseGlobalDimmer: 0 295 | specularGlobalDimmer: 0 296 | shaderLitMode: 0 297 | enableDepthPrepassWithDeferredRendering: 0 298 | enableTransparentPrepass: 0 299 | enableMotionVectors: 0 300 | enableObjectMotionVectors: 0 301 | enableDecals: 0 302 | enableRoughRefraction: 0 303 | enableTransparentPostpass: 0 304 | enableDistortion: 0 305 | enablePostprocess: 0 306 | enableOpaqueObjects: 0 307 | enableTransparentObjects: 0 308 | enableRealtimePlanarReflection: 0 309 | enableMSAA: 0 310 | enableAsyncCompute: 0 311 | runLightListAsync: 0 312 | runSSRAsync: 0 313 | runSSAOAsync: 0 314 | runContactShadowsAsync: 0 315 | runVolumeVoxelizationAsync: 0 316 | lightLoopSettings: 317 | overrides: 0 318 | enableDeferredTileAndCluster: 0 319 | enableComputeLightEvaluation: 0 320 | enableComputeLightVariants: 0 321 | enableComputeMaterialVariants: 0 322 | enableFptlForForwardOpaque: 0 323 | enableBigTilePrepass: 0 324 | isFptlEnabled: 0 325 | m_ObsoleteBakedOrCustomReflectionFrameSettings: 326 | overrides: 0 327 | enableShadow: 0 328 | enableContactShadows: 0 329 | enableShadowMask: 0 330 | enableSSR: 0 331 | enableSSAO: 0 332 | enableSubsurfaceScattering: 0 333 | enableTransmission: 0 334 | enableAtmosphericScattering: 0 335 | enableVolumetrics: 0 336 | enableReprojectionForVolumetrics: 0 337 | enableLightLayers: 0 338 | enableExposureControl: 1 339 | diffuseGlobalDimmer: 0 340 | specularGlobalDimmer: 0 341 | shaderLitMode: 0 342 | enableDepthPrepassWithDeferredRendering: 0 343 | enableTransparentPrepass: 0 344 | enableMotionVectors: 0 345 | enableObjectMotionVectors: 0 346 | enableDecals: 0 347 | enableRoughRefraction: 0 348 | enableTransparentPostpass: 0 349 | enableDistortion: 0 350 | enablePostprocess: 0 351 | enableOpaqueObjects: 0 352 | enableTransparentObjects: 0 353 | enableRealtimePlanarReflection: 0 354 | enableMSAA: 0 355 | enableAsyncCompute: 0 356 | runLightListAsync: 0 357 | runSSRAsync: 0 358 | runSSAOAsync: 0 359 | runContactShadowsAsync: 0 360 | runVolumeVoxelizationAsync: 0 361 | lightLoopSettings: 362 | overrides: 0 363 | enableDeferredTileAndCluster: 0 364 | enableComputeLightEvaluation: 0 365 | enableComputeLightVariants: 0 366 | enableComputeMaterialVariants: 0 367 | enableFptlForForwardOpaque: 0 368 | enableBigTilePrepass: 0 369 | isFptlEnabled: 0 370 | m_ObsoleteRealtimeReflectionFrameSettings: 371 | overrides: 0 372 | enableShadow: 0 373 | enableContactShadows: 0 374 | enableShadowMask: 0 375 | enableSSR: 0 376 | enableSSAO: 0 377 | enableSubsurfaceScattering: 0 378 | enableTransmission: 0 379 | enableAtmosphericScattering: 0 380 | enableVolumetrics: 0 381 | enableReprojectionForVolumetrics: 0 382 | enableLightLayers: 0 383 | enableExposureControl: 1 384 | diffuseGlobalDimmer: 0 385 | specularGlobalDimmer: 0 386 | shaderLitMode: 0 387 | enableDepthPrepassWithDeferredRendering: 0 388 | enableTransparentPrepass: 0 389 | enableMotionVectors: 0 390 | enableObjectMotionVectors: 0 391 | enableDecals: 0 392 | enableRoughRefraction: 0 393 | enableTransparentPostpass: 0 394 | enableDistortion: 0 395 | enablePostprocess: 0 396 | enableOpaqueObjects: 0 397 | enableTransparentObjects: 0 398 | enableRealtimePlanarReflection: 0 399 | enableMSAA: 0 400 | enableAsyncCompute: 0 401 | runLightListAsync: 0 402 | runSSRAsync: 0 403 | runSSAOAsync: 0 404 | runContactShadowsAsync: 0 405 | runVolumeVoxelizationAsync: 0 406 | lightLoopSettings: 407 | overrides: 0 408 | enableDeferredTileAndCluster: 0 409 | enableComputeLightEvaluation: 0 410 | enableComputeLightVariants: 0 411 | enableComputeMaterialVariants: 0 412 | enableFptlForForwardOpaque: 0 413 | enableBigTilePrepass: 0 414 | isFptlEnabled: 0 415 | m_ObsoleteDefaultVolumeProfile: {fileID: 0} 416 | m_ObsoleteDefaultLookDevProfile: {fileID: 11400000, guid: 254c4fe87beb7be4fa72e1681edbed02, 417 | type: 2} 418 | m_ObsoleteFrameSettingsMovedToDefaultSettings: 419 | bitDatas: 420 | data1: 140666621394781 421 | data2: 4539628425463136280 422 | lodBias: 1 423 | lodBiasMode: 0 424 | lodBiasQualityLevel: 0 425 | maximumLODLevel: 0 426 | maximumLODLevelMode: 0 427 | maximumLODLevelQualityLevel: 0 428 | sssQualityMode: 0 429 | sssQualityLevel: 0 430 | sssCustomSampleBudget: 20 431 | msaaMode: 0 432 | materialQuality: 0 433 | m_ObsoleteBakedOrCustomReflectionFrameSettingsMovedToDefaultSettings: 434 | bitDatas: 435 | data1: 139742655312669 436 | data2: 4539628424389459992 437 | lodBias: 1 438 | lodBiasMode: 0 439 | lodBiasQualityLevel: 0 440 | maximumLODLevel: 0 441 | maximumLODLevelMode: 0 442 | maximumLODLevelQualityLevel: 0 443 | sssQualityMode: 0 444 | sssQualityLevel: 0 445 | sssCustomSampleBudget: 20 446 | msaaMode: 0 447 | materialQuality: 0 448 | m_ObsoleteRealtimeReflectionFrameSettingsMovedToDefaultSettings: 449 | bitDatas: 450 | data1: 139991494955789 451 | data2: 4539628424389459992 452 | lodBias: 1 453 | lodBiasMode: 0 454 | lodBiasQualityLevel: 0 455 | maximumLODLevel: 0 456 | maximumLODLevelMode: 0 457 | maximumLODLevelQualityLevel: 0 458 | sssQualityMode: 0 459 | sssQualityLevel: 0 460 | sssCustomSampleBudget: 20 461 | msaaMode: 0 462 | materialQuality: 0 463 | m_ObsoleteRenderPipelineResources: {fileID: 11400000, guid: 3ce144cff5783da45aa5d4fdc2da14b7, 464 | type: 2} 465 | m_ObsoleteRenderPipelineRayTracingResources: {fileID: 0} 466 | m_ObsoleteBeforeTransparentCustomPostProcesses: [] 467 | m_ObsoleteBeforePostProcessCustomPostProcesses: [] 468 | m_ObsoleteAfterPostProcessCustomPostProcesses: [] 469 | m_ObsoleteBeforeTAACustomPostProcesses: [] 470 | m_ObsoleteShaderVariantLogLevel: 0 471 | m_ObsoleteLensAttenuation: 0 472 | m_ObsoleteDiffusionProfileSettingsList: 473 | - {fileID: 0} 474 | - {fileID: 0} 475 | -------------------------------------------------------------------------------- /Assets/Settings/HDRP High Fidelity.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 36dd385e759c96147b6463dcd1149c11 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 0 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Settings/HDRP Performant.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!114 &11400000 4 | MonoBehaviour: 5 | m_ObjectHideFlags: 0 6 | m_CorrespondingSourceObject: {fileID: 0} 7 | m_PrefabInstance: {fileID: 0} 8 | m_PrefabAsset: {fileID: 0} 9 | m_GameObject: {fileID: 0} 10 | m_Enabled: 1 11 | m_EditorHideFlags: 0 12 | m_Script: {fileID: 11500000, guid: 0cf1dab834d4ec34195b920ea7bbf9ec, type: 3} 13 | m_Name: HDRP Performant 14 | m_EditorClassIdentifier: 15 | m_RenderPipelineSettings: 16 | supportShadowMask: 0 17 | supportSSR: 0 18 | supportSSRTransparent: 0 19 | supportSSAO: 1 20 | supportSSGI: 0 21 | supportSubsurfaceScattering: 1 22 | sssSampleBudget: 23 | m_Values: 140000002800000050000000 24 | m_SchemaId: 25 | m_Id: With3Levels 26 | supportVolumetrics: 0 27 | supportVolumetricClouds: 0 28 | supportLightLayers: 1 29 | supportDistortion: 1 30 | supportTransparentBackface: 1 31 | supportTransparentDepthPrepass: 1 32 | supportTransparentDepthPostpass: 1 33 | colorBufferFormat: 74 34 | supportCustomPass: 1 35 | customBufferFormat: 12 36 | supportedLitShaderMode: 2 37 | planarReflectionResolution: 38 | m_Values: 000100000002000000020000 39 | m_SchemaId: 40 | m_Id: With3Levels 41 | supportDecals: 1 42 | supportDecalLayers: 0 43 | supportSurfaceGradient: 0 44 | decalNormalBufferHP: 0 45 | msaaSampleCount: 1 46 | supportMotionVectors: 1 47 | supportRuntimeAOVAPI: 0 48 | supportDitheringCrossFade: 1 49 | supportTerrainHole: 0 50 | supportProbeVolume: 0 51 | probeVolumeMemoryBudget: 1024 52 | probeVolumeSHBands: 1 53 | supportRayTracing: 0 54 | supportedRayTracingMode: 3 55 | lightLoopSettings: 56 | cookieAtlasSize: 512 57 | cookieFormat: 74 58 | cookieAtlasLastValidMip: 0 59 | cookieTexArraySize: 16 60 | planarReflectionAtlasSize: 512 61 | reflectionProbeCacheSize: 32 62 | reflectionCubemapSize: 256 63 | reflectionCacheCompressed: 1 64 | reflectionProbeFormat: 74 65 | skyReflectionSize: 256 66 | skyLightingOverrideLayerMask: 67 | serializedVersion: 2 68 | m_Bits: 0 69 | supportFabricConvolution: 0 70 | maxDirectionalLightsOnScreen: 16 71 | maxPunctualLightsOnScreen: 512 72 | maxAreaLightsOnScreen: 64 73 | maxEnvLightsOnScreen: 32 74 | maxDecalsOnScreen: 512 75 | maxPlanarReflectionOnScreen: 16 76 | maxLightsPerClusterCell: 16 77 | maxLocalVolumetricFogSize: 32 78 | maxLocalVolumetricFogOnScreen: 64 79 | hdShadowInitParams: 80 | maxShadowRequests: 128 81 | directionalShadowsDepthBits: 16 82 | shadowFilteringQuality: 1 83 | punctualLightShadowAtlas: 84 | shadowAtlasResolution: 4096 85 | shadowAtlasDepthBits: 16 86 | useDynamicViewportRescale: 1 87 | areaLightShadowAtlas: 88 | shadowAtlasResolution: 2048 89 | shadowAtlasDepthBits: 16 90 | useDynamicViewportRescale: 0 91 | cachedPunctualLightShadowAtlas: 2048 92 | cachedAreaLightShadowAtlas: 2048 93 | shadowResolutionDirectional: 94 | m_Values: 80000000000100000002000000040000 95 | m_SchemaId: 96 | m_Id: With4Levels 97 | shadowResolutionPunctual: 98 | m_Values: 00010000000200000004000000080000 99 | m_SchemaId: 100 | m_Id: With4Levels 101 | shadowResolutionArea: 102 | m_Values: 00010000000200000004000000080000 103 | m_SchemaId: 104 | m_Id: With4Levels 105 | maxDirectionalShadowMapResolution: 1024 106 | maxPunctualShadowMapResolution: 2048 107 | maxAreaShadowMapResolution: 2048 108 | supportScreenSpaceShadows: 0 109 | maxScreenSpaceShadowSlots: 4 110 | screenSpaceShadowBufferFormat: 48 111 | decalSettings: 112 | drawDistance: 1000 113 | atlasWidth: 2048 114 | atlasHeight: 2048 115 | perChannelMask: 1 116 | postProcessSettings: 117 | m_LutSize: 32 118 | lutFormat: 48 119 | bufferFormat: 74 120 | dynamicResolutionSettings: 121 | enabled: 0 122 | useMipBias: 0 123 | enableDLSS: 0 124 | DLSSPerfQualitySetting: 0 125 | DLSSUseOptimalSettings: 0 126 | DLSSSharpness: 0 127 | maxPercentage: 100 128 | minPercentage: 100 129 | dynResType: 1 130 | upsampleFilter: 1 131 | forceResolution: 0 132 | forcedPercentage: 100 133 | lowResTransparencyMinimumThreshold: 0 134 | rayTracingHalfResThreshold: 50 135 | lowresTransparentSettings: 136 | enabled: 1 137 | checkerboardDepthBuffer: 1 138 | upsampleType: 1 139 | xrSettings: 140 | singlePass: 1 141 | occlusionMesh: 1 142 | cameraJitter: 0 143 | postProcessQualitySettings: 144 | NearBlurSampleCount: 030000000400000004000000 145 | NearBlurMaxRadius: 146 | - 2 147 | - 3 148 | - 3 149 | FarBlurSampleCount: 040000000500000005000000 150 | FarBlurMaxRadius: 151 | - 5 152 | - 6 153 | - 6 154 | DoFResolution: 040000000400000002000000 155 | DoFHighQualityFiltering: 000100 156 | DoFPhysicallyBased: 000000 157 | MotionBlurSampleCount: 04000000080000000c000000 158 | BloomRes: 040000000200000002000000 159 | BloomHighQualityFiltering: 000101 160 | BloomHighQualityPrefiltering: 000001 161 | ChromaticAberrationMaxSamples: 03000000060000000c000000 162 | lightSettings: 163 | useContactShadow: 164 | m_Values: 000101 165 | m_SchemaId: 166 | m_Id: 167 | maximumLODLevel: 168 | m_Values: 000000000000000000000000 169 | m_SchemaId: 170 | m_Id: With3Levels 171 | lodBias: 172 | m_Values: 173 | - 1 174 | - 1 175 | - 1 176 | m_SchemaId: 177 | m_Id: With3Levels 178 | lightingQualitySettings: 179 | AOStepCount: 030000000400000006000000 180 | AOFullRes: 000000 181 | AOMaximumRadiusPixels: 180000002000000020000000 182 | AOBilateralUpsample: 000000 183 | AODirectionCount: 010000000100000002000000 184 | ContactShadowSampleCount: 04000000060000000a000000 185 | SSRMaxRaySteps: 080000001000000020000000 186 | SSGIRaySteps: 200000004000000080000000 187 | SSGIDenoise: 010101 188 | SSGIHalfResDenoise: 010000 189 | SSGIDenoiserRadius: 190 | - 0.75 191 | - 0.5 192 | - 0.5 193 | SSGISecondDenoise: 010101 194 | RTAORayLength: 195 | - 0.5 196 | - 3 197 | - 20 198 | RTAOSampleCount: 010000000200000008000000 199 | RTAODenoise: 010101 200 | RTAODenoiserRadius: 201 | - 0.25 202 | - 0.5 203 | - 0.65 204 | RTGIRayLength: 205 | - 50 206 | - 50 207 | - 50 208 | RTGIFullResolution: 000001 209 | RTGIClampValue: 210 | - 0.5 211 | - 0.8 212 | - 1.5 213 | RTGIRaySteps: 200000003000000040000000 214 | RTGIDenoise: 010101 215 | RTGIHalfResDenoise: 010000 216 | RTGIDenoiserRadius: 217 | - 0.66 218 | - 0.66 219 | - 1 220 | RTGISecondDenoise: 010101 221 | RTRMinSmoothness: 222 | - 0.6 223 | - 0.4 224 | - 0 225 | RTRSmoothnessFadeStart: 226 | - 0.7 227 | - 0.5 228 | - 0 229 | RTRRayLength: 230 | - 50 231 | - 50 232 | - 50 233 | RTRClampValue: 234 | - 0.8 235 | - 1 236 | - 1.2 237 | RTRFullResolution: 000001 238 | RTRRayMaxIterations: 200000003000000040000000 239 | RTRDenoise: 010101 240 | RTRDenoiserRadius: 080000000c00000010000000 241 | RTRSmoothDenoising: 010000 242 | Fog_ControlMode: 000000000000000000000000 243 | Fog_Budget: 244 | - 0.125 245 | - 0.25 246 | - 0.5 247 | Fog_DepthRatio: 248 | - 0.5 249 | - 0.5 250 | - 0.5 251 | m_ObsoleteLightLayerName0: Light LayerDefault 252 | m_ObsoleteLightLayerName1: InteriorOnly 253 | m_ObsoleteLightLayerName2: ExteriorOnly 254 | m_ObsoleteLightLayerName3: LampsOnly 255 | m_ObsoleteLightLayerName4: ReflectionsOnly 256 | m_ObsoleteLightLayerName5: Light Layer 5 257 | m_ObsoleteLightLayerName6: Light Layer 6 258 | m_ObsoleteLightLayerName7: Light Layer 7 259 | m_ObsoleteDecalLayerName0: Decal Layer default 260 | m_ObsoleteDecalLayerName1: Decal Layer 1 261 | m_ObsoleteDecalLayerName2: Decal Layer 2 262 | m_ObsoleteDecalLayerName3: Decal Layer 3 263 | m_ObsoleteDecalLayerName4: Decal Layer 4 264 | m_ObsoleteDecalLayerName5: Decal Layer 5 265 | m_ObsoleteDecalLayerName6: Decal Layer 6 266 | m_ObsoleteDecalLayerName7: Decal Layer 7 267 | m_ObsoleteSupportRuntimeDebugDisplay: 0 268 | allowShaderVariantStripping: 1 269 | enableSRPBatcher: 1 270 | availableMaterialQualityLevels: -1 271 | m_DefaultMaterialQualityLevel: 4 272 | diffusionProfileSettings: {fileID: 0} 273 | virtualTexturingSettings: 274 | streamingCpuCacheSizeInMegaBytes: 256 275 | streamingGpuCacheSettings: 276 | - format: 0 277 | sizeInMegaBytes: 128 278 | m_UseRenderGraph: 1 279 | m_Version: 21 280 | m_ObsoleteFrameSettings: 281 | overrides: 0 282 | enableShadow: 0 283 | enableContactShadows: 0 284 | enableShadowMask: 0 285 | enableSSR: 0 286 | enableSSAO: 0 287 | enableSubsurfaceScattering: 0 288 | enableTransmission: 0 289 | enableAtmosphericScattering: 0 290 | enableVolumetrics: 0 291 | enableReprojectionForVolumetrics: 0 292 | enableLightLayers: 0 293 | enableExposureControl: 1 294 | diffuseGlobalDimmer: 0 295 | specularGlobalDimmer: 0 296 | shaderLitMode: 0 297 | enableDepthPrepassWithDeferredRendering: 0 298 | enableTransparentPrepass: 0 299 | enableMotionVectors: 0 300 | enableObjectMotionVectors: 0 301 | enableDecals: 0 302 | enableRoughRefraction: 0 303 | enableTransparentPostpass: 0 304 | enableDistortion: 0 305 | enablePostprocess: 0 306 | enableOpaqueObjects: 0 307 | enableTransparentObjects: 0 308 | enableRealtimePlanarReflection: 0 309 | enableMSAA: 0 310 | enableAsyncCompute: 0 311 | runLightListAsync: 0 312 | runSSRAsync: 0 313 | runSSAOAsync: 0 314 | runContactShadowsAsync: 0 315 | runVolumeVoxelizationAsync: 0 316 | lightLoopSettings: 317 | overrides: 0 318 | enableDeferredTileAndCluster: 0 319 | enableComputeLightEvaluation: 0 320 | enableComputeLightVariants: 0 321 | enableComputeMaterialVariants: 0 322 | enableFptlForForwardOpaque: 0 323 | enableBigTilePrepass: 0 324 | isFptlEnabled: 0 325 | m_ObsoleteBakedOrCustomReflectionFrameSettings: 326 | overrides: 0 327 | enableShadow: 0 328 | enableContactShadows: 0 329 | enableShadowMask: 0 330 | enableSSR: 0 331 | enableSSAO: 0 332 | enableSubsurfaceScattering: 0 333 | enableTransmission: 0 334 | enableAtmosphericScattering: 0 335 | enableVolumetrics: 0 336 | enableReprojectionForVolumetrics: 0 337 | enableLightLayers: 0 338 | enableExposureControl: 1 339 | diffuseGlobalDimmer: 0 340 | specularGlobalDimmer: 0 341 | shaderLitMode: 0 342 | enableDepthPrepassWithDeferredRendering: 0 343 | enableTransparentPrepass: 0 344 | enableMotionVectors: 0 345 | enableObjectMotionVectors: 0 346 | enableDecals: 0 347 | enableRoughRefraction: 0 348 | enableTransparentPostpass: 0 349 | enableDistortion: 0 350 | enablePostprocess: 0 351 | enableOpaqueObjects: 0 352 | enableTransparentObjects: 0 353 | enableRealtimePlanarReflection: 0 354 | enableMSAA: 0 355 | enableAsyncCompute: 0 356 | runLightListAsync: 0 357 | runSSRAsync: 0 358 | runSSAOAsync: 0 359 | runContactShadowsAsync: 0 360 | runVolumeVoxelizationAsync: 0 361 | lightLoopSettings: 362 | overrides: 0 363 | enableDeferredTileAndCluster: 0 364 | enableComputeLightEvaluation: 0 365 | enableComputeLightVariants: 0 366 | enableComputeMaterialVariants: 0 367 | enableFptlForForwardOpaque: 0 368 | enableBigTilePrepass: 0 369 | isFptlEnabled: 0 370 | m_ObsoleteRealtimeReflectionFrameSettings: 371 | overrides: 0 372 | enableShadow: 0 373 | enableContactShadows: 0 374 | enableShadowMask: 0 375 | enableSSR: 0 376 | enableSSAO: 0 377 | enableSubsurfaceScattering: 0 378 | enableTransmission: 0 379 | enableAtmosphericScattering: 0 380 | enableVolumetrics: 0 381 | enableReprojectionForVolumetrics: 0 382 | enableLightLayers: 0 383 | enableExposureControl: 1 384 | diffuseGlobalDimmer: 0 385 | specularGlobalDimmer: 0 386 | shaderLitMode: 0 387 | enableDepthPrepassWithDeferredRendering: 0 388 | enableTransparentPrepass: 0 389 | enableMotionVectors: 0 390 | enableObjectMotionVectors: 0 391 | enableDecals: 0 392 | enableRoughRefraction: 0 393 | enableTransparentPostpass: 0 394 | enableDistortion: 0 395 | enablePostprocess: 0 396 | enableOpaqueObjects: 0 397 | enableTransparentObjects: 0 398 | enableRealtimePlanarReflection: 0 399 | enableMSAA: 0 400 | enableAsyncCompute: 0 401 | runLightListAsync: 0 402 | runSSRAsync: 0 403 | runSSAOAsync: 0 404 | runContactShadowsAsync: 0 405 | runVolumeVoxelizationAsync: 0 406 | lightLoopSettings: 407 | overrides: 0 408 | enableDeferredTileAndCluster: 0 409 | enableComputeLightEvaluation: 0 410 | enableComputeLightVariants: 0 411 | enableComputeMaterialVariants: 0 412 | enableFptlForForwardOpaque: 0 413 | enableBigTilePrepass: 0 414 | isFptlEnabled: 0 415 | m_ObsoleteDefaultVolumeProfile: {fileID: 0} 416 | m_ObsoleteDefaultLookDevProfile: {fileID: 11400000, guid: 254c4fe87beb7be4fa72e1681edbed02, 417 | type: 2} 418 | m_ObsoleteFrameSettingsMovedToDefaultSettings: 419 | bitDatas: 420 | data1: 140666621394781 421 | data2: 4539628425463136280 422 | lodBias: 1 423 | lodBiasMode: 0 424 | lodBiasQualityLevel: 0 425 | maximumLODLevel: 0 426 | maximumLODLevelMode: 0 427 | maximumLODLevelQualityLevel: 0 428 | sssQualityMode: 0 429 | sssQualityLevel: 0 430 | sssCustomSampleBudget: 20 431 | msaaMode: 0 432 | materialQuality: 0 433 | m_ObsoleteBakedOrCustomReflectionFrameSettingsMovedToDefaultSettings: 434 | bitDatas: 435 | data1: 139742655312669 436 | data2: 4539628424389459992 437 | lodBias: 1 438 | lodBiasMode: 0 439 | lodBiasQualityLevel: 0 440 | maximumLODLevel: 0 441 | maximumLODLevelMode: 0 442 | maximumLODLevelQualityLevel: 0 443 | sssQualityMode: 0 444 | sssQualityLevel: 0 445 | sssCustomSampleBudget: 20 446 | msaaMode: 0 447 | materialQuality: 0 448 | m_ObsoleteRealtimeReflectionFrameSettingsMovedToDefaultSettings: 449 | bitDatas: 450 | data1: 139716617048837 451 | data2: 4539628424389459992 452 | lodBias: 1 453 | lodBiasMode: 0 454 | lodBiasQualityLevel: 0 455 | maximumLODLevel: 0 456 | maximumLODLevelMode: 0 457 | maximumLODLevelQualityLevel: 0 458 | sssQualityMode: 0 459 | sssQualityLevel: 0 460 | sssCustomSampleBudget: 20 461 | msaaMode: 0 462 | materialQuality: 0 463 | m_ObsoleteRenderPipelineResources: {fileID: 11400000, guid: 3ce144cff5783da45aa5d4fdc2da14b7, 464 | type: 2} 465 | m_ObsoleteRenderPipelineRayTracingResources: {fileID: 0} 466 | m_ObsoleteBeforeTransparentCustomPostProcesses: [] 467 | m_ObsoleteBeforePostProcessCustomPostProcesses: [] 468 | m_ObsoleteAfterPostProcessCustomPostProcesses: [] 469 | m_ObsoleteBeforeTAACustomPostProcesses: [] 470 | m_ObsoleteShaderVariantLogLevel: 0 471 | m_ObsoleteLensAttenuation: 0 472 | m_ObsoleteDiffusionProfileSettingsList: 473 | - {fileID: 0} 474 | - {fileID: 0} 475 | - {fileID: 11400000, guid: 2b7005ba3a4d8474b8cdc34141ad766e, type: 2} 476 | -------------------------------------------------------------------------------- /Assets/Settings/HDRP Performant.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 168a2336534e4e043b2a210b6f8d379a 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 0 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Settings/HDRPDefaultResources.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 181cd982040374fac84aed5329ef5583 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Settings/HDRPDefaultResources/DefaultLookDevProfile.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!114 &11400000 4 | MonoBehaviour: 5 | m_ObjectHideFlags: 0 6 | m_CorrespondingSourceObject: {fileID: 0} 7 | m_PrefabInstance: {fileID: 0} 8 | m_PrefabAsset: {fileID: 0} 9 | m_GameObject: {fileID: 0} 10 | m_Enabled: 1 11 | m_EditorHideFlags: 0 12 | m_Script: {fileID: 11500000, guid: d7fd9488000d3734a9e00ee676215985, type: 3} 13 | m_Name: DefaultLookDevProfile 14 | m_EditorClassIdentifier: 15 | components: 16 | - {fileID: 8761387877531654226} 17 | - {fileID: 1902828633788537306} 18 | - {fileID: 1880163708194025631} 19 | - {fileID: 2340290907100754200} 20 | --- !u!114 &1880163708194025631 21 | MonoBehaviour: 22 | m_ObjectHideFlags: 3 23 | m_CorrespondingSourceObject: {fileID: 0} 24 | m_PrefabInstance: {fileID: 0} 25 | m_PrefabAsset: {fileID: 0} 26 | m_GameObject: {fileID: 0} 27 | m_Enabled: 1 28 | m_EditorHideFlags: 0 29 | m_Script: {fileID: 11500000, guid: 9008a067f4d626c4d8bc4bc48f04bb89, type: 3} 30 | m_Name: AmbientOcclusion 31 | m_EditorClassIdentifier: 32 | active: 1 33 | quality: 34 | m_OverrideState: 0 35 | m_Value: 1 36 | rayTracing: 37 | m_OverrideState: 0 38 | m_Value: 0 39 | intensity: 40 | m_OverrideState: 1 41 | m_Value: 0.5 42 | directLightingStrength: 43 | m_OverrideState: 0 44 | m_Value: 0 45 | radius: 46 | m_OverrideState: 1 47 | m_Value: 1 48 | spatialBilateralAggressiveness: 49 | m_OverrideState: 0 50 | m_Value: 0.15 51 | temporalAccumulation: 52 | m_OverrideState: 0 53 | m_Value: 1 54 | ghostingReduction: 55 | m_OverrideState: 0 56 | m_Value: 0.5 57 | blurSharpness: 58 | m_OverrideState: 0 59 | m_Value: 0.1 60 | layerMask: 61 | m_OverrideState: 0 62 | m_Value: 63 | serializedVersion: 2 64 | m_Bits: 4294967295 65 | m_StepCount: 66 | m_OverrideState: 0 67 | m_Value: 6 68 | m_FullResolution: 69 | m_OverrideState: 0 70 | m_Value: 0 71 | m_MaximumRadiusInPixels: 72 | m_OverrideState: 0 73 | m_Value: 40 74 | m_BilateralUpsample: 75 | m_OverrideState: 0 76 | m_Value: 1 77 | m_DirectionCount: 78 | m_OverrideState: 0 79 | m_Value: 2 80 | m_RayLength: 81 | m_OverrideState: 0 82 | m_Value: 3 83 | m_SampleCount: 84 | m_OverrideState: 0 85 | m_Value: 2 86 | m_Denoise: 87 | m_OverrideState: 0 88 | m_Value: 1 89 | m_DenoiserRadius: 90 | m_OverrideState: 0 91 | m_Value: 0.5 92 | --- !u!114 &1902828633788537306 93 | MonoBehaviour: 94 | m_ObjectHideFlags: 3 95 | m_CorrespondingSourceObject: {fileID: 0} 96 | m_PrefabInstance: {fileID: 0} 97 | m_PrefabAsset: {fileID: 0} 98 | m_GameObject: {fileID: 0} 99 | m_Enabled: 1 100 | m_EditorHideFlags: 0 101 | m_Script: {fileID: 11500000, guid: 7ddcec8a8eb2d684d833ac8f5d26aebd, type: 3} 102 | m_Name: HDShadowSettings 103 | m_EditorClassIdentifier: 104 | active: 1 105 | maxShadowDistance: 106 | m_OverrideState: 1 107 | m_Value: 25 108 | directionalTransmissionMultiplier: 109 | m_OverrideState: 0 110 | m_Value: 1 111 | cascadeShadowSplitCount: 112 | m_OverrideState: 1 113 | m_Value: 2 114 | cascadeShadowSplit0: 115 | m_OverrideState: 0 116 | m_Value: 0.05 117 | cascadeShadowSplit1: 118 | m_OverrideState: 0 119 | m_Value: 0.15 120 | cascadeShadowSplit2: 121 | m_OverrideState: 0 122 | m_Value: 0.3 123 | cascadeShadowBorder0: 124 | m_OverrideState: 0 125 | m_Value: 0 126 | cascadeShadowBorder1: 127 | m_OverrideState: 0 128 | m_Value: 0 129 | cascadeShadowBorder2: 130 | m_OverrideState: 0 131 | m_Value: 0 132 | cascadeShadowBorder3: 133 | m_OverrideState: 0 134 | m_Value: 0 135 | --- !u!114 &2340290907100754200 136 | MonoBehaviour: 137 | m_ObjectHideFlags: 3 138 | m_CorrespondingSourceObject: {fileID: 0} 139 | m_PrefabInstance: {fileID: 0} 140 | m_PrefabAsset: {fileID: 0} 141 | m_GameObject: {fileID: 0} 142 | m_Enabled: 1 143 | m_EditorHideFlags: 0 144 | m_Script: {fileID: 11500000, guid: 24f077503be6ae942a1e1245dbd53ea9, type: 3} 145 | m_Name: Bloom 146 | m_EditorClassIdentifier: 147 | active: 1 148 | quality: 149 | m_OverrideState: 0 150 | m_Value: 3 151 | threshold: 152 | m_OverrideState: 0 153 | m_Value: 0 154 | intensity: 155 | m_OverrideState: 1 156 | m_Value: 0.1 157 | scatter: 158 | m_OverrideState: 0 159 | m_Value: 0.7 160 | tint: 161 | m_OverrideState: 0 162 | m_Value: {r: 1, g: 1, b: 1, a: 1} 163 | dirtTexture: 164 | m_OverrideState: 0 165 | m_Value: {fileID: 0} 166 | dirtIntensity: 167 | m_OverrideState: 0 168 | m_Value: 0 169 | anamorphic: 170 | m_OverrideState: 0 171 | m_Value: 1 172 | m_Resolution: 173 | m_OverrideState: 0 174 | m_Value: 2 175 | m_HighQualityPrefiltering: 176 | m_OverrideState: 0 177 | m_Value: 0 178 | m_HighQualityFiltering: 179 | m_OverrideState: 0 180 | m_Value: 1 181 | --- !u!114 &8761387877531654226 182 | MonoBehaviour: 183 | m_ObjectHideFlags: 3 184 | m_CorrespondingSourceObject: {fileID: 0} 185 | m_PrefabInstance: {fileID: 0} 186 | m_PrefabAsset: {fileID: 0} 187 | m_GameObject: {fileID: 0} 188 | m_Enabled: 1 189 | m_EditorHideFlags: 0 190 | m_Script: {fileID: 11500000, guid: f086a068d4c5889438831b3ae9afc11c, type: 3} 191 | m_Name: Tonemapping 192 | m_EditorClassIdentifier: 193 | active: 1 194 | mode: 195 | m_OverrideState: 1 196 | m_Value: 1 197 | toeStrength: 198 | m_OverrideState: 0 199 | m_Value: 0 200 | toeLength: 201 | m_OverrideState: 0 202 | m_Value: 0.5 203 | shoulderStrength: 204 | m_OverrideState: 0 205 | m_Value: 0 206 | shoulderLength: 207 | m_OverrideState: 0 208 | m_Value: 0.5 209 | shoulderAngle: 210 | m_OverrideState: 0 211 | m_Value: 0 212 | gamma: 213 | m_OverrideState: 0 214 | m_Value: 1 215 | lutTexture: 216 | m_OverrideState: 0 217 | m_Value: {fileID: 0} 218 | lutContribution: 219 | m_OverrideState: 0 220 | m_Value: 1 221 | -------------------------------------------------------------------------------- /Assets/Settings/HDRPDefaultResources/DefaultLookDevProfile.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4594f4a3fb14247e192bcca6dc23c8ed 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 11400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Settings/HDRPDefaultResources/DefaultSettingsVolumeProfile.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 14b392ee213d25a48b1feddbd9f5a9be 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 11400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Settings/HDRPDefaultResources/FoliageDiffusionProfile.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!114 &11400000 4 | MonoBehaviour: 5 | m_ObjectHideFlags: 0 6 | m_CorrespondingSourceObject: {fileID: 0} 7 | m_PrefabInstance: {fileID: 0} 8 | m_PrefabAsset: {fileID: 0} 9 | m_GameObject: {fileID: 0} 10 | m_Enabled: 1 11 | m_EditorHideFlags: 0 12 | m_Script: {fileID: 11500000, guid: b2686e09ec7aef44bad2843e4416f057, type: 3} 13 | m_Name: FoliageDiffusionProfile 14 | m_EditorClassIdentifier: 15 | m_Version: 1 16 | profile: 17 | scatteringDistance: {r: 0.7568628, g: 0.7019608, b: 0.24313727, a: 1} 18 | transmissionTint: {r: 1, g: 1, b: 1, a: 1} 19 | texturingMode: 0 20 | transmissionMode: 1 21 | thicknessRemap: {x: 0, y: 0.2873168} 22 | worldScale: 1 23 | ior: 1.4 24 | hash: 1081692787 25 | -------------------------------------------------------------------------------- /Assets/Settings/HDRPDefaultResources/FoliageDiffusionProfile.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 879ffae44eefa4412bb327928f1a96dd 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 11400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Settings/HDRPDefaultResources/HDRenderPipelineAsset.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!114 &11400000 4 | MonoBehaviour: 5 | m_ObjectHideFlags: 0 6 | m_CorrespondingSourceObject: {fileID: 0} 7 | m_PrefabInstance: {fileID: 0} 8 | m_PrefabAsset: {fileID: 0} 9 | m_GameObject: {fileID: 0} 10 | m_Enabled: 1 11 | m_EditorHideFlags: 0 12 | m_Script: {fileID: 11500000, guid: 0cf1dab834d4ec34195b920ea7bbf9ec, type: 3} 13 | m_Name: HDRenderPipelineAsset 14 | m_EditorClassIdentifier: 15 | m_RenderPipelineSettings: 16 | supportShadowMask: 1 17 | supportSSR: 0 18 | supportSSRTransparent: 0 19 | supportSSAO: 1 20 | supportSSGI: 0 21 | supportSubsurfaceScattering: 1 22 | sssSampleBudget: 23 | m_Values: 140000002800000050000000 24 | m_SchemaId: 25 | m_Id: With3Levels 26 | supportVolumetrics: 1 27 | supportVolumetricClouds: 0 28 | supportLightLayers: 0 29 | supportDistortion: 1 30 | supportTransparentBackface: 1 31 | supportTransparentDepthPrepass: 1 32 | supportTransparentDepthPostpass: 1 33 | colorBufferFormat: 74 34 | supportCustomPass: 1 35 | customBufferFormat: 12 36 | supportedLitShaderMode: 2 37 | planarReflectionResolution: 38 | m_Values: 000100000004000000080000 39 | m_SchemaId: 40 | m_Id: With3Levels 41 | supportDecals: 1 42 | supportDecalLayers: 0 43 | supportSurfaceGradient: 0 44 | decalNormalBufferHP: 0 45 | msaaSampleCount: 1 46 | supportMotionVectors: 1 47 | supportRuntimeAOVAPI: 0 48 | supportDitheringCrossFade: 1 49 | supportTerrainHole: 0 50 | supportProbeVolume: 0 51 | probeVolumeMemoryBudget: 1024 52 | probeVolumeSHBands: 1 53 | supportRayTracing: 0 54 | supportedRayTracingMode: 3 55 | lightLoopSettings: 56 | cookieAtlasSize: 2048 57 | cookieFormat: 74 58 | cookieAtlasLastValidMip: 0 59 | cookieTexArraySize: 1 60 | planarReflectionAtlasSize: 1024 61 | reflectionProbeCacheSize: 64 62 | reflectionCubemapSize: 256 63 | reflectionCacheCompressed: 0 64 | reflectionProbeFormat: 74 65 | skyReflectionSize: 256 66 | skyLightingOverrideLayerMask: 67 | serializedVersion: 2 68 | m_Bits: 0 69 | supportFabricConvolution: 0 70 | maxDirectionalLightsOnScreen: 16 71 | maxPunctualLightsOnScreen: 512 72 | maxAreaLightsOnScreen: 64 73 | maxEnvLightsOnScreen: 64 74 | maxDecalsOnScreen: 512 75 | maxPlanarReflectionOnScreen: 16 76 | maxLightsPerClusterCell: 8 77 | maxLocalVolumetricFogSize: 32 78 | maxLocalVolumetricFogOnScreen: 64 79 | hdShadowInitParams: 80 | maxShadowRequests: 128 81 | directionalShadowsDepthBits: 32 82 | shadowFilteringQuality: 1 83 | punctualLightShadowAtlas: 84 | shadowAtlasResolution: 4096 85 | shadowAtlasDepthBits: 32 86 | useDynamicViewportRescale: 1 87 | areaLightShadowAtlas: 88 | shadowAtlasResolution: 4096 89 | shadowAtlasDepthBits: 32 90 | useDynamicViewportRescale: 1 91 | cachedPunctualLightShadowAtlas: 2048 92 | cachedAreaLightShadowAtlas: 1024 93 | shadowResolutionDirectional: 94 | m_Values: 00010000000200000004000000080000 95 | m_SchemaId: 96 | m_Id: With4Levels 97 | shadowResolutionPunctual: 98 | m_Values: 00010000000200000004000000080000 99 | m_SchemaId: 100 | m_Id: With4Levels 101 | shadowResolutionArea: 102 | m_Values: 00010000000200000004000000080000 103 | m_SchemaId: 104 | m_Id: With4Levels 105 | maxDirectionalShadowMapResolution: 2048 106 | maxPunctualShadowMapResolution: 2048 107 | maxAreaShadowMapResolution: 2048 108 | supportScreenSpaceShadows: 0 109 | maxScreenSpaceShadowSlots: 4 110 | screenSpaceShadowBufferFormat: 48 111 | decalSettings: 112 | drawDistance: 1000 113 | atlasWidth: 4096 114 | atlasHeight: 4096 115 | perChannelMask: 0 116 | postProcessSettings: 117 | m_LutSize: 32 118 | lutFormat: 48 119 | bufferFormat: 74 120 | dynamicResolutionSettings: 121 | enabled: 0 122 | useMipBias: 0 123 | enableDLSS: 0 124 | DLSSPerfQualitySetting: 0 125 | DLSSUseOptimalSettings: 0 126 | DLSSSharpness: 0 127 | maxPercentage: 100 128 | minPercentage: 100 129 | dynResType: 1 130 | upsampleFilter: 1 131 | forceResolution: 0 132 | forcedPercentage: 100 133 | lowResTransparencyMinimumThreshold: 0 134 | rayTracingHalfResThreshold: 50 135 | lowresTransparentSettings: 136 | enabled: 1 137 | checkerboardDepthBuffer: 1 138 | upsampleType: 1 139 | xrSettings: 140 | singlePass: 1 141 | occlusionMesh: 1 142 | cameraJitter: 0 143 | postProcessQualitySettings: 144 | NearBlurSampleCount: 030000000500000008000000 145 | NearBlurMaxRadius: 146 | - 2 147 | - 4 148 | - 7 149 | FarBlurSampleCount: 04000000070000000e000000 150 | FarBlurMaxRadius: 151 | - 5 152 | - 8 153 | - 13 154 | DoFResolution: 040000000200000001000000 155 | DoFHighQualityFiltering: 000101 156 | DoFPhysicallyBased: 000000 157 | MotionBlurSampleCount: 04000000080000000c000000 158 | BloomRes: 040000000200000002000000 159 | BloomHighQualityFiltering: 000101 160 | BloomHighQualityPrefiltering: 000001 161 | ChromaticAberrationMaxSamples: 03000000060000000c000000 162 | lightSettings: 163 | useContactShadow: 164 | m_Values: 000001 165 | m_SchemaId: 166 | m_Id: With3Levels 167 | maximumLODLevel: 168 | m_Values: 000000000000000000000000 169 | m_SchemaId: 170 | m_Id: With3Levels 171 | lodBias: 172 | m_Values: 173 | - 1 174 | - 1 175 | - 1 176 | m_SchemaId: 177 | m_Id: With3Levels 178 | lightingQualitySettings: 179 | AOStepCount: 040000000600000010000000 180 | AOFullRes: 000001 181 | AOMaximumRadiusPixels: 200000002800000050000000 182 | AOBilateralUpsample: 000101 183 | AODirectionCount: 010000000200000004000000 184 | ContactShadowSampleCount: 060000000a00000010000000 185 | SSRMaxRaySteps: 100000002000000040000000 186 | SSGIRaySteps: 200000004000000080000000 187 | SSGIDenoise: 010101 188 | SSGIHalfResDenoise: 010000 189 | SSGIDenoiserRadius: 190 | - 0.75 191 | - 0.5 192 | - 0.5 193 | SSGISecondDenoise: 010101 194 | RTAORayLength: 195 | - 0.5 196 | - 3 197 | - 20 198 | RTAOSampleCount: 010000000200000008000000 199 | RTAODenoise: 010101 200 | RTAODenoiserRadius: 201 | - 0.25 202 | - 0.5 203 | - 0.65 204 | RTGIRayLength: 205 | - 50 206 | - 50 207 | - 50 208 | RTGIFullResolution: 000001 209 | RTGIClampValue: 210 | - 0.5 211 | - 0.8 212 | - 1.5 213 | RTGIRaySteps: 200000003000000040000000 214 | RTGIDenoise: 010101 215 | RTGIHalfResDenoise: 010000 216 | RTGIDenoiserRadius: 217 | - 0.75 218 | - 0.5 219 | - 0.25 220 | RTGISecondDenoise: 010101 221 | RTRMinSmoothness: 222 | - 0.6 223 | - 0.4 224 | - 0 225 | RTRSmoothnessFadeStart: 226 | - 0.7 227 | - 0.5 228 | - 0 229 | RTRRayLength: 230 | - 50 231 | - 50 232 | - 50 233 | RTRClampValue: 234 | - 0.8 235 | - 1 236 | - 1.2 237 | RTRFullResolution: 000001 238 | RTRRayMaxIterations: 200000003000000040000000 239 | RTRDenoise: 010101 240 | RTRDenoiserRadius: 080000000c00000010000000 241 | RTRSmoothDenoising: 010000 242 | Fog_ControlMode: 000000000000000000000000 243 | Fog_Budget: 244 | - 0.166 245 | - 0.33 246 | - 0.666 247 | Fog_DepthRatio: 248 | - 0.666 249 | - 0.666 250 | - 0.5 251 | m_ObsoleteLightLayerName0: 252 | m_ObsoleteLightLayerName1: 253 | m_ObsoleteLightLayerName2: 254 | m_ObsoleteLightLayerName3: 255 | m_ObsoleteLightLayerName4: 256 | m_ObsoleteLightLayerName5: 257 | m_ObsoleteLightLayerName6: 258 | m_ObsoleteLightLayerName7: 259 | m_ObsoleteDecalLayerName0: 260 | m_ObsoleteDecalLayerName1: 261 | m_ObsoleteDecalLayerName2: 262 | m_ObsoleteDecalLayerName3: 263 | m_ObsoleteDecalLayerName4: 264 | m_ObsoleteDecalLayerName5: 265 | m_ObsoleteDecalLayerName6: 266 | m_ObsoleteDecalLayerName7: 267 | m_ObsoleteSupportRuntimeDebugDisplay: 0 268 | allowShaderVariantStripping: 1 269 | enableSRPBatcher: 1 270 | availableMaterialQualityLevels: -1 271 | m_DefaultMaterialQualityLevel: 4 272 | diffusionProfileSettings: {fileID: 0} 273 | virtualTexturingSettings: 274 | streamingCpuCacheSizeInMegaBytes: 256 275 | streamingGpuCacheSettings: 276 | - format: 0 277 | sizeInMegaBytes: 128 278 | m_UseRenderGraph: 1 279 | m_Version: 21 280 | m_ObsoleteFrameSettings: 281 | overrides: 0 282 | enableShadow: 0 283 | enableContactShadows: 0 284 | enableShadowMask: 0 285 | enableSSR: 0 286 | enableSSAO: 0 287 | enableSubsurfaceScattering: 0 288 | enableTransmission: 0 289 | enableAtmosphericScattering: 0 290 | enableVolumetrics: 0 291 | enableReprojectionForVolumetrics: 0 292 | enableLightLayers: 0 293 | enableExposureControl: 1 294 | diffuseGlobalDimmer: 0 295 | specularGlobalDimmer: 0 296 | shaderLitMode: 0 297 | enableDepthPrepassWithDeferredRendering: 0 298 | enableTransparentPrepass: 0 299 | enableMotionVectors: 0 300 | enableObjectMotionVectors: 0 301 | enableDecals: 0 302 | enableRoughRefraction: 0 303 | enableTransparentPostpass: 0 304 | enableDistortion: 0 305 | enablePostprocess: 0 306 | enableOpaqueObjects: 0 307 | enableTransparentObjects: 0 308 | enableRealtimePlanarReflection: 0 309 | enableMSAA: 0 310 | enableAsyncCompute: 0 311 | runLightListAsync: 0 312 | runSSRAsync: 0 313 | runSSAOAsync: 0 314 | runContactShadowsAsync: 0 315 | runVolumeVoxelizationAsync: 0 316 | lightLoopSettings: 317 | overrides: 0 318 | enableDeferredTileAndCluster: 0 319 | enableComputeLightEvaluation: 0 320 | enableComputeLightVariants: 0 321 | enableComputeMaterialVariants: 0 322 | enableFptlForForwardOpaque: 0 323 | enableBigTilePrepass: 0 324 | isFptlEnabled: 0 325 | m_ObsoleteBakedOrCustomReflectionFrameSettings: 326 | overrides: 0 327 | enableShadow: 0 328 | enableContactShadows: 0 329 | enableShadowMask: 0 330 | enableSSR: 0 331 | enableSSAO: 0 332 | enableSubsurfaceScattering: 0 333 | enableTransmission: 0 334 | enableAtmosphericScattering: 0 335 | enableVolumetrics: 0 336 | enableReprojectionForVolumetrics: 0 337 | enableLightLayers: 0 338 | enableExposureControl: 1 339 | diffuseGlobalDimmer: 0 340 | specularGlobalDimmer: 0 341 | shaderLitMode: 0 342 | enableDepthPrepassWithDeferredRendering: 0 343 | enableTransparentPrepass: 0 344 | enableMotionVectors: 0 345 | enableObjectMotionVectors: 0 346 | enableDecals: 0 347 | enableRoughRefraction: 0 348 | enableTransparentPostpass: 0 349 | enableDistortion: 0 350 | enablePostprocess: 0 351 | enableOpaqueObjects: 0 352 | enableTransparentObjects: 0 353 | enableRealtimePlanarReflection: 0 354 | enableMSAA: 0 355 | enableAsyncCompute: 0 356 | runLightListAsync: 0 357 | runSSRAsync: 0 358 | runSSAOAsync: 0 359 | runContactShadowsAsync: 0 360 | runVolumeVoxelizationAsync: 0 361 | lightLoopSettings: 362 | overrides: 0 363 | enableDeferredTileAndCluster: 0 364 | enableComputeLightEvaluation: 0 365 | enableComputeLightVariants: 0 366 | enableComputeMaterialVariants: 0 367 | enableFptlForForwardOpaque: 0 368 | enableBigTilePrepass: 0 369 | isFptlEnabled: 0 370 | m_ObsoleteRealtimeReflectionFrameSettings: 371 | overrides: 0 372 | enableShadow: 0 373 | enableContactShadows: 0 374 | enableShadowMask: 0 375 | enableSSR: 0 376 | enableSSAO: 0 377 | enableSubsurfaceScattering: 0 378 | enableTransmission: 0 379 | enableAtmosphericScattering: 0 380 | enableVolumetrics: 0 381 | enableReprojectionForVolumetrics: 0 382 | enableLightLayers: 0 383 | enableExposureControl: 1 384 | diffuseGlobalDimmer: 0 385 | specularGlobalDimmer: 0 386 | shaderLitMode: 0 387 | enableDepthPrepassWithDeferredRendering: 0 388 | enableTransparentPrepass: 0 389 | enableMotionVectors: 0 390 | enableObjectMotionVectors: 0 391 | enableDecals: 0 392 | enableRoughRefraction: 0 393 | enableTransparentPostpass: 0 394 | enableDistortion: 0 395 | enablePostprocess: 0 396 | enableOpaqueObjects: 0 397 | enableTransparentObjects: 0 398 | enableRealtimePlanarReflection: 0 399 | enableMSAA: 0 400 | enableAsyncCompute: 0 401 | runLightListAsync: 0 402 | runSSRAsync: 0 403 | runSSAOAsync: 0 404 | runContactShadowsAsync: 0 405 | runVolumeVoxelizationAsync: 0 406 | lightLoopSettings: 407 | overrides: 0 408 | enableDeferredTileAndCluster: 0 409 | enableComputeLightEvaluation: 0 410 | enableComputeLightVariants: 0 411 | enableComputeMaterialVariants: 0 412 | enableFptlForForwardOpaque: 0 413 | enableBigTilePrepass: 0 414 | isFptlEnabled: 0 415 | m_ObsoleteDefaultVolumeProfile: {fileID: 0} 416 | m_ObsoleteDefaultLookDevProfile: {fileID: 0} 417 | m_ObsoleteFrameSettingsMovedToDefaultSettings: 418 | bitDatas: 419 | data1: 0 420 | data2: 0 421 | lodBias: 0 422 | lodBiasMode: 0 423 | lodBiasQualityLevel: 0 424 | maximumLODLevel: 0 425 | maximumLODLevelMode: 0 426 | maximumLODLevelQualityLevel: 0 427 | sssQualityMode: 0 428 | sssQualityLevel: 0 429 | sssCustomSampleBudget: 0 430 | msaaMode: 0 431 | materialQuality: 0 432 | m_ObsoleteBakedOrCustomReflectionFrameSettingsMovedToDefaultSettings: 433 | bitDatas: 434 | data1: 0 435 | data2: 0 436 | lodBias: 0 437 | lodBiasMode: 0 438 | lodBiasQualityLevel: 0 439 | maximumLODLevel: 0 440 | maximumLODLevelMode: 0 441 | maximumLODLevelQualityLevel: 0 442 | sssQualityMode: 0 443 | sssQualityLevel: 0 444 | sssCustomSampleBudget: 0 445 | msaaMode: 0 446 | materialQuality: 0 447 | m_ObsoleteRealtimeReflectionFrameSettingsMovedToDefaultSettings: 448 | bitDatas: 449 | data1: 0 450 | data2: 0 451 | lodBias: 0 452 | lodBiasMode: 0 453 | lodBiasQualityLevel: 0 454 | maximumLODLevel: 0 455 | maximumLODLevelMode: 0 456 | maximumLODLevelQualityLevel: 0 457 | sssQualityMode: 0 458 | sssQualityLevel: 0 459 | sssCustomSampleBudget: 0 460 | msaaMode: 0 461 | materialQuality: 0 462 | m_ObsoleteRenderPipelineResources: {fileID: 0} 463 | m_ObsoleteRenderPipelineRayTracingResources: {fileID: 0} 464 | m_ObsoleteBeforeTransparentCustomPostProcesses: [] 465 | m_ObsoleteBeforePostProcessCustomPostProcesses: [] 466 | m_ObsoleteAfterPostProcessCustomPostProcesses: [] 467 | m_ObsoleteBeforeTAACustomPostProcesses: [] 468 | m_ObsoleteShaderVariantLogLevel: 0 469 | m_ObsoleteLensAttenuation: 0 470 | m_ObsoleteDiffusionProfileSettingsList: [] 471 | -------------------------------------------------------------------------------- /Assets/Settings/HDRPDefaultResources/HDRenderPipelineAsset.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b9f3086da92434da0bc1518f19f0ce86 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 11400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Settings/HDRPDefaultResources/HDRenderPipelineGlobalSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!114 &11400000 4 | MonoBehaviour: 5 | m_ObjectHideFlags: 0 6 | m_CorrespondingSourceObject: {fileID: 0} 7 | m_PrefabInstance: {fileID: 0} 8 | m_PrefabAsset: {fileID: 0} 9 | m_GameObject: {fileID: 0} 10 | m_Enabled: 1 11 | m_EditorHideFlags: 0 12 | m_Script: {fileID: 11500000, guid: 781cc897cf8675041a751163b51f97dd, type: 3} 13 | m_Name: HDRenderPipelineGlobalSettings 14 | m_EditorClassIdentifier: 15 | m_DefaultVolumeProfile: {fileID: 11400000, guid: 14b392ee213d25a48b1feddbd9f5a9be, 16 | type: 2} 17 | m_LookDevVolumeProfile: {fileID: 11400000, guid: 4594f4a3fb14247e192bcca6dc23c8ed, 18 | type: 2} 19 | m_RenderingPathDefaultCameraFrameSettings: 20 | bitDatas: 21 | data1: 72198260625768269 22 | data2: 13763000477350330392 23 | lodBias: 1 24 | lodBiasMode: 0 25 | lodBiasQualityLevel: 0 26 | maximumLODLevel: 0 27 | maximumLODLevelMode: 0 28 | maximumLODLevelQualityLevel: 0 29 | sssQualityMode: 0 30 | sssQualityLevel: 0 31 | sssCustomSampleBudget: 20 32 | msaaMode: 1 33 | materialQuality: 0 34 | m_RenderingPathDefaultBakedOrCustomReflectionFrameSettings: 35 | bitDatas: 36 | data1: 135310754214733 37 | data2: 4539628428684460056 38 | lodBias: 1 39 | lodBiasMode: 0 40 | lodBiasQualityLevel: 0 41 | maximumLODLevel: 0 42 | maximumLODLevelMode: 0 43 | maximumLODLevelQualityLevel: 0 44 | sssQualityMode: 0 45 | sssQualityLevel: 0 46 | sssCustomSampleBudget: 20 47 | msaaMode: 1 48 | materialQuality: 0 49 | m_RenderingPathDefaultRealtimeReflectionFrameSettings: 50 | bitDatas: 51 | data1: 139923391782733 52 | data2: 13763000465807638544 53 | lodBias: 1 54 | lodBiasMode: 0 55 | lodBiasQualityLevel: 0 56 | maximumLODLevel: 0 57 | maximumLODLevelMode: 0 58 | maximumLODLevelQualityLevel: 0 59 | sssQualityMode: 0 60 | sssQualityLevel: 0 61 | sssCustomSampleBudget: 20 62 | msaaMode: 1 63 | materialQuality: 0 64 | m_RenderPipelineResources: {fileID: 11400000, guid: 3ce144cff5783da45aa5d4fdc2da14b7, 65 | type: 2} 66 | m_RenderPipelineRayTracingResources: {fileID: 0} 67 | beforeTransparentCustomPostProcesses: [] 68 | beforePostProcessCustomPostProcesses: [] 69 | afterPostProcessBlursCustomPostProcesses: [] 70 | afterPostProcessCustomPostProcesses: [] 71 | beforeTAACustomPostProcesses: [] 72 | lightLayerName0: Light Layer default 73 | lightLayerName1: Light Layer 1 74 | lightLayerName2: Light Layer 2 75 | lightLayerName3: Light Layer 3 76 | lightLayerName4: Light Layer 4 77 | lightLayerName5: Light Layer 5 78 | lightLayerName6: Light Layer 6 79 | lightLayerName7: Light Layer 7 80 | decalLayerName0: Decal Layer default 81 | decalLayerName1: Decal Layer 1 82 | decalLayerName2: Decal Layer 2 83 | decalLayerName3: Decal Layer 3 84 | decalLayerName4: Decal Layer 4 85 | decalLayerName5: Decal Layer 5 86 | decalLayerName6: Decal Layer 6 87 | decalLayerName7: Decal Layer 7 88 | shaderVariantLogLevel: 0 89 | lensAttenuationMode: 0 90 | diffusionProfileSettingsList: 91 | - {fileID: 11400000, guid: 48e911a1e337b44e2b85dbc65b47a594, type: 2} 92 | - {fileID: 11400000, guid: 879ffae44eefa4412bb327928f1a96dd, type: 2} 93 | rendererListCulling: 0 94 | DLSSProjectId: 000000 95 | useDLSSCustomProjectId: 0 96 | supportProbeVolumes: 0 97 | supportRuntimeDebugDisplay: 0 98 | apvScenesData: 99 | serializedBounds: [] 100 | serializedHasVolumes: [] 101 | serializedProfiles: [] 102 | serializedBakeSettings: [] 103 | serializedBakingSets: [] 104 | m_Version: 3 105 | -------------------------------------------------------------------------------- /Assets/Settings/HDRPDefaultResources/HDRenderPipelineGlobalSettings.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ac0316ca287ba459492b669ff1317a6f 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 11400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Settings/HDRPDefaultResources/SkinDiffusionProfile.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!114 &11400000 4 | MonoBehaviour: 5 | m_ObjectHideFlags: 0 6 | m_CorrespondingSourceObject: {fileID: 0} 7 | m_PrefabInstance: {fileID: 0} 8 | m_PrefabAsset: {fileID: 0} 9 | m_GameObject: {fileID: 0} 10 | m_Enabled: 1 11 | m_EditorHideFlags: 0 12 | m_Script: {fileID: 11500000, guid: b2686e09ec7aef44bad2843e4416f057, type: 3} 13 | m_Name: SkinDiffusionProfile 14 | m_EditorClassIdentifier: 15 | m_Version: 1 16 | profile: 17 | scatteringDistance: {r: 0.7568628, g: 0.32156864, b: 0.20000002, a: 1} 18 | transmissionTint: {r: 0.7568628, g: 0.32156864, b: 0.20000002, a: 1} 19 | texturingMode: 0 20 | transmissionMode: 0 21 | thicknessRemap: {x: 0, y: 8.152544} 22 | worldScale: 1 23 | ior: 1.4 24 | hash: 1075477546 25 | -------------------------------------------------------------------------------- /Assets/Settings/HDRPDefaultResources/SkinDiffusionProfile.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 48e911a1e337b44e2b85dbc65b47a594 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 11400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Settings/SkyandFogSettingsProfile.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!114 &-7724654706381055090 4 | MonoBehaviour: 5 | m_ObjectHideFlags: 3 6 | m_CorrespondingSourceObject: {fileID: 0} 7 | m_PrefabInstance: {fileID: 0} 8 | m_PrefabAsset: {fileID: 0} 9 | m_GameObject: {fileID: 0} 10 | m_Enabled: 1 11 | m_EditorHideFlags: 0 12 | m_Script: {fileID: 11500000, guid: d877ec3e844f2ca46830012e8e79319b, type: 3} 13 | m_Name: 14 | m_EditorClassIdentifier: 15 | active: 1 16 | rotation: 17 | m_OverrideState: 0 18 | m_Value: 0 19 | skyIntensityMode: 20 | m_OverrideState: 0 21 | m_Value: 0 22 | exposure: 23 | m_OverrideState: 0 24 | m_Value: 0 25 | multiplier: 26 | m_OverrideState: 0 27 | m_Value: 1 28 | upperHemisphereLuxValue: 29 | m_OverrideState: 0 30 | m_Value: 1 31 | upperHemisphereLuxColor: 32 | m_OverrideState: 0 33 | m_Value: {x: 0, y: 0, z: 0} 34 | desiredLuxValue: 35 | m_OverrideState: 0 36 | m_Value: 20000 37 | updateMode: 38 | m_OverrideState: 0 39 | m_Value: 0 40 | updatePeriod: 41 | m_OverrideState: 0 42 | m_Value: 0 43 | includeSunInBaking: 44 | m_OverrideState: 0 45 | m_Value: 0 46 | type: 47 | m_OverrideState: 0 48 | m_Value: 1 49 | sphericalMode: 50 | m_OverrideState: 0 51 | m_Value: 1 52 | seaLevel: 53 | m_OverrideState: 0 54 | m_Value: 0 55 | planetaryRadius: 56 | m_OverrideState: 0 57 | m_Value: 6378100 58 | planetCenterPosition: 59 | m_OverrideState: 0 60 | m_Value: {x: 0, y: -6378100, z: 0} 61 | airDensityR: 62 | m_OverrideState: 0 63 | m_Value: 0.04534 64 | airDensityG: 65 | m_OverrideState: 0 66 | m_Value: 0.10237241 67 | airDensityB: 68 | m_OverrideState: 0 69 | m_Value: 0.23264056 70 | airTint: 71 | m_OverrideState: 0 72 | m_Value: {r: 0.9, g: 0.9, b: 1, a: 1} 73 | airMaximumAltitude: 74 | m_OverrideState: 0 75 | m_Value: 55261.973 76 | aerosolDensity: 77 | m_OverrideState: 0 78 | m_Value: 0.01192826 79 | aerosolTint: 80 | m_OverrideState: 0 81 | m_Value: {r: 0.9, g: 0.9, b: 0.9, a: 1} 82 | aerosolMaximumAltitude: 83 | m_OverrideState: 0 84 | m_Value: 8289.296 85 | aerosolAnisotropy: 86 | m_OverrideState: 0 87 | m_Value: 0 88 | numberOfBounces: 89 | m_OverrideState: 0 90 | m_Value: 8 91 | groundTint: 92 | m_OverrideState: 1 93 | m_Value: {r: 0.122641504, g: 0.1043775, b: 0.09313812, a: 1} 94 | groundColorTexture: 95 | m_OverrideState: 0 96 | m_Value: {fileID: 0} 97 | groundEmissionTexture: 98 | m_OverrideState: 0 99 | m_Value: {fileID: 0} 100 | groundEmissionMultiplier: 101 | m_OverrideState: 0 102 | m_Value: 1 103 | planetRotation: 104 | m_OverrideState: 0 105 | m_Value: {x: 0, y: 0, z: 0} 106 | spaceEmissionTexture: 107 | m_OverrideState: 0 108 | m_Value: {fileID: 0} 109 | spaceEmissionMultiplier: 110 | m_OverrideState: 0 111 | m_Value: 1 112 | spaceRotation: 113 | m_OverrideState: 0 114 | m_Value: {x: 0, y: 0, z: 0} 115 | colorSaturation: 116 | m_OverrideState: 0 117 | m_Value: 1 118 | alphaSaturation: 119 | m_OverrideState: 0 120 | m_Value: 1 121 | alphaMultiplier: 122 | m_OverrideState: 0 123 | m_Value: 1 124 | horizonTint: 125 | m_OverrideState: 0 126 | m_Value: {r: 1, g: 1, b: 1, a: 1} 127 | zenithTint: 128 | m_OverrideState: 0 129 | m_Value: {r: 1, g: 1, b: 1, a: 1} 130 | horizonZenithShift: 131 | m_OverrideState: 0 132 | m_Value: 0 133 | m_SkyVersion: 1 134 | m_ObsoleteEarthPreset: 135 | m_OverrideState: 0 136 | m_Value: 1 137 | --- !u!114 &-4151792930034644520 138 | MonoBehaviour: 139 | m_ObjectHideFlags: 3 140 | m_CorrespondingSourceObject: {fileID: 0} 141 | m_PrefabInstance: {fileID: 0} 142 | m_PrefabAsset: {fileID: 0} 143 | m_GameObject: {fileID: 0} 144 | m_Enabled: 1 145 | m_EditorHideFlags: 0 146 | m_Script: {fileID: 11500000, guid: 953beb541740ddc499d005ee80c9ff29, type: 3} 147 | m_Name: 148 | m_EditorClassIdentifier: 149 | active: 1 150 | quality: 151 | m_OverrideState: 0 152 | m_Value: 1 153 | enabled: 154 | m_OverrideState: 1 155 | m_Value: 1 156 | colorMode: 157 | m_OverrideState: 0 158 | m_Value: 1 159 | color: 160 | m_OverrideState: 0 161 | m_Value: {r: 0.5, g: 0.5, b: 0.5, a: 1} 162 | tint: 163 | m_OverrideState: 0 164 | m_Value: {r: 1, g: 1, b: 1, a: 1} 165 | maxFogDistance: 166 | m_OverrideState: 0 167 | m_Value: 5000 168 | mipFogMaxMip: 169 | m_OverrideState: 0 170 | m_Value: 0.5 171 | mipFogNear: 172 | m_OverrideState: 0 173 | m_Value: 0 174 | mipFogFar: 175 | m_OverrideState: 0 176 | m_Value: 1000 177 | baseHeight: 178 | m_OverrideState: 0 179 | m_Value: 0 180 | maximumHeight: 181 | m_OverrideState: 0 182 | m_Value: 50 183 | meanFreePath: 184 | m_OverrideState: 0 185 | m_Value: 400 186 | enableVolumetricFog: 187 | m_OverrideState: 1 188 | m_Value: 1 189 | albedo: 190 | m_OverrideState: 0 191 | m_Value: {r: 1, g: 1, b: 1, a: 1} 192 | globalLightProbeDimmer: 193 | m_OverrideState: 0 194 | m_Value: 1 195 | depthExtent: 196 | m_OverrideState: 0 197 | m_Value: 64 198 | denoisingMode: 199 | m_OverrideState: 0 200 | m_Value: 2 201 | anisotropy: 202 | m_OverrideState: 1 203 | m_Value: 0.65 204 | sliceDistributionUniformity: 205 | m_OverrideState: 0 206 | m_Value: 0.75 207 | m_FogControlMode: 208 | m_OverrideState: 0 209 | m_Value: 0 210 | screenResolutionPercentage: 211 | m_OverrideState: 0 212 | m_Value: 12.5 213 | volumeSliceCount: 214 | m_OverrideState: 0 215 | m_Value: 64 216 | m_VolumetricFogBudget: 217 | m_OverrideState: 0 218 | m_Value: 0.5 219 | m_ResolutionDepthRatio: 220 | m_OverrideState: 0 221 | m_Value: 0.5 222 | directionalLightsOnly: 223 | m_OverrideState: 0 224 | m_Value: 0 225 | --- !u!114 &11400000 226 | MonoBehaviour: 227 | m_ObjectHideFlags: 0 228 | m_CorrespondingSourceObject: {fileID: 0} 229 | m_PrefabInstance: {fileID: 0} 230 | m_PrefabAsset: {fileID: 0} 231 | m_GameObject: {fileID: 0} 232 | m_Enabled: 1 233 | m_EditorHideFlags: 0 234 | m_Script: {fileID: 11500000, guid: d7fd9488000d3734a9e00ee676215985, type: 3} 235 | m_Name: SkyandFogSettingsProfile 236 | m_EditorClassIdentifier: 237 | components: 238 | - {fileID: 1142777632297148762} 239 | - {fileID: -7724654706381055090} 240 | - {fileID: -4151792930034644520} 241 | - {fileID: 7642060734654139733} 242 | --- !u!114 &1142777632297148762 243 | MonoBehaviour: 244 | m_ObjectHideFlags: 3 245 | m_CorrespondingSourceObject: {fileID: 0} 246 | m_PrefabInstance: {fileID: 0} 247 | m_PrefabAsset: {fileID: 0} 248 | m_GameObject: {fileID: 0} 249 | m_Enabled: 1 250 | m_EditorHideFlags: 0 251 | m_Script: {fileID: 11500000, guid: 0d7593b3a9277ac4696b20006c21dde2, type: 3} 252 | m_Name: 253 | m_EditorClassIdentifier: 254 | active: 1 255 | skyType: 256 | m_OverrideState: 1 257 | m_Value: 4 258 | cloudType: 259 | m_OverrideState: 0 260 | m_Value: 0 261 | skyAmbientMode: 262 | m_OverrideState: 1 263 | m_Value: 0 264 | windOrientation: 265 | m_OverrideState: 0 266 | m_Value: 0 267 | windSpeed: 268 | m_OverrideState: 0 269 | m_Value: 100 270 | fogType: 271 | m_OverrideState: 1 272 | m_Value: 0 273 | --- !u!114 &7642060734654139733 274 | MonoBehaviour: 275 | m_ObjectHideFlags: 3 276 | m_CorrespondingSourceObject: {fileID: 0} 277 | m_PrefabInstance: {fileID: 0} 278 | m_PrefabAsset: {fileID: 0} 279 | m_GameObject: {fileID: 0} 280 | m_Enabled: 1 281 | m_EditorHideFlags: 0 282 | m_Script: {fileID: 11500000, guid: 2d08ce26990eb1a4a9177b860541e702, type: 3} 283 | m_Name: Exposure 284 | m_EditorClassIdentifier: 285 | active: 1 286 | mode: 287 | m_OverrideState: 1 288 | m_Value: 4 289 | meteringMode: 290 | m_OverrideState: 0 291 | m_Value: 2 292 | luminanceSource: 293 | m_OverrideState: 0 294 | m_Value: 1 295 | fixedExposure: 296 | m_OverrideState: 0 297 | m_Value: 0 298 | compensation: 299 | m_OverrideState: 0 300 | m_Value: 0 301 | limitMin: 302 | m_OverrideState: 1 303 | m_Value: 2 304 | limitMax: 305 | m_OverrideState: 1 306 | m_Value: 14 307 | curveMap: 308 | m_OverrideState: 0 309 | m_Value: 310 | serializedVersion: 2 311 | m_Curve: 312 | - serializedVersion: 3 313 | time: -10 314 | value: -10 315 | inSlope: 0 316 | outSlope: 1 317 | tangentMode: 0 318 | weightedMode: 0 319 | inWeight: 0 320 | outWeight: 0 321 | - serializedVersion: 3 322 | time: 20 323 | value: 20 324 | inSlope: 1 325 | outSlope: 0 326 | tangentMode: 0 327 | weightedMode: 0 328 | inWeight: 0 329 | outWeight: 0 330 | m_PreInfinity: 2 331 | m_PostInfinity: 2 332 | m_RotationOrder: 4 333 | limitMinCurveMap: 334 | m_OverrideState: 0 335 | m_Value: 336 | serializedVersion: 2 337 | m_Curve: 338 | - serializedVersion: 3 339 | time: -10 340 | value: -12 341 | inSlope: 0 342 | outSlope: 1 343 | tangentMode: 0 344 | weightedMode: 0 345 | inWeight: 0 346 | outWeight: 0 347 | - serializedVersion: 3 348 | time: 20 349 | value: 18 350 | inSlope: 1 351 | outSlope: 0 352 | tangentMode: 0 353 | weightedMode: 0 354 | inWeight: 0 355 | outWeight: 0 356 | m_PreInfinity: 2 357 | m_PostInfinity: 2 358 | m_RotationOrder: 4 359 | limitMaxCurveMap: 360 | m_OverrideState: 0 361 | m_Value: 362 | serializedVersion: 2 363 | m_Curve: 364 | - serializedVersion: 3 365 | time: -10 366 | value: -8 367 | inSlope: 0 368 | outSlope: 1 369 | tangentMode: 0 370 | weightedMode: 0 371 | inWeight: 0 372 | outWeight: 0 373 | - serializedVersion: 3 374 | time: 20 375 | value: 22 376 | inSlope: 1 377 | outSlope: 0 378 | tangentMode: 0 379 | weightedMode: 0 380 | inWeight: 0 381 | outWeight: 0 382 | m_PreInfinity: 2 383 | m_PostInfinity: 2 384 | m_RotationOrder: 4 385 | adaptationMode: 386 | m_OverrideState: 0 387 | m_Value: 1 388 | adaptationSpeedDarkToLight: 389 | m_OverrideState: 0 390 | m_Value: 3 391 | adaptationSpeedLightToDark: 392 | m_OverrideState: 0 393 | m_Value: 1 394 | weightTextureMask: 395 | m_OverrideState: 0 396 | m_Value: {fileID: 0} 397 | histogramPercentages: 398 | m_OverrideState: 0 399 | m_Value: {x: 40, y: 90} 400 | histogramUseCurveRemapping: 401 | m_OverrideState: 0 402 | m_Value: 0 403 | targetMidGray: 404 | m_OverrideState: 0 405 | m_Value: 0 406 | centerAroundExposureTarget: 407 | m_OverrideState: 0 408 | m_Value: 0 409 | proceduralCenter: 410 | m_OverrideState: 0 411 | m_Value: {x: 0.5, y: 0.5} 412 | proceduralRadii: 413 | m_OverrideState: 0 414 | m_Value: {x: 0.15, y: 0.15} 415 | maskMinIntensity: 416 | m_OverrideState: 0 417 | m_Value: -30 418 | maskMaxIntensity: 419 | m_OverrideState: 0 420 | m_Value: 30 421 | proceduralSoftness: 422 | m_OverrideState: 0 423 | m_Value: 0.5 424 | -------------------------------------------------------------------------------- /Assets/Settings/SkyandFogSettingsProfile.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8ba92e2dd7f884a0f88b98fa2d235fe7 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 11400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Shaders.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 51e029b7f1684b88ae6fa65a4ab0721c 3 | timeCreated: 1681349212 -------------------------------------------------------------------------------- /Assets/Shaders/DrawVoxelsGraph.shadergraph.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4886858e341babe4f965524c01a1c3b2 3 | ScriptedImporter: 4 | internalIDToNameTable: [] 5 | externalObjects: {} 6 | serializedVersion: 2 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | script: {fileID: 11500000, guid: 625f186215c104763be7675aa2d941aa, type: 3} 11 | -------------------------------------------------------------------------------- /Assets/Shaders/GetVertexData.hlsl: -------------------------------------------------------------------------------- 1 | 2 | #ifndef VOXEL_MESH_INFO 3 | #define VOXEL_MESH_INFO 4 | 5 | #include 6 | 7 | StructuredBuffer Indices; 8 | StructuredBuffer Vertices; 9 | 10 | void GetVertexData_float(float vertexId, out float3 position, out float2 texcoord, out float3 normal) 11 | { 12 | const int index = Indices[round(vertexId)]; 13 | position = Vertices[index].position; 14 | texcoord = Vertices[index].texcoord; 15 | normal = Vertices[index].normal; 16 | } 17 | 18 | #endif -------------------------------------------------------------------------------- /Assets/Shaders/GetVertexData.hlsl.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4c27368d48b44924dbf786eb81c0b349 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Shaders/ShadowPass.hlsl.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5329477dc1f94a8fb153fbe940d76e31 3 | timeCreated: 1681352949 -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | Apache License 2 | Version 2.0, January 2004 3 | http://www.apache.org/licenses/ 4 | 5 | TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 6 | 7 | 1. Definitions. 8 | 9 | "License" shall mean the terms and conditions for use, reproduction, 10 | and distribution as defined by Sections 1 through 9 of this document. 11 | 12 | "Licensor" shall mean the copyright owner or entity authorized by 13 | the copyright owner that is granting the License. 14 | 15 | "Legal Entity" shall mean the union of the acting entity and all 16 | other entities that control, are controlled by, or are under common 17 | control with that entity. For the purposes of this definition, 18 | "control" means (i) the power, direct or indirect, to cause the 19 | direction or management of such entity, whether by contract or 20 | otherwise, or (ii) ownership of fifty percent (50%) or more of the 21 | outstanding shares, or (iii) beneficial ownership of such entity. 22 | 23 | "You" (or "Your") shall mean an individual or Legal Entity 24 | exercising permissions granted by this License. 25 | 26 | "Source" form shall mean the preferred form for making modifications, 27 | including but not limited to software source code, documentation 28 | source, and configuration files. 29 | 30 | "Object" form shall mean any form resulting from mechanical 31 | transformation or translation of a Source form, including but 32 | not limited to compiled object code, generated documentation, 33 | and conversions to other media types. 34 | 35 | "Work" shall mean the work of authorship, whether in Source or 36 | Object form, made available under the License, as indicated by a 37 | copyright notice that is included in or attached to the work 38 | (an example is provided in the Appendix below). 39 | 40 | "Derivative Works" shall mean any work, whether in Source or Object 41 | form, that is based on (or derived from) the Work and for which the 42 | editorial revisions, annotations, elaborations, or other modifications 43 | represent, as a whole, an original work of authorship. For the purposes 44 | of this License, Derivative Works shall not include works that remain 45 | separable from, or merely link (or bind by name) to the interfaces of, 46 | the Work and Derivative Works thereof. 47 | 48 | "Contribution" shall mean any work of authorship, including 49 | the original version of the Work and any modifications or additions 50 | to that Work or Derivative Works thereof, that is intentionally 51 | submitted to Licensor for inclusion in the Work by the copyright owner 52 | or by an individual or Legal Entity authorized to submit on behalf of 53 | the copyright owner. For the purposes of this definition, "submitted" 54 | means any form of electronic, verbal, or written communication sent 55 | to the Licensor or its representatives, including but not limited to 56 | communication on electronic mailing lists, source code control systems, 57 | and issue tracking systems that are managed by, or on behalf of, the 58 | Licensor for the purpose of discussing and improving the Work, but 59 | excluding communication that is conspicuously marked or otherwise 60 | designated in writing by the copyright owner as "Not a Contribution." 61 | 62 | "Contributor" shall mean Licensor and any individual or Legal Entity 63 | on behalf of whom a Contribution has been received by Licensor and 64 | subsequently incorporated within the Work. 65 | 66 | 2. Grant of Copyright License. Subject to the terms and conditions of 67 | this License, each Contributor hereby grants to You a perpetual, 68 | worldwide, non-exclusive, no-charge, royalty-free, irrevocable 69 | copyright license to reproduce, prepare Derivative Works of, 70 | publicly display, publicly perform, sublicense, and distribute the 71 | Work and such Derivative Works in Source or Object form. 72 | 73 | 3. Grant of Patent License. Subject to the terms and conditions of 74 | this License, each Contributor hereby grants to You a perpetual, 75 | worldwide, non-exclusive, no-charge, royalty-free, irrevocable 76 | (except as stated in this section) patent license to make, have made, 77 | use, offer to sell, sell, import, and otherwise transfer the Work, 78 | where such license applies only to those patent claims licensable 79 | by such Contributor that are necessarily infringed by their 80 | Contribution(s) alone or by combination of their Contribution(s) 81 | with the Work to which such Contribution(s) was submitted. If You 82 | institute patent litigation against any entity (including a 83 | cross-claim or counterclaim in a lawsuit) alleging that the Work 84 | or a Contribution incorporated within the Work constitutes direct 85 | or contributory patent infringement, then any patent licenses 86 | granted to You under this License for that Work shall terminate 87 | as of the date such litigation is filed. 88 | 89 | 4. Redistribution. You may reproduce and distribute copies of the 90 | Work or Derivative Works thereof in any medium, with or without 91 | modifications, and in Source or Object form, provided that You 92 | meet the following conditions: 93 | 94 | (a) You must give any other recipients of the Work or 95 | Derivative Works a copy of this License; and 96 | 97 | (b) You must cause any modified files to carry prominent notices 98 | stating that You changed the files; and 99 | 100 | (c) You must retain, in the Source form of any Derivative Works 101 | that You distribute, all copyright, patent, trademark, and 102 | attribution notices from the Source form of the Work, 103 | excluding those notices that do not pertain to any part of 104 | the Derivative Works; and 105 | 106 | (d) If the Work includes a "NOTICE" text file as part of its 107 | distribution, then any Derivative Works that You distribute must 108 | include a readable copy of the attribution notices contained 109 | within such NOTICE file, excluding those notices that do not 110 | pertain to any part of the Derivative Works, in at least one 111 | of the following places: within a NOTICE text file distributed 112 | as part of the Derivative Works; within the Source form or 113 | documentation, if provided along with the Derivative Works; or, 114 | within a display generated by the Derivative Works, if and 115 | wherever such third-party notices normally appear. The contents 116 | of the NOTICE file are for informational purposes only and 117 | do not modify the License. You may add Your own attribution 118 | notices within Derivative Works that You distribute, alongside 119 | or as an addendum to the NOTICE text from the Work, provided 120 | that such additional attribution notices cannot be construed 121 | as modifying the License. 122 | 123 | You may add Your own copyright statement to Your modifications and 124 | may provide additional or different license terms and conditions 125 | for use, reproduction, or distribution of Your modifications, or 126 | for any such Derivative Works as a whole, provided Your use, 127 | reproduction, and distribution of the Work otherwise complies with 128 | the conditions stated in this License. 129 | 130 | 5. Submission of Contributions. Unless You explicitly state otherwise, 131 | any Contribution intentionally submitted for inclusion in the Work 132 | by You to the Licensor shall be under the terms and conditions of 133 | this License, without any additional terms or conditions. 134 | Notwithstanding the above, nothing herein shall supersede or modify 135 | the terms of any separate license agreement you may have executed 136 | with Licensor regarding such Contributions. 137 | 138 | 6. Trademarks. This License does not grant permission to use the trade 139 | names, trademarks, service marks, or product names of the Licensor, 140 | except as required for reasonable and customary use in describing the 141 | origin of the Work and reproducing the content of the NOTICE file. 142 | 143 | 7. Disclaimer of Warranty. Unless required by applicable law or 144 | agreed to in writing, Licensor provides the Work (and each 145 | Contributor provides its Contributions) on an "AS IS" BASIS, 146 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or 147 | implied, including, without limitation, any warranties or conditions 148 | of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A 149 | PARTICULAR PURPOSE. You are solely responsible for determining the 150 | appropriateness of using or redistributing the Work and assume any 151 | risks associated with Your exercise of permissions under this License. 152 | 153 | 8. Limitation of Liability. In no event and under no legal theory, 154 | whether in tort (including negligence), contract, or otherwise, 155 | unless required by applicable law (such as deliberate and grossly 156 | negligent acts) or agreed to in writing, shall any Contributor be 157 | liable to You for damages, including any direct, indirect, special, 158 | incidental, or consequential damages of any character arising as a 159 | result of this License or out of the use or inability to use the 160 | Work (including but not limited to damages for loss of goodwill, 161 | work stoppage, computer failure or malfunction, or any and all 162 | other commercial damages or losses), even if such Contributor 163 | has been advised of the possibility of such damages. 164 | 165 | 9. Accepting Warranty or Additional Liability. While redistributing 166 | the Work or Derivative Works thereof, You may choose to offer, 167 | and charge a fee for, acceptance of support, warranty, indemnity, 168 | or other liability obligations and/or rights consistent with this 169 | License. However, in accepting such obligations, You may act only 170 | on Your own behalf and on Your sole responsibility, not on behalf 171 | of any other Contributor, and only if You agree to indemnify, 172 | defend, and hold each Contributor harmless for any liability 173 | incurred by, or claims asserted against, such Contributor by reason 174 | of your accepting any such warranty or additional liability. 175 | 176 | END OF TERMS AND CONDITIONS 177 | 178 | APPENDIX: How to apply the Apache License to your work. 179 | 180 | To apply the Apache License to your work, attach the following 181 | boilerplate notice, with the fields enclosed by brackets "[]" 182 | replaced with your own identifying information. (Don't include 183 | the brackets!) The text should be enclosed in the appropriate 184 | comment syntax for the file format. We also recommend that a 185 | file or class name and description of purpose be included on the 186 | same "printed page" as the copyright notice for easier 187 | identification within third-party archives. 188 | 189 | Copyright [yyyy] [name of copyright owner] 190 | 191 | Licensed under the Apache License, Version 2.0 (the "License"); 192 | you may not use this file except in compliance with the License. 193 | You may obtain a copy of the License at 194 | 195 | http://www.apache.org/licenses/LICENSE-2.0 196 | 197 | Unless required by applicable law or agreed to in writing, software 198 | distributed under the License is distributed on an "AS IS" BASIS, 199 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 200 | See the License for the specific language governing permissions and 201 | limitations under the License. 202 | -------------------------------------------------------------------------------- /Packages/manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "scopedRegistries": [ 3 | { 4 | "name": "Keijiro", 5 | "url": "https://registry.npmjs.com", 6 | "scopes": [ "jp.keijiro" ] 7 | } 8 | ], 9 | "dependencies": { 10 | "jp.keijiro.noiseshader": "2.0.0", 11 | "com.unity.collab-proxy": "2.0.0", 12 | "com.unity.feature.development": "1.0.1", 13 | "com.unity.ide.rider": "3.0.18", 14 | "com.unity.ide.visualstudio": "2.0.17", 15 | "com.unity.ide.vscode": "1.2.5", 16 | "com.unity.recorder": "3.0.3", 17 | "com.unity.render-pipelines.high-definition": "12.1.10", 18 | "com.unity.test-framework": "1.1.31", 19 | "com.unity.textmeshpro": "3.0.6", 20 | "com.unity.timeline": "1.6.4", 21 | "com.unity.ugui": "1.0.0", 22 | "com.unity.visualscripting": "1.8.0", 23 | "com.unity.modules.ai": "1.0.0", 24 | "com.unity.modules.androidjni": "1.0.0", 25 | "com.unity.modules.animation": "1.0.0", 26 | "com.unity.modules.assetbundle": "1.0.0", 27 | "com.unity.modules.audio": "1.0.0", 28 | "com.unity.modules.cloth": "1.0.0", 29 | "com.unity.modules.director": "1.0.0", 30 | "com.unity.modules.imageconversion": "1.0.0", 31 | "com.unity.modules.imgui": "1.0.0", 32 | "com.unity.modules.jsonserialize": "1.0.0", 33 | "com.unity.modules.particlesystem": "1.0.0", 34 | "com.unity.modules.physics": "1.0.0", 35 | "com.unity.modules.physics2d": "1.0.0", 36 | "com.unity.modules.screencapture": "1.0.0", 37 | "com.unity.modules.terrain": "1.0.0", 38 | "com.unity.modules.terrainphysics": "1.0.0", 39 | "com.unity.modules.tilemap": "1.0.0", 40 | "com.unity.modules.ui": "1.0.0", 41 | "com.unity.modules.uielements": "1.0.0", 42 | "com.unity.modules.umbra": "1.0.0", 43 | "com.unity.modules.unityanalytics": "1.0.0", 44 | "com.unity.modules.unitywebrequest": "1.0.0", 45 | "com.unity.modules.unitywebrequestassetbundle": "1.0.0", 46 | "com.unity.modules.unitywebrequestaudio": "1.0.0", 47 | "com.unity.modules.unitywebrequesttexture": "1.0.0", 48 | "com.unity.modules.unitywebrequestwww": "1.0.0", 49 | "com.unity.modules.vehicles": "1.0.0", 50 | "com.unity.modules.video": "1.0.0", 51 | "com.unity.modules.vr": "1.0.0", 52 | "com.unity.modules.wind": "1.0.0", 53 | "com.unity.modules.xr": "1.0.0" 54 | } 55 | } 56 | -------------------------------------------------------------------------------- /Packages/packages-lock.json: -------------------------------------------------------------------------------- 1 | { 2 | "dependencies": { 3 | "com.unity.burst": { 4 | "version": "1.8.2", 5 | "depth": 1, 6 | "source": "registry", 7 | "dependencies": { 8 | "com.unity.mathematics": "1.2.1" 9 | }, 10 | "url": "https://packages.unity.com" 11 | }, 12 | "com.unity.collab-proxy": { 13 | "version": "2.0.0", 14 | "depth": 0, 15 | "source": "registry", 16 | "dependencies": {}, 17 | "url": "https://packages.unity.com" 18 | }, 19 | "com.unity.editorcoroutines": { 20 | "version": "1.0.0", 21 | "depth": 1, 22 | "source": "registry", 23 | "dependencies": {}, 24 | "url": "https://packages.unity.com" 25 | }, 26 | "com.unity.ext.nunit": { 27 | "version": "1.0.6", 28 | "depth": 1, 29 | "source": "registry", 30 | "dependencies": {}, 31 | "url": "https://packages.unity.com" 32 | }, 33 | "com.unity.feature.development": { 34 | "version": "1.0.1", 35 | "depth": 0, 36 | "source": "builtin", 37 | "dependencies": { 38 | "com.unity.ide.visualstudio": "2.0.17", 39 | "com.unity.ide.rider": "3.0.18", 40 | "com.unity.ide.vscode": "1.2.5", 41 | "com.unity.editorcoroutines": "1.0.0", 42 | "com.unity.performance.profile-analyzer": "1.1.1", 43 | "com.unity.test-framework": "1.1.31", 44 | "com.unity.testtools.codecoverage": "1.2.2" 45 | } 46 | }, 47 | "com.unity.ide.rider": { 48 | "version": "3.0.18", 49 | "depth": 0, 50 | "source": "registry", 51 | "dependencies": { 52 | "com.unity.ext.nunit": "1.0.6" 53 | }, 54 | "url": "https://packages.unity.com" 55 | }, 56 | "com.unity.ide.visualstudio": { 57 | "version": "2.0.17", 58 | "depth": 0, 59 | "source": "registry", 60 | "dependencies": { 61 | "com.unity.test-framework": "1.1.9" 62 | }, 63 | "url": "https://packages.unity.com" 64 | }, 65 | "com.unity.ide.vscode": { 66 | "version": "1.2.5", 67 | "depth": 0, 68 | "source": "registry", 69 | "dependencies": {}, 70 | "url": "https://packages.unity.com" 71 | }, 72 | "com.unity.mathematics": { 73 | "version": "1.2.6", 74 | "depth": 1, 75 | "source": "registry", 76 | "dependencies": {}, 77 | "url": "https://packages.unity.com" 78 | }, 79 | "com.unity.performance.profile-analyzer": { 80 | "version": "1.1.1", 81 | "depth": 1, 82 | "source": "registry", 83 | "dependencies": {}, 84 | "url": "https://packages.unity.com" 85 | }, 86 | "com.unity.recorder": { 87 | "version": "3.0.3", 88 | "depth": 0, 89 | "source": "registry", 90 | "dependencies": { 91 | "com.unity.timeline": "1.0.0" 92 | }, 93 | "url": "https://packages.unity.com" 94 | }, 95 | "com.unity.render-pipelines.core": { 96 | "version": "12.1.10", 97 | "depth": 1, 98 | "source": "builtin", 99 | "dependencies": { 100 | "com.unity.ugui": "1.0.0", 101 | "com.unity.modules.physics": "1.0.0", 102 | "com.unity.modules.jsonserialize": "1.0.0" 103 | } 104 | }, 105 | "com.unity.render-pipelines.high-definition": { 106 | "version": "12.1.10", 107 | "depth": 0, 108 | "source": "builtin", 109 | "dependencies": { 110 | "com.unity.mathematics": "1.2.4", 111 | "com.unity.burst": "1.8.2", 112 | "com.unity.modules.video": "1.0.0", 113 | "com.unity.modules.animation": "1.0.0", 114 | "com.unity.modules.imageconversion": "1.0.0", 115 | "com.unity.modules.terrain": "1.0.0", 116 | "com.unity.render-pipelines.core": "12.1.10", 117 | "com.unity.shadergraph": "12.1.10", 118 | "com.unity.visualeffectgraph": "12.1.10", 119 | "com.unity.render-pipelines.high-definition-config": "12.1.10" 120 | } 121 | }, 122 | "com.unity.render-pipelines.high-definition-config": { 123 | "version": "12.1.10", 124 | "depth": 1, 125 | "source": "builtin", 126 | "dependencies": { 127 | "com.unity.render-pipelines.core": "12.1.10" 128 | } 129 | }, 130 | "com.unity.searcher": { 131 | "version": "4.9.1", 132 | "depth": 2, 133 | "source": "registry", 134 | "dependencies": {}, 135 | "url": "https://packages.unity.com" 136 | }, 137 | "com.unity.settings-manager": { 138 | "version": "1.0.3", 139 | "depth": 2, 140 | "source": "registry", 141 | "dependencies": {}, 142 | "url": "https://packages.unity.com" 143 | }, 144 | "com.unity.shadergraph": { 145 | "version": "12.1.10", 146 | "depth": 1, 147 | "source": "builtin", 148 | "dependencies": { 149 | "com.unity.render-pipelines.core": "12.1.10", 150 | "com.unity.searcher": "4.9.1" 151 | } 152 | }, 153 | "com.unity.test-framework": { 154 | "version": "1.1.31", 155 | "depth": 0, 156 | "source": "registry", 157 | "dependencies": { 158 | "com.unity.ext.nunit": "1.0.6", 159 | "com.unity.modules.imgui": "1.0.0", 160 | "com.unity.modules.jsonserialize": "1.0.0" 161 | }, 162 | "url": "https://packages.unity.com" 163 | }, 164 | "com.unity.testtools.codecoverage": { 165 | "version": "1.2.2", 166 | "depth": 1, 167 | "source": "registry", 168 | "dependencies": { 169 | "com.unity.test-framework": "1.0.16", 170 | "com.unity.settings-manager": "1.0.1" 171 | }, 172 | "url": "https://packages.unity.com" 173 | }, 174 | "com.unity.textmeshpro": { 175 | "version": "3.0.6", 176 | "depth": 0, 177 | "source": "registry", 178 | "dependencies": { 179 | "com.unity.ugui": "1.0.0" 180 | }, 181 | "url": "https://packages.unity.com" 182 | }, 183 | "com.unity.timeline": { 184 | "version": "1.6.4", 185 | "depth": 0, 186 | "source": "registry", 187 | "dependencies": { 188 | "com.unity.modules.director": "1.0.0", 189 | "com.unity.modules.animation": "1.0.0", 190 | "com.unity.modules.audio": "1.0.0", 191 | "com.unity.modules.particlesystem": "1.0.0" 192 | }, 193 | "url": "https://packages.unity.com" 194 | }, 195 | "com.unity.ugui": { 196 | "version": "1.0.0", 197 | "depth": 0, 198 | "source": "builtin", 199 | "dependencies": { 200 | "com.unity.modules.ui": "1.0.0", 201 | "com.unity.modules.imgui": "1.0.0" 202 | } 203 | }, 204 | "com.unity.visualeffectgraph": { 205 | "version": "12.1.10", 206 | "depth": 1, 207 | "source": "builtin", 208 | "dependencies": { 209 | "com.unity.shadergraph": "12.1.10", 210 | "com.unity.render-pipelines.core": "12.1.10" 211 | } 212 | }, 213 | "com.unity.visualscripting": { 214 | "version": "1.8.0", 215 | "depth": 0, 216 | "source": "registry", 217 | "dependencies": { 218 | "com.unity.ugui": "1.0.0", 219 | "com.unity.modules.jsonserialize": "1.0.0" 220 | }, 221 | "url": "https://packages.unity.com" 222 | }, 223 | "jp.keijiro.noiseshader": { 224 | "version": "2.0.0", 225 | "depth": 0, 226 | "source": "registry", 227 | "dependencies": {}, 228 | "url": "https://registry.npmjs.com" 229 | }, 230 | "com.unity.modules.ai": { 231 | "version": "1.0.0", 232 | "depth": 0, 233 | "source": "builtin", 234 | "dependencies": {} 235 | }, 236 | "com.unity.modules.androidjni": { 237 | "version": "1.0.0", 238 | "depth": 0, 239 | "source": "builtin", 240 | "dependencies": {} 241 | }, 242 | "com.unity.modules.animation": { 243 | "version": "1.0.0", 244 | "depth": 0, 245 | "source": "builtin", 246 | "dependencies": {} 247 | }, 248 | "com.unity.modules.assetbundle": { 249 | "version": "1.0.0", 250 | "depth": 0, 251 | "source": "builtin", 252 | "dependencies": {} 253 | }, 254 | "com.unity.modules.audio": { 255 | "version": "1.0.0", 256 | "depth": 0, 257 | "source": "builtin", 258 | "dependencies": {} 259 | }, 260 | "com.unity.modules.cloth": { 261 | "version": "1.0.0", 262 | "depth": 0, 263 | "source": "builtin", 264 | "dependencies": { 265 | "com.unity.modules.physics": "1.0.0" 266 | } 267 | }, 268 | "com.unity.modules.director": { 269 | "version": "1.0.0", 270 | "depth": 0, 271 | "source": "builtin", 272 | "dependencies": { 273 | "com.unity.modules.audio": "1.0.0", 274 | "com.unity.modules.animation": "1.0.0" 275 | } 276 | }, 277 | "com.unity.modules.imageconversion": { 278 | "version": "1.0.0", 279 | "depth": 0, 280 | "source": "builtin", 281 | "dependencies": {} 282 | }, 283 | "com.unity.modules.imgui": { 284 | "version": "1.0.0", 285 | "depth": 0, 286 | "source": "builtin", 287 | "dependencies": {} 288 | }, 289 | "com.unity.modules.jsonserialize": { 290 | "version": "1.0.0", 291 | "depth": 0, 292 | "source": "builtin", 293 | "dependencies": {} 294 | }, 295 | "com.unity.modules.particlesystem": { 296 | "version": "1.0.0", 297 | "depth": 0, 298 | "source": "builtin", 299 | "dependencies": {} 300 | }, 301 | "com.unity.modules.physics": { 302 | "version": "1.0.0", 303 | "depth": 0, 304 | "source": "builtin", 305 | "dependencies": {} 306 | }, 307 | "com.unity.modules.physics2d": { 308 | "version": "1.0.0", 309 | "depth": 0, 310 | "source": "builtin", 311 | "dependencies": {} 312 | }, 313 | "com.unity.modules.screencapture": { 314 | "version": "1.0.0", 315 | "depth": 0, 316 | "source": "builtin", 317 | "dependencies": { 318 | "com.unity.modules.imageconversion": "1.0.0" 319 | } 320 | }, 321 | "com.unity.modules.subsystems": { 322 | "version": "1.0.0", 323 | "depth": 1, 324 | "source": "builtin", 325 | "dependencies": { 326 | "com.unity.modules.jsonserialize": "1.0.0" 327 | } 328 | }, 329 | "com.unity.modules.terrain": { 330 | "version": "1.0.0", 331 | "depth": 0, 332 | "source": "builtin", 333 | "dependencies": {} 334 | }, 335 | "com.unity.modules.terrainphysics": { 336 | "version": "1.0.0", 337 | "depth": 0, 338 | "source": "builtin", 339 | "dependencies": { 340 | "com.unity.modules.physics": "1.0.0", 341 | "com.unity.modules.terrain": "1.0.0" 342 | } 343 | }, 344 | "com.unity.modules.tilemap": { 345 | "version": "1.0.0", 346 | "depth": 0, 347 | "source": "builtin", 348 | "dependencies": { 349 | "com.unity.modules.physics2d": "1.0.0" 350 | } 351 | }, 352 | "com.unity.modules.ui": { 353 | "version": "1.0.0", 354 | "depth": 0, 355 | "source": "builtin", 356 | "dependencies": {} 357 | }, 358 | "com.unity.modules.uielements": { 359 | "version": "1.0.0", 360 | "depth": 0, 361 | "source": "builtin", 362 | "dependencies": { 363 | "com.unity.modules.ui": "1.0.0", 364 | "com.unity.modules.imgui": "1.0.0", 365 | "com.unity.modules.jsonserialize": "1.0.0", 366 | "com.unity.modules.uielementsnative": "1.0.0" 367 | } 368 | }, 369 | "com.unity.modules.uielementsnative": { 370 | "version": "1.0.0", 371 | "depth": 1, 372 | "source": "builtin", 373 | "dependencies": { 374 | "com.unity.modules.ui": "1.0.0", 375 | "com.unity.modules.imgui": "1.0.0", 376 | "com.unity.modules.jsonserialize": "1.0.0" 377 | } 378 | }, 379 | "com.unity.modules.umbra": { 380 | "version": "1.0.0", 381 | "depth": 0, 382 | "source": "builtin", 383 | "dependencies": {} 384 | }, 385 | "com.unity.modules.unityanalytics": { 386 | "version": "1.0.0", 387 | "depth": 0, 388 | "source": "builtin", 389 | "dependencies": { 390 | "com.unity.modules.unitywebrequest": "1.0.0", 391 | "com.unity.modules.jsonserialize": "1.0.0" 392 | } 393 | }, 394 | "com.unity.modules.unitywebrequest": { 395 | "version": "1.0.0", 396 | "depth": 0, 397 | "source": "builtin", 398 | "dependencies": {} 399 | }, 400 | "com.unity.modules.unitywebrequestassetbundle": { 401 | "version": "1.0.0", 402 | "depth": 0, 403 | "source": "builtin", 404 | "dependencies": { 405 | "com.unity.modules.assetbundle": "1.0.0", 406 | "com.unity.modules.unitywebrequest": "1.0.0" 407 | } 408 | }, 409 | "com.unity.modules.unitywebrequestaudio": { 410 | "version": "1.0.0", 411 | "depth": 0, 412 | "source": "builtin", 413 | "dependencies": { 414 | "com.unity.modules.unitywebrequest": "1.0.0", 415 | "com.unity.modules.audio": "1.0.0" 416 | } 417 | }, 418 | "com.unity.modules.unitywebrequesttexture": { 419 | "version": "1.0.0", 420 | "depth": 0, 421 | "source": "builtin", 422 | "dependencies": { 423 | "com.unity.modules.unitywebrequest": "1.0.0", 424 | "com.unity.modules.imageconversion": "1.0.0" 425 | } 426 | }, 427 | "com.unity.modules.unitywebrequestwww": { 428 | "version": "1.0.0", 429 | "depth": 0, 430 | "source": "builtin", 431 | "dependencies": { 432 | "com.unity.modules.unitywebrequest": "1.0.0", 433 | "com.unity.modules.unitywebrequestassetbundle": "1.0.0", 434 | "com.unity.modules.unitywebrequestaudio": "1.0.0", 435 | "com.unity.modules.audio": "1.0.0", 436 | "com.unity.modules.assetbundle": "1.0.0", 437 | "com.unity.modules.imageconversion": "1.0.0" 438 | } 439 | }, 440 | "com.unity.modules.vehicles": { 441 | "version": "1.0.0", 442 | "depth": 0, 443 | "source": "builtin", 444 | "dependencies": { 445 | "com.unity.modules.physics": "1.0.0" 446 | } 447 | }, 448 | "com.unity.modules.video": { 449 | "version": "1.0.0", 450 | "depth": 0, 451 | "source": "builtin", 452 | "dependencies": { 453 | "com.unity.modules.audio": "1.0.0", 454 | "com.unity.modules.ui": "1.0.0", 455 | "com.unity.modules.unitywebrequest": "1.0.0" 456 | } 457 | }, 458 | "com.unity.modules.vr": { 459 | "version": "1.0.0", 460 | "depth": 0, 461 | "source": "builtin", 462 | "dependencies": { 463 | "com.unity.modules.jsonserialize": "1.0.0", 464 | "com.unity.modules.physics": "1.0.0", 465 | "com.unity.modules.xr": "1.0.0" 466 | } 467 | }, 468 | "com.unity.modules.wind": { 469 | "version": "1.0.0", 470 | "depth": 0, 471 | "source": "builtin", 472 | "dependencies": {} 473 | }, 474 | "com.unity.modules.xr": { 475 | "version": "1.0.0", 476 | "depth": 0, 477 | "source": "builtin", 478 | "dependencies": { 479 | "com.unity.modules.physics": "1.0.0", 480 | "com.unity.modules.jsonserialize": "1.0.0", 481 | "com.unity.modules.subsystems": "1.0.0" 482 | } 483 | } 484 | } 485 | } 486 | -------------------------------------------------------------------------------- /ProjectSettings/AudioManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!11 &1 4 | AudioManager: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 2 7 | m_Volume: 1 8 | Rolloff Scale: 1 9 | Doppler Factor: 1 10 | Default Speaker Mode: 2 11 | m_SampleRate: 0 12 | m_DSPBufferSize: 1024 13 | m_VirtualVoiceCount: 512 14 | m_RealVoiceCount: 32 15 | m_SpatializerPlugin: 16 | m_AmbisonicDecoderPlugin: 17 | m_DisableAudio: 0 18 | m_VirtualizeEffects: 1 19 | m_RequestedDSPBufferSize: 0 20 | -------------------------------------------------------------------------------- /ProjectSettings/ClusterInputManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!236 &1 4 | ClusterInputManager: 5 | m_ObjectHideFlags: 0 6 | m_Inputs: [] 7 | -------------------------------------------------------------------------------- /ProjectSettings/DynamicsManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!55 &1 4 | PhysicsManager: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 13 7 | m_Gravity: {x: 0, y: -9.81, z: 0} 8 | m_DefaultMaterial: {fileID: 0} 9 | m_BounceThreshold: 2 10 | m_SleepThreshold: 0.005 11 | m_DefaultContactOffset: 0.01 12 | m_DefaultSolverIterations: 6 13 | m_DefaultSolverVelocityIterations: 1 14 | m_QueriesHitBackfaces: 0 15 | m_QueriesHitTriggers: 1 16 | m_EnableAdaptiveForce: 0 17 | m_ClothInterCollisionDistance: 0.1 18 | m_ClothInterCollisionStiffness: 0.2 19 | m_ContactsGeneration: 1 20 | m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 21 | m_AutoSimulation: 1 22 | m_AutoSyncTransforms: 0 23 | m_ReuseCollisionCallbacks: 0 24 | m_ClothInterCollisionSettingsToggle: 0 25 | m_ClothGravity: {x: 0, y: -9.81, z: 0} 26 | m_ContactPairsMode: 0 27 | m_BroadphaseType: 0 28 | m_WorldBounds: 29 | m_Center: {x: 0, y: 0, z: 0} 30 | m_Extent: {x: 250, y: 250, z: 250} 31 | m_WorldSubdivisions: 8 32 | m_FrictionType: 0 33 | m_EnableEnhancedDeterminism: 0 34 | m_EnableUnifiedHeightmaps: 1 35 | m_SolverType: 0 36 | m_DefaultMaxAngularSpeed: 50 37 | -------------------------------------------------------------------------------- /ProjectSettings/EditorBuildSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!1045 &1 4 | EditorBuildSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 2 7 | m_Scenes: 8 | - enabled: 1 9 | path: Assets/OutdoorsScene.unity 10 | guid: 8124e5870f4fd4c779e7a5f994e84ad1 11 | m_configObjects: {} 12 | -------------------------------------------------------------------------------- /ProjectSettings/EditorSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!159 &1 4 | EditorSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 11 7 | m_SerializationMode: 2 8 | m_LineEndingsForNewScripts: 2 9 | m_DefaultBehaviorMode: 0 10 | m_PrefabRegularEnvironment: {fileID: 0} 11 | m_PrefabUIEnvironment: {fileID: 0} 12 | m_SpritePackerMode: 0 13 | m_SpritePackerPaddingPower: 1 14 | m_Bc7TextureCompressor: 0 15 | m_EtcTextureCompressorBehavior: 1 16 | m_EtcTextureFastCompressor: 1 17 | m_EtcTextureNormalCompressor: 2 18 | m_EtcTextureBestCompressor: 4 19 | m_ProjectGenerationIncludedExtensions: txt;xml;fnt;cd;asmdef;asmref;rsp 20 | m_ProjectGenerationRootNamespace: 21 | m_EnableTextureStreamingInEditMode: 1 22 | m_EnableTextureStreamingInPlayMode: 1 23 | m_AsyncShaderCompilation: 1 24 | m_CachingShaderPreprocessor: 1 25 | m_PrefabModeAllowAutoSave: 1 26 | m_EnterPlayModeOptionsEnabled: 0 27 | m_EnterPlayModeOptions: 3 28 | m_GameObjectNamingDigits: 1 29 | m_GameObjectNamingScheme: 0 30 | m_AssetNamingUsesSpace: 1 31 | m_UseLegacyProbeSampleCount: 0 32 | m_SerializeInlineMappingsOnOneLine: 0 33 | m_DisableCookiesInLightmapper: 0 34 | m_AssetPipelineMode: 1 35 | m_RefreshImportMode: 0 36 | m_CacheServerMode: 0 37 | m_CacheServerEndpoint: 38 | m_CacheServerNamespacePrefix: default 39 | m_CacheServerEnableDownload: 1 40 | m_CacheServerEnableUpload: 1 41 | m_CacheServerEnableAuth: 0 42 | m_CacheServerEnableTls: 0 43 | m_CacheServerValidationMode: 2 44 | m_CacheServerDownloadBatchSize: 128 45 | -------------------------------------------------------------------------------- /ProjectSettings/GraphicsSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!30 &1 4 | GraphicsSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 14 7 | m_Deferred: 8 | m_Mode: 1 9 | m_Shader: {fileID: 69, guid: 0000000000000000f000000000000000, type: 0} 10 | m_DeferredReflections: 11 | m_Mode: 1 12 | m_Shader: {fileID: 74, guid: 0000000000000000f000000000000000, type: 0} 13 | m_ScreenSpaceShadows: 14 | m_Mode: 1 15 | m_Shader: {fileID: 64, guid: 0000000000000000f000000000000000, type: 0} 16 | m_LegacyDeferred: 17 | m_Mode: 1 18 | m_Shader: {fileID: 63, guid: 0000000000000000f000000000000000, type: 0} 19 | m_DepthNormals: 20 | m_Mode: 1 21 | m_Shader: {fileID: 62, guid: 0000000000000000f000000000000000, type: 0} 22 | m_MotionVectors: 23 | m_Mode: 1 24 | m_Shader: {fileID: 75, guid: 0000000000000000f000000000000000, type: 0} 25 | m_LightHalo: 26 | m_Mode: 1 27 | m_Shader: {fileID: 105, guid: 0000000000000000f000000000000000, type: 0} 28 | m_LensFlare: 29 | m_Mode: 1 30 | m_Shader: {fileID: 102, guid: 0000000000000000f000000000000000, type: 0} 31 | m_VideoShadersIncludeMode: 2 32 | m_AlwaysIncludedShaders: 33 | - {fileID: 7, guid: 0000000000000000f000000000000000, type: 0} 34 | - {fileID: 15104, guid: 0000000000000000f000000000000000, type: 0} 35 | - {fileID: 15105, guid: 0000000000000000f000000000000000, type: 0} 36 | - {fileID: 15106, guid: 0000000000000000f000000000000000, type: 0} 37 | - {fileID: 10753, guid: 0000000000000000f000000000000000, type: 0} 38 | - {fileID: 10770, guid: 0000000000000000f000000000000000, type: 0} 39 | - {fileID: 10783, guid: 0000000000000000f000000000000000, type: 0} 40 | m_PreloadedShaders: [] 41 | m_PreloadShadersBatchTimeLimit: -1 42 | m_SpritesDefaultMaterial: {fileID: 10754, guid: 0000000000000000f000000000000000, 43 | type: 0} 44 | m_CustomRenderPipeline: {fileID: 11400000, guid: b9f3086da92434da0bc1518f19f0ce86, 45 | type: 2} 46 | m_TransparencySortMode: 0 47 | m_TransparencySortAxis: {x: 0, y: 0, z: 1} 48 | m_DefaultRenderingPath: 1 49 | m_DefaultMobileRenderingPath: 1 50 | m_TierSettings: [] 51 | m_LightmapStripping: 0 52 | m_FogStripping: 0 53 | m_InstancingStripping: 0 54 | m_LightmapKeepPlain: 1 55 | m_LightmapKeepDirCombined: 1 56 | m_LightmapKeepDynamicPlain: 1 57 | m_LightmapKeepDynamicDirCombined: 1 58 | m_LightmapKeepShadowMask: 1 59 | m_LightmapKeepSubtractive: 1 60 | m_FogKeepLinear: 1 61 | m_FogKeepExp: 1 62 | m_FogKeepExp2: 1 63 | m_AlbedoSwatchInfos: [] 64 | m_LightsUseLinearIntensity: 1 65 | m_LightsUseColorTemperature: 1 66 | m_DefaultRenderingLayerMask: 257 67 | m_LogWhenShaderIsCompiled: 0 68 | m_SRPDefaultSettings: 69 | UnityEngine.Rendering.HighDefinition.HDRenderPipeline: {fileID: 11400000, guid: ac0316ca287ba459492b669ff1317a6f, 70 | type: 2} 71 | -------------------------------------------------------------------------------- /ProjectSettings/HDRPProjectSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!114 &1 4 | MonoBehaviour: 5 | m_ObjectHideFlags: 61 6 | m_CorrespondingSourceObject: {fileID: 0} 7 | m_PrefabInstance: {fileID: 0} 8 | m_PrefabAsset: {fileID: 0} 9 | m_GameObject: {fileID: 0} 10 | m_Enabled: 1 11 | m_EditorHideFlags: 0 12 | m_Script: {fileID: 11500000, guid: 63a2978a97e4fc04cb9d905947216f3d, type: 3} 13 | m_Name: 14 | m_EditorClassIdentifier: 15 | m_ProjectSettingFolderPath: Settings/HDRPDefaultResources 16 | m_WizardPopupAtStart: 0 17 | m_LastMaterialVersion: 12 18 | m_HDShaderGraphLastSeenVersion: 0 19 | m_PluginMaterialVersions: 20 | m_Keys: [] 21 | m_Values: 22 | m_PluginSubTargetVersions: 23 | m_Keys: [] 24 | m_Values: 25 | m_Version: 2 26 | m_ObsoleteWizardPopupAlreadyShownOnce: 1 27 | m_ObsoleteWizardActiveTab: 0 28 | m_ObsoleteWizardNeedRestartAfterChangingToDX12: 0 29 | m_ObsoleteWizardNeedToRunFixAllAgainAfterDomainReload: 0 30 | -------------------------------------------------------------------------------- /ProjectSettings/InputManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!13 &1 4 | InputManager: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 2 7 | m_Axes: 8 | - serializedVersion: 3 9 | m_Name: Horizontal 10 | descriptiveName: 11 | descriptiveNegativeName: 12 | negativeButton: left 13 | positiveButton: right 14 | altNegativeButton: a 15 | altPositiveButton: d 16 | gravity: 3 17 | dead: 0.001 18 | sensitivity: 3 19 | snap: 1 20 | invert: 0 21 | type: 0 22 | axis: 0 23 | joyNum: 0 24 | - serializedVersion: 3 25 | m_Name: Vertical 26 | descriptiveName: 27 | descriptiveNegativeName: 28 | negativeButton: down 29 | positiveButton: up 30 | altNegativeButton: s 31 | altPositiveButton: w 32 | gravity: 3 33 | dead: 0.001 34 | sensitivity: 3 35 | snap: 1 36 | invert: 0 37 | type: 0 38 | axis: 0 39 | joyNum: 0 40 | - serializedVersion: 3 41 | m_Name: Fire1 42 | descriptiveName: 43 | descriptiveNegativeName: 44 | negativeButton: 45 | positiveButton: left ctrl 46 | altNegativeButton: 47 | altPositiveButton: mouse 0 48 | gravity: 1000 49 | dead: 0.001 50 | sensitivity: 1000 51 | snap: 0 52 | invert: 0 53 | type: 0 54 | axis: 0 55 | joyNum: 0 56 | - serializedVersion: 3 57 | m_Name: Fire2 58 | descriptiveName: 59 | descriptiveNegativeName: 60 | negativeButton: 61 | positiveButton: left alt 62 | altNegativeButton: 63 | altPositiveButton: mouse 1 64 | gravity: 1000 65 | dead: 0.001 66 | sensitivity: 1000 67 | snap: 0 68 | invert: 0 69 | type: 0 70 | axis: 0 71 | joyNum: 0 72 | - serializedVersion: 3 73 | m_Name: Fire3 74 | descriptiveName: 75 | descriptiveNegativeName: 76 | negativeButton: 77 | positiveButton: left shift 78 | altNegativeButton: 79 | altPositiveButton: mouse 2 80 | gravity: 1000 81 | dead: 0.001 82 | sensitivity: 1000 83 | snap: 0 84 | invert: 0 85 | type: 0 86 | axis: 0 87 | joyNum: 0 88 | - serializedVersion: 3 89 | m_Name: Jump 90 | descriptiveName: 91 | descriptiveNegativeName: 92 | negativeButton: 93 | positiveButton: space 94 | altNegativeButton: 95 | altPositiveButton: 96 | gravity: 1000 97 | dead: 0.001 98 | sensitivity: 1000 99 | snap: 0 100 | invert: 0 101 | type: 0 102 | axis: 0 103 | joyNum: 0 104 | - serializedVersion: 3 105 | m_Name: Mouse X 106 | descriptiveName: 107 | descriptiveNegativeName: 108 | negativeButton: 109 | positiveButton: 110 | altNegativeButton: 111 | altPositiveButton: 112 | gravity: 0 113 | dead: 0 114 | sensitivity: 0.1 115 | snap: 0 116 | invert: 0 117 | type: 1 118 | axis: 0 119 | joyNum: 0 120 | - serializedVersion: 3 121 | m_Name: Mouse Y 122 | descriptiveName: 123 | descriptiveNegativeName: 124 | negativeButton: 125 | positiveButton: 126 | altNegativeButton: 127 | altPositiveButton: 128 | gravity: 0 129 | dead: 0 130 | sensitivity: 0.1 131 | snap: 0 132 | invert: 0 133 | type: 1 134 | axis: 1 135 | joyNum: 0 136 | - serializedVersion: 3 137 | m_Name: Mouse ScrollWheel 138 | descriptiveName: 139 | descriptiveNegativeName: 140 | negativeButton: 141 | positiveButton: 142 | altNegativeButton: 143 | altPositiveButton: 144 | gravity: 0 145 | dead: 0 146 | sensitivity: 0.1 147 | snap: 0 148 | invert: 0 149 | type: 1 150 | axis: 2 151 | joyNum: 0 152 | - serializedVersion: 3 153 | m_Name: Horizontal 154 | descriptiveName: 155 | descriptiveNegativeName: 156 | negativeButton: 157 | positiveButton: 158 | altNegativeButton: 159 | altPositiveButton: 160 | gravity: 0 161 | dead: 0.19 162 | sensitivity: 1 163 | snap: 0 164 | invert: 0 165 | type: 2 166 | axis: 0 167 | joyNum: 0 168 | - serializedVersion: 3 169 | m_Name: Vertical 170 | descriptiveName: 171 | descriptiveNegativeName: 172 | negativeButton: 173 | positiveButton: 174 | altNegativeButton: 175 | altPositiveButton: 176 | gravity: 0 177 | dead: 0.19 178 | sensitivity: 1 179 | snap: 0 180 | invert: 1 181 | type: 2 182 | axis: 1 183 | joyNum: 0 184 | - serializedVersion: 3 185 | m_Name: Fire1 186 | descriptiveName: 187 | descriptiveNegativeName: 188 | negativeButton: 189 | positiveButton: joystick button 0 190 | altNegativeButton: 191 | altPositiveButton: 192 | gravity: 1000 193 | dead: 0.001 194 | sensitivity: 1000 195 | snap: 0 196 | invert: 0 197 | type: 0 198 | axis: 0 199 | joyNum: 0 200 | - serializedVersion: 3 201 | m_Name: Fire2 202 | descriptiveName: 203 | descriptiveNegativeName: 204 | negativeButton: 205 | positiveButton: joystick button 1 206 | altNegativeButton: 207 | altPositiveButton: 208 | gravity: 1000 209 | dead: 0.001 210 | sensitivity: 1000 211 | snap: 0 212 | invert: 0 213 | type: 0 214 | axis: 0 215 | joyNum: 0 216 | - serializedVersion: 3 217 | m_Name: Fire3 218 | descriptiveName: 219 | descriptiveNegativeName: 220 | negativeButton: 221 | positiveButton: joystick button 2 222 | altNegativeButton: 223 | altPositiveButton: 224 | gravity: 1000 225 | dead: 0.001 226 | sensitivity: 1000 227 | snap: 0 228 | invert: 0 229 | type: 0 230 | axis: 0 231 | joyNum: 0 232 | - serializedVersion: 3 233 | m_Name: Jump 234 | descriptiveName: 235 | descriptiveNegativeName: 236 | negativeButton: 237 | positiveButton: joystick button 3 238 | altNegativeButton: 239 | altPositiveButton: 240 | gravity: 1000 241 | dead: 0.001 242 | sensitivity: 1000 243 | snap: 0 244 | invert: 0 245 | type: 0 246 | axis: 0 247 | joyNum: 0 248 | - serializedVersion: 3 249 | m_Name: Submit 250 | descriptiveName: 251 | descriptiveNegativeName: 252 | negativeButton: 253 | positiveButton: return 254 | altNegativeButton: 255 | altPositiveButton: joystick button 0 256 | gravity: 1000 257 | dead: 0.001 258 | sensitivity: 1000 259 | snap: 0 260 | invert: 0 261 | type: 0 262 | axis: 0 263 | joyNum: 0 264 | - serializedVersion: 3 265 | m_Name: Submit 266 | descriptiveName: 267 | descriptiveNegativeName: 268 | negativeButton: 269 | positiveButton: enter 270 | altNegativeButton: 271 | altPositiveButton: space 272 | gravity: 1000 273 | dead: 0.001 274 | sensitivity: 1000 275 | snap: 0 276 | invert: 0 277 | type: 0 278 | axis: 0 279 | joyNum: 0 280 | - serializedVersion: 3 281 | m_Name: Cancel 282 | descriptiveName: 283 | descriptiveNegativeName: 284 | negativeButton: 285 | positiveButton: escape 286 | altNegativeButton: 287 | altPositiveButton: joystick button 1 288 | gravity: 1000 289 | dead: 0.001 290 | sensitivity: 1000 291 | snap: 0 292 | invert: 0 293 | type: 0 294 | axis: 0 295 | joyNum: 0 296 | - serializedVersion: 3 297 | m_Name: Enable Debug Button 1 298 | descriptiveName: 299 | descriptiveNegativeName: 300 | negativeButton: 301 | positiveButton: left ctrl 302 | altNegativeButton: 303 | altPositiveButton: joystick button 8 304 | gravity: 0 305 | dead: 0 306 | sensitivity: 0 307 | snap: 0 308 | invert: 0 309 | type: 0 310 | axis: 0 311 | joyNum: 0 312 | - serializedVersion: 3 313 | m_Name: Enable Debug Button 2 314 | descriptiveName: 315 | descriptiveNegativeName: 316 | negativeButton: 317 | positiveButton: backspace 318 | altNegativeButton: 319 | altPositiveButton: joystick button 9 320 | gravity: 0 321 | dead: 0 322 | sensitivity: 0 323 | snap: 0 324 | invert: 0 325 | type: 0 326 | axis: 0 327 | joyNum: 0 328 | - serializedVersion: 3 329 | m_Name: Debug Reset 330 | descriptiveName: 331 | descriptiveNegativeName: 332 | negativeButton: 333 | positiveButton: left alt 334 | altNegativeButton: 335 | altPositiveButton: joystick button 1 336 | gravity: 0 337 | dead: 0 338 | sensitivity: 0 339 | snap: 0 340 | invert: 0 341 | type: 0 342 | axis: 0 343 | joyNum: 0 344 | - serializedVersion: 3 345 | m_Name: Debug Next 346 | descriptiveName: 347 | descriptiveNegativeName: 348 | negativeButton: 349 | positiveButton: page down 350 | altNegativeButton: 351 | altPositiveButton: joystick button 5 352 | gravity: 0 353 | dead: 0 354 | sensitivity: 0 355 | snap: 0 356 | invert: 0 357 | type: 0 358 | axis: 0 359 | joyNum: 0 360 | - serializedVersion: 3 361 | m_Name: Debug Previous 362 | descriptiveName: 363 | descriptiveNegativeName: 364 | negativeButton: 365 | positiveButton: page up 366 | altNegativeButton: 367 | altPositiveButton: joystick button 4 368 | gravity: 0 369 | dead: 0 370 | sensitivity: 0 371 | snap: 0 372 | invert: 0 373 | type: 0 374 | axis: 0 375 | joyNum: 0 376 | - serializedVersion: 3 377 | m_Name: Debug Validate 378 | descriptiveName: 379 | descriptiveNegativeName: 380 | negativeButton: 381 | positiveButton: return 382 | altNegativeButton: 383 | altPositiveButton: joystick button 0 384 | gravity: 0 385 | dead: 0 386 | sensitivity: 0 387 | snap: 0 388 | invert: 0 389 | type: 0 390 | axis: 0 391 | joyNum: 0 392 | - serializedVersion: 3 393 | m_Name: Debug Persistent 394 | descriptiveName: 395 | descriptiveNegativeName: 396 | negativeButton: 397 | positiveButton: right shift 398 | altNegativeButton: 399 | altPositiveButton: joystick button 2 400 | gravity: 0 401 | dead: 0 402 | sensitivity: 0 403 | snap: 0 404 | invert: 0 405 | type: 0 406 | axis: 0 407 | joyNum: 0 408 | - serializedVersion: 3 409 | m_Name: Debug Multiplier 410 | descriptiveName: 411 | descriptiveNegativeName: 412 | negativeButton: 413 | positiveButton: left shift 414 | altNegativeButton: 415 | altPositiveButton: joystick button 3 416 | gravity: 0 417 | dead: 0 418 | sensitivity: 0 419 | snap: 0 420 | invert: 0 421 | type: 0 422 | axis: 0 423 | joyNum: 0 424 | - serializedVersion: 3 425 | m_Name: Debug Horizontal 426 | descriptiveName: 427 | descriptiveNegativeName: 428 | negativeButton: left 429 | positiveButton: right 430 | altNegativeButton: 431 | altPositiveButton: 432 | gravity: 1000 433 | dead: 0.001 434 | sensitivity: 1000 435 | snap: 0 436 | invert: 0 437 | type: 0 438 | axis: 0 439 | joyNum: 0 440 | - serializedVersion: 3 441 | m_Name: Debug Vertical 442 | descriptiveName: 443 | descriptiveNegativeName: 444 | negativeButton: down 445 | positiveButton: up 446 | altNegativeButton: 447 | altPositiveButton: 448 | gravity: 1000 449 | dead: 0.001 450 | sensitivity: 1000 451 | snap: 0 452 | invert: 0 453 | type: 0 454 | axis: 0 455 | joyNum: 0 456 | - serializedVersion: 3 457 | m_Name: Debug Vertical 458 | descriptiveName: 459 | descriptiveNegativeName: 460 | negativeButton: down 461 | positiveButton: up 462 | altNegativeButton: 463 | altPositiveButton: 464 | gravity: 1000 465 | dead: 0.001 466 | sensitivity: 1000 467 | snap: 0 468 | invert: 0 469 | type: 2 470 | axis: 6 471 | joyNum: 0 472 | - serializedVersion: 3 473 | m_Name: Debug Horizontal 474 | descriptiveName: 475 | descriptiveNegativeName: 476 | negativeButton: left 477 | positiveButton: right 478 | altNegativeButton: 479 | altPositiveButton: 480 | gravity: 1000 481 | dead: 0.001 482 | sensitivity: 1000 483 | snap: 0 484 | invert: 0 485 | type: 2 486 | axis: 5 487 | joyNum: 0 488 | -------------------------------------------------------------------------------- /ProjectSettings/MemorySettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!387306366 &1 4 | MemorySettings: 5 | m_ObjectHideFlags: 0 6 | m_EditorMemorySettings: 7 | m_MainAllocatorBlockSize: -1 8 | m_ThreadAllocatorBlockSize: -1 9 | m_MainGfxBlockSize: -1 10 | m_ThreadGfxBlockSize: -1 11 | m_CacheBlockSize: -1 12 | m_TypetreeBlockSize: -1 13 | m_ProfilerBlockSize: -1 14 | m_ProfilerEditorBlockSize: -1 15 | m_BucketAllocatorGranularity: -1 16 | m_BucketAllocatorBucketsCount: -1 17 | m_BucketAllocatorBlockSize: -1 18 | m_BucketAllocatorBlockCount: -1 19 | m_ProfilerBucketAllocatorGranularity: -1 20 | m_ProfilerBucketAllocatorBucketsCount: -1 21 | m_ProfilerBucketAllocatorBlockSize: -1 22 | m_ProfilerBucketAllocatorBlockCount: -1 23 | m_TempAllocatorSizeMain: -1 24 | m_JobTempAllocatorBlockSize: -1 25 | m_BackgroundJobTempAllocatorBlockSize: -1 26 | m_JobTempAllocatorReducedBlockSize: -1 27 | m_TempAllocatorSizeGIBakingWorker: -1 28 | m_TempAllocatorSizeNavMeshWorker: -1 29 | m_TempAllocatorSizeAudioWorker: -1 30 | m_TempAllocatorSizeCloudWorker: -1 31 | m_TempAllocatorSizeGfx: -1 32 | m_TempAllocatorSizeJobWorker: -1 33 | m_TempAllocatorSizeBackgroundWorker: -1 34 | m_TempAllocatorSizePreloadManager: -1 35 | m_PlatformMemorySettings: {} 36 | -------------------------------------------------------------------------------- /ProjectSettings/NavMeshAreas.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!126 &1 4 | NavMeshProjectSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 2 7 | areas: 8 | - name: Walkable 9 | cost: 1 10 | - name: Not Walkable 11 | cost: 1 12 | - name: Jump 13 | cost: 2 14 | - name: 15 | cost: 1 16 | - name: 17 | cost: 1 18 | - name: 19 | cost: 1 20 | - name: 21 | cost: 1 22 | - name: 23 | cost: 1 24 | - name: 25 | cost: 1 26 | - name: 27 | cost: 1 28 | - name: 29 | cost: 1 30 | - name: 31 | cost: 1 32 | - name: 33 | cost: 1 34 | - name: 35 | cost: 1 36 | - name: 37 | cost: 1 38 | - name: 39 | cost: 1 40 | - name: 41 | cost: 1 42 | - name: 43 | cost: 1 44 | - name: 45 | cost: 1 46 | - name: 47 | cost: 1 48 | - name: 49 | cost: 1 50 | - name: 51 | cost: 1 52 | - name: 53 | cost: 1 54 | - name: 55 | cost: 1 56 | - name: 57 | cost: 1 58 | - name: 59 | cost: 1 60 | - name: 61 | cost: 1 62 | - name: 63 | cost: 1 64 | - name: 65 | cost: 1 66 | - name: 67 | cost: 1 68 | - name: 69 | cost: 1 70 | - name: 71 | cost: 1 72 | m_LastAgentTypeID: -887442657 73 | m_Settings: 74 | - serializedVersion: 2 75 | agentTypeID: 0 76 | agentRadius: 0.5 77 | agentHeight: 2 78 | agentSlope: 45 79 | agentClimb: 0.75 80 | ledgeDropHeight: 0 81 | maxJumpAcrossDistance: 0 82 | minRegionArea: 2 83 | manualCellSize: 0 84 | cellSize: 0.16666667 85 | manualTileSize: 0 86 | tileSize: 256 87 | accuratePlacement: 0 88 | debug: 89 | m_Flags: 0 90 | m_SettingNames: 91 | - Humanoid 92 | -------------------------------------------------------------------------------- /ProjectSettings/PackageManagerSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!114 &1 4 | MonoBehaviour: 5 | m_ObjectHideFlags: 61 6 | m_CorrespondingSourceObject: {fileID: 0} 7 | m_PrefabInstance: {fileID: 0} 8 | m_PrefabAsset: {fileID: 0} 9 | m_GameObject: {fileID: 0} 10 | m_Enabled: 1 11 | m_EditorHideFlags: 0 12 | m_Script: {fileID: 13964, guid: 0000000000000000e000000000000000, type: 0} 13 | m_Name: 14 | m_EditorClassIdentifier: 15 | m_EnablePreReleasePackages: 1 16 | m_EnablePackageDependencies: 1 17 | m_AdvancedSettingsExpanded: 1 18 | m_ScopedRegistriesSettingsExpanded: 1 19 | m_SeeAllPackageVersions: 0 20 | oneTimeWarningShown: 1 21 | m_Registries: 22 | - m_Id: main 23 | m_Name: 24 | m_Url: https://packages.unity.com 25 | m_Scopes: [] 26 | m_IsDefault: 1 27 | m_Capabilities: 7 28 | m_ConfigSource: 0 29 | - m_Id: scoped:project:Keijiro 30 | m_Name: Keijiro 31 | m_Url: https://registry.npmjs.com 32 | m_Scopes: 33 | - jp.keijiro 34 | m_IsDefault: 0 35 | m_Capabilities: 0 36 | m_ConfigSource: 4 37 | m_UserSelectedRegistryName: Keijiro 38 | m_UserAddingNewScopedRegistry: 0 39 | m_RegistryInfoDraft: 40 | m_Modified: 0 41 | m_ErrorMessage: 42 | m_UserModificationsInstanceId: -830 43 | m_OriginalInstanceId: -832 44 | m_LoadAssets: 0 45 | -------------------------------------------------------------------------------- /ProjectSettings/Packages/com.unity.testtools.codecoverage/Settings.json: -------------------------------------------------------------------------------- 1 | { 2 | "m_Name": "Settings", 3 | "m_Path": "ProjectSettings/Packages/com.unity.testtools.codecoverage/Settings.json", 4 | "m_Dictionary": { 5 | "m_DictionaryValues": [] 6 | } 7 | } -------------------------------------------------------------------------------- /ProjectSettings/Physics2DSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!19 &1 4 | Physics2DSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 4 7 | m_Gravity: {x: 0, y: -9.81} 8 | m_DefaultMaterial: {fileID: 0} 9 | m_VelocityIterations: 8 10 | m_PositionIterations: 3 11 | m_VelocityThreshold: 1 12 | m_MaxLinearCorrection: 0.2 13 | m_MaxAngularCorrection: 8 14 | m_MaxTranslationSpeed: 100 15 | m_MaxRotationSpeed: 360 16 | m_BaumgarteScale: 0.2 17 | m_BaumgarteTimeOfImpactScale: 0.75 18 | m_TimeToSleep: 0.5 19 | m_LinearSleepTolerance: 0.01 20 | m_AngularSleepTolerance: 2 21 | m_DefaultContactOffset: 0.01 22 | m_JobOptions: 23 | serializedVersion: 2 24 | useMultithreading: 0 25 | useConsistencySorting: 0 26 | m_InterpolationPosesPerJob: 100 27 | m_NewContactsPerJob: 30 28 | m_CollideContactsPerJob: 100 29 | m_ClearFlagsPerJob: 200 30 | m_ClearBodyForcesPerJob: 200 31 | m_SyncDiscreteFixturesPerJob: 50 32 | m_SyncContinuousFixturesPerJob: 50 33 | m_FindNearestContactsPerJob: 100 34 | m_UpdateTriggerContactsPerJob: 100 35 | m_IslandSolverCostThreshold: 100 36 | m_IslandSolverBodyCostScale: 1 37 | m_IslandSolverContactCostScale: 10 38 | m_IslandSolverJointCostScale: 10 39 | m_IslandSolverBodiesPerJob: 50 40 | m_IslandSolverContactsPerJob: 50 41 | m_AutoSimulation: 1 42 | m_QueriesHitTriggers: 1 43 | m_QueriesStartInColliders: 1 44 | m_CallbacksOnDisable: 1 45 | m_ReuseCollisionCallbacks: 0 46 | m_AutoSyncTransforms: 0 47 | m_AlwaysShowColliders: 0 48 | m_ShowColliderSleep: 1 49 | m_ShowColliderContacts: 0 50 | m_ShowColliderAABB: 0 51 | m_ContactArrowScale: 0.2 52 | m_ColliderAwakeColor: {r: 0.5686275, g: 0.95686275, b: 0.54509807, a: 0.7529412} 53 | m_ColliderAsleepColor: {r: 0.5686275, g: 0.95686275, b: 0.54509807, a: 0.36078432} 54 | m_ColliderContactColor: {r: 1, g: 0, b: 1, a: 0.6862745} 55 | m_ColliderAABBColor: {r: 1, g: 1, b: 0, a: 0.2509804} 56 | m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 57 | -------------------------------------------------------------------------------- /ProjectSettings/PresetManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!1386491679 &1 4 | PresetManager: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 2 7 | m_DefaultPresets: {} 8 | -------------------------------------------------------------------------------- /ProjectSettings/ProjectVersion.txt: -------------------------------------------------------------------------------- 1 | m_EditorVersion: 2021.3.18f1 2 | m_EditorVersionWithRevision: 2021.3.18f1 (3129e69bc0c7) 3 | -------------------------------------------------------------------------------- /ProjectSettings/QualitySettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!47 &1 4 | QualitySettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 5 7 | m_CurrentQuality: 0 8 | m_QualitySettings: 9 | - serializedVersion: 2 10 | name: High Fidelity 11 | pixelLightCount: 0 12 | shadows: 2 13 | shadowResolution: 0 14 | shadowProjection: 1 15 | shadowCascades: 1 16 | shadowDistance: 15 17 | shadowNearPlaneOffset: 3 18 | shadowCascade2Split: 0.33333334 19 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} 20 | shadowmaskMode: 1 21 | skinWeights: 255 22 | textureQuality: 0 23 | anisotropicTextures: 2 24 | antiAliasing: 0 25 | softParticles: 0 26 | softVegetation: 0 27 | realtimeReflectionProbes: 0 28 | billboardsFaceCameraPosition: 1 29 | vSyncCount: 1 30 | lodBias: 1 31 | maximumLODLevel: 0 32 | streamingMipmapsActive: 0 33 | streamingMipmapsAddAllCameras: 1 34 | streamingMipmapsMemoryBudget: 512 35 | streamingMipmapsRenderersPerFrame: 512 36 | streamingMipmapsMaxLevelReduction: 2 37 | streamingMipmapsMaxFileIORequests: 1024 38 | particleRaycastBudget: 256 39 | asyncUploadTimeSlice: 2 40 | asyncUploadBufferSize: 16 41 | asyncUploadPersistentBuffer: 1 42 | resolutionScalingFixedDPIFactor: 1 43 | customRenderPipeline: {fileID: 11400000, guid: 36dd385e759c96147b6463dcd1149c11, 44 | type: 2} 45 | excludedTargetPlatforms: [] 46 | - serializedVersion: 2 47 | name: Balanced 48 | pixelLightCount: 0 49 | shadows: 2 50 | shadowResolution: 0 51 | shadowProjection: 1 52 | shadowCascades: 1 53 | shadowDistance: 15 54 | shadowNearPlaneOffset: 3 55 | shadowCascade2Split: 0.33333334 56 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} 57 | shadowmaskMode: 1 58 | skinWeights: 255 59 | textureQuality: 0 60 | anisotropicTextures: 2 61 | antiAliasing: 0 62 | softParticles: 0 63 | softVegetation: 0 64 | realtimeReflectionProbes: 0 65 | billboardsFaceCameraPosition: 1 66 | vSyncCount: 1 67 | lodBias: 1 68 | maximumLODLevel: 0 69 | streamingMipmapsActive: 0 70 | streamingMipmapsAddAllCameras: 1 71 | streamingMipmapsMemoryBudget: 512 72 | streamingMipmapsRenderersPerFrame: 512 73 | streamingMipmapsMaxLevelReduction: 2 74 | streamingMipmapsMaxFileIORequests: 1024 75 | particleRaycastBudget: 256 76 | asyncUploadTimeSlice: 2 77 | asyncUploadBufferSize: 16 78 | asyncUploadPersistentBuffer: 1 79 | resolutionScalingFixedDPIFactor: 1 80 | customRenderPipeline: {fileID: 11400000, guid: 3e2e6bfc59709614ab90c0cd7d755e48, 81 | type: 2} 82 | excludedTargetPlatforms: [] 83 | - serializedVersion: 2 84 | name: Performant 85 | pixelLightCount: 0 86 | shadows: 2 87 | shadowResolution: 0 88 | shadowProjection: 1 89 | shadowCascades: 1 90 | shadowDistance: 15 91 | shadowNearPlaneOffset: 3 92 | shadowCascade2Split: 0.33333334 93 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} 94 | shadowmaskMode: 1 95 | skinWeights: 255 96 | textureQuality: 0 97 | anisotropicTextures: 2 98 | antiAliasing: 0 99 | softParticles: 0 100 | softVegetation: 0 101 | realtimeReflectionProbes: 0 102 | billboardsFaceCameraPosition: 1 103 | vSyncCount: 1 104 | lodBias: 1 105 | maximumLODLevel: 0 106 | streamingMipmapsActive: 0 107 | streamingMipmapsAddAllCameras: 1 108 | streamingMipmapsMemoryBudget: 512 109 | streamingMipmapsRenderersPerFrame: 512 110 | streamingMipmapsMaxLevelReduction: 2 111 | streamingMipmapsMaxFileIORequests: 1024 112 | particleRaycastBudget: 256 113 | asyncUploadTimeSlice: 2 114 | asyncUploadBufferSize: 16 115 | asyncUploadPersistentBuffer: 1 116 | resolutionScalingFixedDPIFactor: 1 117 | customRenderPipeline: {fileID: 11400000, guid: 168a2336534e4e043b2a210b6f8d379a, 118 | type: 2} 119 | excludedTargetPlatforms: [] 120 | m_PerPlatformDefaultQuality: 121 | Android: 0 122 | CloudRendering: 0 123 | Lumin: 0 124 | Nintendo Switch: 0 125 | PS4: 0 126 | Server: 0 127 | Stadia: 0 128 | Standalone: 0 129 | WebGL: 0 130 | Windows Store Apps: 0 131 | XboxOne: 0 132 | iPhone: 0 133 | tvOS: 0 134 | -------------------------------------------------------------------------------- /ProjectSettings/SceneTemplateSettings.json: -------------------------------------------------------------------------------- 1 | { 2 | "templatePinStates": [], 3 | "dependencyTypeInfos": [ 4 | { 5 | "userAdded": false, 6 | "type": "UnityEngine.AnimationClip", 7 | "ignore": false, 8 | "defaultInstantiationMode": 0, 9 | "supportsModification": true 10 | }, 11 | { 12 | "userAdded": false, 13 | "type": "UnityEditor.Animations.AnimatorController", 14 | "ignore": false, 15 | "defaultInstantiationMode": 0, 16 | "supportsModification": true 17 | }, 18 | { 19 | "userAdded": false, 20 | "type": "UnityEngine.AnimatorOverrideController", 21 | "ignore": false, 22 | "defaultInstantiationMode": 0, 23 | "supportsModification": true 24 | }, 25 | { 26 | "userAdded": false, 27 | "type": "UnityEditor.Audio.AudioMixerController", 28 | "ignore": false, 29 | "defaultInstantiationMode": 0, 30 | "supportsModification": true 31 | }, 32 | { 33 | "userAdded": false, 34 | "type": "UnityEngine.ComputeShader", 35 | "ignore": true, 36 | "defaultInstantiationMode": 1, 37 | "supportsModification": true 38 | }, 39 | { 40 | "userAdded": false, 41 | "type": "UnityEngine.Cubemap", 42 | "ignore": false, 43 | "defaultInstantiationMode": 0, 44 | "supportsModification": true 45 | }, 46 | { 47 | "userAdded": false, 48 | "type": "UnityEngine.GameObject", 49 | "ignore": false, 50 | "defaultInstantiationMode": 0, 51 | "supportsModification": true 52 | }, 53 | { 54 | "userAdded": false, 55 | "type": "UnityEditor.LightingDataAsset", 56 | "ignore": false, 57 | "defaultInstantiationMode": 0, 58 | "supportsModification": false 59 | }, 60 | { 61 | "userAdded": false, 62 | "type": "UnityEngine.LightingSettings", 63 | "ignore": false, 64 | "defaultInstantiationMode": 0, 65 | "supportsModification": true 66 | }, 67 | { 68 | "userAdded": false, 69 | "type": "UnityEngine.Material", 70 | "ignore": false, 71 | "defaultInstantiationMode": 0, 72 | "supportsModification": true 73 | }, 74 | { 75 | "userAdded": false, 76 | "type": "UnityEditor.MonoScript", 77 | "ignore": true, 78 | "defaultInstantiationMode": 1, 79 | "supportsModification": true 80 | }, 81 | { 82 | "userAdded": false, 83 | "type": "UnityEngine.PhysicMaterial", 84 | "ignore": false, 85 | "defaultInstantiationMode": 0, 86 | "supportsModification": true 87 | }, 88 | { 89 | "userAdded": false, 90 | "type": "UnityEngine.PhysicsMaterial2D", 91 | "ignore": false, 92 | "defaultInstantiationMode": 0, 93 | "supportsModification": true 94 | }, 95 | { 96 | "userAdded": false, 97 | "type": "UnityEngine.Rendering.PostProcessing.PostProcessProfile", 98 | "ignore": false, 99 | "defaultInstantiationMode": 0, 100 | "supportsModification": true 101 | }, 102 | { 103 | "userAdded": false, 104 | "type": "UnityEngine.Rendering.PostProcessing.PostProcessResources", 105 | "ignore": false, 106 | "defaultInstantiationMode": 0, 107 | "supportsModification": true 108 | }, 109 | { 110 | "userAdded": false, 111 | "type": "UnityEngine.Rendering.VolumeProfile", 112 | "ignore": false, 113 | "defaultInstantiationMode": 0, 114 | "supportsModification": true 115 | }, 116 | { 117 | "userAdded": false, 118 | "type": "UnityEditor.SceneAsset", 119 | "ignore": false, 120 | "defaultInstantiationMode": 0, 121 | "supportsModification": false 122 | }, 123 | { 124 | "userAdded": false, 125 | "type": "UnityEngine.Shader", 126 | "ignore": true, 127 | "defaultInstantiationMode": 1, 128 | "supportsModification": true 129 | }, 130 | { 131 | "userAdded": false, 132 | "type": "UnityEngine.ShaderVariantCollection", 133 | "ignore": true, 134 | "defaultInstantiationMode": 1, 135 | "supportsModification": true 136 | }, 137 | { 138 | "userAdded": false, 139 | "type": "UnityEngine.Texture", 140 | "ignore": false, 141 | "defaultInstantiationMode": 0, 142 | "supportsModification": true 143 | }, 144 | { 145 | "userAdded": false, 146 | "type": "UnityEngine.Texture2D", 147 | "ignore": false, 148 | "defaultInstantiationMode": 0, 149 | "supportsModification": true 150 | }, 151 | { 152 | "userAdded": false, 153 | "type": "UnityEngine.Timeline.TimelineAsset", 154 | "ignore": false, 155 | "defaultInstantiationMode": 0, 156 | "supportsModification": true 157 | } 158 | ], 159 | "defaultDependencyTypeInfo": { 160 | "userAdded": false, 161 | "type": "", 162 | "ignore": false, 163 | "defaultInstantiationMode": 1, 164 | "supportsModification": true 165 | }, 166 | "newSceneOverride": 0 167 | } -------------------------------------------------------------------------------- /ProjectSettings/ShaderGraphSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!114 &1 4 | MonoBehaviour: 5 | m_ObjectHideFlags: 61 6 | m_CorrespondingSourceObject: {fileID: 0} 7 | m_PrefabInstance: {fileID: 0} 8 | m_PrefabAsset: {fileID: 0} 9 | m_GameObject: {fileID: 0} 10 | m_Enabled: 1 11 | m_EditorHideFlags: 0 12 | m_Script: {fileID: 11500000, guid: de02f9e1d18f588468e474319d09a723, type: 3} 13 | m_Name: 14 | m_EditorClassIdentifier: 15 | customInterpolatorErrorThreshold: 32 16 | customInterpolatorWarningThreshold: 16 17 | -------------------------------------------------------------------------------- /ProjectSettings/TagManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!78 &1 4 | TagManager: 5 | serializedVersion: 2 6 | tags: [] 7 | layers: 8 | - Default 9 | - TransparentFX 10 | - Ignore Raycast 11 | - 12 | - Water 13 | - UI 14 | - 15 | - 16 | - 17 | - 18 | - 19 | - 20 | - 21 | - 22 | - 23 | - 24 | - 25 | - 26 | - 27 | - 28 | - 29 | - 30 | - 31 | - 32 | - 33 | - 34 | - 35 | - 36 | - 37 | - 38 | - 39 | - 40 | m_SortingLayers: 41 | - name: Default 42 | uniqueID: 0 43 | locked: 0 44 | -------------------------------------------------------------------------------- /ProjectSettings/TimeManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!5 &1 4 | TimeManager: 5 | m_ObjectHideFlags: 0 6 | Fixed Timestep: 0.02 7 | Maximum Allowed Timestep: 0.33333334 8 | m_TimeScale: 1 9 | Maximum Particle Timestep: 0.03 10 | -------------------------------------------------------------------------------- /ProjectSettings/UnityConnectSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!310 &1 4 | UnityConnectSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 1 7 | m_Enabled: 0 8 | m_TestMode: 0 9 | m_EventOldUrl: https://api.uca.cloud.unity3d.com/v1/events 10 | m_EventUrl: https://cdp.cloud.unity3d.com/v1/events 11 | m_ConfigUrl: https://config.uca.cloud.unity3d.com 12 | m_DashboardUrl: https://dashboard.unity3d.com 13 | m_TestInitMode: 0 14 | CrashReportingSettings: 15 | m_EventUrl: https://perf-events.cloud.unity3d.com 16 | m_Enabled: 0 17 | m_LogBufferSize: 10 18 | m_CaptureEditorExceptions: 1 19 | UnityPurchasingSettings: 20 | m_Enabled: 0 21 | m_TestMode: 0 22 | UnityAnalyticsSettings: 23 | m_Enabled: 0 24 | m_TestMode: 0 25 | m_InitializeOnStartup: 1 26 | m_PackageRequiringCoreStatsPresent: 0 27 | UnityAdsSettings: 28 | m_Enabled: 0 29 | m_InitializeOnStartup: 1 30 | m_TestMode: 0 31 | m_IosGameId: 32 | m_AndroidGameId: 33 | m_GameIds: {} 34 | m_GameId: 35 | PerformanceReportingSettings: 36 | m_Enabled: 0 37 | -------------------------------------------------------------------------------- /ProjectSettings/VFXManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!937362698 &1 4 | VFXManager: 5 | m_ObjectHideFlags: 0 6 | m_IndirectShader: {fileID: 7200000, guid: 84a17cfa13e40ae4082ef42714f0a81c, type: 3} 7 | m_CopyBufferShader: {fileID: 7200000, guid: 23c51f21a3503f6428b527b01f8a2f4e, type: 3} 8 | m_SortShader: {fileID: 7200000, guid: ea257ca3cfb12a642a5025e612af6b2a, type: 3} 9 | m_StripUpdateShader: {fileID: 7200000, guid: 8fa6c4009fe2a4d4486c62736fc30ad8, type: 3} 10 | m_RenderPipeSettingsPath: 11 | m_FixedTimeStep: 0.016666668 12 | m_MaxDeltaTime: 0.05 13 | m_CompiledVersion: 4 14 | m_RuntimeVersion: 22 15 | m_RuntimeResources: {fileID: 11400000, guid: bc10b42afe3813544bffd38ae2cd893d, type: 2} 16 | -------------------------------------------------------------------------------- /ProjectSettings/VersionControlSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!890905787 &1 4 | VersionControlSettings: 5 | m_ObjectHideFlags: 0 6 | m_Mode: Visible Meta Files 7 | m_CollabEditorSettings: 8 | inProgressEnabled: 1 9 | -------------------------------------------------------------------------------- /ProjectSettings/XRSettings.asset: -------------------------------------------------------------------------------- 1 | { 2 | "m_SettingKeys": [ 3 | "VR Device Disabled", 4 | "VR Device User Alert" 5 | ], 6 | "m_SettingValues": [ 7 | "False", 8 | "False" 9 | ] 10 | } -------------------------------------------------------------------------------- /ProjectSettings/boot.config: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/artnas/UnityVoxelMeshGPU/7aa4b6ae85a8aab95d8a14b2b102aec3051077c3/ProjectSettings/boot.config -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # GPU voxel mesh generation and drawing in Unity HDRP 2 | 3 | This is an experiment to generate a cubic voxel chunk mesh as efficiently as possible. This is insanely fast, meshing and drawing at around 650 FPS on my RTX 4090. The mesh generation itself is much faster than that, running at more than 1000 FPS with camera disabled. 4 | 5 | https://user-images.githubusercontent.com/14143603/231909731-d0047d10-7ccd-440d-8c25-6b64d07315ad.mp4 6 | 7 | This example uses a 3D noise library to generate voxel data. You can control frequency, amplitude, offset and speed of the noise via inspector in Unity. 8 | 9 | ## What you can learn from it 10 | 11 | - How to create a mesh on gpu 12 | - How to use shader graph with a custom function to draw a mesh using Graphics.DrawProceduralIndirect. This was only recently made possible when Unity added VertexId node to shader graph. 13 | 14 | ## How it works 15 | 16 | - generate voxels compute -> voxel data (0/1) is generated using 3d noise 17 | - feedback compute -> iterates all voxels and calculates the count of vertices and indices which will be required for the mesh 18 | - voxelizer compute -> iterates all voxels and writes vertex and index data into the buffers 19 | - the mesh is drawn with Graphics.DrawProceduralIndirect using data from index and vertex buffers 20 | 21 | The mesh is generated on the GPU and is never read back to the CPU to create a Mesh object, that would be very slow by comparison (5 FPS). 22 | 23 | ## Credits 24 | 25 | - [OpenGL voxelizer compute shaders by Demurzasty](https://github.com/demurzasty/HolyGrail) 26 | - [GPU Noise by keijiro](https://github.com/keijiro/NoiseShader) 27 | -------------------------------------------------------------------------------- /UserSettings/EditorUserSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!162 &1 4 | EditorUserSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 4 7 | m_ConfigSettings: 8 | RecentlyUsedSceneGuid-0: 9 | value: 5b0006520000510c5d08582414775c47414e1d7d2d7d2069747d186bb6e13069 10 | flags: 0 11 | UnityEditor.ShaderGraph.Blackboard: 12 | value: 18135939215a0a5004000b0e15254b524c030a3f2964643d120d1230e9e93a3fd6e826abbd2e2d293c4ead313b08042de6030a0afa240c0d020be94c4ba75e435d8715fa32c70d15d11612dacc11fee5d3c5d1fe9ab1bf968e93e2ffcbc3e7e2f0b3ffe0e8b0be9af8ffaeffff8e85dd8390e3949c8899daa7 13 | flags: 0 14 | UnityEditor.ShaderGraph.FloatingWindowsLayout2: 15 | value: 181344140043005e1a220d3b1f364b524c0c5a27130c293326201334cee5322ca0bd30e8eb293a707b0fd0180b3d0a36fc0d3d04e649500d1002ee0b5dbd1d2c27c00ad113cb1e10e41f1addc80993b98d9884a69ae6d8f0d1cda9e8fbfefaf9f9dea3fdb9ade882f0f7b0e1e380cafbf2c3adc18e9cd285a2908b82ec869c8395949c9483d68a8e97ddbd90bf 16 | flags: 0 17 | UnityEditor.ShaderGraph.InspectorWindow: 18 | value: 18135939215a0a5004000b0e15254b524c1119263f2d6a722016393ce1eb3d36e5d339f9a5602b2e2c07a37e0901373ae01e0008f707250d171df81a53a5485d41895ac825e0100ec20313c0d91cddccd3d0c7efcca9bd80908fecb0f9cfddf1eff4e7a1b1eae482f0fcaee1e1928b86d888ed909f938797a7cf 19 | flags: 0 20 | vcSharedLogLevel: 21 | value: 0d5e400f0650 22 | flags: 0 23 | m_VCAutomaticAdd: 1 24 | m_VCDebugCom: 0 25 | m_VCDebugCmd: 0 26 | m_VCDebugOut: 0 27 | m_SemanticMergeMode: 2 28 | m_DesiredImportWorkerCount: 8 29 | m_StandbyImportWorkerCount: 2 30 | m_IdleImportWorkerShutdownDelay: 60000 31 | m_VCShowFailedCheckout: 1 32 | m_VCOverwriteFailedCheckoutAssets: 1 33 | m_VCProjectOverlayIcons: 1 34 | m_VCHierarchyOverlayIcons: 1 35 | m_VCOtherOverlayIcons: 1 36 | m_VCAllowAsyncUpdate: 1 37 | m_ArtifactGarbageCollection: 1 38 | -------------------------------------------------------------------------------- /UserSettings/HDRPUserSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!114 &1 4 | MonoBehaviour: 5 | m_ObjectHideFlags: 61 6 | m_CorrespondingSourceObject: {fileID: 0} 7 | m_PrefabInstance: {fileID: 0} 8 | m_PrefabAsset: {fileID: 0} 9 | m_GameObject: {fileID: 0} 10 | m_Enabled: 1 11 | m_EditorHideFlags: 0 12 | m_Script: {fileID: 11500000, guid: ef3b9f3ac26b8524bab7722d06b49724, type: 3} 13 | m_Name: 14 | m_EditorClassIdentifier: 15 | m_WizardPopupAlreadyShownOnce: 0 16 | m_WizardActiveTab: 0 17 | m_WizardNeedRestartAfterChangingToDX12: 0 18 | m_WizardNeedToRunFixAllAgainAfterDomainReload: 0 19 | -------------------------------------------------------------------------------- /UserSettings/Search.settings: -------------------------------------------------------------------------------- 1 | {} --------------------------------------------------------------------------------