├── .gitignore ├── Assets ├── Materials.meta ├── Materials │ ├── MeshInstanceDynamicGeometry.mat │ └── MeshInstanceDynamicGeometry.mat.meta ├── Resources.meta ├── Resources │ ├── BillingMode.json │ └── BillingMode.json.meta ├── Scenes.meta ├── Scenes │ ├── MeshInstanceDynamicGeometries.unity │ └── MeshInstanceDynamicGeometries.unity.meta ├── Scripts.meta ├── Scripts │ ├── MeshInstanceDynamicGeometry.cs │ ├── MeshInstanceDynamicGeometry.cs.meta │ ├── SimpleCameraController.cs │ └── SimpleCameraController.cs.meta ├── Shaders.meta ├── Shaders │ ├── GlobalResources.hlsl │ ├── GlobalResources.hlsl.meta │ ├── MeshInstanceDynamicGeometry.raytrace │ ├── MeshInstanceDynamicGeometry.raytrace.meta │ ├── MeshInstanceDynamicGeometry.shader │ ├── MeshInstanceDynamicGeometry.shader.meta │ ├── RayPayload.hlsl │ ├── RayPayload.hlsl.meta │ ├── WaveMeshAnimation.compute │ └── WaveMeshAnimation.compute.meta ├── Textures.meta └── Textures │ ├── DefaultHDRISky.exr │ └── DefaultHDRISky.exr.meta ├── Images └── GameView.png ├── Packages ├── manifest.json └── packages-lock.json ├── ProjectSettings ├── AudioManager.asset ├── ClusterInputManager.asset ├── DynamicsManager.asset ├── EditorBuildSettings.asset ├── EditorSettings.asset ├── GraphicsSettings.asset ├── InputManager.asset ├── MemorySettings.asset ├── NavMeshAreas.asset ├── PackageManagerSettings.asset ├── Packages │ └── com.unity.testtools.codecoverage │ │ └── Settings.json ├── Physics2DSettings.asset ├── PresetManager.asset ├── ProjectSettings.asset ├── QualitySettings.asset ├── SceneTemplateSettings.json ├── TagManager.asset ├── TimeManager.asset ├── UnityConnectSettings.asset ├── VFXManager.asset ├── VersionControlSettings.asset └── XRSettings.asset ├── README.md └── UserSettings ├── EditorUserSettings.asset ├── Layouts ├── CurrentMaximizeLayout.dwlt └── default-2023.dwlt └── Search.settings /.gitignore: -------------------------------------------------------------------------------- 1 | # This .gitignore file should be placed at the root of your Unity project directory 2 | # 3 | # Get latest from https://github.com/github/gitignore/blob/master/Unity.gitignore 4 | # 5 | /[Ll]ibrary/ 6 | /[Tt]emp/ 7 | /[Oo]bj/ 8 | /[Bb]uild/ 9 | /[Bb]uilds/ 10 | /[Ll]ogs/ 11 | /[Mm]emoryCaptures/ 12 | 13 | # Asset meta data should only be ignored when the corresponding asset is also ignored 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 | # Autogenerated Jetbrains Rider plugin 20 | [Aa]ssets/Plugins/Editor/JetBrains* 21 | 22 | # Visual Studio cache directory 23 | .vs/ 24 | 25 | # Gradle cache directory 26 | .gradle/ 27 | 28 | # Autogenerated VS/MD/Consulo solution and project files 29 | ExportedObj/ 30 | .consulo/ 31 | *.csproj 32 | *.unityproj 33 | *.sln 34 | *.suo 35 | *.tmp 36 | *.user 37 | *.userprefs 38 | *.pidb 39 | *.booproj 40 | *.svd 41 | *.pdb 42 | *.mdb 43 | *.opendb 44 | *.VC.db 45 | 46 | # Unity3D generated meta files 47 | *.pidb.meta 48 | *.pdb.meta 49 | *.mdb.meta 50 | 51 | # Unity3D generated file on crash reports 52 | sysinfo.txt 53 | 54 | # Builds 55 | *.apk 56 | *.unitypackage 57 | 58 | # Crashlytics generated file 59 | crashlytics-build.properties 60 | 61 | -------------------------------------------------------------------------------- /Assets/Materials.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4fd1c5005b60a6348a5558c45b0a69fc 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Materials/MeshInstanceDynamicGeometry.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: MeshInstanceDynamicGeometry 11 | m_Shader: {fileID: 4800000, guid: 72834f22036dbf74ba823121d5381b45, type: 3} 12 | m_Parent: {fileID: 0} 13 | m_ModifiedSerializedProperties: 0 14 | m_ValidKeywords: [] 15 | m_InvalidKeywords: [] 16 | m_LightmapFlags: 4 17 | m_EnableInstancingVariants: 0 18 | m_DoubleSidedGI: 0 19 | m_CustomRenderQueue: -1 20 | stringTagMap: {} 21 | disabledShaderPasses: [] 22 | m_LockedProperties: 23 | m_SavedProperties: 24 | serializedVersion: 3 25 | m_TexEnvs: [] 26 | m_Ints: [] 27 | m_Floats: [] 28 | m_Colors: [] 29 | m_BuildTextureStacks: [] 30 | -------------------------------------------------------------------------------- /Assets/Materials/MeshInstanceDynamicGeometry.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4fbe7bce66e171447b47f77dcbd95504 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 2100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Resources.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1a17b16cb5d12ed4f8ade498a3a28ab8 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Resources/BillingMode.json: -------------------------------------------------------------------------------- 1 | {"androidStore":"GooglePlay"} -------------------------------------------------------------------------------- /Assets/Resources/BillingMode.json.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 283f4d0c1656bf6469de9c1c6ae1b4ba 3 | TextScriptImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/Scenes.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: eeb980ddfa84ca042963719faa98b63a 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Scenes/MeshInstanceDynamicGeometries.unity: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!29 &1 4 | OcclusionCullingSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 2 7 | m_OcclusionBakeSettings: 8 | smallestOccluder: 5 9 | smallestHole: 0.25 10 | backfaceThreshold: 100 11 | m_SceneGUID: 00000000000000000000000000000000 12 | m_OcclusionCullingData: {fileID: 0} 13 | --- !u!104 &2 14 | RenderSettings: 15 | m_ObjectHideFlags: 0 16 | serializedVersion: 9 17 | m_Fog: 0 18 | m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} 19 | m_FogMode: 3 20 | m_FogDensity: 0.01 21 | m_LinearFogStart: 0 22 | m_LinearFogEnd: 300 23 | m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} 24 | m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} 25 | m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} 26 | m_AmbientIntensity: 1 27 | m_AmbientMode: 0 28 | m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} 29 | m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0} 30 | m_HaloStrength: 0.5 31 | m_FlareStrength: 1 32 | m_FlareFadeSpeed: 3 33 | m_HaloTexture: {fileID: 0} 34 | m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} 35 | m_DefaultReflectionMode: 0 36 | m_DefaultReflectionResolution: 128 37 | m_ReflectionBounces: 1 38 | m_ReflectionIntensity: 1 39 | m_CustomReflection: {fileID: 0} 40 | m_Sun: {fileID: 0} 41 | m_IndirectSpecularColor: {r: 0.12731749, g: 0.13414757, b: 0.1210787, a: 1} 42 | m_UseRadianceAmbientProbe: 0 43 | --- !u!157 &3 44 | LightmapSettings: 45 | m_ObjectHideFlags: 0 46 | serializedVersion: 12 47 | m_GIWorkflowMode: 1 48 | m_GISettings: 49 | serializedVersion: 2 50 | m_BounceScale: 1 51 | m_IndirectOutputScale: 1 52 | m_AlbedoBoost: 1 53 | m_EnvironmentLightingMode: 0 54 | m_EnableBakedLightmaps: 1 55 | m_EnableRealtimeLightmaps: 0 56 | m_LightmapEditorSettings: 57 | serializedVersion: 12 58 | m_Resolution: 2 59 | m_BakeResolution: 40 60 | m_AtlasSize: 1024 61 | m_AO: 0 62 | m_AOMaxDistance: 1 63 | m_CompAOExponent: 1 64 | m_CompAOExponentDirect: 0 65 | m_ExtractAmbientOcclusion: 0 66 | m_Padding: 2 67 | m_LightmapParameters: {fileID: 0} 68 | m_LightmapsBakeMode: 1 69 | m_TextureCompression: 1 70 | m_FinalGather: 0 71 | m_FinalGatherFiltering: 1 72 | m_FinalGatherRayCount: 256 73 | m_ReflectionCompression: 2 74 | m_MixedBakeMode: 2 75 | m_BakeBackend: 1 76 | m_PVRSampling: 1 77 | m_PVRDirectSampleCount: 32 78 | m_PVRSampleCount: 500 79 | m_PVRBounces: 2 80 | m_PVREnvironmentSampleCount: 500 81 | m_PVREnvironmentReferencePointCount: 2048 82 | m_PVRFilteringMode: 2 83 | m_PVRDenoiserTypeDirect: 0 84 | m_PVRDenoiserTypeIndirect: 0 85 | m_PVRDenoiserTypeAO: 0 86 | m_PVRFilterTypeDirect: 0 87 | m_PVRFilterTypeIndirect: 0 88 | m_PVRFilterTypeAO: 0 89 | m_PVREnvironmentMIS: 0 90 | m_PVRCulling: 1 91 | m_PVRFilteringGaussRadiusDirect: 1 92 | m_PVRFilteringGaussRadiusIndirect: 5 93 | m_PVRFilteringGaussRadiusAO: 2 94 | m_PVRFilteringAtrousPositionSigmaDirect: 0.5 95 | m_PVRFilteringAtrousPositionSigmaIndirect: 2 96 | m_PVRFilteringAtrousPositionSigmaAO: 1 97 | m_ExportTrainingData: 0 98 | m_TrainingDataDestination: TrainingData 99 | m_LightProbeSampleCountMultiplier: 4 100 | m_LightingDataAsset: {fileID: 0} 101 | m_LightingSettings: {fileID: 0} 102 | --- !u!196 &4 103 | NavMeshSettings: 104 | serializedVersion: 2 105 | m_ObjectHideFlags: 0 106 | m_BuildSettings: 107 | serializedVersion: 3 108 | agentTypeID: 0 109 | agentRadius: 0.5 110 | agentHeight: 2 111 | agentSlope: 45 112 | agentClimb: 0.4 113 | ledgeDropHeight: 0 114 | maxJumpAcrossDistance: 0 115 | minRegionArea: 2 116 | manualCellSize: 0 117 | cellSize: 0.16666667 118 | manualTileSize: 0 119 | tileSize: 256 120 | buildHeightMesh: 0 121 | maxJobWorkers: 0 122 | preserveTilesOutsideBounds: 0 123 | debug: 124 | m_Flags: 0 125 | m_NavMeshData: {fileID: 0} 126 | --- !u!1 &123658743 127 | GameObject: 128 | m_ObjectHideFlags: 0 129 | m_CorrespondingSourceObject: {fileID: 0} 130 | m_PrefabInstance: {fileID: 0} 131 | m_PrefabAsset: {fileID: 0} 132 | serializedVersion: 6 133 | m_Component: 134 | - component: {fileID: 123658744} 135 | m_Layer: 0 136 | m_Name: PRESS_PLAY 137 | m_TagString: Untagged 138 | m_Icon: {fileID: 0} 139 | m_NavMeshLayer: 0 140 | m_StaticEditorFlags: 0 141 | m_IsActive: 1 142 | --- !u!4 &123658744 143 | Transform: 144 | m_ObjectHideFlags: 0 145 | m_CorrespondingSourceObject: {fileID: 0} 146 | m_PrefabInstance: {fileID: 0} 147 | m_PrefabAsset: {fileID: 0} 148 | m_GameObject: {fileID: 123658743} 149 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 150 | m_LocalPosition: {x: 0, y: 0, z: 0} 151 | m_LocalScale: {x: 1, y: 1, z: 1} 152 | m_ConstrainProportionsScale: 0 153 | m_Children: [] 154 | m_Father: {fileID: 0} 155 | m_RootOrder: 1 156 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 157 | --- !u!1 &963194225 158 | GameObject: 159 | m_ObjectHideFlags: 0 160 | m_CorrespondingSourceObject: {fileID: 0} 161 | m_PrefabInstance: {fileID: 0} 162 | m_PrefabAsset: {fileID: 0} 163 | serializedVersion: 6 164 | m_Component: 165 | - component: {fileID: 963194228} 166 | - component: {fileID: 963194227} 167 | - component: {fileID: 963194226} 168 | - component: {fileID: 963194229} 169 | - component: {fileID: 963194230} 170 | m_Layer: 0 171 | m_Name: Main Camera 172 | m_TagString: MainCamera 173 | m_Icon: {fileID: 0} 174 | m_NavMeshLayer: 0 175 | m_StaticEditorFlags: 0 176 | m_IsActive: 1 177 | --- !u!81 &963194226 178 | AudioListener: 179 | m_ObjectHideFlags: 0 180 | m_CorrespondingSourceObject: {fileID: 0} 181 | m_PrefabInstance: {fileID: 0} 182 | m_PrefabAsset: {fileID: 0} 183 | m_GameObject: {fileID: 963194225} 184 | m_Enabled: 1 185 | --- !u!20 &963194227 186 | Camera: 187 | m_ObjectHideFlags: 0 188 | m_CorrespondingSourceObject: {fileID: 0} 189 | m_PrefabInstance: {fileID: 0} 190 | m_PrefabAsset: {fileID: 0} 191 | m_GameObject: {fileID: 963194225} 192 | m_Enabled: 1 193 | serializedVersion: 2 194 | m_ClearFlags: 1 195 | m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0} 196 | m_projectionMatrixMode: 1 197 | m_GateFitMode: 2 198 | m_FOVAxisMode: 0 199 | m_Iso: 200 200 | m_ShutterSpeed: 0.005 201 | m_Aperture: 16 202 | m_FocusDistance: 10 203 | m_FocalLength: 50 204 | m_BladeCount: 5 205 | m_Curvature: {x: 2, y: 11} 206 | m_BarrelClipping: 0.25 207 | m_Anamorphism: 0 208 | m_SensorSize: {x: 36, y: 24} 209 | m_LensShift: {x: 0, y: 0} 210 | m_NormalizedViewPortRect: 211 | serializedVersion: 2 212 | x: 0 213 | y: 0 214 | width: 1 215 | height: 1 216 | near clip plane: 0.3 217 | far clip plane: 1000 218 | field of view: 60 219 | orthographic: 0 220 | orthographic size: 5 221 | m_Depth: -1 222 | m_CullingMask: 223 | serializedVersion: 2 224 | m_Bits: 0 225 | m_RenderingPath: -1 226 | m_TargetTexture: {fileID: 0} 227 | m_TargetDisplay: 0 228 | m_TargetEye: 3 229 | m_HDR: 1 230 | m_AllowMSAA: 1 231 | m_AllowDynamicResolution: 0 232 | m_ForceIntoRT: 0 233 | m_OcclusionCulling: 1 234 | m_StereoConvergence: 10 235 | m_StereoSeparation: 0.022 236 | --- !u!4 &963194228 237 | Transform: 238 | m_ObjectHideFlags: 0 239 | m_CorrespondingSourceObject: {fileID: 0} 240 | m_PrefabInstance: {fileID: 0} 241 | m_PrefabAsset: {fileID: 0} 242 | m_GameObject: {fileID: 963194225} 243 | m_LocalRotation: {x: 0.18223555, y: 0, z: 0, w: 0.9832549} 244 | m_LocalPosition: {x: 0.0931814, y: 6.73278, z: -14.064448} 245 | m_LocalScale: {x: 1, y: 1, z: 1} 246 | m_ConstrainProportionsScale: 0 247 | m_Children: [] 248 | m_Father: {fileID: 0} 249 | m_RootOrder: 0 250 | m_LocalEulerAnglesHint: {x: 21, y: 0, z: 0} 251 | --- !u!114 &963194229 252 | MonoBehaviour: 253 | m_ObjectHideFlags: 0 254 | m_CorrespondingSourceObject: {fileID: 0} 255 | m_PrefabInstance: {fileID: 0} 256 | m_PrefabAsset: {fileID: 0} 257 | m_GameObject: {fileID: 963194225} 258 | m_Enabled: 1 259 | m_EditorHideFlags: 0 260 | m_Script: {fileID: 11500000, guid: 4570ce90ad6fa784c9845cc0097ba5d1, type: 3} 261 | m_Name: 262 | m_EditorClassIdentifier: 263 | rayTracingShader: {fileID: 4807578003741378534, guid: 52d8b9f61396a1547ac37a2eabc9504e, type: 3} 264 | material: {fileID: 2100000, guid: 4fbe7bce66e171447b47f77dcbd95504, type: 2} 265 | waveAnimationCS: {fileID: 7200000, guid: d81cea85413075149bab2420ab65b89f, type: 3} 266 | envTexture: {fileID: 8900000, guid: 0aad1b11a010eb646b43fb14387418ba, type: 3} 267 | --- !u!114 &963194230 268 | MonoBehaviour: 269 | m_ObjectHideFlags: 0 270 | m_CorrespondingSourceObject: {fileID: 0} 271 | m_PrefabInstance: {fileID: 0} 272 | m_PrefabAsset: {fileID: 0} 273 | m_GameObject: {fileID: 963194225} 274 | m_Enabled: 1 275 | m_EditorHideFlags: 0 276 | m_Script: {fileID: 11500000, guid: b8f4ba2505907764dbcb0b263a6169cd, type: 3} 277 | m_Name: 278 | m_EditorClassIdentifier: 279 | boost: 3.5 280 | positionLerpTime: 0.2 281 | mouseSensitivityCurve: 282 | serializedVersion: 2 283 | m_Curve: 284 | - serializedVersion: 3 285 | time: 0 286 | value: 0.5 287 | inSlope: 0 288 | outSlope: 5 289 | tangentMode: 0 290 | weightedMode: 0 291 | inWeight: 0 292 | outWeight: 0 293 | - serializedVersion: 3 294 | time: 1 295 | value: 2.5 296 | inSlope: 0 297 | outSlope: 0 298 | tangentMode: 0 299 | weightedMode: 0 300 | inWeight: 0 301 | outWeight: 0 302 | m_PreInfinity: 2 303 | m_PostInfinity: 2 304 | m_RotationOrder: 4 305 | rotationLerpTime: 0.01 306 | invertY: 0 307 | -------------------------------------------------------------------------------- /Assets/Scenes/MeshInstanceDynamicGeometries.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9fc0d4010bbf28b4594072e72b8655ab 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/Scripts.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e3aba4d4737950348ab52d6e0a2050f8 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Scripts/MeshInstanceDynamicGeometry.cs: -------------------------------------------------------------------------------- 1 | using Unity.Collections; 2 | using UnityEngine; 3 | using UnityEngine.Rendering; 4 | using UnityEngine.Profiling; 5 | using UnityEngine.Experimental.Rendering; 6 | 7 | [ExecuteInEditMode] 8 | public class MeshInstanceDynamicGeometry : MonoBehaviour 9 | { 10 | public RayTracingShader rayTracingShader = null; 11 | public Material material = null; 12 | public ComputeShader waveAnimationCS = null; 13 | public Texture envTexture = null; 14 | 15 | private uint meshResolution = 32; 16 | 17 | private uint cameraWidth = 0; 18 | private uint cameraHeight = 0; 19 | 20 | private Mesh cpuMesh = null; 21 | private Mesh gpuMesh = null; 22 | 23 | private float realtimeSinceStartup = 0.0f; 24 | 25 | private RenderTexture rayTracingOutput = null; 26 | 27 | private RayTracingAccelerationStructure rtas = null; 28 | 29 | private NativeArray indexBufferData = new NativeArray(); 30 | 31 | private void ReleaseResources() 32 | { 33 | if (rtas != null) 34 | { 35 | rtas.Release(); 36 | rtas = null; 37 | } 38 | 39 | if (rayTracingOutput) 40 | { 41 | rayTracingOutput.Release(); 42 | rayTracingOutput = null; 43 | } 44 | 45 | cameraWidth = 0; 46 | cameraHeight = 0; 47 | 48 | if (cpuMesh != null) 49 | { 50 | DestroyImmediate(cpuMesh); 51 | cpuMesh = null; 52 | } 53 | 54 | if (gpuMesh != null) 55 | { 56 | DestroyImmediate(gpuMesh); 57 | gpuMesh = null; 58 | } 59 | 60 | if (indexBufferData.IsCreated) 61 | { 62 | indexBufferData.Dispose(); 63 | } 64 | } 65 | 66 | private NativeArray CreateIndexArray(uint resolution) 67 | { 68 | uint indexCount = 2 * 3 * resolution * resolution; 69 | var indices = new uint[indexCount]; 70 | 71 | int index = 0; 72 | 73 | for (uint i = 0; i < resolution; i++) 74 | for (uint j = 0; j < resolution; j++) 75 | { 76 | indices[index++] = i * (resolution + 1) + j; 77 | indices[index++] = (i + 1) * (resolution + 1) + j; 78 | indices[index++] = (i + 1) * (resolution + 1) + j + 1; 79 | 80 | indices[index++] = i * (resolution + 1) + j; 81 | indices[index++] = (i + 1) * (resolution + 1) + j + 1; 82 | indices[index++] = i * (resolution + 1) + j + 1; 83 | } 84 | 85 | return new NativeArray(indices, Allocator.Persistent); 86 | } 87 | 88 | struct Vertex 89 | { 90 | public Vector3 position; 91 | } 92 | 93 | private NativeArray AnimateVertexArray(uint resolution) 94 | { 95 | uint vertexCount = (resolution + 1) * (resolution + 1); 96 | 97 | Vertex[] vertices = new Vertex[vertexCount]; 98 | 99 | float invResolution = 1.0f / resolution; 100 | 101 | float step = 2.0f * invResolution; 102 | 103 | int vertexIndex = 0; 104 | 105 | float posZ = -1.0f; 106 | 107 | for (uint z = 0; z <= resolution; z++) 108 | { 109 | float posX = -1.0f; 110 | 111 | for (uint x = 0; x <= resolution; x++) 112 | { 113 | Vector3 dir = new Vector3(posX, 0, posZ); 114 | 115 | float wave = 0.1f * Mathf.Cos(realtimeSinceStartup * 5 - 10 * dir.magnitude); 116 | 117 | vertices[vertexIndex].position = new Vector3(posX, wave, posZ); 118 | 119 | vertexIndex++; 120 | posX += step; 121 | } 122 | posZ += step; 123 | } 124 | 125 | return new NativeArray(vertices, Allocator.Temp); 126 | } 127 | 128 | private NativeArray CreateVertexArray(uint resolution) 129 | { 130 | uint vertexCount = (resolution + 1) * (resolution + 1); 131 | 132 | Vertex[] vertices = new Vertex[vertexCount]; 133 | 134 | float invResolution = 1.0f / (float)resolution; 135 | 136 | float step = 2.0f * invResolution; 137 | 138 | int vertexIndex = 0; 139 | 140 | float posZ = -1.0f; 141 | 142 | for (uint z = 0; z <= resolution; z++) 143 | { 144 | float posX = -1.0f; 145 | 146 | for (uint x = 0; x <= resolution; x++) 147 | { 148 | vertices[vertexIndex].position = new Vector3(posX, 0, posZ); 149 | 150 | vertexIndex++; 151 | posX += step; 152 | } 153 | posZ += step; 154 | } 155 | 156 | return new NativeArray(vertices, Allocator.Temp); 157 | } 158 | 159 | private void CreateResources() 160 | { 161 | if (cameraWidth != Camera.main.pixelWidth || cameraHeight != Camera.main.pixelHeight) 162 | { 163 | if (rayTracingOutput) 164 | rayTracingOutput.Release(); 165 | 166 | rayTracingOutput = new RenderTexture(Camera.main.pixelWidth, Camera.main.pixelHeight, 0, RenderTextureFormat.ARGBHalf); 167 | rayTracingOutput.enableRandomWrite = true; 168 | rayTracingOutput.Create(); 169 | 170 | cameraWidth = (uint)Camera.main.pixelWidth; 171 | cameraHeight = (uint)Camera.main.pixelHeight; 172 | } 173 | } 174 | 175 | void OnDestroy() 176 | { 177 | ReleaseResources(); 178 | } 179 | 180 | void OnDisable() 181 | { 182 | ReleaseResources(); 183 | } 184 | 185 | private void OnEnable() 186 | { 187 | if (rtas != null) 188 | return; 189 | 190 | indexBufferData = CreateIndexArray(meshResolution); 191 | 192 | rtas = new RayTracingAccelerationStructure(); 193 | 194 | // 1. CPU Mesh Instance 195 | { 196 | if (cpuMesh == null) 197 | { 198 | cpuMesh = new Mesh(); 199 | cpuMesh.MarkDynamic(); 200 | 201 | using (var varray = CreateVertexArray(meshResolution)) 202 | { 203 | cpuMesh.SetVertexBufferParams(varray.Length, new VertexAttributeDescriptor(VertexAttribute.Position, VertexAttributeFormat.Float32, 3)); 204 | cpuMesh.SetVertexBufferData(varray, 0, 0, varray.Length); 205 | } 206 | 207 | cpuMesh.SetIndexBufferParams(indexBufferData.Length, IndexFormat.UInt32); 208 | cpuMesh.SetIndexBufferData(indexBufferData, 0, 0, indexBufferData.Length); 209 | cpuMesh.SetSubMesh(0, new SubMeshDescriptor(0, indexBufferData.Length)); 210 | 211 | cpuMesh.bounds = new Bounds(Vector3.zero, Vector3.one * 2); 212 | } 213 | 214 | RayTracingMeshInstanceConfig cpuMeshInstance = new RayTracingMeshInstanceConfig(cpuMesh, 0, material); 215 | 216 | // Make the acceleration structure update every time we call RayTracingAccelerationStructure.Build or CommandBuffer.BuildRayTracingAccelerationStructure. 217 | cpuMeshInstance.dynamicGeometry = true; 218 | 219 | Matrix4x4 matrix = Matrix4x4.identity; 220 | matrix.SetTRS(new Vector3(-6.0f, 0.0f, 0.0f), Quaternion.identity, 5 * Vector3.one); 221 | 222 | rtas.AddInstance(cpuMeshInstance, matrix); 223 | } 224 | 225 | // 2. GPU Mesh Instance 226 | { 227 | if (gpuMesh == null) 228 | { 229 | gpuMesh = new Mesh(); 230 | 231 | if (SystemInfo.supportsComputeShaders) 232 | { 233 | gpuMesh.vertexBufferTarget |= GraphicsBuffer.Target.Raw; 234 | gpuMesh.indexBufferTarget |= GraphicsBuffer.Target.Raw; 235 | } 236 | 237 | using (var varray = CreateVertexArray(meshResolution)) 238 | { 239 | gpuMesh.SetVertexBufferParams(varray.Length, new VertexAttributeDescriptor(VertexAttribute.Position, VertexAttributeFormat.Float32, 3)); 240 | gpuMesh.SetVertexBufferData(varray, 0, 0, varray.Length); 241 | } 242 | 243 | using (var iarray = CreateIndexArray(meshResolution)) 244 | { 245 | gpuMesh.SetIndexBufferParams(iarray.Length, IndexFormat.UInt32); 246 | gpuMesh.SetIndexBufferData(iarray, 0, 0, iarray.Length); 247 | gpuMesh.SetSubMesh(0, new SubMeshDescriptor(0, iarray.Length)); 248 | } 249 | } 250 | 251 | RayTracingMeshInstanceConfig gpuMeshInstance = new RayTracingMeshInstanceConfig(gpuMesh, 0, material); 252 | 253 | // Make the acceleration structure update every time we call RayTracingAccelerationStructure.Build or CommandBuffer.BuildRayTracingAccelerationStructure. 254 | gpuMeshInstance.dynamicGeometry = true; 255 | 256 | Matrix4x4 matrix = Matrix4x4.identity; 257 | matrix.SetTRS(new Vector3(6.0f, 0.0f, 0.0f), Quaternion.identity, 5 * Vector3.one); 258 | 259 | rtas.AddInstance(gpuMeshInstance, matrix); 260 | } 261 | } 262 | 263 | void FixedUpdate() 264 | { 265 | realtimeSinceStartup += 0.02f; 266 | } 267 | 268 | [ImageEffectOpaque] 269 | void OnRenderImage(RenderTexture src, RenderTexture dest) 270 | { 271 | if (!SystemInfo.supportsRayTracing || !rayTracingShader) 272 | { 273 | Debug.Log("The Ray Tracing API is not supported by this GPU or by the current graphics API."); 274 | Graphics.Blit(src, dest); 275 | return; 276 | } 277 | 278 | if (rtas == null) 279 | { 280 | Graphics.Blit(src, dest); 281 | return; 282 | } 283 | 284 | CreateResources(); 285 | 286 | CommandBuffer cmdBuffer = new CommandBuffer(); 287 | cmdBuffer.name = "Dynamic Geometry Test"; 288 | 289 | // Animate CPU mesh 290 | Profiler.BeginSample("CPU Mesh Animation"); 291 | { 292 | using (var varray = AnimateVertexArray(meshResolution)) 293 | { 294 | cpuMesh.SetVertexBufferParams(varray.Length, new VertexAttributeDescriptor(VertexAttribute.Position, VertexAttributeFormat.Float32, 3)); 295 | cpuMesh.SetVertexBufferData(varray, 0, 0, varray.Length); 296 | } 297 | } 298 | Profiler.EndSample(); 299 | 300 | // Animate GPU mesh 301 | { 302 | var vertexBuffer = gpuMesh.GetVertexBuffer(0); 303 | cmdBuffer.SetComputeBufferParam(waveAnimationCS, 0, "vertexBuffer", vertexBuffer); 304 | 305 | cmdBuffer.SetComputeFloatParam(waveAnimationCS, "realtimeSinceStartup", realtimeSinceStartup); 306 | cmdBuffer.SetComputeIntParam(waveAnimationCS, "vertexCount", vertexBuffer.count); 307 | cmdBuffer.SetComputeIntParam(waveAnimationCS, "vertexSizeInBytes", vertexBuffer.stride); 308 | 309 | if (vertexBuffer.stride % 4 != 0) 310 | Debug.Log("Vertex stride must be a multiple of 4."); 311 | 312 | uint kernelGroupSizeX, kernelGroupSizeY, kernelGroupSizeZ; 313 | waveAnimationCS.GetKernelThreadGroupSizes(0, out kernelGroupSizeX, out kernelGroupSizeY, out kernelGroupSizeZ); 314 | 315 | int threadGroupsX = (int)(gpuMesh.vertexCount + kernelGroupSizeX - 1) / (int)kernelGroupSizeX; 316 | cmdBuffer.DispatchCompute(waveAnimationCS, 0, threadGroupsX, 1, 1); 317 | 318 | vertexBuffer.Dispose(); 319 | } 320 | 321 | cmdBuffer.BuildRayTracingAccelerationStructure(rtas); 322 | 323 | cmdBuffer.SetRayTracingShaderPass(rayTracingShader, "Test"); 324 | 325 | // Input 326 | cmdBuffer.SetRayTracingAccelerationStructure(rayTracingShader, Shader.PropertyToID("g_AccelStruct"), rtas); 327 | cmdBuffer.SetRayTracingMatrixParam(rayTracingShader, Shader.PropertyToID("g_InvViewMatrix"), Camera.main.cameraToWorldMatrix); 328 | cmdBuffer.SetRayTracingFloatParam(rayTracingShader, Shader.PropertyToID("g_Zoom"), Mathf.Tan(Mathf.Deg2Rad * Camera.main.fieldOfView * 0.5f)); 329 | cmdBuffer.SetGlobalTexture(Shader.PropertyToID("g_EnvTexture"), envTexture); 330 | 331 | // Output 332 | cmdBuffer.SetRayTracingTextureParam(rayTracingShader, Shader.PropertyToID("g_Output"), rayTracingOutput); 333 | 334 | cmdBuffer.DispatchRays(rayTracingShader, "MainRayGenShader", cameraWidth, cameraHeight, 1); 335 | 336 | Graphics.ExecuteCommandBuffer(cmdBuffer); 337 | 338 | cmdBuffer.Release(); 339 | 340 | Graphics.Blit(rayTracingOutput, dest); 341 | } 342 | } 343 | -------------------------------------------------------------------------------- /Assets/Scripts/MeshInstanceDynamicGeometry.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4570ce90ad6fa784c9845cc0097ba5d1 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/SimpleCameraController.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace UnityTemplateProjects 4 | { 5 | public class SimpleCameraController : MonoBehaviour 6 | { 7 | class CameraState 8 | { 9 | public float yaw; 10 | public float pitch; 11 | public float roll; 12 | public float x; 13 | public float y; 14 | public float z; 15 | 16 | public void SetFromTransform(Transform t) 17 | { 18 | pitch = t.eulerAngles.x; 19 | yaw = t.eulerAngles.y; 20 | roll = t.eulerAngles.z; 21 | x = t.position.x; 22 | y = t.position.y; 23 | z = t.position.z; 24 | } 25 | 26 | public void Translate(Vector3 translation) 27 | { 28 | Vector3 rotatedTranslation = Quaternion.Euler(pitch, yaw, roll) * translation; 29 | 30 | x += rotatedTranslation.x; 31 | y += rotatedTranslation.y; 32 | z += rotatedTranslation.z; 33 | } 34 | 35 | public void LerpTowards(CameraState target, float positionLerpPct, float rotationLerpPct) 36 | { 37 | yaw = Mathf.Lerp(yaw, target.yaw, rotationLerpPct); 38 | pitch = Mathf.Lerp(pitch, target.pitch, rotationLerpPct); 39 | roll = Mathf.Lerp(roll, target.roll, rotationLerpPct); 40 | 41 | x = Mathf.Lerp(x, target.x, positionLerpPct); 42 | y = Mathf.Lerp(y, target.y, positionLerpPct); 43 | z = Mathf.Lerp(z, target.z, positionLerpPct); 44 | } 45 | 46 | public void UpdateTransform(Transform t) 47 | { 48 | t.eulerAngles = new Vector3(pitch, yaw, roll); 49 | t.position = new Vector3(x, y, z); 50 | } 51 | } 52 | 53 | CameraState m_TargetCameraState = new CameraState(); 54 | CameraState m_InterpolatingCameraState = new CameraState(); 55 | 56 | [Header("Movement Settings")] 57 | [Tooltip("Exponential boost factor on translation, controllable by mouse wheel.")] 58 | public float boost = 3.5f; 59 | 60 | [Tooltip("Time it takes to interpolate camera position 99% of the way to the target."), Range(0.001f, 1f)] 61 | public float positionLerpTime = 0.2f; 62 | 63 | [Header("Rotation Settings")] 64 | [Tooltip("X = Change in mouse position.\nY = Multiplicative factor for camera rotation.")] 65 | public AnimationCurve mouseSensitivityCurve = new AnimationCurve(new Keyframe(0f, 0.5f, 0f, 5f), new Keyframe(1f, 2.5f, 0f, 0f)); 66 | 67 | [Tooltip("Time it takes to interpolate camera rotation 99% of the way to the target."), Range(0.001f, 1f)] 68 | public float rotationLerpTime = 0.01f; 69 | 70 | [Tooltip("Whether or not to invert our Y axis for mouse input to rotation.")] 71 | public bool invertY = false; 72 | 73 | void OnEnable() 74 | { 75 | m_TargetCameraState.SetFromTransform(transform); 76 | m_InterpolatingCameraState.SetFromTransform(transform); 77 | } 78 | 79 | Vector3 GetInputTranslationDirection() 80 | { 81 | Vector3 direction = new Vector3(); 82 | if (Input.GetKey(KeyCode.W)) 83 | { 84 | direction += Vector3.forward; 85 | } 86 | if (Input.GetKey(KeyCode.S)) 87 | { 88 | direction += Vector3.back; 89 | } 90 | if (Input.GetKey(KeyCode.A)) 91 | { 92 | direction += Vector3.left; 93 | } 94 | if (Input.GetKey(KeyCode.D)) 95 | { 96 | direction += Vector3.right; 97 | } 98 | if (Input.GetKey(KeyCode.Q)) 99 | { 100 | direction += Vector3.down; 101 | } 102 | if (Input.GetKey(KeyCode.E)) 103 | { 104 | direction += Vector3.up; 105 | } 106 | return direction; 107 | } 108 | 109 | void Update() 110 | { 111 | // Hide and lock cursor when right mouse button pressed 112 | if (Input.GetMouseButtonDown(1)) 113 | { 114 | Cursor.lockState = CursorLockMode.Locked; 115 | } 116 | 117 | // Unlock and show cursor when right mouse button released 118 | if (Input.GetMouseButtonUp(1)) 119 | { 120 | Cursor.visible = true; 121 | Cursor.lockState = CursorLockMode.None; 122 | } 123 | 124 | // Rotation 125 | if (Input.GetMouseButton(1)) 126 | { 127 | var mouseMovement = new Vector2(Input.GetAxis("Mouse X"), Input.GetAxis("Mouse Y") * (invertY ? 1 : -1)); 128 | 129 | var mouseSensitivityFactor = mouseSensitivityCurve.Evaluate(mouseMovement.magnitude); 130 | 131 | m_TargetCameraState.yaw += mouseMovement.x * mouseSensitivityFactor; 132 | m_TargetCameraState.pitch += mouseMovement.y * mouseSensitivityFactor; 133 | } 134 | 135 | // Translation 136 | var translation = GetInputTranslationDirection() * Time.deltaTime; 137 | 138 | // Speed up movement when shift key held 139 | if (Input.GetKey(KeyCode.LeftShift)) 140 | { 141 | translation *= 10.0f; 142 | } 143 | 144 | // Modify movement by a boost factor (defined in Inspector and modified in play mode through the mouse scroll wheel) 145 | boost += Input.mouseScrollDelta.y * 0.2f; 146 | translation *= Mathf.Pow(2.0f, boost); 147 | 148 | m_TargetCameraState.Translate(translation); 149 | 150 | // Framerate-independent interpolation 151 | // Calculate the lerp amount, such that we get 99% of the way to our target in the specified time 152 | var positionLerpPct = 1f - Mathf.Exp((Mathf.Log(1f - 0.99f) / positionLerpTime) * Time.deltaTime); 153 | var rotationLerpPct = 1f - Mathf.Exp((Mathf.Log(1f - 0.99f) / rotationLerpTime) * Time.deltaTime); 154 | m_InterpolatingCameraState.LerpTowards(m_TargetCameraState, positionLerpPct, rotationLerpPct); 155 | 156 | m_InterpolatingCameraState.UpdateTransform(transform); 157 | } 158 | } 159 | 160 | } -------------------------------------------------------------------------------- /Assets/Scripts/SimpleCameraController.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b8f4ba2505907764dbcb0b263a6169cd 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.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 24d22bdd0772b1f45828e72e1b4dbae9 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Shaders/GlobalResources.hlsl: -------------------------------------------------------------------------------- 1 | // Global resources belong to register space1 and they are set using SetGlobal* functions. 2 | 3 | TextureCube g_EnvTexture : register(t0, space1); 4 | SamplerState sampler_g_EnvTexture : register(s0, space1); 5 | -------------------------------------------------------------------------------- /Assets/Shaders/GlobalResources.hlsl.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6d2ed5a757755e54abd70764a77a56c0 3 | ShaderIncludeImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/Shaders/MeshInstanceDynamicGeometry.raytrace: -------------------------------------------------------------------------------- 1 | 2 | #include "RayPayload.hlsl" 3 | #include "GlobalResources.hlsl" 4 | 5 | #pragma max_recursion_depth 1 6 | 7 | // Input 8 | RaytracingAccelerationStructure g_AccelStruct; 9 | float4x4 g_InvViewMatrix; 10 | float4x4 g_ViewMatrix; 11 | float g_Zoom; 12 | 13 | // Output 14 | RWTexture2D g_Output; 15 | 16 | [shader("miss")] 17 | void MainMissShader(inout RayPayload payload : SV_RayPayload) 18 | { 19 | payload.color = g_EnvTexture.SampleLevel(sampler_g_EnvTexture, WorldRayDirection(), 0).xyz; 20 | } 21 | 22 | [shader("raygeneration")] 23 | void MainRayGenShader() 24 | { 25 | uint2 LaunchIndex = DispatchRaysIndex().xy; 26 | uint2 LaunchDim = DispatchRaysDimensions().xy; 27 | 28 | float2 frameCoord = float2(LaunchIndex.x, LaunchDim.y - LaunchIndex.y - 1); 29 | 30 | const uint subSampleCount = 4; 31 | 32 | float2 subSamplePos[subSampleCount] = { float2(0.25, 0.25), float2(0.75, 0.25), float2(0.75, 0.75), float2(0.25, 0.75) }; 33 | 34 | // The ray origin is the camera position in world space. 35 | float3 rayOrigin = float3(g_InvViewMatrix[0][3], g_InvViewMatrix[1][3], g_InvViewMatrix[2][3]); 36 | 37 | float aspectRatio = (float)LaunchDim.x / (float)LaunchDim.y; 38 | 39 | float3 color = float3(0, 0, 0); 40 | 41 | for (uint i = 0; i < subSampleCount; i++) 42 | { 43 | float2 ndcCoords = (frameCoord + subSamplePos[i]) / float2(LaunchDim.x - 1, LaunchDim.y - 1) ; 44 | 45 | ndcCoords = ndcCoords * 2 - float2(1, 1); 46 | ndcCoords = ndcCoords * g_Zoom; 47 | 48 | float3 viewDirection = normalize(float3(ndcCoords.x * aspectRatio, ndcCoords.y, -1)); 49 | 50 | // Rotate the ray from view space to world space. 51 | float3 rayDirection = normalize(mul((float3x3)g_InvViewMatrix, viewDirection)); 52 | 53 | RayDesc ray; 54 | ray.Origin = rayOrigin; 55 | ray.Direction = rayDirection; 56 | ray.TMin = 0; 57 | ray.TMax = 1e20f; 58 | 59 | RayPayload payload; 60 | payload.color = float3(0, 0, 0); 61 | 62 | uint missShaderIndex = 0; 63 | TraceRay(g_AccelStruct, 0, 0xFF, 0, 1, missShaderIndex, ray, payload); 64 | 65 | color += payload.color / subSampleCount; 66 | } 67 | 68 | g_Output[frameCoord] = color; 69 | } 70 | -------------------------------------------------------------------------------- /Assets/Shaders/MeshInstanceDynamicGeometry.raytrace.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 52d8b9f61396a1547ac37a2eabc9504e 3 | RayTracingShaderImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/Shaders/MeshInstanceDynamicGeometry.shader: -------------------------------------------------------------------------------- 1 | Shader "RayTracing/MeshInstanceDynamicGeometry" 2 | { 3 | Properties 4 | { 5 | } 6 | SubShader 7 | { 8 | Tags { "RenderType" = "Opaque" "DisableBatching" = "True" } 9 | LOD 100 10 | 11 | Pass 12 | { 13 | CGPROGRAM 14 | 15 | #pragma vertex vert 16 | #pragma fragment frag 17 | 18 | #include "UnityCG.cginc" 19 | 20 | struct appdata 21 | { 22 | float4 vertex : POSITION; 23 | }; 24 | 25 | struct v2f 26 | { 27 | float4 vertex : SV_POSITION; 28 | }; 29 | 30 | v2f vert(appdata v) 31 | { 32 | v2f o; 33 | o.vertex = UnityObjectToClipPos(v.vertex); 34 | return o; 35 | } 36 | 37 | fixed4 frag() : SV_Target 38 | { 39 | return fixed4(1, 1, 1, 1); 40 | } 41 | 42 | ENDCG 43 | } 44 | } 45 | 46 | SubShader 47 | { 48 | Pass 49 | { 50 | Name "Test" 51 | 52 | HLSLPROGRAM 53 | 54 | #include "UnityRayTracingMeshUtils.cginc" 55 | #include "RayPayload.hlsl" 56 | #include "GlobalResources.hlsl" 57 | 58 | #pragma raytracing some_name 59 | 60 | struct AttributeData 61 | { 62 | float2 barycentrics; 63 | }; 64 | 65 | struct Vertex 66 | { 67 | float3 position; 68 | }; 69 | 70 | Vertex FetchVertex(uint vertexIndex) 71 | { 72 | Vertex v; 73 | v.position = UnityRayTracingFetchVertexAttribute3(vertexIndex, kVertexAttributePosition); 74 | return v; 75 | } 76 | 77 | Vertex InterpolateVertices(Vertex v0, Vertex v1, Vertex v2, float3 barycentrics) 78 | { 79 | Vertex v; 80 | #define INTERPOLATE_ATTRIBUTE(attr) v.attr = v0.attr * barycentrics.x + v1.attr * barycentrics.y + v2.attr * barycentrics.z 81 | return v; 82 | } 83 | 84 | [shader("closesthit")] 85 | void ClosestHitMain(inout RayPayload payload : SV_RayPayload, AttributeData attribs : SV_IntersectionAttributes) 86 | { 87 | uint3 triangleIndices = UnityRayTracingFetchTriangleIndices(PrimitiveIndex()); 88 | 89 | Vertex v0, v1, v2; 90 | v0 = FetchVertex(triangleIndices.x); 91 | v1 = FetchVertex(triangleIndices.y); 92 | v2 = FetchVertex(triangleIndices.z); 93 | 94 | float3 barycentricCoords = float3(1.0 - attribs.barycentrics.x - attribs.barycentrics.y, attribs.barycentrics.x, attribs.barycentrics.y); 95 | Vertex v = InterpolateVertices(v0, v1, v2, barycentricCoords); 96 | 97 | float3 worldPosition = mul(ObjectToWorld(), float4(v.position, 1)); 98 | 99 | float3 e0 = v1.position - v0.position; 100 | float3 e1 = v2.position - v0.position; 101 | 102 | float3 faceNormal = normalize(mul(cross(e0, e1), (float3x3)WorldToObject())); 103 | 104 | float3 reflectionVec = reflect(WorldRayDirection(), faceNormal); 105 | 106 | payload.color = g_EnvTexture.SampleLevel(sampler_g_EnvTexture, reflectionVec, 0).xyz; 107 | } 108 | 109 | ENDHLSL 110 | } 111 | } 112 | } 113 | -------------------------------------------------------------------------------- /Assets/Shaders/MeshInstanceDynamicGeometry.shader.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 72834f22036dbf74ba823121d5381b45 3 | ShaderImporter: 4 | externalObjects: {} 5 | defaultTextures: [] 6 | nonModifiableTextures: [] 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Shaders/RayPayload.hlsl: -------------------------------------------------------------------------------- 1 | struct RayPayload 2 | { 3 | float3 color; 4 | }; 5 | -------------------------------------------------------------------------------- /Assets/Shaders/RayPayload.hlsl.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 527ed146d2f2cbc4480a8990245fe3ee 3 | ShaderIncludeImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/Shaders/WaveMeshAnimation.compute: -------------------------------------------------------------------------------- 1 | #pragma kernel CSMain 2 | 3 | RWByteAddressBuffer vertexBuffer; 4 | 5 | float realtimeSinceStartup; 6 | uint vertexCount; 7 | uint vertexSizeInBytes; 8 | 9 | [numthreads(32, 1, 1)] 10 | void CSMain (uint3 tid : SV_DispatchThreadID) 11 | { 12 | uint vertexIndex = tid.x; 13 | 14 | if (vertexIndex >= vertexCount) 15 | return; 16 | 17 | uint address = vertexIndex * vertexSizeInBytes; 18 | 19 | float3 position = asfloat(vertexBuffer.Load3(address)); 20 | 21 | float dist = length(position); 22 | 23 | float wave = 0.05f * cos(realtimeSinceStartup * 9 - 15 * dist); 24 | 25 | vertexBuffer.Store3(address, asuint(float3(position.x, wave, position.z))); 26 | } 27 | -------------------------------------------------------------------------------- /Assets/Shaders/WaveMeshAnimation.compute.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d81cea85413075149bab2420ab65b89f 3 | ComputeShaderImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/Textures.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d32edde6b2846e245bc78f495eb8f8a9 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Textures/DefaultHDRISky.exr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/INedelcu/RayTracingDynamicMeshGeometry/ba46164f6f558645b9f043fa6a6c8d158a0c3c35/Assets/Textures/DefaultHDRISky.exr -------------------------------------------------------------------------------- /Assets/Textures/DefaultHDRISky.exr.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0aad1b11a010eb646b43fb14387418ba 3 | TextureImporter: 4 | internalIDToNameTable: [] 5 | externalObjects: {} 6 | serializedVersion: 12 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 1 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | flipGreenChannel: 0 24 | isReadable: 0 25 | streamingMipmaps: 0 26 | streamingMipmapsPriority: 0 27 | vTOnly: 0 28 | ignoreMipmapLimit: 0 29 | grayScaleToAlpha: 0 30 | generateCubemap: 6 31 | cubemapConvolution: 0 32 | seamlessCubemap: 0 33 | textureFormat: 1 34 | maxTextureSize: 2048 35 | textureSettings: 36 | serializedVersion: 2 37 | filterMode: 1 38 | aniso: 1 39 | mipBias: 0 40 | wrapU: 0 41 | wrapV: 0 42 | wrapW: 0 43 | nPOTScale: 1 44 | lightmap: 0 45 | compressionQuality: 50 46 | spriteMode: 0 47 | spriteExtrude: 1 48 | spriteMeshType: 1 49 | alignment: 0 50 | spritePivot: {x: 0.5, y: 0.5} 51 | spritePixelsToUnits: 100 52 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 53 | spriteGenerateFallbackPhysicsShape: 1 54 | alphaUsage: 1 55 | alphaIsTransparency: 0 56 | spriteTessellationDetail: -1 57 | textureType: 0 58 | textureShape: 2 59 | singleChannelComponent: 0 60 | flipbookRows: 1 61 | flipbookColumns: 1 62 | maxTextureSizeSet: 0 63 | compressionQualitySet: 0 64 | textureFormatSet: 0 65 | ignorePngGamma: 0 66 | applyGammaDecoding: 0 67 | swizzle: 50462976 68 | cookieLightType: 0 69 | platformSettings: 70 | - serializedVersion: 3 71 | buildTarget: DefaultTexturePlatform 72 | maxTextureSize: 128 73 | resizeAlgorithm: 0 74 | textureFormat: -1 75 | textureCompression: 1 76 | compressionQuality: 50 77 | crunchedCompression: 0 78 | allowsAlphaSplitting: 0 79 | overridden: 0 80 | androidETC2FallbackOverride: 0 81 | forceMaximumCompressionQuality_BC6H_BC7: 0 82 | - serializedVersion: 3 83 | buildTarget: Standalone 84 | maxTextureSize: 2048 85 | resizeAlgorithm: 0 86 | textureFormat: -1 87 | textureCompression: 1 88 | compressionQuality: 50 89 | crunchedCompression: 0 90 | allowsAlphaSplitting: 0 91 | overridden: 0 92 | androidETC2FallbackOverride: 0 93 | forceMaximumCompressionQuality_BC6H_BC7: 0 94 | spriteSheet: 95 | serializedVersion: 2 96 | sprites: [] 97 | outline: [] 98 | physicsShape: [] 99 | bones: [] 100 | spriteID: 101 | internalID: 0 102 | vertices: [] 103 | indices: 104 | edges: [] 105 | weights: [] 106 | secondaryTextures: [] 107 | nameFileIdTable: {} 108 | mipmapLimitGroupName: 109 | pSDRemoveMatte: 0 110 | userData: 111 | assetBundleName: 112 | assetBundleVariant: 113 | -------------------------------------------------------------------------------- /Images/GameView.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/INedelcu/RayTracingDynamicMeshGeometry/ba46164f6f558645b9f043fa6a6c8d158a0c3c35/Images/GameView.png -------------------------------------------------------------------------------- /Packages/manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "dependencies": { 3 | "com.unity.2d.sprite": "1.0.0", 4 | "com.unity.2d.tilemap": "1.0.0", 5 | "com.unity.ads": "4.4.1", 6 | "com.unity.ai.navigation": "1.1.0-pre.1", 7 | "com.unity.analytics": "3.8.1", 8 | "com.unity.collab-proxy": "1.17.6", 9 | "com.unity.feature.development": "1.0.1", 10 | "com.unity.ide.rider": "3.0.16", 11 | "com.unity.ide.visualstudio": "2.0.16", 12 | "com.unity.ide.vscode": "1.2.5", 13 | "com.unity.purchasing": "4.5.0", 14 | "com.unity.test-framework": "1.1.33", 15 | "com.unity.textmeshpro": "3.0.6", 16 | "com.unity.timeline": "1.7.1", 17 | "com.unity.ugui": "1.0.0", 18 | "com.unity.visualscripting": "1.7.8", 19 | "com.unity.xr.legacyinputhelpers": "2.1.10", 20 | "com.unity.modules.ai": "1.0.0", 21 | "com.unity.modules.androidjni": "1.0.0", 22 | "com.unity.modules.animation": "1.0.0", 23 | "com.unity.modules.assetbundle": "1.0.0", 24 | "com.unity.modules.audio": "1.0.0", 25 | "com.unity.modules.cloth": "1.0.0", 26 | "com.unity.modules.director": "1.0.0", 27 | "com.unity.modules.imageconversion": "1.0.0", 28 | "com.unity.modules.imgui": "1.0.0", 29 | "com.unity.modules.jsonserialize": "1.0.0", 30 | "com.unity.modules.particlesystem": "1.0.0", 31 | "com.unity.modules.physics": "1.0.0", 32 | "com.unity.modules.physics2d": "1.0.0", 33 | "com.unity.modules.screencapture": "1.0.0", 34 | "com.unity.modules.terrain": "1.0.0", 35 | "com.unity.modules.terrainphysics": "1.0.0", 36 | "com.unity.modules.tilemap": "1.0.0", 37 | "com.unity.modules.ui": "1.0.0", 38 | "com.unity.modules.uielements": "1.0.0", 39 | "com.unity.modules.umbra": "1.0.0", 40 | "com.unity.modules.unityanalytics": "1.0.0", 41 | "com.unity.modules.unitywebrequest": "1.0.0", 42 | "com.unity.modules.unitywebrequestassetbundle": "1.0.0", 43 | "com.unity.modules.unitywebrequestaudio": "1.0.0", 44 | "com.unity.modules.unitywebrequesttexture": "1.0.0", 45 | "com.unity.modules.unitywebrequestwww": "1.0.0", 46 | "com.unity.modules.vehicles": "1.0.0", 47 | "com.unity.modules.video": "1.0.0", 48 | "com.unity.modules.vr": "1.0.0", 49 | "com.unity.modules.wind": "1.0.0", 50 | "com.unity.modules.xr": "1.0.0" 51 | } 52 | } 53 | -------------------------------------------------------------------------------- /Packages/packages-lock.json: -------------------------------------------------------------------------------- 1 | { 2 | "dependencies": { 3 | "com.unity.2d.sprite": { 4 | "version": "1.0.0", 5 | "depth": 0, 6 | "source": "builtin", 7 | "dependencies": {} 8 | }, 9 | "com.unity.2d.tilemap": { 10 | "version": "1.0.0", 11 | "depth": 0, 12 | "source": "builtin", 13 | "dependencies": { 14 | "com.unity.modules.tilemap": "1.0.0", 15 | "com.unity.modules.uielements": "1.0.0" 16 | } 17 | }, 18 | "com.unity.ads": { 19 | "version": "4.4.1", 20 | "depth": 0, 21 | "source": "registry", 22 | "dependencies": { 23 | "com.unity.ugui": "1.0.0" 24 | }, 25 | "url": "https://packages.unity.com" 26 | }, 27 | "com.unity.ai.navigation": { 28 | "version": "1.1.0-pre.1", 29 | "depth": 0, 30 | "source": "registry", 31 | "dependencies": { 32 | "com.unity.modules.ai": "1.0.0" 33 | }, 34 | "url": "https://packages.unity.com" 35 | }, 36 | "com.unity.analytics": { 37 | "version": "3.8.1", 38 | "depth": 0, 39 | "source": "registry", 40 | "dependencies": { 41 | "com.unity.services.analytics": "1.0.4", 42 | "com.unity.ugui": "1.0.0" 43 | }, 44 | "url": "https://packages.unity.com" 45 | }, 46 | "com.unity.collab-proxy": { 47 | "version": "1.17.6", 48 | "depth": 0, 49 | "source": "registry", 50 | "dependencies": { 51 | "com.unity.services.core": "1.0.1" 52 | }, 53 | "url": "https://packages.unity.com" 54 | }, 55 | "com.unity.editorcoroutines": { 56 | "version": "1.0.0", 57 | "depth": 1, 58 | "source": "registry", 59 | "dependencies": {}, 60 | "url": "https://packages.unity.com" 61 | }, 62 | "com.unity.ext.nunit": { 63 | "version": "2.0.3", 64 | "depth": 1, 65 | "source": "registry", 66 | "dependencies": {}, 67 | "url": "https://packages.unity.com" 68 | }, 69 | "com.unity.feature.development": { 70 | "version": "1.0.1", 71 | "depth": 0, 72 | "source": "builtin", 73 | "dependencies": { 74 | "com.unity.ide.visualstudio": "2.0.16", 75 | "com.unity.ide.rider": "3.0.16", 76 | "com.unity.ide.vscode": "1.2.5", 77 | "com.unity.editorcoroutines": "1.0.0", 78 | "com.unity.performance.profile-analyzer": "1.1.1", 79 | "com.unity.test-framework": "1.1.33", 80 | "com.unity.testtools.codecoverage": "1.2.0" 81 | } 82 | }, 83 | "com.unity.ide.rider": { 84 | "version": "3.0.16", 85 | "depth": 0, 86 | "source": "registry", 87 | "dependencies": { 88 | "com.unity.ext.nunit": "1.0.6" 89 | }, 90 | "url": "https://packages.unity.com" 91 | }, 92 | "com.unity.ide.visualstudio": { 93 | "version": "2.0.16", 94 | "depth": 0, 95 | "source": "registry", 96 | "dependencies": { 97 | "com.unity.test-framework": "1.1.9" 98 | }, 99 | "url": "https://packages.unity.com" 100 | }, 101 | "com.unity.ide.vscode": { 102 | "version": "1.2.5", 103 | "depth": 0, 104 | "source": "registry", 105 | "dependencies": {}, 106 | "url": "https://packages.unity.com" 107 | }, 108 | "com.unity.nuget.newtonsoft-json": { 109 | "version": "3.0.2", 110 | "depth": 2, 111 | "source": "registry", 112 | "dependencies": {}, 113 | "url": "https://packages.unity.com" 114 | }, 115 | "com.unity.performance.profile-analyzer": { 116 | "version": "1.1.1", 117 | "depth": 1, 118 | "source": "registry", 119 | "dependencies": {}, 120 | "url": "https://packages.unity.com" 121 | }, 122 | "com.unity.purchasing": { 123 | "version": "4.5.0", 124 | "depth": 0, 125 | "source": "registry", 126 | "dependencies": { 127 | "com.unity.ugui": "1.0.0", 128 | "com.unity.modules.unityanalytics": "1.0.0", 129 | "com.unity.modules.unitywebrequest": "1.0.0", 130 | "com.unity.modules.jsonserialize": "1.0.0", 131 | "com.unity.modules.androidjni": "1.0.0", 132 | "com.unity.services.core": "1.3.1", 133 | "com.unity.services.analytics": "4.0.1" 134 | }, 135 | "url": "https://packages.unity.com" 136 | }, 137 | "com.unity.services.analytics": { 138 | "version": "4.2.0", 139 | "depth": 1, 140 | "source": "registry", 141 | "dependencies": { 142 | "com.unity.ugui": "1.0.0", 143 | "com.unity.services.core": "1.4.0" 144 | }, 145 | "url": "https://packages.unity.com" 146 | }, 147 | "com.unity.services.core": { 148 | "version": "1.4.3", 149 | "depth": 1, 150 | "source": "registry", 151 | "dependencies": { 152 | "com.unity.modules.unitywebrequest": "1.0.0", 153 | "com.unity.nuget.newtonsoft-json": "3.0.2", 154 | "com.unity.modules.androidjni": "1.0.0" 155 | }, 156 | "url": "https://packages.unity.com" 157 | }, 158 | "com.unity.settings-manager": { 159 | "version": "2.0.1", 160 | "depth": 2, 161 | "source": "registry", 162 | "dependencies": {}, 163 | "url": "https://packages.unity.com" 164 | }, 165 | "com.unity.test-framework": { 166 | "version": "1.1.33", 167 | "depth": 0, 168 | "source": "registry", 169 | "dependencies": { 170 | "com.unity.ext.nunit": "1.0.6", 171 | "com.unity.modules.imgui": "1.0.0", 172 | "com.unity.modules.jsonserialize": "1.0.0" 173 | }, 174 | "url": "https://packages.unity.com" 175 | }, 176 | "com.unity.testtools.codecoverage": { 177 | "version": "1.2.0", 178 | "depth": 1, 179 | "source": "registry", 180 | "dependencies": { 181 | "com.unity.test-framework": "1.0.16", 182 | "com.unity.settings-manager": "1.0.1" 183 | }, 184 | "url": "https://packages.unity.com" 185 | }, 186 | "com.unity.textmeshpro": { 187 | "version": "3.0.6", 188 | "depth": 0, 189 | "source": "registry", 190 | "dependencies": { 191 | "com.unity.ugui": "1.0.0" 192 | }, 193 | "url": "https://packages.unity.com" 194 | }, 195 | "com.unity.timeline": { 196 | "version": "1.7.1", 197 | "depth": 0, 198 | "source": "registry", 199 | "dependencies": { 200 | "com.unity.modules.director": "1.0.0", 201 | "com.unity.modules.animation": "1.0.0", 202 | "com.unity.modules.audio": "1.0.0", 203 | "com.unity.modules.particlesystem": "1.0.0" 204 | }, 205 | "url": "https://packages.unity.com" 206 | }, 207 | "com.unity.ugui": { 208 | "version": "1.0.0", 209 | "depth": 0, 210 | "source": "builtin", 211 | "dependencies": { 212 | "com.unity.modules.ui": "1.0.0", 213 | "com.unity.modules.imgui": "1.0.0" 214 | } 215 | }, 216 | "com.unity.visualscripting": { 217 | "version": "1.7.8", 218 | "depth": 0, 219 | "source": "registry", 220 | "dependencies": { 221 | "com.unity.ugui": "1.0.0", 222 | "com.unity.modules.jsonserialize": "1.0.0" 223 | }, 224 | "url": "https://packages.unity.com" 225 | }, 226 | "com.unity.xr.legacyinputhelpers": { 227 | "version": "2.1.10", 228 | "depth": 0, 229 | "source": "registry", 230 | "dependencies": { 231 | "com.unity.modules.vr": "1.0.0", 232 | "com.unity.modules.xr": "1.0.0" 233 | }, 234 | "url": "https://packages.unity.com" 235 | }, 236 | "com.unity.modules.ai": { 237 | "version": "1.0.0", 238 | "depth": 0, 239 | "source": "builtin", 240 | "dependencies": {} 241 | }, 242 | "com.unity.modules.androidjni": { 243 | "version": "1.0.0", 244 | "depth": 0, 245 | "source": "builtin", 246 | "dependencies": {} 247 | }, 248 | "com.unity.modules.animation": { 249 | "version": "1.0.0", 250 | "depth": 0, 251 | "source": "builtin", 252 | "dependencies": {} 253 | }, 254 | "com.unity.modules.assetbundle": { 255 | "version": "1.0.0", 256 | "depth": 0, 257 | "source": "builtin", 258 | "dependencies": {} 259 | }, 260 | "com.unity.modules.audio": { 261 | "version": "1.0.0", 262 | "depth": 0, 263 | "source": "builtin", 264 | "dependencies": {} 265 | }, 266 | "com.unity.modules.cloth": { 267 | "version": "1.0.0", 268 | "depth": 0, 269 | "source": "builtin", 270 | "dependencies": { 271 | "com.unity.modules.physics": "1.0.0" 272 | } 273 | }, 274 | "com.unity.modules.director": { 275 | "version": "1.0.0", 276 | "depth": 0, 277 | "source": "builtin", 278 | "dependencies": { 279 | "com.unity.modules.audio": "1.0.0", 280 | "com.unity.modules.animation": "1.0.0" 281 | } 282 | }, 283 | "com.unity.modules.imageconversion": { 284 | "version": "1.0.0", 285 | "depth": 0, 286 | "source": "builtin", 287 | "dependencies": {} 288 | }, 289 | "com.unity.modules.imgui": { 290 | "version": "1.0.0", 291 | "depth": 0, 292 | "source": "builtin", 293 | "dependencies": {} 294 | }, 295 | "com.unity.modules.jsonserialize": { 296 | "version": "1.0.0", 297 | "depth": 0, 298 | "source": "builtin", 299 | "dependencies": {} 300 | }, 301 | "com.unity.modules.particlesystem": { 302 | "version": "1.0.0", 303 | "depth": 0, 304 | "source": "builtin", 305 | "dependencies": {} 306 | }, 307 | "com.unity.modules.physics": { 308 | "version": "1.0.0", 309 | "depth": 0, 310 | "source": "builtin", 311 | "dependencies": {} 312 | }, 313 | "com.unity.modules.physics2d": { 314 | "version": "1.0.0", 315 | "depth": 0, 316 | "source": "builtin", 317 | "dependencies": {} 318 | }, 319 | "com.unity.modules.screencapture": { 320 | "version": "1.0.0", 321 | "depth": 0, 322 | "source": "builtin", 323 | "dependencies": { 324 | "com.unity.modules.imageconversion": "1.0.0" 325 | } 326 | }, 327 | "com.unity.modules.subsystems": { 328 | "version": "1.0.0", 329 | "depth": 1, 330 | "source": "builtin", 331 | "dependencies": { 332 | "com.unity.modules.jsonserialize": "1.0.0" 333 | } 334 | }, 335 | "com.unity.modules.terrain": { 336 | "version": "1.0.0", 337 | "depth": 0, 338 | "source": "builtin", 339 | "dependencies": {} 340 | }, 341 | "com.unity.modules.terrainphysics": { 342 | "version": "1.0.0", 343 | "depth": 0, 344 | "source": "builtin", 345 | "dependencies": { 346 | "com.unity.modules.physics": "1.0.0", 347 | "com.unity.modules.terrain": "1.0.0" 348 | } 349 | }, 350 | "com.unity.modules.tilemap": { 351 | "version": "1.0.0", 352 | "depth": 0, 353 | "source": "builtin", 354 | "dependencies": { 355 | "com.unity.modules.physics2d": "1.0.0" 356 | } 357 | }, 358 | "com.unity.modules.ui": { 359 | "version": "1.0.0", 360 | "depth": 0, 361 | "source": "builtin", 362 | "dependencies": {} 363 | }, 364 | "com.unity.modules.uielements": { 365 | "version": "1.0.0", 366 | "depth": 0, 367 | "source": "builtin", 368 | "dependencies": { 369 | "com.unity.modules.ui": "1.0.0", 370 | "com.unity.modules.imgui": "1.0.0", 371 | "com.unity.modules.jsonserialize": "1.0.0" 372 | } 373 | }, 374 | "com.unity.modules.umbra": { 375 | "version": "1.0.0", 376 | "depth": 0, 377 | "source": "builtin", 378 | "dependencies": {} 379 | }, 380 | "com.unity.modules.unityanalytics": { 381 | "version": "1.0.0", 382 | "depth": 0, 383 | "source": "builtin", 384 | "dependencies": { 385 | "com.unity.modules.unitywebrequest": "1.0.0", 386 | "com.unity.modules.jsonserialize": "1.0.0" 387 | } 388 | }, 389 | "com.unity.modules.unitywebrequest": { 390 | "version": "1.0.0", 391 | "depth": 0, 392 | "source": "builtin", 393 | "dependencies": {} 394 | }, 395 | "com.unity.modules.unitywebrequestassetbundle": { 396 | "version": "1.0.0", 397 | "depth": 0, 398 | "source": "builtin", 399 | "dependencies": { 400 | "com.unity.modules.assetbundle": "1.0.0", 401 | "com.unity.modules.unitywebrequest": "1.0.0" 402 | } 403 | }, 404 | "com.unity.modules.unitywebrequestaudio": { 405 | "version": "1.0.0", 406 | "depth": 0, 407 | "source": "builtin", 408 | "dependencies": { 409 | "com.unity.modules.unitywebrequest": "1.0.0", 410 | "com.unity.modules.audio": "1.0.0" 411 | } 412 | }, 413 | "com.unity.modules.unitywebrequesttexture": { 414 | "version": "1.0.0", 415 | "depth": 0, 416 | "source": "builtin", 417 | "dependencies": { 418 | "com.unity.modules.unitywebrequest": "1.0.0", 419 | "com.unity.modules.imageconversion": "1.0.0" 420 | } 421 | }, 422 | "com.unity.modules.unitywebrequestwww": { 423 | "version": "1.0.0", 424 | "depth": 0, 425 | "source": "builtin", 426 | "dependencies": { 427 | "com.unity.modules.unitywebrequest": "1.0.0", 428 | "com.unity.modules.unitywebrequestassetbundle": "1.0.0", 429 | "com.unity.modules.unitywebrequestaudio": "1.0.0", 430 | "com.unity.modules.audio": "1.0.0", 431 | "com.unity.modules.assetbundle": "1.0.0", 432 | "com.unity.modules.imageconversion": "1.0.0" 433 | } 434 | }, 435 | "com.unity.modules.vehicles": { 436 | "version": "1.0.0", 437 | "depth": 0, 438 | "source": "builtin", 439 | "dependencies": { 440 | "com.unity.modules.physics": "1.0.0" 441 | } 442 | }, 443 | "com.unity.modules.video": { 444 | "version": "1.0.0", 445 | "depth": 0, 446 | "source": "builtin", 447 | "dependencies": { 448 | "com.unity.modules.audio": "1.0.0", 449 | "com.unity.modules.ui": "1.0.0", 450 | "com.unity.modules.unitywebrequest": "1.0.0" 451 | } 452 | }, 453 | "com.unity.modules.vr": { 454 | "version": "1.0.0", 455 | "depth": 0, 456 | "source": "builtin", 457 | "dependencies": { 458 | "com.unity.modules.jsonserialize": "1.0.0", 459 | "com.unity.modules.physics": "1.0.0", 460 | "com.unity.modules.xr": "1.0.0" 461 | } 462 | }, 463 | "com.unity.modules.wind": { 464 | "version": "1.0.0", 465 | "depth": 0, 466 | "source": "builtin", 467 | "dependencies": {} 468 | }, 469 | "com.unity.modules.xr": { 470 | "version": "1.0.0", 471 | "depth": 0, 472 | "source": "builtin", 473 | "dependencies": { 474 | "com.unity.modules.physics": "1.0.0", 475 | "com.unity.modules.jsonserialize": "1.0.0", 476 | "com.unity.modules.subsystems": "1.0.0" 477 | } 478 | } 479 | } 480 | } 481 | -------------------------------------------------------------------------------- /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: 1024 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: 11 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 18 | m_ClothInterCollisionStiffness: 0 19 | m_ContactsGeneration: 1 20 | m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 21 | m_AutoSimulation: 1 22 | m_AutoSyncTransforms: 0 23 | m_ReuseCollisionCallbacks: 1 24 | m_ClothInterCollisionSettingsToggle: 0 25 | m_ContactPairsMode: 0 26 | m_BroadphaseType: 0 27 | m_WorldBounds: 28 | m_Center: {x: 0, y: 0, z: 0} 29 | m_Extent: {x: 250, y: 250, z: 250} 30 | m_WorldSubdivisions: 8 31 | m_FrictionType: 0 32 | m_EnableEnhancedDeterminism: 0 33 | m_EnableUnifiedHeightmaps: 1 34 | m_DefaultMaxAngluarSpeed: 7 35 | -------------------------------------------------------------------------------- /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 | m_configObjects: {} 9 | -------------------------------------------------------------------------------- /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_ExternalVersionControlSupport: Visible Meta Files 8 | m_SerializationMode: 2 9 | m_LineEndingsForNewScripts: 0 10 | m_DefaultBehaviorMode: 0 11 | m_PrefabRegularEnvironment: {fileID: 0} 12 | m_PrefabUIEnvironment: {fileID: 0} 13 | m_SpritePackerMode: 0 14 | m_SpritePackerPaddingPower: 1 15 | m_EtcTextureCompressorBehavior: 1 16 | m_EtcTextureFastCompressor: 1 17 | m_EtcTextureNormalCompressor: 2 18 | m_EtcTextureBestCompressor: 4 19 | m_ProjectGenerationIncludedExtensions: txt;xml;fnt;cd;asmdef;rsp;asmref 20 | m_ProjectGenerationRootNamespace: 21 | m_CollabEditorSettings: 22 | inProgressEnabled: 1 23 | m_EnableTextureStreamingInEditMode: 1 24 | m_EnableTextureStreamingInPlayMode: 1 25 | m_AsyncShaderCompilation: 1 26 | m_EnterPlayModeOptionsEnabled: 0 27 | m_EnterPlayModeOptions: 3 28 | m_ShowLightmapResolutionOverlay: 1 29 | m_UseLegacyProbeSampleCount: 0 30 | m_SerializeInlineMappingsOnOneLine: 1 31 | -------------------------------------------------------------------------------- /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: 13 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_AlwaysIncludedShaders: 32 | - {fileID: 7, guid: 0000000000000000f000000000000000, type: 0} 33 | - {fileID: 15104, guid: 0000000000000000f000000000000000, type: 0} 34 | - {fileID: 15105, guid: 0000000000000000f000000000000000, type: 0} 35 | - {fileID: 15106, guid: 0000000000000000f000000000000000, type: 0} 36 | - {fileID: 10753, guid: 0000000000000000f000000000000000, type: 0} 37 | - {fileID: 10770, guid: 0000000000000000f000000000000000, type: 0} 38 | m_PreloadedShaders: [] 39 | m_SpritesDefaultMaterial: {fileID: 10754, guid: 0000000000000000f000000000000000, 40 | type: 0} 41 | m_CustomRenderPipeline: {fileID: 0} 42 | m_TransparencySortMode: 0 43 | m_TransparencySortAxis: {x: 0, y: 0, z: 1} 44 | m_DefaultRenderingPath: 1 45 | m_DefaultMobileRenderingPath: 1 46 | m_TierSettings: [] 47 | m_LightmapStripping: 0 48 | m_FogStripping: 0 49 | m_InstancingStripping: 0 50 | m_LightmapKeepPlain: 1 51 | m_LightmapKeepDirCombined: 1 52 | m_LightmapKeepDynamicPlain: 1 53 | m_LightmapKeepDynamicDirCombined: 1 54 | m_LightmapKeepShadowMask: 1 55 | m_LightmapKeepSubtractive: 1 56 | m_FogKeepLinear: 1 57 | m_FogKeepExp: 1 58 | m_FogKeepExp2: 1 59 | m_AlbedoSwatchInfos: [] 60 | m_LightsUseLinearIntensity: 0 61 | m_LightsUseColorTemperature: 0 62 | m_LogWhenShaderIsCompiled: 0 63 | m_AllowEnlightenSupportForUpgradedProject: 0 64 | -------------------------------------------------------------------------------- /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 | -------------------------------------------------------------------------------- /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: 0 16 | m_EnablePackageDependencies: 0 17 | m_AdvancedSettingsExpanded: 1 18 | m_ScopedRegistriesSettingsExpanded: 1 19 | m_SeeAllPackageVersions: 0 20 | oneTimeWarningShown: 0 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_UserSelectedRegistryName: 29 | m_UserAddingNewScopedRegistry: 0 30 | m_RegistryInfoDraft: 31 | m_Modified: 0 32 | m_ErrorMessage: 33 | m_UserModificationsInstanceId: -830 34 | m_OriginalInstanceId: -832 35 | m_LoadAssets: 0 36 | -------------------------------------------------------------------------------- /ProjectSettings/Packages/com.unity.testtools.codecoverage/Settings.json: -------------------------------------------------------------------------------- 1 | { 2 | "m_Dictionary": { 3 | "m_DictionaryValues": [] 4 | } 5 | } -------------------------------------------------------------------------------- /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: 1 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/ProjectSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!129 &1 4 | PlayerSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 26 7 | productGUID: ce9477dd80d42a54bb8715811335ee82 8 | AndroidProfiler: 0 9 | AndroidFilterTouchesWhenObscured: 0 10 | AndroidEnableSustainedPerformanceMode: 0 11 | defaultScreenOrientation: 4 12 | targetDevice: 2 13 | useOnDemandResources: 0 14 | accelerometerFrequency: 60 15 | companyName: DefaultCompany 16 | productName: RTAS_AddInstance_Mesh 17 | defaultCursor: {fileID: 0} 18 | cursorHotspot: {x: 0, y: 0} 19 | m_SplashScreenBackgroundColor: {r: 0.13725491, g: 0.12156863, b: 0.1254902, a: 1} 20 | m_ShowUnitySplashScreen: 1 21 | m_ShowUnitySplashLogo: 1 22 | m_SplashScreenOverlayOpacity: 1 23 | m_SplashScreenAnimation: 1 24 | m_SplashScreenLogoStyle: 1 25 | m_SplashScreenDrawMode: 0 26 | m_SplashScreenBackgroundAnimationZoom: 1 27 | m_SplashScreenLogoAnimationZoom: 1 28 | m_SplashScreenBackgroundLandscapeAspect: 1 29 | m_SplashScreenBackgroundPortraitAspect: 1 30 | m_SplashScreenBackgroundLandscapeUvs: 31 | serializedVersion: 2 32 | x: 0 33 | y: 0 34 | width: 1 35 | height: 1 36 | m_SplashScreenBackgroundPortraitUvs: 37 | serializedVersion: 2 38 | x: 0 39 | y: 0 40 | width: 1 41 | height: 1 42 | m_SplashScreenLogos: [] 43 | m_VirtualRealitySplashScreen: {fileID: 0} 44 | m_HolographicTrackingLossScreen: {fileID: 0} 45 | defaultScreenWidth: 1920 46 | defaultScreenHeight: 1080 47 | defaultScreenWidthWeb: 960 48 | defaultScreenHeightWeb: 600 49 | m_StereoRenderingPath: 0 50 | m_ActiveColorSpace: 1 51 | m_SpriteBatchVertexThreshold: 300 52 | m_MTRendering: 1 53 | mipStripping: 0 54 | numberOfMipsStripped: 0 55 | numberOfMipsStrippedPerMipmapLimitGroup: {} 56 | m_StackTraceTypes: 010000000100000001000000010000000100000001000000 57 | iosShowActivityIndicatorOnLoading: -1 58 | androidShowActivityIndicatorOnLoading: -1 59 | iosUseCustomAppBackgroundBehavior: 0 60 | allowedAutorotateToPortrait: 1 61 | allowedAutorotateToPortraitUpsideDown: 1 62 | allowedAutorotateToLandscapeRight: 1 63 | allowedAutorotateToLandscapeLeft: 1 64 | useOSAutorotation: 1 65 | use32BitDisplayBuffer: 1 66 | preserveFramebufferAlpha: 0 67 | disableDepthAndStencilBuffers: 0 68 | androidStartInFullscreen: 1 69 | androidRenderOutsideSafeArea: 1 70 | androidUseSwappy: 1 71 | androidBlitType: 0 72 | androidResizableWindow: 0 73 | androidDefaultWindowWidth: 1920 74 | androidDefaultWindowHeight: 1080 75 | androidMinimumWindowWidth: 400 76 | androidMinimumWindowHeight: 300 77 | androidFullscreenMode: 1 78 | defaultIsNativeResolution: 1 79 | macRetinaSupport: 1 80 | runInBackground: 1 81 | captureSingleScreen: 0 82 | muteOtherAudioSources: 0 83 | Prepare IOS For Recording: 0 84 | Force IOS Speakers When Recording: 0 85 | deferSystemGesturesMode: 0 86 | hideHomeButton: 0 87 | submitAnalytics: 1 88 | usePlayerLog: 1 89 | bakeCollisionMeshes: 0 90 | forceSingleInstance: 0 91 | useFlipModelSwapchain: 1 92 | resizableWindow: 0 93 | useMacAppStoreValidation: 0 94 | macAppStoreCategory: public.app-category.games 95 | gpuSkinning: 1 96 | xboxPIXTextureCapture: 0 97 | xboxEnableAvatar: 0 98 | xboxEnableKinect: 0 99 | xboxEnableKinectAutoTracking: 0 100 | xboxEnableFitness: 0 101 | visibleInBackground: 1 102 | allowFullscreenSwitch: 1 103 | fullscreenMode: 3 104 | xboxSpeechDB: 0 105 | xboxEnableHeadOrientation: 0 106 | xboxEnableGuest: 0 107 | xboxEnablePIXSampling: 0 108 | metalFramebufferOnly: 0 109 | xboxOneResolution: 0 110 | xboxOneSResolution: 0 111 | xboxOneXResolution: 3 112 | xboxOneMonoLoggingLevel: 0 113 | xboxOneLoggingLevel: 1 114 | xboxOneDisableEsram: 0 115 | xboxOneEnableTypeOptimization: 0 116 | xboxOnePresentImmediateThreshold: 0 117 | switchQueueCommandMemory: 0 118 | switchQueueControlMemory: 16384 119 | switchQueueComputeMemory: 262144 120 | switchNVNShaderPoolsGranularity: 33554432 121 | switchNVNDefaultPoolsGranularity: 16777216 122 | switchNVNOtherPoolsGranularity: 16777216 123 | switchGpuScratchPoolGranularity: 2097152 124 | switchAllowGpuScratchShrinking: 0 125 | switchNVNMaxPublicTextureIDCount: 0 126 | switchNVNMaxPublicSamplerIDCount: 0 127 | switchNVNGraphicsFirmwareMemory: 32 128 | stadiaPresentMode: 0 129 | stadiaTargetFramerate: 0 130 | vulkanNumSwapchainBuffers: 3 131 | vulkanEnableSetSRGBWrite: 0 132 | vulkanEnablePreTransform: 1 133 | vulkanEnableLateAcquireNextImage: 0 134 | vulkanEnableCommandBufferRecycling: 1 135 | loadStoreDebugModeEnabled: 0 136 | bundleVersion: 0.1 137 | preloadedAssets: [] 138 | metroInputSource: 0 139 | wsaTransparentSwapchain: 0 140 | m_HolographicPauseOnTrackingLoss: 1 141 | xboxOneDisableKinectGpuReservation: 1 142 | xboxOneEnable7thCore: 1 143 | vrSettings: 144 | enable360StereoCapture: 0 145 | isWsaHolographicRemotingEnabled: 0 146 | enableFrameTimingStats: 0 147 | enableOpenGLProfilerGPURecorders: 1 148 | useHDRDisplay: 0 149 | D3DHDRBitDepth: 0 150 | m_ColorGamuts: 00000000 151 | targetPixelDensity: 30 152 | resolutionScalingMode: 0 153 | resetResolutionOnWindowResize: 0 154 | androidSupportedAspectRatio: 1 155 | androidMaxAspectRatio: 2.1 156 | applicationIdentifier: 157 | Standalone: com.DefaultCompany.RTAS-AddInstance-Mesh 158 | buildNumber: 159 | Standalone: 0 160 | iPhone: 0 161 | tvOS: 0 162 | overrideDefaultApplicationIdentifier: 0 163 | AndroidBundleVersionCode: 1 164 | AndroidMinSdkVersion: 22 165 | AndroidTargetSdkVersion: 0 166 | AndroidPreferredInstallLocation: 1 167 | aotOptions: 168 | stripEngineCode: 1 169 | iPhoneStrippingLevel: 0 170 | iPhoneScriptCallOptimization: 0 171 | ForceInternetPermission: 0 172 | ForceSDCardPermission: 0 173 | CreateWallpaper: 0 174 | APKExpansionFiles: 0 175 | keepLoadedShadersAlive: 0 176 | StripUnusedMeshComponents: 1 177 | strictShaderVariantMatching: 0 178 | VertexChannelCompressionMask: 4054 179 | iPhoneSdkVersion: 988 180 | iOSTargetOSVersionString: 13.0 181 | tvOSSdkVersion: 0 182 | tvOSRequireExtendedGameController: 0 183 | tvOSTargetOSVersionString: 13.0 184 | uIPrerenderedIcon: 0 185 | uIRequiresPersistentWiFi: 0 186 | uIRequiresFullScreen: 1 187 | uIStatusBarHidden: 1 188 | uIExitOnSuspend: 0 189 | uIStatusBarStyle: 0 190 | appleTVSplashScreen: {fileID: 0} 191 | appleTVSplashScreen2x: {fileID: 0} 192 | tvOSSmallIconLayers: [] 193 | tvOSSmallIconLayers2x: [] 194 | tvOSLargeIconLayers: [] 195 | tvOSLargeIconLayers2x: [] 196 | tvOSTopShelfImageLayers: [] 197 | tvOSTopShelfImageLayers2x: [] 198 | tvOSTopShelfImageWideLayers: [] 199 | tvOSTopShelfImageWideLayers2x: [] 200 | iOSLaunchScreenType: 0 201 | iOSLaunchScreenPortrait: {fileID: 0} 202 | iOSLaunchScreenLandscape: {fileID: 0} 203 | iOSLaunchScreenBackgroundColor: 204 | serializedVersion: 2 205 | rgba: 0 206 | iOSLaunchScreenFillPct: 100 207 | iOSLaunchScreenSize: 100 208 | iOSLaunchScreenCustomXibPath: 209 | iOSLaunchScreeniPadType: 0 210 | iOSLaunchScreeniPadImage: {fileID: 0} 211 | iOSLaunchScreeniPadBackgroundColor: 212 | serializedVersion: 2 213 | rgba: 0 214 | iOSLaunchScreeniPadFillPct: 100 215 | iOSLaunchScreeniPadSize: 100 216 | iOSLaunchScreeniPadCustomXibPath: 217 | iOSLaunchScreenCustomStoryboardPath: 218 | iOSLaunchScreeniPadCustomStoryboardPath: 219 | iOSDeviceRequirements: [] 220 | iOSURLSchemes: [] 221 | macOSURLSchemes: [] 222 | iOSBackgroundModes: 0 223 | iOSMetalForceHardShadows: 0 224 | metalEditorSupport: 1 225 | metalAPIValidation: 1 226 | iOSRenderExtraFrameOnPause: 0 227 | iosCopyPluginsCodeInsteadOfSymlink: 0 228 | appleDeveloperTeamID: 229 | iOSManualSigningProvisioningProfileID: 230 | tvOSManualSigningProvisioningProfileID: 231 | iOSManualSigningProvisioningProfileType: 0 232 | tvOSManualSigningProvisioningProfileType: 0 233 | appleEnableAutomaticSigning: 0 234 | iOSRequireARKit: 0 235 | iOSAutomaticallyDetectAndAddCapabilities: 1 236 | appleEnableProMotion: 0 237 | shaderPrecisionModel: 0 238 | clonedFromGUID: c0afd0d1d80e3634a9dac47e8a0426ea 239 | templatePackageId: com.unity.template.3d@8.1.3 240 | templateDefaultScene: Assets/Scenes/SampleScene.unity 241 | useCustomMainManifest: 0 242 | useCustomLauncherManifest: 0 243 | useCustomMainGradleTemplate: 0 244 | useCustomLauncherGradleManifest: 0 245 | useCustomBaseGradleTemplate: 0 246 | useCustomGradlePropertiesTemplate: 0 247 | useCustomProguardFile: 0 248 | AndroidTargetArchitectures: 2 249 | AndroidTargetDevices: 0 250 | AndroidSplashScreenScale: 0 251 | androidSplashScreen: {fileID: 0} 252 | AndroidKeystoreName: 253 | AndroidKeyaliasName: 254 | AndroidEnableArmv9SecurityFeatures: 0 255 | AndroidBuildApkPerCpuArchitecture: 0 256 | AndroidTVCompatibility: 0 257 | AndroidIsGame: 1 258 | AndroidEnableTango: 0 259 | androidEnableBanner: 1 260 | androidUseLowAccuracyLocation: 0 261 | androidUseCustomKeystore: 0 262 | m_AndroidBanners: 263 | - width: 320 264 | height: 180 265 | banner: {fileID: 0} 266 | androidGamepadSupportLevel: 0 267 | chromeosInputEmulation: 1 268 | AndroidMinifyRelease: 0 269 | AndroidMinifyDebug: 0 270 | AndroidValidateAppBundleSize: 1 271 | AndroidAppBundleSizeToValidate: 150 272 | m_BuildTargetIcons: [] 273 | m_BuildTargetPlatformIcons: [] 274 | m_BuildTargetBatching: 275 | - m_BuildTarget: Standalone 276 | m_StaticBatching: 1 277 | m_DynamicBatching: 0 278 | - m_BuildTarget: tvOS 279 | m_StaticBatching: 1 280 | m_DynamicBatching: 0 281 | - m_BuildTarget: Android 282 | m_StaticBatching: 1 283 | m_DynamicBatching: 0 284 | - m_BuildTarget: iPhone 285 | m_StaticBatching: 1 286 | m_DynamicBatching: 0 287 | - m_BuildTarget: WebGL 288 | m_StaticBatching: 0 289 | m_DynamicBatching: 0 290 | m_BuildTargetShaderSettings: [] 291 | m_BuildTargetGraphicsJobs: 292 | - m_BuildTarget: MacStandaloneSupport 293 | m_GraphicsJobs: 0 294 | - m_BuildTarget: Switch 295 | m_GraphicsJobs: 1 296 | - m_BuildTarget: MetroSupport 297 | m_GraphicsJobs: 1 298 | - m_BuildTarget: AppleTVSupport 299 | m_GraphicsJobs: 0 300 | - m_BuildTarget: BJMSupport 301 | m_GraphicsJobs: 1 302 | - m_BuildTarget: LinuxStandaloneSupport 303 | m_GraphicsJobs: 1 304 | - m_BuildTarget: PS4Player 305 | m_GraphicsJobs: 1 306 | - m_BuildTarget: iOSSupport 307 | m_GraphicsJobs: 0 308 | - m_BuildTarget: WindowsStandaloneSupport 309 | m_GraphicsJobs: 1 310 | - m_BuildTarget: XboxOnePlayer 311 | m_GraphicsJobs: 1 312 | - m_BuildTarget: LuminSupport 313 | m_GraphicsJobs: 0 314 | - m_BuildTarget: AndroidPlayer 315 | m_GraphicsJobs: 0 316 | - m_BuildTarget: WebGLSupport 317 | m_GraphicsJobs: 0 318 | m_BuildTargetGraphicsJobMode: 319 | - m_BuildTarget: PS4Player 320 | m_GraphicsJobMode: 0 321 | - m_BuildTarget: XboxOnePlayer 322 | m_GraphicsJobMode: 0 323 | m_BuildTargetGraphicsAPIs: 324 | - m_BuildTarget: AndroidPlayer 325 | m_APIs: 150000000b000000 326 | m_Automatic: 1 327 | - m_BuildTarget: iOSSupport 328 | m_APIs: 10000000 329 | m_Automatic: 1 330 | - m_BuildTarget: AppleTVSupport 331 | m_APIs: 10000000 332 | m_Automatic: 1 333 | - m_BuildTarget: WebGLSupport 334 | m_APIs: 0b000000 335 | m_Automatic: 1 336 | - m_BuildTarget: WindowsStandaloneSupport 337 | m_APIs: 1200000002000000 338 | m_Automatic: 0 339 | m_BuildTargetVRSettings: 340 | - m_BuildTarget: Standalone 341 | m_Enabled: 0 342 | m_Devices: 343 | - Oculus 344 | - OpenVR 345 | m_DefaultShaderChunkSizeInMB: 16 346 | m_DefaultShaderChunkCount: 0 347 | openGLRequireES31: 0 348 | openGLRequireES31AEP: 0 349 | openGLRequireES32: 0 350 | m_TemplateCustomTags: {} 351 | mobileMTRendering: 352 | Android: 1 353 | iPhone: 1 354 | tvOS: 1 355 | m_BuildTargetGroupLightmapEncodingQuality: 356 | - m_BuildTarget: Android 357 | m_EncodingQuality: 1 358 | - m_BuildTarget: iPhone 359 | m_EncodingQuality: 1 360 | - m_BuildTarget: tvOS 361 | m_EncodingQuality: 1 362 | m_BuildTargetGroupHDRCubemapEncodingQuality: 363 | - m_BuildTarget: Android 364 | m_EncodingQuality: 1 365 | - m_BuildTarget: iPhone 366 | m_EncodingQuality: 1 367 | - m_BuildTarget: tvOS 368 | m_EncodingQuality: 1 369 | m_BuildTargetGroupLightmapSettings: [] 370 | m_BuildTargetGroupLoadStoreDebugModeSettings: [] 371 | m_BuildTargetNormalMapEncoding: 372 | - m_BuildTarget: Android 373 | m_Encoding: 1 374 | - m_BuildTarget: iPhone 375 | m_Encoding: 1 376 | - m_BuildTarget: tvOS 377 | m_Encoding: 1 378 | m_BuildTargetDefaultTextureCompressionFormat: 379 | - m_BuildTarget: Android 380 | m_Format: 3 381 | playModeTestRunnerEnabled: 0 382 | runPlayModeTestAsEditModeTest: 0 383 | actionOnDotNetUnhandledException: 1 384 | enableInternalProfiler: 0 385 | logObjCUncaughtExceptions: 1 386 | enableCrashReportAPI: 0 387 | cameraUsageDescription: 388 | locationUsageDescription: 389 | microphoneUsageDescription: 390 | bluetoothUsageDescription: 391 | macOSTargetOSVersion: 10.13.0 392 | switchNMETAOverride: 393 | switchNetLibKey: 394 | switchSocketMemoryPoolSize: 6144 395 | switchSocketAllocatorPoolSize: 128 396 | switchSocketConcurrencyLimit: 14 397 | switchScreenResolutionBehavior: 2 398 | switchUseCPUProfiler: 0 399 | switchUseGOLDLinker: 0 400 | switchLTOSetting: 0 401 | switchApplicationID: 0x01004b9000490000 402 | switchNSODependencies: 403 | switchCompilerFlags: 404 | switchTitleNames_0: 405 | switchTitleNames_1: 406 | switchTitleNames_2: 407 | switchTitleNames_3: 408 | switchTitleNames_4: 409 | switchTitleNames_5: 410 | switchTitleNames_6: 411 | switchTitleNames_7: 412 | switchTitleNames_8: 413 | switchTitleNames_9: 414 | switchTitleNames_10: 415 | switchTitleNames_11: 416 | switchTitleNames_12: 417 | switchTitleNames_13: 418 | switchTitleNames_14: 419 | switchTitleNames_15: 420 | switchPublisherNames_0: 421 | switchPublisherNames_1: 422 | switchPublisherNames_2: 423 | switchPublisherNames_3: 424 | switchPublisherNames_4: 425 | switchPublisherNames_5: 426 | switchPublisherNames_6: 427 | switchPublisherNames_7: 428 | switchPublisherNames_8: 429 | switchPublisherNames_9: 430 | switchPublisherNames_10: 431 | switchPublisherNames_11: 432 | switchPublisherNames_12: 433 | switchPublisherNames_13: 434 | switchPublisherNames_14: 435 | switchPublisherNames_15: 436 | switchIcons_0: {fileID: 0} 437 | switchIcons_1: {fileID: 0} 438 | switchIcons_2: {fileID: 0} 439 | switchIcons_3: {fileID: 0} 440 | switchIcons_4: {fileID: 0} 441 | switchIcons_5: {fileID: 0} 442 | switchIcons_6: {fileID: 0} 443 | switchIcons_7: {fileID: 0} 444 | switchIcons_8: {fileID: 0} 445 | switchIcons_9: {fileID: 0} 446 | switchIcons_10: {fileID: 0} 447 | switchIcons_11: {fileID: 0} 448 | switchIcons_12: {fileID: 0} 449 | switchIcons_13: {fileID: 0} 450 | switchIcons_14: {fileID: 0} 451 | switchIcons_15: {fileID: 0} 452 | switchSmallIcons_0: {fileID: 0} 453 | switchSmallIcons_1: {fileID: 0} 454 | switchSmallIcons_2: {fileID: 0} 455 | switchSmallIcons_3: {fileID: 0} 456 | switchSmallIcons_4: {fileID: 0} 457 | switchSmallIcons_5: {fileID: 0} 458 | switchSmallIcons_6: {fileID: 0} 459 | switchSmallIcons_7: {fileID: 0} 460 | switchSmallIcons_8: {fileID: 0} 461 | switchSmallIcons_9: {fileID: 0} 462 | switchSmallIcons_10: {fileID: 0} 463 | switchSmallIcons_11: {fileID: 0} 464 | switchSmallIcons_12: {fileID: 0} 465 | switchSmallIcons_13: {fileID: 0} 466 | switchSmallIcons_14: {fileID: 0} 467 | switchSmallIcons_15: {fileID: 0} 468 | switchManualHTML: 469 | switchAccessibleURLs: 470 | switchLegalInformation: 471 | switchMainThreadStackSize: 1048576 472 | switchPresenceGroupId: 473 | switchLogoHandling: 0 474 | switchReleaseVersion: 0 475 | switchDisplayVersion: 1.0.0 476 | switchStartupUserAccount: 0 477 | switchTouchScreenUsage: 0 478 | switchSupportedLanguagesMask: 0 479 | switchLogoType: 0 480 | switchApplicationErrorCodeCategory: 481 | switchUserAccountSaveDataSize: 0 482 | switchUserAccountSaveDataJournalSize: 0 483 | switchApplicationAttribute: 0 484 | switchCardSpecSize: -1 485 | switchCardSpecClock: -1 486 | switchRatingsMask: 0 487 | switchRatingsInt_0: 0 488 | switchRatingsInt_1: 0 489 | switchRatingsInt_2: 0 490 | switchRatingsInt_3: 0 491 | switchRatingsInt_4: 0 492 | switchRatingsInt_5: 0 493 | switchRatingsInt_6: 0 494 | switchRatingsInt_7: 0 495 | switchRatingsInt_8: 0 496 | switchRatingsInt_9: 0 497 | switchRatingsInt_10: 0 498 | switchRatingsInt_11: 0 499 | switchRatingsInt_12: 0 500 | switchLocalCommunicationIds_0: 501 | switchLocalCommunicationIds_1: 502 | switchLocalCommunicationIds_2: 503 | switchLocalCommunicationIds_3: 504 | switchLocalCommunicationIds_4: 505 | switchLocalCommunicationIds_5: 506 | switchLocalCommunicationIds_6: 507 | switchLocalCommunicationIds_7: 508 | switchParentalControl: 0 509 | switchAllowsScreenshot: 1 510 | switchAllowsVideoCapturing: 1 511 | switchAllowsRuntimeAddOnContentInstall: 0 512 | switchDataLossConfirmation: 0 513 | switchUserAccountLockEnabled: 0 514 | switchSystemResourceMemory: 16777216 515 | switchSupportedNpadStyles: 22 516 | switchNativeFsCacheSize: 32 517 | switchIsHoldTypeHorizontal: 0 518 | switchSupportedNpadCount: 8 519 | switchSocketConfigEnabled: 0 520 | switchTcpInitialSendBufferSize: 32 521 | switchTcpInitialReceiveBufferSize: 64 522 | switchTcpAutoSendBufferSizeMax: 256 523 | switchTcpAutoReceiveBufferSizeMax: 256 524 | switchUdpSendBufferSize: 9 525 | switchUdpReceiveBufferSize: 42 526 | switchSocketBufferEfficiency: 4 527 | switchSocketInitializeEnabled: 1 528 | switchNetworkInterfaceManagerInitializeEnabled: 1 529 | switchPlayerConnectionEnabled: 1 530 | switchUseNewStyleFilepaths: 1 531 | switchUseLegacyFmodPriorities: 0 532 | switchUseMicroSleepForYield: 1 533 | switchEnableRamDiskSupport: 0 534 | switchMicroSleepForYieldTime: 25 535 | switchRamDiskSpaceSize: 12 536 | ps4NPAgeRating: 12 537 | ps4NPTitleSecret: 538 | ps4NPTrophyPackPath: 539 | ps4ParentalLevel: 11 540 | ps4ContentID: ED1633-NPXX51362_00-0000000000000000 541 | ps4Category: 0 542 | ps4MasterVersion: 01.00 543 | ps4AppVersion: 01.00 544 | ps4AppType: 0 545 | ps4ParamSfxPath: 546 | ps4VideoOutPixelFormat: 0 547 | ps4VideoOutInitialWidth: 1920 548 | ps4VideoOutBaseModeInitialWidth: 1920 549 | ps4VideoOutReprojectionRate: 60 550 | ps4PronunciationXMLPath: 551 | ps4PronunciationSIGPath: 552 | ps4BackgroundImagePath: 553 | ps4StartupImagePath: 554 | ps4StartupImagesFolder: 555 | ps4IconImagesFolder: 556 | ps4SaveDataImagePath: 557 | ps4SdkOverride: 558 | ps4BGMPath: 559 | ps4ShareFilePath: 560 | ps4ShareOverlayImagePath: 561 | ps4PrivacyGuardImagePath: 562 | ps4ExtraSceSysFile: 563 | ps4NPtitleDatPath: 564 | ps4RemotePlayKeyAssignment: -1 565 | ps4RemotePlayKeyMappingDir: 566 | ps4PlayTogetherPlayerCount: 0 567 | ps4EnterButtonAssignment: 1 568 | ps4ApplicationParam1: 0 569 | ps4ApplicationParam2: 0 570 | ps4ApplicationParam3: 0 571 | ps4ApplicationParam4: 0 572 | ps4DownloadDataSize: 0 573 | ps4GarlicHeapSize: 2048 574 | ps4ProGarlicHeapSize: 2560 575 | playerPrefsMaxSize: 32768 576 | ps4Passcode: frAQBc8Wsa1xVPfvJcrgRYwTiizs2trQ 577 | ps4pnSessions: 1 578 | ps4pnPresence: 1 579 | ps4pnFriends: 1 580 | ps4pnGameCustomData: 1 581 | playerPrefsSupport: 0 582 | enableApplicationExit: 0 583 | resetTempFolder: 1 584 | restrictedAudioUsageRights: 0 585 | ps4UseResolutionFallback: 0 586 | ps4ReprojectionSupport: 0 587 | ps4UseAudio3dBackend: 0 588 | ps4UseLowGarlicFragmentationMode: 1 589 | ps4SocialScreenEnabled: 0 590 | ps4ScriptOptimizationLevel: 0 591 | ps4Audio3dVirtualSpeakerCount: 14 592 | ps4attribCpuUsage: 0 593 | ps4PatchPkgPath: 594 | ps4PatchLatestPkgPath: 595 | ps4PatchChangeinfoPath: 596 | ps4PatchDayOne: 0 597 | ps4attribUserManagement: 0 598 | ps4attribMoveSupport: 0 599 | ps4attrib3DSupport: 0 600 | ps4attribShareSupport: 0 601 | ps4attribExclusiveVR: 0 602 | ps4disableAutoHideSplash: 0 603 | ps4videoRecordingFeaturesUsed: 0 604 | ps4contentSearchFeaturesUsed: 0 605 | ps4CompatibilityPS5: 0 606 | ps4AllowPS5Detection: 0 607 | ps4GPU800MHz: 1 608 | ps4attribEyeToEyeDistanceSettingVR: 0 609 | ps4IncludedModules: [] 610 | ps4attribVROutputEnabled: 0 611 | monoEnv: 612 | splashScreenBackgroundSourceLandscape: {fileID: 0} 613 | splashScreenBackgroundSourcePortrait: {fileID: 0} 614 | blurSplashScreenBackground: 1 615 | spritePackerPolicy: 616 | webGLMemorySize: 16 617 | webGLExceptionSupport: 1 618 | webGLNameFilesAsHashes: 0 619 | webGLShowDiagnostics: 0 620 | webGLDataCaching: 1 621 | webGLDebugSymbols: 0 622 | webGLEmscriptenArgs: 623 | webGLModulesDirectory: 624 | webGLTemplate: APPLICATION:Default 625 | webGLAnalyzeBuildSize: 0 626 | webGLUseEmbeddedResources: 0 627 | webGLCompressionFormat: 1 628 | webGLWasmArithmeticExceptions: 0 629 | webGLLinkerTarget: 1 630 | webGLThreadsSupport: 0 631 | webGLDecompressionFallback: 0 632 | webGLInitialMemorySize: 32 633 | webGLMaximumMemorySize: 2048 634 | webGLMemoryGrowthMode: 2 635 | webGLMemoryLinearGrowthStep: 16 636 | webGLMemoryGeometricGrowthStep: 0.2 637 | webGLMemoryGeometricGrowthCap: 96 638 | webGLPowerPreference: 2 639 | scriptingDefineSymbols: {} 640 | additionalCompilerArguments: {} 641 | platformArchitecture: {} 642 | scriptingBackend: 643 | Android: 1 644 | il2cppCompilerConfiguration: {} 645 | il2cppCodeGeneration: {} 646 | managedStrippingLevel: {} 647 | incrementalIl2cppBuild: {} 648 | suppressCommonWarnings: 1 649 | allowUnsafeCode: 0 650 | useDeterministicCompilation: 1 651 | selectedPlatform: 0 652 | additionalIl2CppArgs: 653 | scriptingRuntimeVersion: 1 654 | gcIncremental: 1 655 | gcWBarrierValidation: 0 656 | apiCompatibilityLevelPerPlatform: {} 657 | m_RenderingPath: 1 658 | m_MobileRenderingPath: 1 659 | metroPackageName: RTAS_AddInstance_Mesh 660 | metroPackageVersion: 661 | metroCertificatePath: 662 | metroCertificatePassword: 663 | metroCertificateSubject: 664 | metroCertificateIssuer: 665 | metroCertificateNotAfter: 0000000000000000 666 | metroApplicationDescription: RTAS_AddInstance_Mesh 667 | wsaImages: {} 668 | metroTileShortName: 669 | metroTileShowName: 0 670 | metroMediumTileShowName: 0 671 | metroLargeTileShowName: 0 672 | metroWideTileShowName: 0 673 | metroSupportStreamingInstall: 0 674 | metroLastRequiredScene: 0 675 | metroDefaultTileSize: 1 676 | metroTileForegroundText: 2 677 | metroTileBackgroundColor: {r: 0.13333334, g: 0.17254902, b: 0.21568628, a: 0} 678 | metroSplashScreenBackgroundColor: {r: 0.12941177, g: 0.17254902, b: 0.21568628, a: 1} 679 | metroSplashScreenUseBackgroundColor: 0 680 | platformCapabilities: {} 681 | metroTargetDeviceFamilies: {} 682 | metroFTAName: 683 | metroFTAFileTypes: [] 684 | metroProtocolName: 685 | vcxProjDefaultLanguage: 686 | XboxOneProductId: 687 | XboxOneUpdateKey: 688 | XboxOneSandboxId: 689 | XboxOneContentId: 690 | XboxOneTitleId: 691 | XboxOneSCId: 692 | XboxOneGameOsOverridePath: 693 | XboxOnePackagingOverridePath: 694 | XboxOneAppManifestOverridePath: 695 | XboxOneVersion: 1.0.0.0 696 | XboxOnePackageEncryption: 0 697 | XboxOnePackageUpdateGranularity: 2 698 | XboxOneDescription: 699 | XboxOneLanguage: 700 | - enus 701 | XboxOneCapability: [] 702 | XboxOneGameRating: {} 703 | XboxOneIsContentPackage: 0 704 | XboxOneEnhancedXboxCompatibilityMode: 0 705 | XboxOneEnableGPUVariability: 1 706 | XboxOneSockets: {} 707 | XboxOneSplashScreen: {fileID: 0} 708 | XboxOneAllowedProductIds: [] 709 | XboxOnePersistentLocalStorageSize: 0 710 | XboxOneXTitleMemory: 8 711 | XboxOneOverrideIdentityName: 712 | XboxOneOverrideIdentityPublisher: 713 | vrEditorSettings: {} 714 | cloudServicesEnabled: 715 | UNet: 1 716 | luminIcon: 717 | m_Name: 718 | m_ModelFolderPath: 719 | m_PortalFolderPath: 720 | luminCert: 721 | m_CertPath: 722 | m_SignPackage: 1 723 | luminIsChannelApp: 0 724 | luminVersion: 725 | m_VersionCode: 1 726 | m_VersionName: 727 | hmiPlayerDataPath: 728 | hmiForceSRGBBlit: 1 729 | embeddedLinuxEnableGamepadInput: 1 730 | hmiCpuConfiguration: 731 | apiCompatibilityLevel: 6 732 | activeInputHandler: 0 733 | windowsGamepadBackendHint: 0 734 | cloudProjectId: 735 | framebufferDepthMemorylessMode: 0 736 | qualitySettingsNames: [] 737 | projectName: 738 | organizationId: 739 | cloudEnabled: 0 740 | legacyClampBlendShapeWeights: 0 741 | hmiLoadingImage: {fileID: 0} 742 | virtualTexturingSupportEnabled: 0 743 | insecureHttpOption: 0 744 | -------------------------------------------------------------------------------- /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: 5 8 | m_QualitySettings: 9 | - serializedVersion: 3 10 | name: Very Low 11 | pixelLightCount: 0 12 | shadows: 0 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: 0 21 | skinWeights: 1 22 | globalTextureMipmapLimit: 1 23 | textureMipmapLimitSettings: [] 24 | anisotropicTextures: 0 25 | antiAliasing: 0 26 | softParticles: 0 27 | softVegetation: 0 28 | realtimeReflectionProbes: 0 29 | billboardsFaceCameraPosition: 0 30 | useLegacyDetailDistribution: 1 31 | vSyncCount: 0 32 | lodBias: 0.3 33 | maximumLODLevel: 0 34 | enableLODCrossFade: 1 35 | streamingMipmapsActive: 0 36 | streamingMipmapsAddAllCameras: 1 37 | streamingMipmapsMemoryBudget: 512 38 | streamingMipmapsRenderersPerFrame: 512 39 | streamingMipmapsMaxLevelReduction: 2 40 | streamingMipmapsMaxFileIORequests: 1024 41 | particleRaycastBudget: 4 42 | asyncUploadTimeSlice: 2 43 | asyncUploadBufferSize: 16 44 | asyncUploadPersistentBuffer: 1 45 | resolutionScalingFixedDPIFactor: 1 46 | customRenderPipeline: {fileID: 0} 47 | terrainQualityOverrides: 0 48 | terrainPixelError: 1 49 | terrainDetailDensityScale: 1 50 | terrainBasemapDistance: 1000 51 | terrainDetailDistance: 80 52 | terrainTreeDistance: 5000 53 | terrainBillboardStart: 50 54 | terrainFadeLength: 5 55 | terrainMaxTrees: 50 56 | excludedTargetPlatforms: [] 57 | - serializedVersion: 3 58 | name: Low 59 | pixelLightCount: 0 60 | shadows: 0 61 | shadowResolution: 0 62 | shadowProjection: 1 63 | shadowCascades: 1 64 | shadowDistance: 20 65 | shadowNearPlaneOffset: 3 66 | shadowCascade2Split: 0.33333334 67 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} 68 | shadowmaskMode: 0 69 | skinWeights: 2 70 | globalTextureMipmapLimit: 0 71 | textureMipmapLimitSettings: [] 72 | anisotropicTextures: 0 73 | antiAliasing: 0 74 | softParticles: 0 75 | softVegetation: 0 76 | realtimeReflectionProbes: 0 77 | billboardsFaceCameraPosition: 0 78 | useLegacyDetailDistribution: 1 79 | vSyncCount: 0 80 | lodBias: 0.4 81 | maximumLODLevel: 0 82 | enableLODCrossFade: 1 83 | streamingMipmapsActive: 0 84 | streamingMipmapsAddAllCameras: 1 85 | streamingMipmapsMemoryBudget: 512 86 | streamingMipmapsRenderersPerFrame: 512 87 | streamingMipmapsMaxLevelReduction: 2 88 | streamingMipmapsMaxFileIORequests: 1024 89 | particleRaycastBudget: 16 90 | asyncUploadTimeSlice: 2 91 | asyncUploadBufferSize: 16 92 | asyncUploadPersistentBuffer: 1 93 | resolutionScalingFixedDPIFactor: 1 94 | customRenderPipeline: {fileID: 0} 95 | terrainQualityOverrides: 0 96 | terrainPixelError: 1 97 | terrainDetailDensityScale: 1 98 | terrainBasemapDistance: 1000 99 | terrainDetailDistance: 80 100 | terrainTreeDistance: 5000 101 | terrainBillboardStart: 50 102 | terrainFadeLength: 5 103 | terrainMaxTrees: 50 104 | excludedTargetPlatforms: [] 105 | - serializedVersion: 3 106 | name: Medium 107 | pixelLightCount: 1 108 | shadows: 1 109 | shadowResolution: 0 110 | shadowProjection: 1 111 | shadowCascades: 1 112 | shadowDistance: 20 113 | shadowNearPlaneOffset: 3 114 | shadowCascade2Split: 0.33333334 115 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} 116 | shadowmaskMode: 0 117 | skinWeights: 2 118 | globalTextureMipmapLimit: 0 119 | textureMipmapLimitSettings: [] 120 | anisotropicTextures: 1 121 | antiAliasing: 0 122 | softParticles: 0 123 | softVegetation: 0 124 | realtimeReflectionProbes: 0 125 | billboardsFaceCameraPosition: 0 126 | useLegacyDetailDistribution: 1 127 | vSyncCount: 1 128 | lodBias: 0.7 129 | maximumLODLevel: 0 130 | enableLODCrossFade: 1 131 | streamingMipmapsActive: 0 132 | streamingMipmapsAddAllCameras: 1 133 | streamingMipmapsMemoryBudget: 512 134 | streamingMipmapsRenderersPerFrame: 512 135 | streamingMipmapsMaxLevelReduction: 2 136 | streamingMipmapsMaxFileIORequests: 1024 137 | particleRaycastBudget: 64 138 | asyncUploadTimeSlice: 2 139 | asyncUploadBufferSize: 16 140 | asyncUploadPersistentBuffer: 1 141 | resolutionScalingFixedDPIFactor: 1 142 | customRenderPipeline: {fileID: 0} 143 | terrainQualityOverrides: 0 144 | terrainPixelError: 1 145 | terrainDetailDensityScale: 1 146 | terrainBasemapDistance: 1000 147 | terrainDetailDistance: 80 148 | terrainTreeDistance: 5000 149 | terrainBillboardStart: 50 150 | terrainFadeLength: 5 151 | terrainMaxTrees: 50 152 | excludedTargetPlatforms: [] 153 | - serializedVersion: 3 154 | name: High 155 | pixelLightCount: 2 156 | shadows: 2 157 | shadowResolution: 1 158 | shadowProjection: 1 159 | shadowCascades: 2 160 | shadowDistance: 40 161 | shadowNearPlaneOffset: 3 162 | shadowCascade2Split: 0.33333334 163 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} 164 | shadowmaskMode: 1 165 | skinWeights: 2 166 | globalTextureMipmapLimit: 0 167 | textureMipmapLimitSettings: [] 168 | anisotropicTextures: 1 169 | antiAliasing: 0 170 | softParticles: 0 171 | softVegetation: 1 172 | realtimeReflectionProbes: 1 173 | billboardsFaceCameraPosition: 1 174 | useLegacyDetailDistribution: 1 175 | vSyncCount: 1 176 | lodBias: 1 177 | maximumLODLevel: 0 178 | enableLODCrossFade: 1 179 | streamingMipmapsActive: 0 180 | streamingMipmapsAddAllCameras: 1 181 | streamingMipmapsMemoryBudget: 512 182 | streamingMipmapsRenderersPerFrame: 512 183 | streamingMipmapsMaxLevelReduction: 2 184 | streamingMipmapsMaxFileIORequests: 1024 185 | particleRaycastBudget: 256 186 | asyncUploadTimeSlice: 2 187 | asyncUploadBufferSize: 16 188 | asyncUploadPersistentBuffer: 1 189 | resolutionScalingFixedDPIFactor: 1 190 | customRenderPipeline: {fileID: 0} 191 | terrainQualityOverrides: 0 192 | terrainPixelError: 1 193 | terrainDetailDensityScale: 1 194 | terrainBasemapDistance: 1000 195 | terrainDetailDistance: 80 196 | terrainTreeDistance: 5000 197 | terrainBillboardStart: 50 198 | terrainFadeLength: 5 199 | terrainMaxTrees: 50 200 | excludedTargetPlatforms: [] 201 | - serializedVersion: 3 202 | name: Very High 203 | pixelLightCount: 3 204 | shadows: 2 205 | shadowResolution: 2 206 | shadowProjection: 1 207 | shadowCascades: 2 208 | shadowDistance: 70 209 | shadowNearPlaneOffset: 3 210 | shadowCascade2Split: 0.33333334 211 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} 212 | shadowmaskMode: 1 213 | skinWeights: 4 214 | globalTextureMipmapLimit: 0 215 | textureMipmapLimitSettings: [] 216 | anisotropicTextures: 2 217 | antiAliasing: 2 218 | softParticles: 1 219 | softVegetation: 1 220 | realtimeReflectionProbes: 1 221 | billboardsFaceCameraPosition: 1 222 | useLegacyDetailDistribution: 1 223 | vSyncCount: 1 224 | lodBias: 1.5 225 | maximumLODLevel: 0 226 | enableLODCrossFade: 1 227 | streamingMipmapsActive: 0 228 | streamingMipmapsAddAllCameras: 1 229 | streamingMipmapsMemoryBudget: 512 230 | streamingMipmapsRenderersPerFrame: 512 231 | streamingMipmapsMaxLevelReduction: 2 232 | streamingMipmapsMaxFileIORequests: 1024 233 | particleRaycastBudget: 1024 234 | asyncUploadTimeSlice: 2 235 | asyncUploadBufferSize: 16 236 | asyncUploadPersistentBuffer: 1 237 | resolutionScalingFixedDPIFactor: 1 238 | customRenderPipeline: {fileID: 0} 239 | terrainQualityOverrides: 0 240 | terrainPixelError: 1 241 | terrainDetailDensityScale: 1 242 | terrainBasemapDistance: 1000 243 | terrainDetailDistance: 80 244 | terrainTreeDistance: 5000 245 | terrainBillboardStart: 50 246 | terrainFadeLength: 5 247 | terrainMaxTrees: 50 248 | excludedTargetPlatforms: [] 249 | - serializedVersion: 3 250 | name: Ultra 251 | pixelLightCount: 4 252 | shadows: 2 253 | shadowResolution: 2 254 | shadowProjection: 1 255 | shadowCascades: 4 256 | shadowDistance: 150 257 | shadowNearPlaneOffset: 3 258 | shadowCascade2Split: 0.33333334 259 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} 260 | shadowmaskMode: 1 261 | skinWeights: 4 262 | globalTextureMipmapLimit: 0 263 | textureMipmapLimitSettings: [] 264 | anisotropicTextures: 2 265 | antiAliasing: 2 266 | softParticles: 1 267 | softVegetation: 1 268 | realtimeReflectionProbes: 1 269 | billboardsFaceCameraPosition: 1 270 | useLegacyDetailDistribution: 1 271 | vSyncCount: 1 272 | lodBias: 2 273 | maximumLODLevel: 0 274 | enableLODCrossFade: 1 275 | streamingMipmapsActive: 0 276 | streamingMipmapsAddAllCameras: 1 277 | streamingMipmapsMemoryBudget: 512 278 | streamingMipmapsRenderersPerFrame: 512 279 | streamingMipmapsMaxLevelReduction: 2 280 | streamingMipmapsMaxFileIORequests: 1024 281 | particleRaycastBudget: 4096 282 | asyncUploadTimeSlice: 2 283 | asyncUploadBufferSize: 16 284 | asyncUploadPersistentBuffer: 1 285 | resolutionScalingFixedDPIFactor: 1 286 | customRenderPipeline: {fileID: 0} 287 | terrainQualityOverrides: 0 288 | terrainPixelError: 1 289 | terrainDetailDensityScale: 1 290 | terrainBasemapDistance: 1000 291 | terrainDetailDistance: 80 292 | terrainTreeDistance: 5000 293 | terrainBillboardStart: 50 294 | terrainFadeLength: 5 295 | terrainMaxTrees: 50 296 | excludedTargetPlatforms: [] 297 | m_TextureMipmapLimitGroupNames: [] 298 | m_PerPlatformDefaultQuality: 299 | Android: 2 300 | GameCoreScarlett: 5 301 | GameCoreXboxOne: 5 302 | Lumin: 5 303 | Nintendo 3DS: 5 304 | Nintendo Switch: 5 305 | PS4: 5 306 | PS5: 5 307 | Stadia: 5 308 | Standalone: 5 309 | WebGL: 3 310 | Windows Store Apps: 5 311 | XboxOne: 5 312 | iPhone: 2 313 | tvOS: 2 314 | -------------------------------------------------------------------------------- /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/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: 0} 7 | m_CopyBufferShader: {fileID: 0} 8 | m_SortShader: {fileID: 0} 9 | m_StripUpdateShader: {fileID: 0} 10 | m_RenderPipeSettingsPath: 11 | m_FixedTimeStep: 0.016666668 12 | m_MaxDeltaTime: 0.05 13 | -------------------------------------------------------------------------------- /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 | } -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # RayTracingDynamicMeshGeometry 2 | Unity sample project using dynamic Mesh geometries in a RayTracingAccelerationStructure (RTAS). 3 | 4 | 5 | 6 | ## Description 7 | The project uses [RayTracingAccelerationStructure.AddInstance](https://docs.unity3d.com/2023.1/Documentation/ScriptReference/Rendering.RayTracingAccelerationStructure.AddInstance.html) function to add ray tracing instances that use dynamic geometries to the RTAS. The function signature used is: 8 | 9 | `int AddInstance(ref Rendering.RayTracingMeshInstanceConfig config, Matrix4x4 matrix, Nullable prevMatrix, uint id);` 10 | \ 11 | \ 12 | There are 2 dynamic Meshes in the Scene - the left Mesh is animated on the CPU in C# while the right one on the GPU in a [compute shader](Assets/Shaders/WaveMeshAnimation.compute). Check [MeshInstanceDynamicGeometry.cs](Assets/Scripts/MeshInstanceDynamicGeometry.cs). After animation, [CommandBuffer.BuildRayTracingAccelerationStructure](https://docs.unity3d.com/2023.1/Documentation/ScriptReference/Rendering.CommandBuffer.BuildRayTracingAccelerationStructure.html) is called where the acceleration structures (BLAS) associated with the 2 geometries are built on the GPU. 13 | 14 | The ray generation shader in [MeshInstanceDynamicGeometry.raytrace](Assets/Shaders/MeshInstanceDynamicGeometry.raytrace) casts the rays into the view frustum by calling [TraceRay](https://learn.microsoft.com/en-us/windows/win32/direct3d12/traceray-function) and generates the resulting image into a RenderTexture which is displayed in the Game View output. 15 | 16 | The hit shader used by the 2 geometries is [MeshInstanceDynamicGeometry.shader](Assets/Shaders/MeshInstanceDynamicGeometry.shader), second SubShader. 17 | 18 | After opening the project, switch to Game view and press Play to animate the geometries. 19 | 20 | ## Prerequisites 21 | 22 | * Windows 10 version 1809 and above. 23 | * GPU supporting Ray Tracing ([SystemInfo.supportsRayTracing](https://docs.unity3d.com/2023.1/Documentation/ScriptReference/SystemInfo-supportsRayTracing.html) must be true). 24 | * Unity 2023.1.0a3+. 25 | 26 | ## Resources 27 | * [DirectX Raytracing (DXR) specs](https://microsoft.github.io/DirectX-Specs/d3d/Raytracing.html) 28 | * [Unity Forum](https://forum.unity.com) 29 | -------------------------------------------------------------------------------- /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: 5a5757560101590a5d0c0e24427b5d44434e4c7a7b7a23677f2b4565b7b5353a 10 | flags: 0 11 | vcSharedLogLevel: 12 | value: 0d5e400f0650 13 | flags: 0 14 | m_VCAutomaticAdd: 1 15 | m_VCDebugCom: 0 16 | m_VCDebugCmd: 0 17 | m_VCDebugOut: 0 18 | m_SemanticMergeMode: 2 19 | m_DesiredImportWorkerCount: 6 20 | m_StandbyImportWorkerCount: 2 21 | m_IdleImportWorkerShutdownDelay: 60000 22 | m_VCShowFailedCheckout: 1 23 | m_VCOverwriteFailedCheckoutAssets: 1 24 | m_VCProjectOverlayIcons: 1 25 | m_VCHierarchyOverlayIcons: 1 26 | m_VCOtherOverlayIcons: 1 27 | m_VCAllowAsyncUpdate: 1 28 | m_ArtifactGarbageCollection: 1 29 | -------------------------------------------------------------------------------- /UserSettings/Layouts/CurrentMaximizeLayout.dwlt: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!114 &1 4 | MonoBehaviour: 5 | m_ObjectHideFlags: 52 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: 1 12 | m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0} 13 | m_Name: 14 | m_EditorClassIdentifier: 15 | m_Children: 16 | - {fileID: 3} 17 | - {fileID: 12} 18 | m_Position: 19 | serializedVersion: 2 20 | x: 0 21 | y: 30 22 | width: 2560 23 | height: 1307 24 | m_MinSize: {x: 300, y: 100} 25 | m_MaxSize: {x: 24288, y: 16192} 26 | vertical: 0 27 | controlID: 120 28 | --- !u!114 &2 29 | MonoBehaviour: 30 | m_ObjectHideFlags: 52 31 | m_CorrespondingSourceObject: {fileID: 0} 32 | m_PrefabInstance: {fileID: 0} 33 | m_PrefabAsset: {fileID: 0} 34 | m_GameObject: {fileID: 0} 35 | m_Enabled: 1 36 | m_EditorHideFlags: 1 37 | m_Script: {fileID: 12014, guid: 0000000000000000e000000000000000, type: 0} 38 | m_Name: 39 | m_EditorClassIdentifier: 40 | m_MinSize: {x: 230, y: 250} 41 | m_MaxSize: {x: 10000, y: 10000} 42 | m_TitleContent: 43 | m_Text: Project 44 | m_Image: {fileID: -5467254957812901981, guid: 0000000000000000d000000000000000, type: 0} 45 | m_Tooltip: 46 | m_Pos: 47 | serializedVersion: 2 48 | x: 0 49 | y: 847 50 | width: 1954 51 | height: 512 52 | m_ViewDataDictionary: {fileID: 0} 53 | m_OverlayCanvas: 54 | m_LastAppliedPresetName: Default 55 | m_SaveData: [] 56 | m_SearchFilter: 57 | m_NameFilter: 58 | m_ClassNames: [] 59 | m_AssetLabels: [] 60 | m_AssetBundleNames: [] 61 | m_VersionControlStates: [] 62 | m_SoftLockControlStates: [] 63 | m_ReferencingInstanceIDs: 64 | m_SceneHandles: 65 | m_ShowAllHits: 0 66 | m_SkipHidden: 0 67 | m_SearchArea: 1 68 | m_Folders: 69 | - Assets 70 | m_Globs: [] 71 | m_ProductIds: 72 | m_AnyWithAssetOrigin: 0 73 | m_OriginalText: 74 | m_ImportLogFlags: 0 75 | m_ViewMode: 1 76 | m_StartGridSize: 16 77 | m_LastFolders: 78 | - Assets 79 | m_LastFoldersGridSize: 16 80 | m_LastProjectPath: C:\Users\ionut\Desktop\RTAS_AddInstance_Mesh 81 | m_LockTracker: 82 | m_IsLocked: 0 83 | m_FolderTreeState: 84 | scrollPos: {x: 0, y: 0} 85 | m_SelectedIDs: 54590000 86 | m_LastClickedID: 22868 87 | m_ExpandedIDs: 000000005459000000ca9a3bffffff7f 88 | m_RenameOverlay: 89 | m_UserAcceptedRename: 0 90 | m_Name: 91 | m_OriginalName: 92 | m_EditFieldRect: 93 | serializedVersion: 2 94 | x: 0 95 | y: 0 96 | width: 0 97 | height: 0 98 | m_UserData: 0 99 | m_IsWaitingForDelay: 0 100 | m_IsRenaming: 0 101 | m_OriginalEventType: 11 102 | m_IsRenamingFilename: 1 103 | m_ClientGUIView: {fileID: 0} 104 | m_SearchString: 105 | m_CreateAssetUtility: 106 | m_EndAction: {fileID: 0} 107 | m_InstanceID: 0 108 | m_Path: 109 | m_Icon: {fileID: 0} 110 | m_ResourceFile: 111 | m_AssetTreeState: 112 | scrollPos: {x: 0, y: 0} 113 | m_SelectedIDs: 114 | m_LastClickedID: 0 115 | m_ExpandedIDs: 0000000054590000 116 | m_RenameOverlay: 117 | m_UserAcceptedRename: 0 118 | m_Name: 119 | m_OriginalName: 120 | m_EditFieldRect: 121 | serializedVersion: 2 122 | x: 0 123 | y: 0 124 | width: 0 125 | height: 0 126 | m_UserData: 0 127 | m_IsWaitingForDelay: 0 128 | m_IsRenaming: 0 129 | m_OriginalEventType: 11 130 | m_IsRenamingFilename: 1 131 | m_ClientGUIView: {fileID: 0} 132 | m_SearchString: 133 | m_CreateAssetUtility: 134 | m_EndAction: {fileID: 0} 135 | m_InstanceID: 0 136 | m_Path: 137 | m_Icon: {fileID: 0} 138 | m_ResourceFile: 139 | m_ListAreaState: 140 | m_SelectedInstanceIDs: 141 | m_LastClickedInstanceID: 0 142 | m_HadKeyboardFocusLastEvent: 0 143 | m_ExpandedInstanceIDs: c6230000 144 | m_RenameOverlay: 145 | m_UserAcceptedRename: 0 146 | m_Name: 147 | m_OriginalName: 148 | m_EditFieldRect: 149 | serializedVersion: 2 150 | x: 0 151 | y: 0 152 | width: 0 153 | height: 0 154 | m_UserData: 0 155 | m_IsWaitingForDelay: 0 156 | m_IsRenaming: 0 157 | m_OriginalEventType: 11 158 | m_IsRenamingFilename: 1 159 | m_ClientGUIView: {fileID: 10} 160 | m_CreateAssetUtility: 161 | m_EndAction: {fileID: 0} 162 | m_InstanceID: 0 163 | m_Path: 164 | m_Icon: {fileID: 0} 165 | m_ResourceFile: 166 | m_NewAssetIndexInList: -1 167 | m_ScrollPosition: {x: 0, y: 0} 168 | m_GridSize: 16 169 | m_SkipHiddenPackages: 0 170 | m_DirectoriesAreaWidth: 207 171 | --- !u!114 &3 172 | MonoBehaviour: 173 | m_ObjectHideFlags: 52 174 | m_CorrespondingSourceObject: {fileID: 0} 175 | m_PrefabInstance: {fileID: 0} 176 | m_PrefabAsset: {fileID: 0} 177 | m_GameObject: {fileID: 0} 178 | m_Enabled: 1 179 | m_EditorHideFlags: 1 180 | m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0} 181 | m_Name: 182 | m_EditorClassIdentifier: 183 | m_Children: 184 | - {fileID: 4} 185 | - {fileID: 10} 186 | m_Position: 187 | serializedVersion: 2 188 | x: 0 189 | y: 0 190 | width: 1955 191 | height: 1307 192 | m_MinSize: {x: 200, y: 100} 193 | m_MaxSize: {x: 16192, y: 16192} 194 | vertical: 1 195 | controlID: 121 196 | --- !u!114 &4 197 | MonoBehaviour: 198 | m_ObjectHideFlags: 52 199 | m_CorrespondingSourceObject: {fileID: 0} 200 | m_PrefabInstance: {fileID: 0} 201 | m_PrefabAsset: {fileID: 0} 202 | m_GameObject: {fileID: 0} 203 | m_Enabled: 1 204 | m_EditorHideFlags: 1 205 | m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0} 206 | m_Name: 207 | m_EditorClassIdentifier: 208 | m_Children: 209 | - {fileID: 5} 210 | - {fileID: 7} 211 | m_Position: 212 | serializedVersion: 2 213 | x: 0 214 | y: 0 215 | width: 1955 216 | height: 774 217 | m_MinSize: {x: 200, y: 50} 218 | m_MaxSize: {x: 16192, y: 8096} 219 | vertical: 0 220 | controlID: 40 221 | --- !u!114 &5 222 | MonoBehaviour: 223 | m_ObjectHideFlags: 52 224 | m_CorrespondingSourceObject: {fileID: 0} 225 | m_PrefabInstance: {fileID: 0} 226 | m_PrefabAsset: {fileID: 0} 227 | m_GameObject: {fileID: 0} 228 | m_Enabled: 1 229 | m_EditorHideFlags: 1 230 | m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} 231 | m_Name: 232 | m_EditorClassIdentifier: 233 | m_Children: [] 234 | m_Position: 235 | serializedVersion: 2 236 | x: 0 237 | y: 0 238 | width: 484 239 | height: 774 240 | m_MinSize: {x: 201, y: 221} 241 | m_MaxSize: {x: 4001, y: 4021} 242 | m_ActualView: {fileID: 6} 243 | m_Panes: 244 | - {fileID: 6} 245 | m_Selected: 0 246 | m_LastSelected: 0 247 | --- !u!114 &6 248 | MonoBehaviour: 249 | m_ObjectHideFlags: 52 250 | m_CorrespondingSourceObject: {fileID: 0} 251 | m_PrefabInstance: {fileID: 0} 252 | m_PrefabAsset: {fileID: 0} 253 | m_GameObject: {fileID: 0} 254 | m_Enabled: 1 255 | m_EditorHideFlags: 1 256 | m_Script: {fileID: 12061, guid: 0000000000000000e000000000000000, type: 0} 257 | m_Name: 258 | m_EditorClassIdentifier: 259 | m_MinSize: {x: 200, y: 200} 260 | m_MaxSize: {x: 4000, y: 4000} 261 | m_TitleContent: 262 | m_Text: Hierarchy 263 | m_Image: {fileID: 7966133145522015247, guid: 0000000000000000d000000000000000, type: 0} 264 | m_Tooltip: 265 | m_Pos: 266 | serializedVersion: 2 267 | x: 0 268 | y: 73 269 | width: 483 270 | height: 753 271 | m_ViewDataDictionary: {fileID: 0} 272 | m_OverlayCanvas: 273 | m_LastAppliedPresetName: Default 274 | m_SaveData: [] 275 | m_SceneHierarchy: 276 | m_TreeViewState: 277 | scrollPos: {x: 0, y: 0} 278 | m_SelectedIDs: 279 | m_LastClickedID: 0 280 | m_ExpandedIDs: 06fbffff 281 | m_RenameOverlay: 282 | m_UserAcceptedRename: 0 283 | m_Name: 284 | m_OriginalName: 285 | m_EditFieldRect: 286 | serializedVersion: 2 287 | x: 0 288 | y: 0 289 | width: 0 290 | height: 0 291 | m_UserData: 0 292 | m_IsWaitingForDelay: 0 293 | m_IsRenaming: 0 294 | m_OriginalEventType: 11 295 | m_IsRenamingFilename: 0 296 | m_ClientGUIView: {fileID: 5} 297 | m_SearchString: 298 | m_ExpandedScenes: [] 299 | m_CurrenRootInstanceID: 0 300 | m_LockTracker: 301 | m_IsLocked: 0 302 | m_CurrentSortingName: TransformSorting 303 | m_WindowGUID: 4c969a2b90040154d917609493e03593 304 | --- !u!114 &7 305 | MonoBehaviour: 306 | m_ObjectHideFlags: 52 307 | m_CorrespondingSourceObject: {fileID: 0} 308 | m_PrefabInstance: {fileID: 0} 309 | m_PrefabAsset: {fileID: 0} 310 | m_GameObject: {fileID: 0} 311 | m_Enabled: 1 312 | m_EditorHideFlags: 1 313 | m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} 314 | m_Name: GameView 315 | m_EditorClassIdentifier: 316 | m_Children: [] 317 | m_Position: 318 | serializedVersion: 2 319 | x: 484 320 | y: 0 321 | width: 1471 322 | height: 774 323 | m_MinSize: {x: 202, y: 221} 324 | m_MaxSize: {x: 4002, y: 4021} 325 | m_ActualView: {fileID: 9} 326 | m_Panes: 327 | - {fileID: 8} 328 | - {fileID: 9} 329 | m_Selected: 1 330 | m_LastSelected: 0 331 | --- !u!114 &8 332 | MonoBehaviour: 333 | m_ObjectHideFlags: 52 334 | m_CorrespondingSourceObject: {fileID: 0} 335 | m_PrefabInstance: {fileID: 0} 336 | m_PrefabAsset: {fileID: 0} 337 | m_GameObject: {fileID: 0} 338 | m_Enabled: 1 339 | m_EditorHideFlags: 1 340 | m_Script: {fileID: 12013, guid: 0000000000000000e000000000000000, type: 0} 341 | m_Name: 342 | m_EditorClassIdentifier: 343 | m_MinSize: {x: 200, y: 200} 344 | m_MaxSize: {x: 4000, y: 4000} 345 | m_TitleContent: 346 | m_Text: Scene 347 | m_Image: {fileID: 2593428753322112591, guid: 0000000000000000d000000000000000, type: 0} 348 | m_Tooltip: 349 | m_Pos: 350 | serializedVersion: 2 351 | x: 484 352 | y: 73 353 | width: 1469 354 | height: 753 355 | m_ViewDataDictionary: {fileID: 0} 356 | m_OverlayCanvas: 357 | m_LastAppliedPresetName: Default 358 | m_SaveData: 359 | - dockPosition: 0 360 | containerId: overlay-toolbar__top 361 | floating: 0 362 | collapsed: 0 363 | displayed: 1 364 | snapOffset: {x: 0, y: 0} 365 | snapOffsetDelta: {x: -24, y: -24} 366 | snapCorner: 3 367 | id: Tool Settings 368 | index: 0 369 | layout: 1 370 | size: {x: 0, y: 0} 371 | sizeOverridden: 0 372 | - dockPosition: 1 373 | containerId: overlay-toolbar__top 374 | floating: 0 375 | collapsed: 0 376 | displayed: 1 377 | snapOffset: {x: 24, y: 0} 378 | snapOffsetDelta: {x: 0, y: 0} 379 | snapCorner: 0 380 | id: unity-scene-view-toolbar 381 | index: 0 382 | layout: 1 383 | size: {x: 0, y: 0} 384 | sizeOverridden: 0 385 | - dockPosition: 1 386 | containerId: overlay-toolbar__top 387 | floating: 0 388 | collapsed: 0 389 | displayed: 0 390 | snapOffset: {x: 0, y: 0} 391 | snapOffsetDelta: {x: -24, y: 0} 392 | snapCorner: 1 393 | id: unity-search-toolbar 394 | index: 1 395 | layout: 1 396 | size: {x: 0, y: 0} 397 | sizeOverridden: 0 398 | - dockPosition: 0 399 | containerId: overlay-container--left 400 | floating: 0 401 | collapsed: 0 402 | displayed: 1 403 | snapOffset: {x: 24, y: 0} 404 | snapOffsetDelta: {x: 0, y: 0} 405 | snapCorner: 0 406 | id: unity-transform-toolbar 407 | index: 0 408 | layout: 2 409 | size: {x: 0, y: 0} 410 | sizeOverridden: 0 411 | - dockPosition: 0 412 | containerId: overlay-container--right 413 | floating: 0 414 | collapsed: 0 415 | displayed: 1 416 | snapOffset: {x: 67.5, y: 86} 417 | snapOffsetDelta: {x: 0, y: 0} 418 | snapCorner: 0 419 | id: Orientation 420 | index: 0 421 | layout: 4 422 | size: {x: 0, y: 0} 423 | sizeOverridden: 0 424 | - dockPosition: 0 425 | containerId: overlay-container--right 426 | floating: 0 427 | collapsed: 0 428 | displayed: 1 429 | snapOffset: {x: 24, y: 56} 430 | snapOffsetDelta: {x: 0, y: 0} 431 | snapCorner: 0 432 | id: unity-grid-and-snap-toolbar 433 | index: 1 434 | layout: 1 435 | size: {x: 0, y: 0} 436 | sizeOverridden: 0 437 | - dockPosition: 1 438 | containerId: overlay-container--right 439 | floating: 0 440 | collapsed: 0 441 | displayed: 0 442 | snapOffset: {x: 0, y: 0} 443 | snapOffsetDelta: {x: 24, y: 0} 444 | snapCorner: 0 445 | id: Scene View/Light Settings 446 | index: 0 447 | layout: 4 448 | size: {x: 0, y: 0} 449 | sizeOverridden: 0 450 | - dockPosition: 1 451 | containerId: overlay-container--right 452 | floating: 0 453 | collapsed: 0 454 | displayed: 0 455 | snapOffset: {x: 0, y: 0} 456 | snapOffsetDelta: {x: 0, y: 0} 457 | snapCorner: 0 458 | id: Scene View/Camera 459 | index: 1 460 | layout: 4 461 | size: {x: 0, y: 0} 462 | sizeOverridden: 0 463 | - dockPosition: 1 464 | containerId: overlay-container--right 465 | floating: 0 466 | collapsed: 0 467 | displayed: 0 468 | snapOffset: {x: 0, y: 0} 469 | snapOffsetDelta: {x: 24, y: 0} 470 | snapCorner: 0 471 | id: Scene View/Cloth Constraints 472 | index: 1 473 | layout: 4 474 | size: {x: 0, y: 0} 475 | sizeOverridden: 0 476 | - dockPosition: 1 477 | containerId: overlay-container--right 478 | floating: 0 479 | collapsed: 0 480 | displayed: 0 481 | snapOffset: {x: 0, y: 0} 482 | snapOffsetDelta: {x: 24, y: 0} 483 | snapCorner: 0 484 | id: Scene View/Cloth Collisions 485 | index: 2 486 | layout: 4 487 | size: {x: 0, y: 0} 488 | sizeOverridden: 0 489 | - dockPosition: 1 490 | containerId: overlay-container--right 491 | floating: 0 492 | collapsed: 0 493 | displayed: 0 494 | snapOffset: {x: 0, y: 0} 495 | snapOffsetDelta: {x: 0, y: 0} 496 | snapCorner: 0 497 | id: Scene View/Navmesh Display 498 | index: 4 499 | layout: 4 500 | size: {x: 0, y: 0} 501 | sizeOverridden: 0 502 | - dockPosition: 1 503 | containerId: overlay-container--right 504 | floating: 0 505 | collapsed: 0 506 | displayed: 0 507 | snapOffset: {x: 0, y: 0} 508 | snapOffsetDelta: {x: 0, y: 0} 509 | snapCorner: 0 510 | id: Scene View/Agent Display 511 | index: 5 512 | layout: 4 513 | size: {x: 0, y: 0} 514 | sizeOverridden: 0 515 | - dockPosition: 1 516 | containerId: overlay-container--right 517 | floating: 0 518 | collapsed: 0 519 | displayed: 0 520 | snapOffset: {x: 0, y: 0} 521 | snapOffsetDelta: {x: 0, y: 0} 522 | snapCorner: 0 523 | id: Scene View/Obstacle Display 524 | index: 6 525 | layout: 4 526 | size: {x: 0, y: 0} 527 | sizeOverridden: 0 528 | - dockPosition: 1 529 | containerId: overlay-container--right 530 | floating: 0 531 | collapsed: 0 532 | displayed: 0 533 | snapOffset: {x: 0, y: 0} 534 | snapOffsetDelta: {x: 24, y: 0} 535 | snapCorner: 0 536 | id: Scene View/Occlusion Culling 537 | index: 3 538 | layout: 4 539 | size: {x: 0, y: 0} 540 | sizeOverridden: 0 541 | - dockPosition: 1 542 | containerId: overlay-container--right 543 | floating: 0 544 | collapsed: 0 545 | displayed: 0 546 | snapOffset: {x: 0, y: 0} 547 | snapOffsetDelta: {x: 24, y: 0} 548 | snapCorner: 0 549 | id: Scene View/Physics Debugger 550 | index: 4 551 | layout: 4 552 | size: {x: 0, y: 0} 553 | sizeOverridden: 0 554 | - dockPosition: 1 555 | containerId: overlay-container--right 556 | floating: 0 557 | collapsed: 0 558 | displayed: 0 559 | snapOffset: {x: 0, y: 0} 560 | snapOffsetDelta: {x: 24, y: 0} 561 | snapCorner: 0 562 | id: Scene View/Scene Visibility 563 | index: 5 564 | layout: 4 565 | size: {x: 0, y: 0} 566 | sizeOverridden: 0 567 | - dockPosition: 1 568 | containerId: overlay-container--right 569 | floating: 0 570 | collapsed: 0 571 | displayed: 1 572 | snapOffset: {x: 0, y: 0} 573 | snapOffsetDelta: {x: 0, y: 0} 574 | snapCorner: 0 575 | id: Scene View/Component Tools 576 | index: 10 577 | layout: 4 578 | size: {x: 0, y: 0} 579 | sizeOverridden: 0 580 | - dockPosition: 1 581 | containerId: overlay-container--right 582 | floating: 0 583 | collapsed: 0 584 | displayed: 0 585 | snapOffset: {x: 0, y: 0} 586 | snapOffsetDelta: {x: 24, y: 0} 587 | snapCorner: 0 588 | id: Scene View/Particles 589 | index: 6 590 | layout: 4 591 | size: {x: 0, y: 0} 592 | sizeOverridden: 0 593 | - dockPosition: 1 594 | containerId: overlay-container--right 595 | floating: 0 596 | collapsed: 0 597 | displayed: 0 598 | snapOffset: {x: 48, y: 48} 599 | snapOffsetDelta: {x: 0, y: 0} 600 | snapCorner: 0 601 | id: Scene View/TrailRenderer 602 | index: 7 603 | layout: 4 604 | size: {x: 0, y: 0} 605 | sizeOverridden: 0 606 | - dockPosition: 1 607 | containerId: overlay-container--right 608 | floating: 0 609 | collapsed: 0 610 | displayed: 0 611 | snapOffset: {x: 48, y: 48} 612 | snapOffsetDelta: {x: 0, y: 0} 613 | snapCorner: 0 614 | id: UnityEditor.SceneViewCameraOverlay 615 | index: 8 616 | layout: 4 617 | size: {x: 0, y: 0} 618 | sizeOverridden: 0 619 | m_WindowGUID: cc27987af1a868c49b0894db9c0f5429 620 | m_Gizmos: 1 621 | m_OverrideSceneCullingMask: 6917529027641081856 622 | m_SceneIsLit: 1 623 | m_SceneLighting: 1 624 | m_2DMode: 0 625 | m_isRotationLocked: 0 626 | m_PlayAudio: 0 627 | m_AudioPlay: 0 628 | m_Position: 629 | m_Target: {x: 8.638847, y: 5.6056356, z: -9.329044} 630 | speed: 2 631 | m_Value: {x: 8.638847, y: 5.6056356, z: -9.329044} 632 | m_RenderMode: 0 633 | m_CameraMode: 634 | drawMode: 0 635 | name: Shaded 636 | section: Shading Mode 637 | m_ValidateTrueMetals: 0 638 | m_DoValidateTrueMetals: 0 639 | m_SceneViewState: 640 | m_AlwaysRefresh: 0 641 | showFog: 1 642 | showSkybox: 1 643 | showFlares: 1 644 | showImageEffects: 1 645 | showParticleSystems: 1 646 | showVisualEffectGraphs: 1 647 | m_FxEnabled: 1 648 | m_Grid: 649 | xGrid: 650 | m_Fade: 651 | m_Target: 0 652 | speed: 2 653 | m_Value: 0 654 | m_Color: {r: 0.5, g: 0.5, b: 0.5, a: 0.4} 655 | m_Pivot: {x: 0, y: 0, z: 0} 656 | m_Size: {x: 0, y: 0} 657 | yGrid: 658 | m_Fade: 659 | m_Target: 1 660 | speed: 2 661 | m_Value: 1 662 | m_Color: {r: 0.5, g: 0.5, b: 0.5, a: 0.4} 663 | m_Pivot: {x: 0, y: 0, z: 0} 664 | m_Size: {x: 1, y: 1} 665 | zGrid: 666 | m_Fade: 667 | m_Target: 0 668 | speed: 2 669 | m_Value: 0 670 | m_Color: {r: 0.5, g: 0.5, b: 0.5, a: 0.4} 671 | m_Pivot: {x: 0, y: 0, z: 0} 672 | m_Size: {x: 0, y: 0} 673 | m_ShowGrid: 1 674 | m_GridAxis: 1 675 | m_gridOpacity: 0.5 676 | m_Rotation: 677 | m_Target: {x: 0.17279448, y: 0.37213647, z: -0.07072456, w: 0.90920895} 678 | speed: 2 679 | m_Value: {x: 0.17279392, y: 0.37213528, z: -0.07072433, w: 0.90920603} 680 | m_Size: 681 | m_Target: 10 682 | speed: 2 683 | m_Value: 10 684 | m_Ortho: 685 | m_Target: 0 686 | speed: 2 687 | m_Value: 0 688 | m_CameraSettings: 689 | m_Speed: 1 690 | m_SpeedNormalized: 0.5 691 | m_SpeedMin: 0.001 692 | m_SpeedMax: 2 693 | m_EasingEnabled: 1 694 | m_EasingDuration: 0.4 695 | m_AccelerationEnabled: 1 696 | m_FieldOfViewHorizontalOrVertical: 60 697 | m_NearClip: 0.03 698 | m_FarClip: 10000 699 | m_DynamicClip: 1 700 | m_OcclusionCulling: 0 701 | m_LastSceneViewRotation: {x: 0, y: 0, z: 0, w: 0} 702 | m_LastSceneViewOrtho: 0 703 | m_ReplacementShader: {fileID: 0} 704 | m_ReplacementString: 705 | m_SceneVisActive: 1 706 | m_LastLockedObject: {fileID: 0} 707 | m_ViewIsLockedToObject: 0 708 | --- !u!114 &9 709 | MonoBehaviour: 710 | m_ObjectHideFlags: 52 711 | m_CorrespondingSourceObject: {fileID: 0} 712 | m_PrefabInstance: {fileID: 0} 713 | m_PrefabAsset: {fileID: 0} 714 | m_GameObject: {fileID: 0} 715 | m_Enabled: 1 716 | m_EditorHideFlags: 1 717 | m_Script: {fileID: 12015, guid: 0000000000000000e000000000000000, type: 0} 718 | m_Name: 719 | m_EditorClassIdentifier: 720 | m_MinSize: {x: 200, y: 200} 721 | m_MaxSize: {x: 4000, y: 4000} 722 | m_TitleContent: 723 | m_Text: Game 724 | m_Image: {fileID: -6423792434712278376, guid: 0000000000000000d000000000000000, type: 0} 725 | m_Tooltip: 726 | m_Pos: 727 | serializedVersion: 2 728 | x: 484 729 | y: 73 730 | width: 1469 731 | height: 753 732 | m_ViewDataDictionary: {fileID: 0} 733 | m_OverlayCanvas: 734 | m_LastAppliedPresetName: Default 735 | m_SaveData: [] 736 | m_SerializedViewNames: [] 737 | m_SerializedViewValues: [] 738 | m_PlayModeViewName: GameView 739 | m_ShowGizmos: 0 740 | m_TargetDisplay: 0 741 | m_ClearColor: {r: 0, g: 0, b: 0, a: 0} 742 | m_TargetSize: {x: 1469, y: 732} 743 | m_TextureFilterMode: 0 744 | m_TextureHideFlags: 61 745 | m_RenderIMGUI: 1 746 | m_EnterPlayModeBehavior: 0 747 | m_fullscreenMonitorIdx: 0 748 | m_playModeBehaviorIdx: 0 749 | m_UseMipMap: 0 750 | m_isFullscreen: 0 751 | m_suppressRenderingForFullscreen: 0 752 | m_VSyncEnabled: 0 753 | m_PlayFocused: 0 754 | m_Gizmos: 0 755 | m_Stats: 0 756 | m_SelectedSizes: 00000000000000000000000000000000000000000000000000000000000000000000000000000000 757 | m_ZoomArea: 758 | m_HRangeLocked: 0 759 | m_VRangeLocked: 0 760 | hZoomLockedByDefault: 0 761 | vZoomLockedByDefault: 0 762 | m_HBaseRangeMin: -734.5 763 | m_HBaseRangeMax: 734.5 764 | m_VBaseRangeMin: -366 765 | m_VBaseRangeMax: 366 766 | m_HAllowExceedBaseRangeMin: 1 767 | m_HAllowExceedBaseRangeMax: 1 768 | m_VAllowExceedBaseRangeMin: 1 769 | m_VAllowExceedBaseRangeMax: 1 770 | m_ScaleWithWindow: 0 771 | m_HSlider: 0 772 | m_VSlider: 0 773 | m_IgnoreScrollWheelUntilClicked: 0 774 | m_EnableMouseInput: 1 775 | m_EnableSliderZoomHorizontal: 0 776 | m_EnableSliderZoomVertical: 0 777 | m_UniformScale: 1 778 | m_UpDirection: 1 779 | m_DrawArea: 780 | serializedVersion: 2 781 | x: 0 782 | y: 21 783 | width: 1469 784 | height: 732 785 | m_Scale: {x: 1, y: 1} 786 | m_Translation: {x: 734.5, y: 366} 787 | m_MarginLeft: 0 788 | m_MarginRight: 0 789 | m_MarginTop: 0 790 | m_MarginBottom: 0 791 | m_LastShownAreaInsideMargins: 792 | serializedVersion: 2 793 | x: -734.5 794 | y: -366 795 | width: 1469 796 | height: 732 797 | m_MinimalGUI: 1 798 | m_defaultScale: 1 799 | m_LastWindowPixelSize: {x: 1469, y: 753} 800 | m_ClearInEditMode: 1 801 | m_NoCameraWarning: 1 802 | m_LowResolutionForAspectRatios: 01000000000000000000 803 | m_XRRenderMode: 0 804 | m_RenderTexture: {fileID: 0} 805 | m_showToolbar: 1 806 | m_showToolbarOnFullscreen: 0 807 | --- !u!114 &10 808 | MonoBehaviour: 809 | m_ObjectHideFlags: 52 810 | m_CorrespondingSourceObject: {fileID: 0} 811 | m_PrefabInstance: {fileID: 0} 812 | m_PrefabAsset: {fileID: 0} 813 | m_GameObject: {fileID: 0} 814 | m_Enabled: 1 815 | m_EditorHideFlags: 1 816 | m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} 817 | m_Name: ProjectBrowser 818 | m_EditorClassIdentifier: 819 | m_Children: [] 820 | m_Position: 821 | serializedVersion: 2 822 | x: 0 823 | y: 774 824 | width: 1955 825 | height: 533 826 | m_MinSize: {x: 231, y: 271} 827 | m_MaxSize: {x: 10001, y: 10021} 828 | m_ActualView: {fileID: 2} 829 | m_Panes: 830 | - {fileID: 2} 831 | - {fileID: 11} 832 | m_Selected: 0 833 | m_LastSelected: 1 834 | --- !u!114 &11 835 | MonoBehaviour: 836 | m_ObjectHideFlags: 52 837 | m_CorrespondingSourceObject: {fileID: 0} 838 | m_PrefabInstance: {fileID: 0} 839 | m_PrefabAsset: {fileID: 0} 840 | m_GameObject: {fileID: 0} 841 | m_Enabled: 1 842 | m_EditorHideFlags: 1 843 | m_Script: {fileID: 12003, guid: 0000000000000000e000000000000000, type: 0} 844 | m_Name: 845 | m_EditorClassIdentifier: 846 | m_MinSize: {x: 100, y: 100} 847 | m_MaxSize: {x: 4000, y: 4000} 848 | m_TitleContent: 849 | m_Text: Console 850 | m_Image: {fileID: -4327648978806127646, guid: 0000000000000000d000000000000000, type: 0} 851 | m_Tooltip: 852 | m_Pos: 853 | serializedVersion: 2 854 | x: 0 855 | y: 847 856 | width: 1954 857 | height: 512 858 | m_ViewDataDictionary: {fileID: 0} 859 | m_OverlayCanvas: 860 | m_LastAppliedPresetName: Default 861 | m_SaveData: [] 862 | --- !u!114 &12 863 | MonoBehaviour: 864 | m_ObjectHideFlags: 52 865 | m_CorrespondingSourceObject: {fileID: 0} 866 | m_PrefabInstance: {fileID: 0} 867 | m_PrefabAsset: {fileID: 0} 868 | m_GameObject: {fileID: 0} 869 | m_Enabled: 1 870 | m_EditorHideFlags: 1 871 | m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} 872 | m_Name: 873 | m_EditorClassIdentifier: 874 | m_Children: [] 875 | m_Position: 876 | serializedVersion: 2 877 | x: 1955 878 | y: 0 879 | width: 605 880 | height: 1307 881 | m_MinSize: {x: 276, y: 71} 882 | m_MaxSize: {x: 4001, y: 4021} 883 | m_ActualView: {fileID: 13} 884 | m_Panes: 885 | - {fileID: 13} 886 | m_Selected: 0 887 | m_LastSelected: 0 888 | --- !u!114 &13 889 | MonoBehaviour: 890 | m_ObjectHideFlags: 52 891 | m_CorrespondingSourceObject: {fileID: 0} 892 | m_PrefabInstance: {fileID: 0} 893 | m_PrefabAsset: {fileID: 0} 894 | m_GameObject: {fileID: 0} 895 | m_Enabled: 1 896 | m_EditorHideFlags: 1 897 | m_Script: {fileID: 12019, guid: 0000000000000000e000000000000000, type: 0} 898 | m_Name: 899 | m_EditorClassIdentifier: 900 | m_MinSize: {x: 275, y: 50} 901 | m_MaxSize: {x: 4000, y: 4000} 902 | m_TitleContent: 903 | m_Text: Inspector 904 | m_Image: {fileID: -2667387946076563598, guid: 0000000000000000d000000000000000, type: 0} 905 | m_Tooltip: 906 | m_Pos: 907 | serializedVersion: 2 908 | x: 1955 909 | y: 73 910 | width: 604 911 | height: 1286 912 | m_ViewDataDictionary: {fileID: 0} 913 | m_OverlayCanvas: 914 | m_LastAppliedPresetName: Default 915 | m_SaveData: [] 916 | m_ObjectsLockedBeforeSerialization: [] 917 | m_InstanceIDsLockedBeforeSerialization: 918 | m_PreviewResizer: 919 | m_CachedPref: 450 920 | m_ControlHash: -371814159 921 | m_PrefName: Preview_InspectorPreview 922 | m_LastInspectedObjectInstanceID: -1 923 | m_LastVerticalScrollValue: 0 924 | m_GlobalObjectId: 925 | m_InspectorMode: 0 926 | m_LastKnownEditModeDataMode: 0 927 | m_LastKnownPlayModeDataMode: 0 928 | m_LockTracker: 929 | m_IsLocked: 0 930 | m_PreviewWindow: {fileID: 0} 931 | -------------------------------------------------------------------------------- /UserSettings/Layouts/default-2023.dwlt: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!114 &1 4 | MonoBehaviour: 5 | m_ObjectHideFlags: 52 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: 1 12 | m_Script: {fileID: 12004, guid: 0000000000000000e000000000000000, type: 0} 13 | m_Name: 14 | m_EditorClassIdentifier: 15 | m_PixelRect: 16 | serializedVersion: 2 17 | x: 0 18 | y: 43 19 | width: 2560 20 | height: 1357 21 | m_ShowMode: 4 22 | m_Title: Project 23 | m_RootView: {fileID: 2} 24 | m_MinSize: {x: 875, y: 300} 25 | m_MaxSize: {x: 10000, y: 10000} 26 | m_Maximized: 1 27 | --- !u!114 &2 28 | MonoBehaviour: 29 | m_ObjectHideFlags: 52 30 | m_CorrespondingSourceObject: {fileID: 0} 31 | m_PrefabInstance: {fileID: 0} 32 | m_PrefabAsset: {fileID: 0} 33 | m_GameObject: {fileID: 0} 34 | m_Enabled: 1 35 | m_EditorHideFlags: 1 36 | m_Script: {fileID: 12008, guid: 0000000000000000e000000000000000, type: 0} 37 | m_Name: 38 | m_EditorClassIdentifier: 39 | m_Children: 40 | - {fileID: 3} 41 | - {fileID: 5} 42 | - {fileID: 4} 43 | m_Position: 44 | serializedVersion: 2 45 | x: 0 46 | y: 0 47 | width: 2560 48 | height: 1357 49 | m_MinSize: {x: 875, y: 300} 50 | m_MaxSize: {x: 10000, y: 10000} 51 | m_UseTopView: 1 52 | m_TopViewHeight: 30 53 | m_UseBottomView: 1 54 | m_BottomViewHeight: 20 55 | --- !u!114 &3 56 | MonoBehaviour: 57 | m_ObjectHideFlags: 52 58 | m_CorrespondingSourceObject: {fileID: 0} 59 | m_PrefabInstance: {fileID: 0} 60 | m_PrefabAsset: {fileID: 0} 61 | m_GameObject: {fileID: 0} 62 | m_Enabled: 1 63 | m_EditorHideFlags: 1 64 | m_Script: {fileID: 12011, guid: 0000000000000000e000000000000000, type: 0} 65 | m_Name: 66 | m_EditorClassIdentifier: 67 | m_Children: [] 68 | m_Position: 69 | serializedVersion: 2 70 | x: 0 71 | y: 0 72 | width: 2560 73 | height: 30 74 | m_MinSize: {x: 0, y: 0} 75 | m_MaxSize: {x: 0, y: 0} 76 | m_LastLoadedLayoutName: 77 | --- !u!114 &4 78 | MonoBehaviour: 79 | m_ObjectHideFlags: 52 80 | m_CorrespondingSourceObject: {fileID: 0} 81 | m_PrefabInstance: {fileID: 0} 82 | m_PrefabAsset: {fileID: 0} 83 | m_GameObject: {fileID: 0} 84 | m_Enabled: 1 85 | m_EditorHideFlags: 1 86 | m_Script: {fileID: 12042, guid: 0000000000000000e000000000000000, type: 0} 87 | m_Name: 88 | m_EditorClassIdentifier: 89 | m_Children: [] 90 | m_Position: 91 | serializedVersion: 2 92 | x: 0 93 | y: 1337 94 | width: 2560 95 | height: 20 96 | m_MinSize: {x: 0, y: 0} 97 | m_MaxSize: {x: 0, y: 0} 98 | --- !u!114 &5 99 | MonoBehaviour: 100 | m_ObjectHideFlags: 52 101 | m_CorrespondingSourceObject: {fileID: 0} 102 | m_PrefabInstance: {fileID: 0} 103 | m_PrefabAsset: {fileID: 0} 104 | m_GameObject: {fileID: 0} 105 | m_Enabled: 1 106 | m_EditorHideFlags: 1 107 | m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0} 108 | m_Name: 109 | m_EditorClassIdentifier: 110 | m_Children: 111 | - {fileID: 6} 112 | - {fileID: 11} 113 | m_Position: 114 | serializedVersion: 2 115 | x: 0 116 | y: 30 117 | width: 2560 118 | height: 1307 119 | m_MinSize: {x: 300, y: 100} 120 | m_MaxSize: {x: 24288, y: 16192} 121 | vertical: 0 122 | controlID: 18 123 | --- !u!114 &6 124 | MonoBehaviour: 125 | m_ObjectHideFlags: 52 126 | m_CorrespondingSourceObject: {fileID: 0} 127 | m_PrefabInstance: {fileID: 0} 128 | m_PrefabAsset: {fileID: 0} 129 | m_GameObject: {fileID: 0} 130 | m_Enabled: 1 131 | m_EditorHideFlags: 1 132 | m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0} 133 | m_Name: 134 | m_EditorClassIdentifier: 135 | m_Children: 136 | - {fileID: 7} 137 | - {fileID: 10} 138 | m_Position: 139 | serializedVersion: 2 140 | x: 0 141 | y: 0 142 | width: 1955 143 | height: 1307 144 | m_MinSize: {x: 200, y: 100} 145 | m_MaxSize: {x: 16192, y: 16192} 146 | vertical: 1 147 | controlID: 19 148 | --- !u!114 &7 149 | MonoBehaviour: 150 | m_ObjectHideFlags: 52 151 | m_CorrespondingSourceObject: {fileID: 0} 152 | m_PrefabInstance: {fileID: 0} 153 | m_PrefabAsset: {fileID: 0} 154 | m_GameObject: {fileID: 0} 155 | m_Enabled: 1 156 | m_EditorHideFlags: 1 157 | m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0} 158 | m_Name: 159 | m_EditorClassIdentifier: 160 | m_Children: 161 | - {fileID: 8} 162 | - {fileID: 9} 163 | m_Position: 164 | serializedVersion: 2 165 | x: 0 166 | y: 0 167 | width: 1955 168 | height: 774 169 | m_MinSize: {x: 200, y: 50} 170 | m_MaxSize: {x: 16192, y: 8096} 171 | vertical: 0 172 | controlID: 20 173 | --- !u!114 &8 174 | MonoBehaviour: 175 | m_ObjectHideFlags: 52 176 | m_CorrespondingSourceObject: {fileID: 0} 177 | m_PrefabInstance: {fileID: 0} 178 | m_PrefabAsset: {fileID: 0} 179 | m_GameObject: {fileID: 0} 180 | m_Enabled: 1 181 | m_EditorHideFlags: 1 182 | m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} 183 | m_Name: 184 | m_EditorClassIdentifier: 185 | m_Children: [] 186 | m_Position: 187 | serializedVersion: 2 188 | x: 0 189 | y: 0 190 | width: 484 191 | height: 774 192 | m_MinSize: {x: 201, y: 221} 193 | m_MaxSize: {x: 4001, y: 4021} 194 | m_ActualView: {fileID: 13} 195 | m_Panes: 196 | - {fileID: 13} 197 | m_Selected: 0 198 | m_LastSelected: 0 199 | --- !u!114 &9 200 | MonoBehaviour: 201 | m_ObjectHideFlags: 52 202 | m_CorrespondingSourceObject: {fileID: 0} 203 | m_PrefabInstance: {fileID: 0} 204 | m_PrefabAsset: {fileID: 0} 205 | m_GameObject: {fileID: 0} 206 | m_Enabled: 1 207 | m_EditorHideFlags: 1 208 | m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} 209 | m_Name: GameView 210 | m_EditorClassIdentifier: 211 | m_Children: [] 212 | m_Position: 213 | serializedVersion: 2 214 | x: 484 215 | y: 0 216 | width: 1471 217 | height: 774 218 | m_MinSize: {x: 202, y: 221} 219 | m_MaxSize: {x: 4002, y: 4021} 220 | m_ActualView: {fileID: 15} 221 | m_Panes: 222 | - {fileID: 14} 223 | - {fileID: 15} 224 | m_Selected: 1 225 | m_LastSelected: 0 226 | --- !u!114 &10 227 | MonoBehaviour: 228 | m_ObjectHideFlags: 52 229 | m_CorrespondingSourceObject: {fileID: 0} 230 | m_PrefabInstance: {fileID: 0} 231 | m_PrefabAsset: {fileID: 0} 232 | m_GameObject: {fileID: 0} 233 | m_Enabled: 1 234 | m_EditorHideFlags: 1 235 | m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} 236 | m_Name: ProjectBrowser 237 | m_EditorClassIdentifier: 238 | m_Children: [] 239 | m_Position: 240 | serializedVersion: 2 241 | x: 0 242 | y: 774 243 | width: 1955 244 | height: 533 245 | m_MinSize: {x: 231, y: 271} 246 | m_MaxSize: {x: 10001, y: 10021} 247 | m_ActualView: {fileID: 12} 248 | m_Panes: 249 | - {fileID: 12} 250 | - {fileID: 16} 251 | m_Selected: 0 252 | m_LastSelected: 1 253 | --- !u!114 &11 254 | MonoBehaviour: 255 | m_ObjectHideFlags: 52 256 | m_CorrespondingSourceObject: {fileID: 0} 257 | m_PrefabInstance: {fileID: 0} 258 | m_PrefabAsset: {fileID: 0} 259 | m_GameObject: {fileID: 0} 260 | m_Enabled: 1 261 | m_EditorHideFlags: 1 262 | m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} 263 | m_Name: 264 | m_EditorClassIdentifier: 265 | m_Children: [] 266 | m_Position: 267 | serializedVersion: 2 268 | x: 1955 269 | y: 0 270 | width: 605 271 | height: 1307 272 | m_MinSize: {x: 276, y: 71} 273 | m_MaxSize: {x: 4001, y: 4021} 274 | m_ActualView: {fileID: 17} 275 | m_Panes: 276 | - {fileID: 17} 277 | m_Selected: 0 278 | m_LastSelected: 0 279 | --- !u!114 &12 280 | MonoBehaviour: 281 | m_ObjectHideFlags: 52 282 | m_CorrespondingSourceObject: {fileID: 0} 283 | m_PrefabInstance: {fileID: 0} 284 | m_PrefabAsset: {fileID: 0} 285 | m_GameObject: {fileID: 0} 286 | m_Enabled: 1 287 | m_EditorHideFlags: 1 288 | m_Script: {fileID: 12014, guid: 0000000000000000e000000000000000, type: 0} 289 | m_Name: 290 | m_EditorClassIdentifier: 291 | m_MinSize: {x: 230, y: 250} 292 | m_MaxSize: {x: 10000, y: 10000} 293 | m_TitleContent: 294 | m_Text: Project 295 | m_Image: {fileID: -5467254957812901981, guid: 0000000000000000d000000000000000, type: 0} 296 | m_Tooltip: 297 | m_Pos: 298 | serializedVersion: 2 299 | x: 0 300 | y: 847 301 | width: 1954 302 | height: 512 303 | m_ViewDataDictionary: {fileID: 0} 304 | m_OverlayCanvas: 305 | m_LastAppliedPresetName: Default 306 | m_SaveData: [] 307 | m_SearchFilter: 308 | m_NameFilter: 309 | m_ClassNames: [] 310 | m_AssetLabels: [] 311 | m_AssetBundleNames: [] 312 | m_VersionControlStates: [] 313 | m_SoftLockControlStates: [] 314 | m_ReferencingInstanceIDs: 315 | m_SceneHandles: 316 | m_ShowAllHits: 0 317 | m_SkipHidden: 0 318 | m_SearchArea: 1 319 | m_Folders: 320 | - Assets/Scenes 321 | m_Globs: [] 322 | m_ProductIds: 323 | m_AnyWithAssetOrigin: 0 324 | m_OriginalText: 325 | m_ImportLogFlags: 0 326 | m_ViewMode: 1 327 | m_StartGridSize: 16 328 | m_LastFolders: 329 | - Assets/Scenes 330 | m_LastFoldersGridSize: 16 331 | m_LastProjectPath: C:\Users\ionut\Desktop\RayTracingDynamicMeshInstance 332 | m_LockTracker: 333 | m_IsLocked: 0 334 | m_FolderTreeState: 335 | scrollPos: {x: 0, y: 0} 336 | m_SelectedIDs: 00070000 337 | m_LastClickedID: 1792 338 | m_ExpandedIDs: 00000000f405000000ca9a3bffffff7f 339 | m_RenameOverlay: 340 | m_UserAcceptedRename: 0 341 | m_Name: 342 | m_OriginalName: 343 | m_EditFieldRect: 344 | serializedVersion: 2 345 | x: 0 346 | y: 0 347 | width: 0 348 | height: 0 349 | m_UserData: 0 350 | m_IsWaitingForDelay: 0 351 | m_IsRenaming: 0 352 | m_OriginalEventType: 11 353 | m_IsRenamingFilename: 1 354 | m_ClientGUIView: {fileID: 0} 355 | m_SearchString: 356 | m_CreateAssetUtility: 357 | m_EndAction: {fileID: 0} 358 | m_InstanceID: 0 359 | m_Path: 360 | m_Icon: {fileID: 0} 361 | m_ResourceFile: 362 | m_AssetTreeState: 363 | scrollPos: {x: 0, y: 0} 364 | m_SelectedIDs: 365 | m_LastClickedID: 0 366 | m_ExpandedIDs: 367 | m_RenameOverlay: 368 | m_UserAcceptedRename: 0 369 | m_Name: 370 | m_OriginalName: 371 | m_EditFieldRect: 372 | serializedVersion: 2 373 | x: 0 374 | y: 0 375 | width: 0 376 | height: 0 377 | m_UserData: 0 378 | m_IsWaitingForDelay: 0 379 | m_IsRenaming: 0 380 | m_OriginalEventType: 11 381 | m_IsRenamingFilename: 1 382 | m_ClientGUIView: {fileID: 0} 383 | m_SearchString: 384 | m_CreateAssetUtility: 385 | m_EndAction: {fileID: 0} 386 | m_InstanceID: 0 387 | m_Path: 388 | m_Icon: {fileID: 0} 389 | m_ResourceFile: 390 | m_ListAreaState: 391 | m_SelectedInstanceIDs: 392 | m_LastClickedInstanceID: 0 393 | m_HadKeyboardFocusLastEvent: 1 394 | m_ExpandedInstanceIDs: c6230000 395 | m_RenameOverlay: 396 | m_UserAcceptedRename: 0 397 | m_Name: 398 | m_OriginalName: 399 | m_EditFieldRect: 400 | serializedVersion: 2 401 | x: 0 402 | y: 0 403 | width: 0 404 | height: 0 405 | m_UserData: 0 406 | m_IsWaitingForDelay: 0 407 | m_IsRenaming: 0 408 | m_OriginalEventType: 11 409 | m_IsRenamingFilename: 1 410 | m_ClientGUIView: {fileID: 10} 411 | m_CreateAssetUtility: 412 | m_EndAction: {fileID: 0} 413 | m_InstanceID: 0 414 | m_Path: 415 | m_Icon: {fileID: 0} 416 | m_ResourceFile: 417 | m_NewAssetIndexInList: -1 418 | m_ScrollPosition: {x: 0, y: 0} 419 | m_GridSize: 16 420 | m_SkipHiddenPackages: 0 421 | m_DirectoriesAreaWidth: 207 422 | --- !u!114 &13 423 | MonoBehaviour: 424 | m_ObjectHideFlags: 52 425 | m_CorrespondingSourceObject: {fileID: 0} 426 | m_PrefabInstance: {fileID: 0} 427 | m_PrefabAsset: {fileID: 0} 428 | m_GameObject: {fileID: 0} 429 | m_Enabled: 1 430 | m_EditorHideFlags: 1 431 | m_Script: {fileID: 12061, guid: 0000000000000000e000000000000000, type: 0} 432 | m_Name: 433 | m_EditorClassIdentifier: 434 | m_MinSize: {x: 200, y: 200} 435 | m_MaxSize: {x: 4000, y: 4000} 436 | m_TitleContent: 437 | m_Text: Hierarchy 438 | m_Image: {fileID: 7966133145522015247, guid: 0000000000000000d000000000000000, type: 0} 439 | m_Tooltip: 440 | m_Pos: 441 | serializedVersion: 2 442 | x: 0 443 | y: 73 444 | width: 483 445 | height: 753 446 | m_ViewDataDictionary: {fileID: 0} 447 | m_OverlayCanvas: 448 | m_LastAppliedPresetName: Default 449 | m_SaveData: [] 450 | m_SceneHierarchy: 451 | m_TreeViewState: 452 | scrollPos: {x: 0, y: 0} 453 | m_SelectedIDs: 589c0000 454 | m_LastClickedID: 0 455 | m_ExpandedIDs: 9cd1feffd6d2feff 456 | m_RenameOverlay: 457 | m_UserAcceptedRename: 0 458 | m_Name: 459 | m_OriginalName: 460 | m_EditFieldRect: 461 | serializedVersion: 2 462 | x: 0 463 | y: 0 464 | width: 0 465 | height: 0 466 | m_UserData: 0 467 | m_IsWaitingForDelay: 0 468 | m_IsRenaming: 0 469 | m_OriginalEventType: 11 470 | m_IsRenamingFilename: 0 471 | m_ClientGUIView: {fileID: 8} 472 | m_SearchString: 473 | m_ExpandedScenes: [] 474 | m_CurrenRootInstanceID: 0 475 | m_LockTracker: 476 | m_IsLocked: 0 477 | m_CurrentSortingName: TransformSorting 478 | m_WindowGUID: 4c969a2b90040154d917609493e03593 479 | --- !u!114 &14 480 | MonoBehaviour: 481 | m_ObjectHideFlags: 52 482 | m_CorrespondingSourceObject: {fileID: 0} 483 | m_PrefabInstance: {fileID: 0} 484 | m_PrefabAsset: {fileID: 0} 485 | m_GameObject: {fileID: 0} 486 | m_Enabled: 1 487 | m_EditorHideFlags: 1 488 | m_Script: {fileID: 12013, guid: 0000000000000000e000000000000000, type: 0} 489 | m_Name: 490 | m_EditorClassIdentifier: 491 | m_MinSize: {x: 200, y: 200} 492 | m_MaxSize: {x: 4000, y: 4000} 493 | m_TitleContent: 494 | m_Text: Scene 495 | m_Image: {fileID: 2593428753322112591, guid: 0000000000000000d000000000000000, type: 0} 496 | m_Tooltip: 497 | m_Pos: 498 | serializedVersion: 2 499 | x: 484 500 | y: 73 501 | width: 1469 502 | height: 753 503 | m_ViewDataDictionary: {fileID: 0} 504 | m_OverlayCanvas: 505 | m_LastAppliedPresetName: Default 506 | m_SaveData: 507 | - dockPosition: 0 508 | containerId: overlay-toolbar__top 509 | floating: 0 510 | collapsed: 0 511 | displayed: 1 512 | snapOffset: {x: 0, y: 0} 513 | snapOffsetDelta: {x: -24, y: -24} 514 | snapCorner: 3 515 | id: Tool Settings 516 | index: 0 517 | layout: 1 518 | size: {x: 0, y: 0} 519 | sizeOverridden: 0 520 | - dockPosition: 1 521 | containerId: overlay-toolbar__top 522 | floating: 0 523 | collapsed: 0 524 | displayed: 1 525 | snapOffset: {x: 24, y: 0} 526 | snapOffsetDelta: {x: 0, y: 0} 527 | snapCorner: 0 528 | id: unity-scene-view-toolbar 529 | index: 0 530 | layout: 1 531 | size: {x: 0, y: 0} 532 | sizeOverridden: 0 533 | - dockPosition: 1 534 | containerId: overlay-toolbar__top 535 | floating: 0 536 | collapsed: 0 537 | displayed: 0 538 | snapOffset: {x: 0, y: 0} 539 | snapOffsetDelta: {x: -24, y: 0} 540 | snapCorner: 1 541 | id: unity-search-toolbar 542 | index: 1 543 | layout: 1 544 | size: {x: 0, y: 0} 545 | sizeOverridden: 0 546 | - dockPosition: 0 547 | containerId: overlay-container--left 548 | floating: 0 549 | collapsed: 0 550 | displayed: 1 551 | snapOffset: {x: 24, y: 0} 552 | snapOffsetDelta: {x: 0, y: 0} 553 | snapCorner: 0 554 | id: unity-transform-toolbar 555 | index: 0 556 | layout: 2 557 | size: {x: 0, y: 0} 558 | sizeOverridden: 0 559 | - dockPosition: 0 560 | containerId: overlay-container--right 561 | floating: 0 562 | collapsed: 0 563 | displayed: 1 564 | snapOffset: {x: 67.5, y: 86} 565 | snapOffsetDelta: {x: 0, y: 0} 566 | snapCorner: 0 567 | id: Orientation 568 | index: 0 569 | layout: 4 570 | size: {x: 0, y: 0} 571 | sizeOverridden: 0 572 | - dockPosition: 0 573 | containerId: overlay-container--right 574 | floating: 0 575 | collapsed: 0 576 | displayed: 1 577 | snapOffset: {x: 24, y: 56} 578 | snapOffsetDelta: {x: 0, y: 0} 579 | snapCorner: 0 580 | id: unity-grid-and-snap-toolbar 581 | index: 1 582 | layout: 1 583 | size: {x: 0, y: 0} 584 | sizeOverridden: 0 585 | - dockPosition: 1 586 | containerId: overlay-container--right 587 | floating: 0 588 | collapsed: 0 589 | displayed: 0 590 | snapOffset: {x: 0, y: 0} 591 | snapOffsetDelta: {x: 24, y: 0} 592 | snapCorner: 0 593 | id: Scene View/Light Settings 594 | index: 2 595 | layout: 4 596 | size: {x: 0, y: 0} 597 | sizeOverridden: 0 598 | - dockPosition: 1 599 | containerId: overlay-container--right 600 | floating: 0 601 | collapsed: 0 602 | displayed: 0 603 | snapOffset: {x: 0, y: 0} 604 | snapOffsetDelta: {x: 0, y: 0} 605 | snapCorner: 0 606 | id: Scene View/Camera 607 | index: 1 608 | layout: 4 609 | size: {x: 0, y: 0} 610 | sizeOverridden: 0 611 | - dockPosition: 1 612 | containerId: overlay-container--right 613 | floating: 0 614 | collapsed: 0 615 | displayed: 0 616 | snapOffset: {x: 0, y: 0} 617 | snapOffsetDelta: {x: 24, y: 0} 618 | snapCorner: 0 619 | id: Scene View/Cloth Constraints 620 | index: 3 621 | layout: 4 622 | size: {x: 0, y: 0} 623 | sizeOverridden: 0 624 | - dockPosition: 1 625 | containerId: overlay-container--right 626 | floating: 0 627 | collapsed: 0 628 | displayed: 0 629 | snapOffset: {x: 0, y: 0} 630 | snapOffsetDelta: {x: 24, y: 0} 631 | snapCorner: 0 632 | id: Scene View/Cloth Collisions 633 | index: 4 634 | layout: 4 635 | size: {x: 0, y: 0} 636 | sizeOverridden: 0 637 | - dockPosition: 1 638 | containerId: overlay-container--right 639 | floating: 0 640 | collapsed: 0 641 | displayed: 0 642 | snapOffset: {x: 0, y: 0} 643 | snapOffsetDelta: {x: 0, y: 0} 644 | snapCorner: 0 645 | id: Scene View/Navmesh Display 646 | index: 4 647 | layout: 4 648 | size: {x: 0, y: 0} 649 | sizeOverridden: 0 650 | - dockPosition: 1 651 | containerId: overlay-container--right 652 | floating: 0 653 | collapsed: 0 654 | displayed: 0 655 | snapOffset: {x: 0, y: 0} 656 | snapOffsetDelta: {x: 0, y: 0} 657 | snapCorner: 0 658 | id: Scene View/Agent Display 659 | index: 5 660 | layout: 4 661 | size: {x: 0, y: 0} 662 | sizeOverridden: 0 663 | - dockPosition: 1 664 | containerId: overlay-container--right 665 | floating: 0 666 | collapsed: 0 667 | displayed: 0 668 | snapOffset: {x: 0, y: 0} 669 | snapOffsetDelta: {x: 0, y: 0} 670 | snapCorner: 0 671 | id: Scene View/Obstacle Display 672 | index: 6 673 | layout: 4 674 | size: {x: 0, y: 0} 675 | sizeOverridden: 0 676 | - dockPosition: 1 677 | containerId: overlay-container--right 678 | floating: 0 679 | collapsed: 0 680 | displayed: 0 681 | snapOffset: {x: 0, y: 0} 682 | snapOffsetDelta: {x: 24, y: 0} 683 | snapCorner: 0 684 | id: Scene View/Occlusion Culling 685 | index: 5 686 | layout: 4 687 | size: {x: 0, y: 0} 688 | sizeOverridden: 0 689 | - dockPosition: 1 690 | containerId: overlay-container--right 691 | floating: 0 692 | collapsed: 0 693 | displayed: 0 694 | snapOffset: {x: 0, y: 0} 695 | snapOffsetDelta: {x: 24, y: 0} 696 | snapCorner: 0 697 | id: Scene View/Physics Debugger 698 | index: 6 699 | layout: 4 700 | size: {x: 0, y: 0} 701 | sizeOverridden: 0 702 | - dockPosition: 1 703 | containerId: overlay-container--right 704 | floating: 0 705 | collapsed: 0 706 | displayed: 0 707 | snapOffset: {x: 0, y: 0} 708 | snapOffsetDelta: {x: 24, y: 0} 709 | snapCorner: 0 710 | id: Scene View/Scene Visibility 711 | index: 7 712 | layout: 4 713 | size: {x: 0, y: 0} 714 | sizeOverridden: 0 715 | - dockPosition: 1 716 | containerId: overlay-container--right 717 | floating: 0 718 | collapsed: 0 719 | displayed: 1 720 | snapOffset: {x: 0, y: 0} 721 | snapOffsetDelta: {x: 0, y: 0} 722 | snapCorner: 0 723 | id: Scene View/Component Tools 724 | index: 10 725 | layout: 4 726 | size: {x: 0, y: 0} 727 | sizeOverridden: 0 728 | - dockPosition: 1 729 | containerId: overlay-container--right 730 | floating: 0 731 | collapsed: 0 732 | displayed: 0 733 | snapOffset: {x: 0, y: 0} 734 | snapOffsetDelta: {x: 24, y: 0} 735 | snapCorner: 0 736 | id: Scene View/Particles 737 | index: 8 738 | layout: 4 739 | size: {x: 0, y: 0} 740 | sizeOverridden: 0 741 | - dockPosition: 1 742 | containerId: overlay-container--right 743 | floating: 0 744 | collapsed: 0 745 | displayed: 0 746 | snapOffset: {x: 48, y: 48} 747 | snapOffsetDelta: {x: 0, y: 0} 748 | snapCorner: 0 749 | id: Scene View/TrailRenderer 750 | index: 9 751 | layout: 4 752 | size: {x: 0, y: 0} 753 | sizeOverridden: 0 754 | - dockPosition: 1 755 | containerId: overlay-container--right 756 | floating: 0 757 | collapsed: 0 758 | displayed: 0 759 | snapOffset: {x: 48, y: 48} 760 | snapOffsetDelta: {x: 0, y: 0} 761 | snapCorner: 0 762 | id: UnityEditor.SceneViewCameraOverlay 763 | index: 8 764 | layout: 4 765 | size: {x: 0, y: 0} 766 | sizeOverridden: 0 767 | - dockPosition: 1 768 | containerId: overlay-container--right 769 | floating: 0 770 | collapsed: 0 771 | displayed: 0 772 | snapOffset: {x: 48, y: 48} 773 | snapOffsetDelta: {x: 0, y: 0} 774 | snapCorner: 0 775 | id: Scene View/Open Tile Palette 776 | index: 0 777 | layout: 4 778 | size: {x: 0, y: 0} 779 | sizeOverridden: 0 780 | - dockPosition: 1 781 | containerId: overlay-container--right 782 | floating: 0 783 | collapsed: 0 784 | displayed: 0 785 | snapOffset: {x: 48, y: 48} 786 | snapOffsetDelta: {x: 0, y: 0} 787 | snapCorner: 0 788 | id: Scene View/Tilemap Focus 789 | index: 1 790 | layout: 4 791 | size: {x: 0, y: 0} 792 | sizeOverridden: 0 793 | - dockPosition: 1 794 | containerId: overlay-container--right 795 | floating: 0 796 | collapsed: 0 797 | displayed: 1 798 | snapOffset: {x: 48, y: 48} 799 | snapOffsetDelta: {x: 0, y: 0} 800 | snapCorner: 0 801 | id: NavigationOverlay 802 | index: 10 803 | layout: 4 804 | size: {x: 0, y: 0} 805 | sizeOverridden: 0 806 | m_WindowGUID: cc27987af1a868c49b0894db9c0f5429 807 | m_Gizmos: 1 808 | m_OverrideSceneCullingMask: 6917529027641081856 809 | m_SceneIsLit: 1 810 | m_SceneLighting: 1 811 | m_2DMode: 0 812 | m_isRotationLocked: 0 813 | m_PlayAudio: 0 814 | m_AudioPlay: 0 815 | m_Position: 816 | m_Target: {x: 8.638847, y: 5.6056356, z: -9.329044} 817 | speed: 2 818 | m_Value: {x: 8.638847, y: 5.6056356, z: -9.329044} 819 | m_RenderMode: 0 820 | m_CameraMode: 821 | drawMode: 0 822 | name: Shaded 823 | section: Shading Mode 824 | m_ValidateTrueMetals: 0 825 | m_DoValidateTrueMetals: 0 826 | m_SceneViewState: 827 | m_AlwaysRefresh: 0 828 | showFog: 1 829 | showSkybox: 1 830 | showFlares: 1 831 | showImageEffects: 1 832 | showParticleSystems: 1 833 | showVisualEffectGraphs: 1 834 | m_FxEnabled: 1 835 | m_Grid: 836 | xGrid: 837 | m_Fade: 838 | m_Target: 0 839 | speed: 2 840 | m_Value: 0 841 | m_Color: {r: 0.5, g: 0.5, b: 0.5, a: 0.4} 842 | m_Pivot: {x: 0, y: 0, z: 0} 843 | m_Size: {x: 0, y: 0} 844 | yGrid: 845 | m_Fade: 846 | m_Target: 1 847 | speed: 2 848 | m_Value: 1 849 | m_Color: {r: 0.5, g: 0.5, b: 0.5, a: 0.4} 850 | m_Pivot: {x: 0, y: 0, z: 0} 851 | m_Size: {x: 1, y: 1} 852 | zGrid: 853 | m_Fade: 854 | m_Target: 0 855 | speed: 2 856 | m_Value: 0 857 | m_Color: {r: 0.5, g: 0.5, b: 0.5, a: 0.4} 858 | m_Pivot: {x: 0, y: 0, z: 0} 859 | m_Size: {x: 0, y: 0} 860 | m_ShowGrid: 1 861 | m_GridAxis: 1 862 | m_gridOpacity: 0.5 863 | m_Rotation: 864 | m_Target: {x: 0.17279448, y: 0.37213647, z: -0.07072456, w: 0.90920895} 865 | speed: 2 866 | m_Value: {x: -0.17279448, y: -0.37213647, z: 0.07072456, w: -0.90920895} 867 | m_Size: 868 | m_Target: 10 869 | speed: 2 870 | m_Value: 10 871 | m_Ortho: 872 | m_Target: 0 873 | speed: 2 874 | m_Value: 0 875 | m_CameraSettings: 876 | m_Speed: 1 877 | m_SpeedNormalized: 0.5 878 | m_SpeedMin: 0.001 879 | m_SpeedMax: 2 880 | m_EasingEnabled: 1 881 | m_EasingDuration: 0.4 882 | m_AccelerationEnabled: 1 883 | m_FieldOfViewHorizontalOrVertical: 60 884 | m_NearClip: 0.03 885 | m_FarClip: 10000 886 | m_DynamicClip: 1 887 | m_OcclusionCulling: 0 888 | m_LastSceneViewRotation: {x: 0, y: 0, z: 0, w: 0} 889 | m_LastSceneViewOrtho: 0 890 | m_ReplacementShader: {fileID: 0} 891 | m_ReplacementString: 892 | m_SceneVisActive: 1 893 | m_LastLockedObject: {fileID: 0} 894 | m_ViewIsLockedToObject: 0 895 | --- !u!114 &15 896 | MonoBehaviour: 897 | m_ObjectHideFlags: 52 898 | m_CorrespondingSourceObject: {fileID: 0} 899 | m_PrefabInstance: {fileID: 0} 900 | m_PrefabAsset: {fileID: 0} 901 | m_GameObject: {fileID: 0} 902 | m_Enabled: 1 903 | m_EditorHideFlags: 1 904 | m_Script: {fileID: 12015, guid: 0000000000000000e000000000000000, type: 0} 905 | m_Name: 906 | m_EditorClassIdentifier: 907 | m_MinSize: {x: 200, y: 200} 908 | m_MaxSize: {x: 4000, y: 4000} 909 | m_TitleContent: 910 | m_Text: Game 911 | m_Image: {fileID: -6423792434712278376, guid: 0000000000000000d000000000000000, type: 0} 912 | m_Tooltip: 913 | m_Pos: 914 | serializedVersion: 2 915 | x: 484 916 | y: 73 917 | width: 1469 918 | height: 753 919 | m_ViewDataDictionary: {fileID: 0} 920 | m_OverlayCanvas: 921 | m_LastAppliedPresetName: Default 922 | m_SaveData: [] 923 | m_SerializedViewNames: [] 924 | m_SerializedViewValues: [] 925 | m_PlayModeViewName: GameView 926 | m_ShowGizmos: 0 927 | m_TargetDisplay: 0 928 | m_ClearColor: {r: 0, g: 0, b: 0, a: 0} 929 | m_TargetSize: {x: 1469, y: 732} 930 | m_TextureFilterMode: 0 931 | m_TextureHideFlags: 61 932 | m_RenderIMGUI: 1 933 | m_EnterPlayModeBehavior: 0 934 | m_fullscreenMonitorIdx: 0 935 | m_playModeBehaviorIdx: 0 936 | m_UseMipMap: 0 937 | m_isFullscreen: 0 938 | m_suppressRenderingForFullscreen: 0 939 | m_VSyncEnabled: 0 940 | m_PlayFocused: 0 941 | m_Gizmos: 0 942 | m_Stats: 0 943 | m_SelectedSizes: 00000000000000000000000000000000000000000000000000000000000000000000000000000000 944 | m_ZoomArea: 945 | m_HRangeLocked: 0 946 | m_VRangeLocked: 0 947 | hZoomLockedByDefault: 0 948 | vZoomLockedByDefault: 0 949 | m_HBaseRangeMin: -734.5 950 | m_HBaseRangeMax: 734.5 951 | m_VBaseRangeMin: -366 952 | m_VBaseRangeMax: 366 953 | m_HAllowExceedBaseRangeMin: 1 954 | m_HAllowExceedBaseRangeMax: 1 955 | m_VAllowExceedBaseRangeMin: 1 956 | m_VAllowExceedBaseRangeMax: 1 957 | m_ScaleWithWindow: 0 958 | m_HSlider: 0 959 | m_VSlider: 0 960 | m_IgnoreScrollWheelUntilClicked: 0 961 | m_EnableMouseInput: 1 962 | m_EnableSliderZoomHorizontal: 0 963 | m_EnableSliderZoomVertical: 0 964 | m_UniformScale: 1 965 | m_UpDirection: 1 966 | m_DrawArea: 967 | serializedVersion: 2 968 | x: 0 969 | y: 21 970 | width: 1469 971 | height: 732 972 | m_Scale: {x: 1, y: 1} 973 | m_Translation: {x: 734.5, y: 366} 974 | m_MarginLeft: 0 975 | m_MarginRight: 0 976 | m_MarginTop: 0 977 | m_MarginBottom: 0 978 | m_LastShownAreaInsideMargins: 979 | serializedVersion: 2 980 | x: -734.5 981 | y: -366 982 | width: 1469 983 | height: 732 984 | m_MinimalGUI: 1 985 | m_defaultScale: 1 986 | m_LastWindowPixelSize: {x: 1469, y: 753} 987 | m_ClearInEditMode: 1 988 | m_NoCameraWarning: 1 989 | m_LowResolutionForAspectRatios: 01000000000000000000 990 | m_XRRenderMode: 0 991 | m_RenderTexture: {fileID: 0} 992 | m_showToolbar: 1 993 | m_showToolbarOnFullscreen: 0 994 | --- !u!114 &16 995 | MonoBehaviour: 996 | m_ObjectHideFlags: 52 997 | m_CorrespondingSourceObject: {fileID: 0} 998 | m_PrefabInstance: {fileID: 0} 999 | m_PrefabAsset: {fileID: 0} 1000 | m_GameObject: {fileID: 0} 1001 | m_Enabled: 1 1002 | m_EditorHideFlags: 1 1003 | m_Script: {fileID: 12003, guid: 0000000000000000e000000000000000, type: 0} 1004 | m_Name: 1005 | m_EditorClassIdentifier: 1006 | m_MinSize: {x: 100, y: 100} 1007 | m_MaxSize: {x: 4000, y: 4000} 1008 | m_TitleContent: 1009 | m_Text: Console 1010 | m_Image: {fileID: -4327648978806127646, guid: 0000000000000000d000000000000000, type: 0} 1011 | m_Tooltip: 1012 | m_Pos: 1013 | serializedVersion: 2 1014 | x: 0 1015 | y: 847 1016 | width: 1954 1017 | height: 512 1018 | m_ViewDataDictionary: {fileID: 0} 1019 | m_OverlayCanvas: 1020 | m_LastAppliedPresetName: Default 1021 | m_SaveData: [] 1022 | --- !u!114 &17 1023 | MonoBehaviour: 1024 | m_ObjectHideFlags: 52 1025 | m_CorrespondingSourceObject: {fileID: 0} 1026 | m_PrefabInstance: {fileID: 0} 1027 | m_PrefabAsset: {fileID: 0} 1028 | m_GameObject: {fileID: 0} 1029 | m_Enabled: 1 1030 | m_EditorHideFlags: 1 1031 | m_Script: {fileID: 12019, guid: 0000000000000000e000000000000000, type: 0} 1032 | m_Name: 1033 | m_EditorClassIdentifier: 1034 | m_MinSize: {x: 275, y: 50} 1035 | m_MaxSize: {x: 4000, y: 4000} 1036 | m_TitleContent: 1037 | m_Text: Inspector 1038 | m_Image: {fileID: -2667387946076563598, guid: 0000000000000000d000000000000000, type: 0} 1039 | m_Tooltip: 1040 | m_Pos: 1041 | serializedVersion: 2 1042 | x: 1955 1043 | y: 73 1044 | width: 604 1045 | height: 1286 1046 | m_ViewDataDictionary: {fileID: 0} 1047 | m_OverlayCanvas: 1048 | m_LastAppliedPresetName: Default 1049 | m_SaveData: [] 1050 | m_ObjectsLockedBeforeSerialization: [] 1051 | m_InstanceIDsLockedBeforeSerialization: 1052 | m_PreviewResizer: 1053 | m_CachedPref: 450 1054 | m_ControlHash: -371814159 1055 | m_PrefName: Preview_InspectorPreview 1056 | m_LastInspectedObjectInstanceID: -1 1057 | m_LastVerticalScrollValue: 0 1058 | m_GlobalObjectId: 1059 | m_InspectorMode: 0 1060 | m_LastKnownEditModeDataMode: 0 1061 | m_LastKnownPlayModeDataMode: 0 1062 | m_LockTracker: 1063 | m_IsLocked: 0 1064 | m_PreviewWindow: {fileID: 0} 1065 | -------------------------------------------------------------------------------- /UserSettings/Search.settings: -------------------------------------------------------------------------------- 1 | {} --------------------------------------------------------------------------------