diff --git a/TestProjects/HDRP_DXR_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D12/None/702_PunctualShadowFiltering.png b/TestProjects/HDRP_DXR_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D12/None/702_PunctualShadowFiltering.png
index 728b68b56eb..ce9aac8e70c 100644
--- a/TestProjects/HDRP_DXR_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D12/None/702_PunctualShadowFiltering.png
+++ b/TestProjects/HDRP_DXR_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D12/None/702_PunctualShadowFiltering.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:ed9359dd1c1660e3206f576344eacd2bed71f4d21fd62bce78e1bbb52f3ef52a
-size 108105
+oid sha256:782d5704dae6fe7f8446e657970ec67756f1d998ce52e11b922f2318408ae7d7
+size 105699
diff --git a/TestProjects/HDRP_DXR_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D12/None/715_PointShadow_Matte_Edge.png b/TestProjects/HDRP_DXR_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D12/None/715_PointShadow_Matte_Edge.png
new file mode 100644
index 00000000000..5c2938666e3
--- /dev/null
+++ b/TestProjects/HDRP_DXR_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D12/None/715_PointShadow_Matte_Edge.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:5b743fae695ce57b700e3823c6bf915d5f51bb74fd57ef1b0031fc8d06ffb9a5
+size 16970
diff --git a/TestProjects/HDRP_DXR_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D12/None/715_PointShadow_Matte_Edge.png.meta b/TestProjects/HDRP_DXR_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D12/None/715_PointShadow_Matte_Edge.png.meta
new file mode 100644
index 00000000000..750d7c0446c
--- /dev/null
+++ b/TestProjects/HDRP_DXR_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D12/None/715_PointShadow_Matte_Edge.png.meta
@@ -0,0 +1,99 @@
+fileFormatVersion: 2
+guid: 3593eccd8ef504b498c02208e5a81852
+TextureImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 11
+ mipmaps:
+ mipMapMode: 0
+ enableMipMap: 0
+ sRGBTexture: 1
+ linearTexture: 0
+ fadeOut: 0
+ borderMipMap: 0
+ mipMapsPreserveCoverage: 0
+ alphaTestReferenceValue: 0.5
+ mipMapFadeDistanceStart: 1
+ mipMapFadeDistanceEnd: 3
+ bumpmap:
+ convertToNormalMap: 0
+ externalNormalMap: 0
+ heightScale: 0.25
+ normalMapFilter: 0
+ flipGreenChannel: 0
+ isReadable: 1
+ streamingMipmaps: 0
+ streamingMipmapsPriority: 0
+ vTOnly: 0
+ ignoreMasterTextureLimit: 0
+ grayScaleToAlpha: 0
+ generateCubemap: 6
+ cubemapConvolution: 0
+ seamlessCubemap: 0
+ textureFormat: 1
+ maxTextureSize: 2048
+ textureSettings:
+ serializedVersion: 2
+ filterMode: 1
+ aniso: 1
+ mipBias: 0
+ wrapU: 0
+ wrapV: 0
+ wrapW: 0
+ nPOTScale: 0
+ lightmap: 0
+ compressionQuality: 50
+ spriteMode: 0
+ spriteExtrude: 1
+ spriteMeshType: 1
+ alignment: 0
+ spritePivot: {x: 0.5, y: 0.5}
+ spritePixelsToUnits: 100
+ spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+ spriteGenerateFallbackPhysicsShape: 1
+ alphaUsage: 1
+ alphaIsTransparency: 0
+ spriteTessellationDetail: -1
+ textureType: 0
+ textureShape: 1
+ singleChannelComponent: 0
+ flipbookRows: 1
+ flipbookColumns: 1
+ maxTextureSizeSet: 0
+ compressionQualitySet: 0
+ textureFormatSet: 0
+ ignorePngGamma: 0
+ applyGammaDecoding: 0
+ swizzle: 50462976
+ platformSettings:
+ - serializedVersion: 3
+ buildTarget: DefaultTexturePlatform
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 0
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ spriteSheet:
+ serializedVersion: 2
+ sprites: []
+ outline: []
+ physicsShape: []
+ bones: []
+ spriteID:
+ internalID: 0
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ secondaryTextures: []
+ nameFileIdTable: {}
+ spritePackingTag:
+ pSDRemoveMatte: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/TestProjects/HDRP_DXR_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D12/None/716_SpotShadow_Matte_Edge.png b/TestProjects/HDRP_DXR_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D12/None/716_SpotShadow_Matte_Edge.png
new file mode 100644
index 00000000000..cdf9d9991d6
--- /dev/null
+++ b/TestProjects/HDRP_DXR_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D12/None/716_SpotShadow_Matte_Edge.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:30c9f4a242a0d8f94b1e3cc0a5ae24e52505a49317e6ed4af01481c5bc1e81ab
+size 14614
diff --git a/TestProjects/HDRP_DXR_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D12/None/716_SpotShadow_Matte_Edge.png.meta b/TestProjects/HDRP_DXR_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D12/None/716_SpotShadow_Matte_Edge.png.meta
new file mode 100644
index 00000000000..f72b2315c46
--- /dev/null
+++ b/TestProjects/HDRP_DXR_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D12/None/716_SpotShadow_Matte_Edge.png.meta
@@ -0,0 +1,99 @@
+fileFormatVersion: 2
+guid: f728e33123c836743abdeb057831a5af
+TextureImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 11
+ mipmaps:
+ mipMapMode: 0
+ enableMipMap: 0
+ sRGBTexture: 1
+ linearTexture: 0
+ fadeOut: 0
+ borderMipMap: 0
+ mipMapsPreserveCoverage: 0
+ alphaTestReferenceValue: 0.5
+ mipMapFadeDistanceStart: 1
+ mipMapFadeDistanceEnd: 3
+ bumpmap:
+ convertToNormalMap: 0
+ externalNormalMap: 0
+ heightScale: 0.25
+ normalMapFilter: 0
+ flipGreenChannel: 0
+ isReadable: 1
+ streamingMipmaps: 0
+ streamingMipmapsPriority: 0
+ vTOnly: 0
+ ignoreMasterTextureLimit: 0
+ grayScaleToAlpha: 0
+ generateCubemap: 6
+ cubemapConvolution: 0
+ seamlessCubemap: 0
+ textureFormat: 1
+ maxTextureSize: 2048
+ textureSettings:
+ serializedVersion: 2
+ filterMode: 1
+ aniso: 1
+ mipBias: 0
+ wrapU: 0
+ wrapV: 0
+ wrapW: 0
+ nPOTScale: 0
+ lightmap: 0
+ compressionQuality: 50
+ spriteMode: 0
+ spriteExtrude: 1
+ spriteMeshType: 1
+ alignment: 0
+ spritePivot: {x: 0.5, y: 0.5}
+ spritePixelsToUnits: 100
+ spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+ spriteGenerateFallbackPhysicsShape: 1
+ alphaUsage: 1
+ alphaIsTransparency: 0
+ spriteTessellationDetail: -1
+ textureType: 0
+ textureShape: 1
+ singleChannelComponent: 0
+ flipbookRows: 1
+ flipbookColumns: 1
+ maxTextureSizeSet: 0
+ compressionQualitySet: 0
+ textureFormatSet: 0
+ ignorePngGamma: 0
+ applyGammaDecoding: 0
+ swizzle: 50462976
+ platformSettings:
+ - serializedVersion: 3
+ buildTarget: DefaultTexturePlatform
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 0
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ spriteSheet:
+ serializedVersion: 2
+ sprites: []
+ outline: []
+ physicsShape: []
+ bones: []
+ spriteID:
+ internalID: 0
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ secondaryTextures: []
+ nameFileIdTable: {}
+ spritePackingTag:
+ pSDRemoveMatte: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/TestProjects/HDRP_DXR_Tests/Assets/Scenes/715_PointShadow_Matte_Edge.meta b/TestProjects/HDRP_DXR_Tests/Assets/Scenes/715_PointShadow_Matte_Edge.meta
new file mode 100644
index 00000000000..461b7feaf56
--- /dev/null
+++ b/TestProjects/HDRP_DXR_Tests/Assets/Scenes/715_PointShadow_Matte_Edge.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: f61fe14278b366145bd0ecd8efac3e7c
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/TestProjects/HDRP_DXR_Tests/Assets/Scenes/715_PointShadow_Matte_Edge.unity b/TestProjects/HDRP_DXR_Tests/Assets/Scenes/715_PointShadow_Matte_Edge.unity
new file mode 100644
index 00000000000..0bbaeafcfc6
--- /dev/null
+++ b/TestProjects/HDRP_DXR_Tests/Assets/Scenes/715_PointShadow_Matte_Edge.unity
@@ -0,0 +1,982 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!29 &1
+OcclusionCullingSettings:
+ m_ObjectHideFlags: 0
+ serializedVersion: 2
+ m_OcclusionBakeSettings:
+ smallestOccluder: 5
+ smallestHole: 0.25
+ backfaceThreshold: 100
+ m_SceneGUID: 00000000000000000000000000000000
+ m_OcclusionCullingData: {fileID: 0}
+--- !u!104 &2
+RenderSettings:
+ m_ObjectHideFlags: 0
+ serializedVersion: 9
+ m_Fog: 0
+ m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1}
+ m_FogMode: 3
+ m_FogDensity: 0.01
+ m_LinearFogStart: 0
+ m_LinearFogEnd: 300
+ m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1}
+ m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1}
+ m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1}
+ m_AmbientIntensity: 1
+ m_AmbientMode: 0
+ m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1}
+ m_SkyboxMaterial: {fileID: 0}
+ m_HaloStrength: 0.5
+ m_FlareStrength: 1
+ m_FlareFadeSpeed: 3
+ m_HaloTexture: {fileID: 0}
+ m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0}
+ m_DefaultReflectionMode: 0
+ m_DefaultReflectionResolution: 128
+ m_ReflectionBounces: 1
+ m_ReflectionIntensity: 1
+ m_CustomReflection: {fileID: 0}
+ m_Sun: {fileID: 0}
+ m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1}
+ m_UseRadianceAmbientProbe: 0
+--- !u!157 &3
+LightmapSettings:
+ m_ObjectHideFlags: 0
+ serializedVersion: 12
+ m_GIWorkflowMode: 1
+ m_GISettings:
+ serializedVersion: 2
+ m_BounceScale: 1
+ m_IndirectOutputScale: 1
+ m_AlbedoBoost: 1
+ m_EnvironmentLightingMode: 0
+ m_EnableBakedLightmaps: 1
+ m_EnableRealtimeLightmaps: 0
+ m_LightmapEditorSettings:
+ serializedVersion: 12
+ m_Resolution: 2
+ m_BakeResolution: 40
+ m_AtlasSize: 1024
+ m_AO: 0
+ m_AOMaxDistance: 1
+ m_CompAOExponent: 1
+ m_CompAOExponentDirect: 0
+ m_ExtractAmbientOcclusion: 0
+ m_Padding: 2
+ m_LightmapParameters: {fileID: 0}
+ m_LightmapsBakeMode: 1
+ m_TextureCompression: 1
+ m_FinalGather: 0
+ m_FinalGatherFiltering: 1
+ m_FinalGatherRayCount: 256
+ m_ReflectionCompression: 2
+ m_MixedBakeMode: 2
+ m_BakeBackend: 1
+ m_PVRSampling: 1
+ m_PVRDirectSampleCount: 32
+ m_PVRSampleCount: 512
+ m_PVRBounces: 2
+ m_PVREnvironmentSampleCount: 256
+ m_PVREnvironmentReferencePointCount: 2048
+ m_PVRFilteringMode: 1
+ m_PVRDenoiserTypeDirect: 1
+ m_PVRDenoiserTypeIndirect: 1
+ m_PVRDenoiserTypeAO: 1
+ m_PVRFilterTypeDirect: 0
+ m_PVRFilterTypeIndirect: 0
+ m_PVRFilterTypeAO: 0
+ m_PVREnvironmentMIS: 1
+ m_PVRCulling: 1
+ m_PVRFilteringGaussRadiusDirect: 1
+ m_PVRFilteringGaussRadiusIndirect: 5
+ m_PVRFilteringGaussRadiusAO: 2
+ m_PVRFilteringAtrousPositionSigmaDirect: 0.5
+ m_PVRFilteringAtrousPositionSigmaIndirect: 2
+ m_PVRFilteringAtrousPositionSigmaAO: 1
+ m_ExportTrainingData: 0
+ m_TrainingDataDestination: TrainingData
+ m_LightProbeSampleCountMultiplier: 4
+ m_LightingDataAsset: {fileID: 0}
+ m_LightingSettings: {fileID: 0}
+--- !u!196 &4
+NavMeshSettings:
+ serializedVersion: 2
+ m_ObjectHideFlags: 0
+ m_BuildSettings:
+ serializedVersion: 2
+ agentTypeID: 0
+ agentRadius: 0.5
+ agentHeight: 2
+ agentSlope: 45
+ agentClimb: 0.4
+ ledgeDropHeight: 0
+ maxJumpAcrossDistance: 0
+ minRegionArea: 2
+ manualCellSize: 0
+ cellSize: 0.16666667
+ manualTileSize: 0
+ tileSize: 256
+ accuratePlacement: 0
+ maxJobWorkers: 0
+ preserveTilesOutsideBounds: 0
+ debug:
+ m_Flags: 0
+ m_NavMeshData: {fileID: 0}
+--- !u!1001 &31115525
+PrefabInstance:
+ m_ObjectHideFlags: 0
+ serializedVersion: 2
+ m_Modification:
+ serializedVersion: 2
+ m_TransformParent: {fileID: 0}
+ m_Modifications:
+ - target: {fileID: 1132393308280272, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3}
+ propertyPath: m_Name
+ value: HDRP_Test_Camera
+ objectReference: {fileID: 0}
+ - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3}
+ propertyPath: m_RootOrder
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3}
+ propertyPath: m_LocalPosition.x
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3}
+ propertyPath: m_LocalPosition.y
+ value: 3
+ objectReference: {fileID: 0}
+ - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3}
+ propertyPath: m_LocalPosition.z
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3}
+ propertyPath: m_LocalRotation.w
+ value: 0.7071068
+ objectReference: {fileID: 0}
+ - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3}
+ propertyPath: m_LocalRotation.x
+ value: 0.7071068
+ objectReference: {fileID: 0}
+ - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3}
+ propertyPath: m_LocalRotation.y
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3}
+ propertyPath: m_LocalRotation.z
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3}
+ propertyPath: m_LocalEulerAnglesHint.x
+ value: 90
+ objectReference: {fileID: 0}
+ - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3}
+ propertyPath: m_LocalEulerAnglesHint.y
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3}
+ propertyPath: m_LocalEulerAnglesHint.z
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 114777190906822814, guid: c07ace9ab142ca9469fa377877c2f1e7,
+ type: 3}
+ propertyPath: m_Version
+ value: 8
+ objectReference: {fileID: 0}
+ - target: {fileID: 114995348509370400, guid: c07ace9ab142ca9469fa377877c2f1e7,
+ type: 3}
+ propertyPath: renderPipelineAsset
+ value:
+ objectReference: {fileID: 11400000, guid: 14a0f3aaa5e78a3439ec76d270471ebe,
+ type: 2}
+ - target: {fileID: 114995348509370400, guid: c07ace9ab142ca9469fa377877c2f1e7,
+ type: 3}
+ propertyPath: checkMemoryAllocation
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 114995348509370400, guid: c07ace9ab142ca9469fa377877c2f1e7,
+ type: 3}
+ propertyPath: ImageComparisonSettings.TargetWidth
+ value: 480
+ objectReference: {fileID: 0}
+ m_RemovedComponents: []
+ m_AddedGameObjects: []
+ m_SourcePrefab: {fileID: 100100000, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3}
+--- !u!1 &536881073
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 536881077}
+ - component: {fileID: 536881076}
+ - component: {fileID: 536881075}
+ - component: {fileID: 536881074}
+ m_Layer: 0
+ m_Name: ShadowMattePlane
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!64 &536881074
+MeshCollider:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 536881073}
+ m_Material: {fileID: 0}
+ m_IsTrigger: 0
+ m_Enabled: 1
+ serializedVersion: 4
+ m_Convex: 0
+ m_CookingOptions: 30
+ m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0}
+--- !u!23 &536881075
+MeshRenderer:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 536881073}
+ m_Enabled: 1
+ m_CastShadows: 1
+ m_ReceiveShadows: 1
+ m_DynamicOccludee: 1
+ m_StaticShadowCaster: 0
+ m_MotionVectors: 1
+ m_LightProbeUsage: 1
+ m_ReflectionProbeUsage: 1
+ m_RayTracingMode: 2
+ m_RayTraceProcedural: 0
+ m_RenderingLayerMask: 257
+ m_RendererPriority: 0
+ m_Materials:
+ - {fileID: 2100000, guid: 6536ec273ea5e0b44ab42d53eb068ac4, type: 2}
+ m_StaticBatchInfo:
+ firstSubMesh: 0
+ subMeshCount: 0
+ m_StaticBatchRoot: {fileID: 0}
+ m_ProbeAnchor: {fileID: 0}
+ m_LightProbeVolumeOverride: {fileID: 0}
+ m_ScaleInLightmap: 1
+ m_ReceiveGI: 1
+ m_PreserveUVs: 0
+ m_IgnoreNormalsForChartDetection: 0
+ m_ImportantGI: 0
+ m_StitchLightmapSeams: 1
+ m_SelectedEditorRenderState: 3
+ m_MinimumChartSize: 4
+ m_AutoUVMaxDistance: 0.5
+ m_AutoUVMaxAngle: 89
+ m_LightmapParameters: {fileID: 0}
+ m_SortingLayerID: 0
+ m_SortingLayer: 0
+ m_SortingOrder: 0
+ m_AdditionalVertexStreams: {fileID: 0}
+--- !u!33 &536881076
+MeshFilter:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 536881073}
+ m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0}
+--- !u!4 &536881077
+Transform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 536881073}
+ m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
+ m_LocalPosition: {x: 0.5, y: 0, z: 0}
+ m_LocalScale: {x: 1, y: 1, z: 1}
+ m_ConstrainProportionsScale: 0
+ m_Children: []
+ m_Father: {fileID: 0}
+ m_RootOrder: 1
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!1 &565659604
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 565659606}
+ - component: {fileID: 565659605}
+ m_Layer: 0
+ m_Name: Global Volume
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!114 &565659605
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 565659604}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 172515602e62fb746b5d573b38a5fe58, type: 3}
+ m_Name:
+ m_EditorClassIdentifier:
+ m_IsGlobal: 1
+ priority: 0
+ blendDistance: 0
+ weight: 1
+ sharedProfile: {fileID: 11400000, guid: 2a03d429d7c5e9749b581195d38613ea, type: 2}
+--- !u!4 &565659606
+Transform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 565659604}
+ m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
+ m_LocalPosition: {x: 1.6061484, y: -9.595055, z: 4.1146817}
+ m_LocalScale: {x: 1, y: 1, z: 1}
+ m_ConstrainProportionsScale: 0
+ m_Children: []
+ m_Father: {fileID: 0}
+ m_RootOrder: 2
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!1 &664233133
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 664233134}
+ - component: {fileID: 664233137}
+ - component: {fileID: 664233136}
+ - component: {fileID: 664233135}
+ m_Layer: 0
+ m_Name: Sphere
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!4 &664233134
+Transform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 664233133}
+ m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
+ m_LocalPosition: {x: -1, y: -0.75, z: 0}
+ m_LocalScale: {x: 0.5, y: 0.5, z: 0.5}
+ m_ConstrainProportionsScale: 0
+ m_Children: []
+ m_Father: {fileID: 774345918}
+ m_RootOrder: -1
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!135 &664233135
+SphereCollider:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 664233133}
+ m_Material: {fileID: 0}
+ m_IsTrigger: 0
+ m_Enabled: 1
+ serializedVersion: 2
+ m_Radius: 0.5
+ m_Center: {x: 0, y: 0, z: 0}
+--- !u!23 &664233136
+MeshRenderer:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 664233133}
+ m_Enabled: 1
+ m_CastShadows: 1
+ m_ReceiveShadows: 1
+ m_DynamicOccludee: 1
+ m_StaticShadowCaster: 0
+ m_MotionVectors: 1
+ m_LightProbeUsage: 1
+ m_ReflectionProbeUsage: 1
+ m_RayTracingMode: 2
+ m_RayTraceProcedural: 0
+ m_RenderingLayerMask: 257
+ m_RendererPriority: 0
+ m_Materials:
+ - {fileID: 2100000, guid: 73c176f402d2c2f4d929aa5da7585d17, type: 2}
+ m_StaticBatchInfo:
+ firstSubMesh: 0
+ subMeshCount: 0
+ m_StaticBatchRoot: {fileID: 0}
+ m_ProbeAnchor: {fileID: 0}
+ m_LightProbeVolumeOverride: {fileID: 0}
+ m_ScaleInLightmap: 1
+ m_ReceiveGI: 1
+ m_PreserveUVs: 0
+ m_IgnoreNormalsForChartDetection: 0
+ m_ImportantGI: 0
+ m_StitchLightmapSeams: 1
+ m_SelectedEditorRenderState: 3
+ m_MinimumChartSize: 4
+ m_AutoUVMaxDistance: 0.5
+ m_AutoUVMaxAngle: 89
+ m_LightmapParameters: {fileID: 0}
+ m_SortingLayerID: 0
+ m_SortingLayer: 0
+ m_SortingOrder: 0
+ m_AdditionalVertexStreams: {fileID: 0}
+--- !u!33 &664233137
+MeshFilter:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 664233133}
+ m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0}
+--- !u!1 &774345915
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 774345918}
+ - component: {fileID: 774345917}
+ - component: {fileID: 774345916}
+ m_Layer: 0
+ m_Name: Point LightOpaque
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!114 &774345916
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 774345915}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 7a68c43fe1f2a47cfa234b5eeaa98012, type: 3}
+ m_Name:
+ m_EditorClassIdentifier:
+ m_Intensity: 600
+ m_EnableSpotReflector: 1
+ m_LuxAtDistance: 1
+ m_InnerSpotPercent: 0
+ m_SpotIESCutoffPercent: 100
+ m_LightDimmer: 1
+ m_VolumetricDimmer: 1
+ m_LightUnit: 0
+ m_FadeDistance: 10000
+ m_VolumetricFadeDistance: 10000
+ m_AffectDiffuse: 1
+ m_AffectSpecular: 1
+ m_NonLightmappedOnly: 0
+ m_ShapeWidth: 0.5
+ m_ShapeHeight: 0.5
+ m_AspectRatio: 1
+ m_ShapeRadius: 0.1
+ m_SoftnessScale: 1
+ m_UseCustomSpotLightShadowCone: 0
+ m_CustomSpotLightShadowCone: 30
+ m_MaxSmoothness: 0.99
+ m_ApplyRangeAttenuation: 1
+ m_DisplayAreaLightEmissiveMesh: 0
+ m_AreaLightCookie: {fileID: 0}
+ m_IESPoint: {fileID: 0}
+ m_IESSpot: {fileID: 0}
+ m_IncludeForRayTracing: 1
+ m_AreaLightShadowCone: 120
+ m_UseScreenSpaceShadows: 0
+ m_InteractsWithSky: 1
+ m_AngularDiameter: 0.5
+ m_FlareSize: 2
+ m_FlareTint: {r: 1, g: 1, b: 1, a: 1}
+ m_FlareFalloff: 4
+ m_SurfaceTexture: {fileID: 0}
+ m_SurfaceTint: {r: 1, g: 1, b: 1, a: 1}
+ m_Distance: 1.5e+11
+ m_UseRayTracedShadows: 1
+ m_NumRayTracingSamples: 1
+ m_FilterTracedShadow: 1
+ m_FilterSizeTraced: 8
+ m_SunLightConeAngle: 0.5
+ m_LightShadowRadius: 0.5
+ m_SemiTransparentShadow: 0
+ m_ColorShadow: 1
+ m_DistanceBasedFiltering: 0
+ m_EvsmExponent: 15
+ m_EvsmLightLeakBias: 0
+ m_EvsmVarianceBias: 0.00001
+ m_EvsmBlurPasses: 0
+ m_LightlayersMask: 1
+ m_LinkShadowLayers: 1
+ m_ShadowNearPlane: 0.1
+ m_BlockerSampleCount: 24
+ m_FilterSampleCount: 16
+ m_MinFilterSize: 0.1
+ m_KernelSize: 5
+ m_LightAngle: 1
+ m_MaxDepthBias: 0.001
+ m_ShadowResolution:
+ m_Override: 512
+ m_UseOverride: 1
+ m_Level: 0
+ m_ShadowDimmer: 1
+ m_VolumetricShadowDimmer: 1
+ m_ShadowFadeDistance: 10000
+ m_UseContactShadow:
+ m_Override: 0
+ m_UseOverride: 1
+ m_Level: 0
+ m_RayTracedContactShadow: 0
+ m_ShadowTint: {r: 0, g: 0, b: 0, a: 1}
+ m_PenumbraTint: 0
+ m_NormalBias: 0.75
+ m_SlopeBias: 0.5
+ m_ShadowUpdateMode: 0
+ m_AlwaysDrawDynamicShadows: 0
+ m_UpdateShadowOnLightMovement: 0
+ m_CachedShadowTranslationThreshold: 0.01
+ m_CachedShadowAngularThreshold: 0.5
+ m_BarnDoorAngle: 90
+ m_BarnDoorLength: 0.05
+ m_preserveCachedShadow: 0
+ m_OnDemandShadowRenderOnPlacement: 1
+ m_ShadowCascadeRatios:
+ - 0.05
+ - 0.2
+ - 0.3
+ m_ShadowCascadeBorders:
+ - 0.2
+ - 0.2
+ - 0.2
+ - 0.2
+ m_ShadowAlgorithm: 0
+ m_ShadowVariant: 0
+ m_ShadowPrecision: 0
+ useOldInspector: 0
+ useVolumetric: 1
+ featuresFoldout: 1
+ m_AreaLightEmissiveMeshShadowCastingMode: 0
+ m_AreaLightEmissiveMeshMotionVectorGenerationMode: 0
+ m_AreaLightEmissiveMeshLayer: -1
+ m_Version: 11
+ m_ObsoleteShadowResolutionTier: 1
+ m_ObsoleteUseShadowQualitySettings: 0
+ m_ObsoleteCustomShadowResolution: 512
+ m_ObsoleteContactShadows: 0
+ m_PointlightHDType: 0
+ m_SpotLightShape: 0
+ m_AreaLightShape: 0
+--- !u!108 &774345917
+Light:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 774345915}
+ m_Enabled: 1
+ serializedVersion: 10
+ m_Type: 2
+ m_Shape: 0
+ m_Color: {r: 1, g: 1, b: 1, a: 1}
+ m_Intensity: 47.746483
+ m_Range: 2
+ m_SpotAngle: 30
+ m_InnerSpotAngle: 21.80208
+ m_CookieSize: 10
+ m_Shadows:
+ m_Type: 1
+ m_Resolution: -1
+ m_CustomResolution: -1
+ m_Strength: 1
+ m_Bias: 0.05
+ m_NormalBias: 0.4
+ m_NearPlane: 0.2
+ m_CullingMatrixOverride:
+ e00: 1
+ e01: 0
+ e02: 0
+ e03: 0
+ e10: 0
+ e11: 1
+ e12: 0
+ e13: 0
+ e20: 0
+ e21: 0
+ e22: 1
+ e23: 0
+ e30: 0
+ e31: 0
+ e32: 0
+ e33: 1
+ m_UseCullingMatrixOverride: 0
+ m_Cookie: {fileID: 0}
+ m_DrawHalo: 0
+ m_Flare: {fileID: 0}
+ m_RenderMode: 0
+ m_CullingMask:
+ serializedVersion: 2
+ m_Bits: 4294967295
+ m_RenderingLayerMask: 1
+ m_Lightmapping: 4
+ m_LightShadowCasterMode: 2
+ m_AreaSize: {x: 0.5, y: 0.5}
+ m_BounceIntensity: 1
+ m_ColorTemperature: 6570
+ m_UseColorTemperature: 1
+ m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0}
+ m_UseBoundingSphereOverride: 0
+ m_UseViewFrustumForShadowCasterCull: 1
+ m_ShadowRadius: 0.1
+ m_ShadowAngle: 0
+--- !u!4 &774345918
+Transform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 774345915}
+ m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
+ m_LocalPosition: {x: 0, y: 1, z: 1}
+ m_LocalScale: {x: 1, y: 1, z: 1}
+ m_ConstrainProportionsScale: 0
+ m_Children:
+ - {fileID: 664233134}
+ m_Father: {fileID: 0}
+ m_RootOrder: 3
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!1 &1204532182
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 1204532183}
+ - component: {fileID: 1204532186}
+ - component: {fileID: 1204532185}
+ - component: {fileID: 1204532184}
+ m_Layer: 0
+ m_Name: Sphere
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!4 &1204532183
+Transform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 1204532182}
+ m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
+ m_LocalPosition: {x: -1, y: -0.75, z: 0}
+ m_LocalScale: {x: 0.5, y: 0.5, z: 0.5}
+ m_ConstrainProportionsScale: 0
+ m_Children: []
+ m_Father: {fileID: 1874057722}
+ m_RootOrder: -1
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!135 &1204532184
+SphereCollider:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 1204532182}
+ m_Material: {fileID: 0}
+ m_IsTrigger: 0
+ m_Enabled: 1
+ serializedVersion: 2
+ m_Radius: 0.5
+ m_Center: {x: 0, y: 0, z: 0}
+--- !u!23 &1204532185
+MeshRenderer:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 1204532182}
+ m_Enabled: 1
+ m_CastShadows: 1
+ m_ReceiveShadows: 1
+ m_DynamicOccludee: 1
+ m_StaticShadowCaster: 0
+ m_MotionVectors: 1
+ m_LightProbeUsage: 1
+ m_ReflectionProbeUsage: 1
+ m_RayTracingMode: 2
+ m_RayTraceProcedural: 0
+ m_RenderingLayerMask: 257
+ m_RendererPriority: 0
+ m_Materials:
+ - {fileID: 2100000, guid: 73c176f402d2c2f4d929aa5da7585d17, type: 2}
+ m_StaticBatchInfo:
+ firstSubMesh: 0
+ subMeshCount: 0
+ m_StaticBatchRoot: {fileID: 0}
+ m_ProbeAnchor: {fileID: 0}
+ m_LightProbeVolumeOverride: {fileID: 0}
+ m_ScaleInLightmap: 1
+ m_ReceiveGI: 1
+ m_PreserveUVs: 0
+ m_IgnoreNormalsForChartDetection: 0
+ m_ImportantGI: 0
+ m_StitchLightmapSeams: 1
+ m_SelectedEditorRenderState: 3
+ m_MinimumChartSize: 4
+ m_AutoUVMaxDistance: 0.5
+ m_AutoUVMaxAngle: 89
+ m_LightmapParameters: {fileID: 0}
+ m_SortingLayerID: 0
+ m_SortingLayer: 0
+ m_SortingOrder: 0
+ m_AdditionalVertexStreams: {fileID: 0}
+--- !u!33 &1204532186
+MeshFilter:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 1204532182}
+ m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0}
+--- !u!1 &1874057719
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 1874057722}
+ - component: {fileID: 1874057721}
+ - component: {fileID: 1874057720}
+ m_Layer: 0
+ m_Name: Point LightSemiTransparent
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!114 &1874057720
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 1874057719}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 7a68c43fe1f2a47cfa234b5eeaa98012, type: 3}
+ m_Name:
+ m_EditorClassIdentifier:
+ m_Intensity: 600
+ m_EnableSpotReflector: 1
+ m_LuxAtDistance: 1
+ m_InnerSpotPercent: 0
+ m_SpotIESCutoffPercent: 100
+ m_LightDimmer: 1
+ m_VolumetricDimmer: 1
+ m_LightUnit: 0
+ m_FadeDistance: 10000
+ m_VolumetricFadeDistance: 10000
+ m_AffectDiffuse: 1
+ m_AffectSpecular: 1
+ m_NonLightmappedOnly: 0
+ m_ShapeWidth: 0.5
+ m_ShapeHeight: 0.5
+ m_AspectRatio: 1
+ m_ShapeRadius: 0.1
+ m_SoftnessScale: 1
+ m_UseCustomSpotLightShadowCone: 0
+ m_CustomSpotLightShadowCone: 30
+ m_MaxSmoothness: 0.99
+ m_ApplyRangeAttenuation: 1
+ m_DisplayAreaLightEmissiveMesh: 0
+ m_AreaLightCookie: {fileID: 0}
+ m_IESPoint: {fileID: 0}
+ m_IESSpot: {fileID: 0}
+ m_IncludeForRayTracing: 1
+ m_AreaLightShadowCone: 120
+ m_UseScreenSpaceShadows: 0
+ m_InteractsWithSky: 1
+ m_AngularDiameter: 0.5
+ m_FlareSize: 2
+ m_FlareTint: {r: 1, g: 1, b: 1, a: 1}
+ m_FlareFalloff: 4
+ m_SurfaceTexture: {fileID: 0}
+ m_SurfaceTint: {r: 1, g: 1, b: 1, a: 1}
+ m_Distance: 1.5e+11
+ m_UseRayTracedShadows: 1
+ m_NumRayTracingSamples: 1
+ m_FilterTracedShadow: 1
+ m_FilterSizeTraced: 8
+ m_SunLightConeAngle: 0.5
+ m_LightShadowRadius: 0.5
+ m_SemiTransparentShadow: 1
+ m_ColorShadow: 1
+ m_DistanceBasedFiltering: 0
+ m_EvsmExponent: 15
+ m_EvsmLightLeakBias: 0
+ m_EvsmVarianceBias: 0.00001
+ m_EvsmBlurPasses: 0
+ m_LightlayersMask: 1
+ m_LinkShadowLayers: 1
+ m_ShadowNearPlane: 0.1
+ m_BlockerSampleCount: 24
+ m_FilterSampleCount: 16
+ m_MinFilterSize: 0.1
+ m_KernelSize: 5
+ m_LightAngle: 1
+ m_MaxDepthBias: 0.001
+ m_ShadowResolution:
+ m_Override: 512
+ m_UseOverride: 1
+ m_Level: 0
+ m_ShadowDimmer: 1
+ m_VolumetricShadowDimmer: 1
+ m_ShadowFadeDistance: 10000
+ m_UseContactShadow:
+ m_Override: 0
+ m_UseOverride: 1
+ m_Level: 0
+ m_RayTracedContactShadow: 0
+ m_ShadowTint: {r: 0, g: 0, b: 0, a: 1}
+ m_PenumbraTint: 0
+ m_NormalBias: 0.75
+ m_SlopeBias: 0.5
+ m_ShadowUpdateMode: 0
+ m_AlwaysDrawDynamicShadows: 0
+ m_UpdateShadowOnLightMovement: 0
+ m_CachedShadowTranslationThreshold: 0.01
+ m_CachedShadowAngularThreshold: 0.5
+ m_BarnDoorAngle: 90
+ m_BarnDoorLength: 0.05
+ m_preserveCachedShadow: 0
+ m_OnDemandShadowRenderOnPlacement: 1
+ m_ShadowCascadeRatios:
+ - 0.05
+ - 0.2
+ - 0.3
+ m_ShadowCascadeBorders:
+ - 0.2
+ - 0.2
+ - 0.2
+ - 0.2
+ m_ShadowAlgorithm: 0
+ m_ShadowVariant: 0
+ m_ShadowPrecision: 0
+ useOldInspector: 0
+ useVolumetric: 1
+ featuresFoldout: 1
+ m_AreaLightEmissiveMeshShadowCastingMode: 0
+ m_AreaLightEmissiveMeshMotionVectorGenerationMode: 0
+ m_AreaLightEmissiveMeshLayer: -1
+ m_Version: 11
+ m_ObsoleteShadowResolutionTier: 1
+ m_ObsoleteUseShadowQualitySettings: 0
+ m_ObsoleteCustomShadowResolution: 512
+ m_ObsoleteContactShadows: 0
+ m_PointlightHDType: 0
+ m_SpotLightShape: 0
+ m_AreaLightShape: 0
+--- !u!108 &1874057721
+Light:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 1874057719}
+ m_Enabled: 1
+ serializedVersion: 10
+ m_Type: 2
+ m_Shape: 0
+ m_Color: {r: 1, g: 1, b: 1, a: 1}
+ m_Intensity: 47.746483
+ m_Range: 2
+ m_SpotAngle: 30
+ m_InnerSpotAngle: 21.80208
+ m_CookieSize: 10
+ m_Shadows:
+ m_Type: 1
+ m_Resolution: -1
+ m_CustomResolution: -1
+ m_Strength: 1
+ m_Bias: 0.05
+ m_NormalBias: 0.4
+ m_NearPlane: 0.2
+ m_CullingMatrixOverride:
+ e00: 1
+ e01: 0
+ e02: 0
+ e03: 0
+ e10: 0
+ e11: 1
+ e12: 0
+ e13: 0
+ e20: 0
+ e21: 0
+ e22: 1
+ e23: 0
+ e30: 0
+ e31: 0
+ e32: 0
+ e33: 1
+ m_UseCullingMatrixOverride: 0
+ m_Cookie: {fileID: 0}
+ m_DrawHalo: 0
+ m_Flare: {fileID: 0}
+ m_RenderMode: 0
+ m_CullingMask:
+ serializedVersion: 2
+ m_Bits: 4294967295
+ m_RenderingLayerMask: 1
+ m_Lightmapping: 4
+ m_LightShadowCasterMode: 2
+ m_AreaSize: {x: 0.5, y: 0.5}
+ m_BounceIntensity: 1
+ m_ColorTemperature: 6570
+ m_UseColorTemperature: 1
+ m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0}
+ m_UseBoundingSphereOverride: 0
+ m_UseViewFrustumForShadowCasterCull: 1
+ m_ShadowRadius: 0.1
+ m_ShadowAngle: 0
+--- !u!4 &1874057722
+Transform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 1874057719}
+ m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
+ m_LocalPosition: {x: 0, y: 1, z: -1}
+ m_LocalScale: {x: 1, y: 1, z: 1}
+ m_ConstrainProportionsScale: 0
+ m_Children:
+ - {fileID: 1204532183}
+ m_Father: {fileID: 0}
+ m_RootOrder: 4
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
diff --git a/TestProjects/HDRP_DXR_Tests/Assets/Scenes/715_PointShadow_Matte_Edge.unity.meta b/TestProjects/HDRP_DXR_Tests/Assets/Scenes/715_PointShadow_Matte_Edge.unity.meta
new file mode 100644
index 00000000000..23445ea7a60
--- /dev/null
+++ b/TestProjects/HDRP_DXR_Tests/Assets/Scenes/715_PointShadow_Matte_Edge.unity.meta
@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: 6bb64157e4d92ed43a51a4c3582d7d32
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/TestProjects/HDRP_DXR_Tests/Assets/Scenes/715_PointShadow_Matte_Edge/Global Volume Profile.asset b/TestProjects/HDRP_DXR_Tests/Assets/Scenes/715_PointShadow_Matte_Edge/Global Volume Profile.asset
new file mode 100644
index 00000000000..5811643ae9f
--- /dev/null
+++ b/TestProjects/HDRP_DXR_Tests/Assets/Scenes/715_PointShadow_Matte_Edge/Global Volume Profile.asset
@@ -0,0 +1,15 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!114 &11400000
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 0}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: d7fd9488000d3734a9e00ee676215985, type: 3}
+ m_Name: Global Volume Profile
+ m_EditorClassIdentifier:
+ components: []
diff --git a/TestProjects/HDRP_DXR_Tests/Assets/Scenes/715_PointShadow_Matte_Edge/Global Volume Profile.asset.meta b/TestProjects/HDRP_DXR_Tests/Assets/Scenes/715_PointShadow_Matte_Edge/Global Volume Profile.asset.meta
new file mode 100644
index 00000000000..2a9f1bfd373
--- /dev/null
+++ b/TestProjects/HDRP_DXR_Tests/Assets/Scenes/715_PointShadow_Matte_Edge/Global Volume Profile.asset.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 2a03d429d7c5e9749b581195d38613ea
+NativeFormatImporter:
+ externalObjects: {}
+ mainObjectFileID: 11400000
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/TestProjects/HDRP_DXR_Tests/Assets/Scenes/716_SpotShadow_Matte_Edge.unity b/TestProjects/HDRP_DXR_Tests/Assets/Scenes/716_SpotShadow_Matte_Edge.unity
new file mode 100644
index 00000000000..ae4be44044f
--- /dev/null
+++ b/TestProjects/HDRP_DXR_Tests/Assets/Scenes/716_SpotShadow_Matte_Edge.unity
@@ -0,0 +1,982 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!29 &1
+OcclusionCullingSettings:
+ m_ObjectHideFlags: 0
+ serializedVersion: 2
+ m_OcclusionBakeSettings:
+ smallestOccluder: 5
+ smallestHole: 0.25
+ backfaceThreshold: 100
+ m_SceneGUID: 00000000000000000000000000000000
+ m_OcclusionCullingData: {fileID: 0}
+--- !u!104 &2
+RenderSettings:
+ m_ObjectHideFlags: 0
+ serializedVersion: 9
+ m_Fog: 0
+ m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1}
+ m_FogMode: 3
+ m_FogDensity: 0.01
+ m_LinearFogStart: 0
+ m_LinearFogEnd: 300
+ m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1}
+ m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1}
+ m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1}
+ m_AmbientIntensity: 1
+ m_AmbientMode: 0
+ m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1}
+ m_SkyboxMaterial: {fileID: 0}
+ m_HaloStrength: 0.5
+ m_FlareStrength: 1
+ m_FlareFadeSpeed: 3
+ m_HaloTexture: {fileID: 0}
+ m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0}
+ m_DefaultReflectionMode: 0
+ m_DefaultReflectionResolution: 128
+ m_ReflectionBounces: 1
+ m_ReflectionIntensity: 1
+ m_CustomReflection: {fileID: 0}
+ m_Sun: {fileID: 0}
+ m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1}
+ m_UseRadianceAmbientProbe: 0
+--- !u!157 &3
+LightmapSettings:
+ m_ObjectHideFlags: 0
+ serializedVersion: 12
+ m_GIWorkflowMode: 1
+ m_GISettings:
+ serializedVersion: 2
+ m_BounceScale: 1
+ m_IndirectOutputScale: 1
+ m_AlbedoBoost: 1
+ m_EnvironmentLightingMode: 0
+ m_EnableBakedLightmaps: 1
+ m_EnableRealtimeLightmaps: 0
+ m_LightmapEditorSettings:
+ serializedVersion: 12
+ m_Resolution: 2
+ m_BakeResolution: 40
+ m_AtlasSize: 1024
+ m_AO: 0
+ m_AOMaxDistance: 1
+ m_CompAOExponent: 1
+ m_CompAOExponentDirect: 0
+ m_ExtractAmbientOcclusion: 0
+ m_Padding: 2
+ m_LightmapParameters: {fileID: 0}
+ m_LightmapsBakeMode: 1
+ m_TextureCompression: 1
+ m_FinalGather: 0
+ m_FinalGatherFiltering: 1
+ m_FinalGatherRayCount: 256
+ m_ReflectionCompression: 2
+ m_MixedBakeMode: 2
+ m_BakeBackend: 1
+ m_PVRSampling: 1
+ m_PVRDirectSampleCount: 32
+ m_PVRSampleCount: 512
+ m_PVRBounces: 2
+ m_PVREnvironmentSampleCount: 256
+ m_PVREnvironmentReferencePointCount: 2048
+ m_PVRFilteringMode: 1
+ m_PVRDenoiserTypeDirect: 1
+ m_PVRDenoiserTypeIndirect: 1
+ m_PVRDenoiserTypeAO: 1
+ m_PVRFilterTypeDirect: 0
+ m_PVRFilterTypeIndirect: 0
+ m_PVRFilterTypeAO: 0
+ m_PVREnvironmentMIS: 1
+ m_PVRCulling: 1
+ m_PVRFilteringGaussRadiusDirect: 1
+ m_PVRFilteringGaussRadiusIndirect: 5
+ m_PVRFilteringGaussRadiusAO: 2
+ m_PVRFilteringAtrousPositionSigmaDirect: 0.5
+ m_PVRFilteringAtrousPositionSigmaIndirect: 2
+ m_PVRFilteringAtrousPositionSigmaAO: 1
+ m_ExportTrainingData: 0
+ m_TrainingDataDestination: TrainingData
+ m_LightProbeSampleCountMultiplier: 4
+ m_LightingDataAsset: {fileID: 0}
+ m_LightingSettings: {fileID: 0}
+--- !u!196 &4
+NavMeshSettings:
+ serializedVersion: 2
+ m_ObjectHideFlags: 0
+ m_BuildSettings:
+ serializedVersion: 2
+ agentTypeID: 0
+ agentRadius: 0.5
+ agentHeight: 2
+ agentSlope: 45
+ agentClimb: 0.4
+ ledgeDropHeight: 0
+ maxJumpAcrossDistance: 0
+ minRegionArea: 2
+ manualCellSize: 0
+ cellSize: 0.16666667
+ manualTileSize: 0
+ tileSize: 256
+ accuratePlacement: 0
+ maxJobWorkers: 0
+ preserveTilesOutsideBounds: 0
+ debug:
+ m_Flags: 0
+ m_NavMeshData: {fileID: 0}
+--- !u!1001 &31115525
+PrefabInstance:
+ m_ObjectHideFlags: 0
+ serializedVersion: 2
+ m_Modification:
+ serializedVersion: 2
+ m_TransformParent: {fileID: 0}
+ m_Modifications:
+ - target: {fileID: 1132393308280272, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3}
+ propertyPath: m_Name
+ value: HDRP_Test_Camera
+ objectReference: {fileID: 0}
+ - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3}
+ propertyPath: m_RootOrder
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3}
+ propertyPath: m_LocalPosition.x
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3}
+ propertyPath: m_LocalPosition.y
+ value: 3
+ objectReference: {fileID: 0}
+ - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3}
+ propertyPath: m_LocalPosition.z
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3}
+ propertyPath: m_LocalRotation.w
+ value: 0.7071068
+ objectReference: {fileID: 0}
+ - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3}
+ propertyPath: m_LocalRotation.x
+ value: 0.7071068
+ objectReference: {fileID: 0}
+ - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3}
+ propertyPath: m_LocalRotation.y
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3}
+ propertyPath: m_LocalRotation.z
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3}
+ propertyPath: m_LocalEulerAnglesHint.x
+ value: 90
+ objectReference: {fileID: 0}
+ - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3}
+ propertyPath: m_LocalEulerAnglesHint.y
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 4209882255362944, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3}
+ propertyPath: m_LocalEulerAnglesHint.z
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 114777190906822814, guid: c07ace9ab142ca9469fa377877c2f1e7,
+ type: 3}
+ propertyPath: m_Version
+ value: 8
+ objectReference: {fileID: 0}
+ - target: {fileID: 114995348509370400, guid: c07ace9ab142ca9469fa377877c2f1e7,
+ type: 3}
+ propertyPath: renderPipelineAsset
+ value:
+ objectReference: {fileID: 11400000, guid: 14a0f3aaa5e78a3439ec76d270471ebe,
+ type: 2}
+ - target: {fileID: 114995348509370400, guid: c07ace9ab142ca9469fa377877c2f1e7,
+ type: 3}
+ propertyPath: checkMemoryAllocation
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 114995348509370400, guid: c07ace9ab142ca9469fa377877c2f1e7,
+ type: 3}
+ propertyPath: ImageComparisonSettings.TargetWidth
+ value: 480
+ objectReference: {fileID: 0}
+ m_RemovedComponents: []
+ m_AddedGameObjects: []
+ m_SourcePrefab: {fileID: 100100000, guid: c07ace9ab142ca9469fa377877c2f1e7, type: 3}
+--- !u!1 &261440655
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 261440656}
+ - component: {fileID: 261440659}
+ - component: {fileID: 261440658}
+ - component: {fileID: 261440657}
+ m_Layer: 0
+ m_Name: Sphere
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!4 &261440656
+Transform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 261440655}
+ m_LocalRotation: {x: -0.27059805, y: 0.6532815, z: -0.27059805, w: 0.6532815}
+ m_LocalPosition: {x: 0, y: 0.17677675, z: 1.237437}
+ m_LocalScale: {x: 0.49999994, y: 0.5, z: 0.49999988}
+ m_ConstrainProportionsScale: 0
+ m_Children: []
+ m_Father: {fileID: 854104171}
+ m_RootOrder: -1
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!135 &261440657
+SphereCollider:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 261440655}
+ m_Material: {fileID: 0}
+ m_IsTrigger: 0
+ m_Enabled: 1
+ serializedVersion: 2
+ m_Radius: 0.5
+ m_Center: {x: 0, y: 0, z: 0}
+--- !u!23 &261440658
+MeshRenderer:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 261440655}
+ m_Enabled: 1
+ m_CastShadows: 1
+ m_ReceiveShadows: 1
+ m_DynamicOccludee: 1
+ m_StaticShadowCaster: 0
+ m_MotionVectors: 1
+ m_LightProbeUsage: 1
+ m_ReflectionProbeUsage: 1
+ m_RayTracingMode: 2
+ m_RayTraceProcedural: 0
+ m_RenderingLayerMask: 257
+ m_RendererPriority: 0
+ m_Materials:
+ - {fileID: 2100000, guid: 73c176f402d2c2f4d929aa5da7585d17, type: 2}
+ m_StaticBatchInfo:
+ firstSubMesh: 0
+ subMeshCount: 0
+ m_StaticBatchRoot: {fileID: 0}
+ m_ProbeAnchor: {fileID: 0}
+ m_LightProbeVolumeOverride: {fileID: 0}
+ m_ScaleInLightmap: 1
+ m_ReceiveGI: 1
+ m_PreserveUVs: 0
+ m_IgnoreNormalsForChartDetection: 0
+ m_ImportantGI: 0
+ m_StitchLightmapSeams: 1
+ m_SelectedEditorRenderState: 3
+ m_MinimumChartSize: 4
+ m_AutoUVMaxDistance: 0.5
+ m_AutoUVMaxAngle: 89
+ m_LightmapParameters: {fileID: 0}
+ m_SortingLayerID: 0
+ m_SortingLayer: 0
+ m_SortingOrder: 0
+ m_AdditionalVertexStreams: {fileID: 0}
+--- !u!33 &261440659
+MeshFilter:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 261440655}
+ m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0}
+--- !u!1 &536881073
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 536881077}
+ - component: {fileID: 536881076}
+ - component: {fileID: 536881075}
+ - component: {fileID: 536881074}
+ m_Layer: 0
+ m_Name: ShadowMattePlane
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!64 &536881074
+MeshCollider:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 536881073}
+ m_Material: {fileID: 0}
+ m_IsTrigger: 0
+ m_Enabled: 1
+ serializedVersion: 4
+ m_Convex: 0
+ m_CookingOptions: 30
+ m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0}
+--- !u!23 &536881075
+MeshRenderer:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 536881073}
+ m_Enabled: 1
+ m_CastShadows: 1
+ m_ReceiveShadows: 1
+ m_DynamicOccludee: 1
+ m_StaticShadowCaster: 0
+ m_MotionVectors: 1
+ m_LightProbeUsage: 1
+ m_ReflectionProbeUsage: 1
+ m_RayTracingMode: 2
+ m_RayTraceProcedural: 0
+ m_RenderingLayerMask: 257
+ m_RendererPriority: 0
+ m_Materials:
+ - {fileID: 2100000, guid: 6536ec273ea5e0b44ab42d53eb068ac4, type: 2}
+ m_StaticBatchInfo:
+ firstSubMesh: 0
+ subMeshCount: 0
+ m_StaticBatchRoot: {fileID: 0}
+ m_ProbeAnchor: {fileID: 0}
+ m_LightProbeVolumeOverride: {fileID: 0}
+ m_ScaleInLightmap: 1
+ m_ReceiveGI: 1
+ m_PreserveUVs: 0
+ m_IgnoreNormalsForChartDetection: 0
+ m_ImportantGI: 0
+ m_StitchLightmapSeams: 1
+ m_SelectedEditorRenderState: 3
+ m_MinimumChartSize: 4
+ m_AutoUVMaxDistance: 0.5
+ m_AutoUVMaxAngle: 89
+ m_LightmapParameters: {fileID: 0}
+ m_SortingLayerID: 0
+ m_SortingLayer: 0
+ m_SortingOrder: 0
+ m_AdditionalVertexStreams: {fileID: 0}
+--- !u!33 &536881076
+MeshFilter:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 536881073}
+ m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0}
+--- !u!4 &536881077
+Transform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 536881073}
+ m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
+ m_LocalPosition: {x: 0.5, y: 0, z: 0}
+ m_LocalScale: {x: 1, y: 1, z: 1}
+ m_ConstrainProportionsScale: 0
+ m_Children: []
+ m_Father: {fileID: 0}
+ m_RootOrder: 1
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!1 &565659604
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 565659606}
+ - component: {fileID: 565659605}
+ m_Layer: 0
+ m_Name: Global Volume
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!114 &565659605
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 565659604}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 172515602e62fb746b5d573b38a5fe58, type: 3}
+ m_Name:
+ m_EditorClassIdentifier:
+ m_IsGlobal: 1
+ priority: 0
+ blendDistance: 0
+ weight: 1
+ sharedProfile: {fileID: 11400000, guid: 2a03d429d7c5e9749b581195d38613ea, type: 2}
+--- !u!4 &565659606
+Transform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 565659604}
+ m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
+ m_LocalPosition: {x: 1.6061484, y: -9.595055, z: 4.1146817}
+ m_LocalScale: {x: 1, y: 1, z: 1}
+ m_ConstrainProportionsScale: 0
+ m_Children: []
+ m_Father: {fileID: 0}
+ m_RootOrder: 2
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!1 &664233133
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 664233134}
+ - component: {fileID: 664233137}
+ - component: {fileID: 664233136}
+ - component: {fileID: 664233135}
+ m_Layer: 0
+ m_Name: Sphere
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!4 &664233134
+Transform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 664233133}
+ m_LocalRotation: {x: -0.27059805, y: 0.6532815, z: -0.27059805, w: 0.6532815}
+ m_LocalPosition: {x: 0, y: 0.17677675, z: 1.237437}
+ m_LocalScale: {x: 0.49999994, y: 0.5, z: 0.49999988}
+ m_ConstrainProportionsScale: 0
+ m_Children: []
+ m_Father: {fileID: 774345918}
+ m_RootOrder: -1
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!135 &664233135
+SphereCollider:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 664233133}
+ m_Material: {fileID: 0}
+ m_IsTrigger: 0
+ m_Enabled: 1
+ serializedVersion: 2
+ m_Radius: 0.5
+ m_Center: {x: 0, y: 0, z: 0}
+--- !u!23 &664233136
+MeshRenderer:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 664233133}
+ m_Enabled: 1
+ m_CastShadows: 1
+ m_ReceiveShadows: 1
+ m_DynamicOccludee: 1
+ m_StaticShadowCaster: 0
+ m_MotionVectors: 1
+ m_LightProbeUsage: 1
+ m_ReflectionProbeUsage: 1
+ m_RayTracingMode: 2
+ m_RayTraceProcedural: 0
+ m_RenderingLayerMask: 257
+ m_RendererPriority: 0
+ m_Materials:
+ - {fileID: 2100000, guid: 73c176f402d2c2f4d929aa5da7585d17, type: 2}
+ m_StaticBatchInfo:
+ firstSubMesh: 0
+ subMeshCount: 0
+ m_StaticBatchRoot: {fileID: 0}
+ m_ProbeAnchor: {fileID: 0}
+ m_LightProbeVolumeOverride: {fileID: 0}
+ m_ScaleInLightmap: 1
+ m_ReceiveGI: 1
+ m_PreserveUVs: 0
+ m_IgnoreNormalsForChartDetection: 0
+ m_ImportantGI: 0
+ m_StitchLightmapSeams: 1
+ m_SelectedEditorRenderState: 3
+ m_MinimumChartSize: 4
+ m_AutoUVMaxDistance: 0.5
+ m_AutoUVMaxAngle: 89
+ m_LightmapParameters: {fileID: 0}
+ m_SortingLayerID: 0
+ m_SortingLayer: 0
+ m_SortingOrder: 0
+ m_AdditionalVertexStreams: {fileID: 0}
+--- !u!33 &664233137
+MeshFilter:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 664233133}
+ m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0}
+--- !u!1 &774345915
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 774345918}
+ - component: {fileID: 774345917}
+ - component: {fileID: 774345916}
+ m_Layer: 0
+ m_Name: Point LightOpaque
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!114 &774345916
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 774345915}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 7a68c43fe1f2a47cfa234b5eeaa98012, type: 3}
+ m_Name:
+ m_EditorClassIdentifier:
+ m_Intensity: 600
+ m_EnableSpotReflector: 1
+ m_LuxAtDistance: 1
+ m_InnerSpotPercent: 0
+ m_SpotIESCutoffPercent: 100
+ m_LightDimmer: 1
+ m_VolumetricDimmer: 1
+ m_LightUnit: 0
+ m_FadeDistance: 10000
+ m_VolumetricFadeDistance: 10000
+ m_AffectDiffuse: 1
+ m_AffectSpecular: 1
+ m_NonLightmappedOnly: 0
+ m_ShapeWidth: 0.5
+ m_ShapeHeight: 0.5
+ m_AspectRatio: 1
+ m_ShapeRadius: 0.1
+ m_SoftnessScale: 1
+ m_UseCustomSpotLightShadowCone: 0
+ m_CustomSpotLightShadowCone: 30
+ m_MaxSmoothness: 0.99
+ m_ApplyRangeAttenuation: 1
+ m_DisplayAreaLightEmissiveMesh: 0
+ m_AreaLightCookie: {fileID: 0}
+ m_IESPoint: {fileID: 0}
+ m_IESSpot: {fileID: 0}
+ m_IncludeForRayTracing: 1
+ m_AreaLightShadowCone: 120
+ m_UseScreenSpaceShadows: 0
+ m_InteractsWithSky: 1
+ m_AngularDiameter: 0.5
+ m_FlareSize: 2
+ m_FlareTint: {r: 1, g: 1, b: 1, a: 1}
+ m_FlareFalloff: 4
+ m_SurfaceTexture: {fileID: 0}
+ m_SurfaceTint: {r: 1, g: 1, b: 1, a: 1}
+ m_Distance: 1.5e+11
+ m_UseRayTracedShadows: 1
+ m_NumRayTracingSamples: 1
+ m_FilterTracedShadow: 1
+ m_FilterSizeTraced: 8
+ m_SunLightConeAngle: 0.5
+ m_LightShadowRadius: 0.5
+ m_SemiTransparentShadow: 0
+ m_ColorShadow: 1
+ m_DistanceBasedFiltering: 0
+ m_EvsmExponent: 15
+ m_EvsmLightLeakBias: 0
+ m_EvsmVarianceBias: 0.00001
+ m_EvsmBlurPasses: 0
+ m_LightlayersMask: 1
+ m_LinkShadowLayers: 1
+ m_ShadowNearPlane: 0.1
+ m_BlockerSampleCount: 24
+ m_FilterSampleCount: 16
+ m_MinFilterSize: 0.1
+ m_KernelSize: 5
+ m_LightAngle: 1
+ m_MaxDepthBias: 0.001
+ m_ShadowResolution:
+ m_Override: 512
+ m_UseOverride: 1
+ m_Level: 0
+ m_ShadowDimmer: 1
+ m_VolumetricShadowDimmer: 1
+ m_ShadowFadeDistance: 10000
+ m_UseContactShadow:
+ m_Override: 0
+ m_UseOverride: 1
+ m_Level: 0
+ m_RayTracedContactShadow: 0
+ m_ShadowTint: {r: 0, g: 0, b: 0, a: 1}
+ m_PenumbraTint: 0
+ m_NormalBias: 0.75
+ m_SlopeBias: 0.5
+ m_ShadowUpdateMode: 0
+ m_AlwaysDrawDynamicShadows: 0
+ m_UpdateShadowOnLightMovement: 0
+ m_CachedShadowTranslationThreshold: 0.01
+ m_CachedShadowAngularThreshold: 0.5
+ m_BarnDoorAngle: 90
+ m_BarnDoorLength: 0.05
+ m_preserveCachedShadow: 0
+ m_OnDemandShadowRenderOnPlacement: 1
+ m_ShadowCascadeRatios:
+ - 0.05
+ - 0.2
+ - 0.3
+ m_ShadowCascadeBorders:
+ - 0.2
+ - 0.2
+ - 0.2
+ - 0.2
+ m_ShadowAlgorithm: 0
+ m_ShadowVariant: 0
+ m_ShadowPrecision: 0
+ useOldInspector: 0
+ useVolumetric: 1
+ featuresFoldout: 1
+ m_AreaLightEmissiveMeshShadowCastingMode: 0
+ m_AreaLightEmissiveMeshMotionVectorGenerationMode: 0
+ m_AreaLightEmissiveMeshLayer: -1
+ m_Version: 11
+ m_ObsoleteShadowResolutionTier: 1
+ m_ObsoleteUseShadowQualitySettings: 0
+ m_ObsoleteCustomShadowResolution: 512
+ m_ObsoleteContactShadows: 0
+ m_PointlightHDType: 0
+ m_SpotLightShape: 0
+ m_AreaLightShape: 0
+--- !u!108 &774345917
+Light:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 774345915}
+ m_Enabled: 1
+ serializedVersion: 10
+ m_Type: 0
+ m_Shape: 0
+ m_Color: {r: 1, g: 1, b: 1, a: 1}
+ m_Intensity: 1222.1244
+ m_Range: 2
+ m_SpotAngle: 45.6
+ m_InnerSpotAngle: 21.80208
+ m_CookieSize: 10
+ m_Shadows:
+ m_Type: 1
+ m_Resolution: -1
+ m_CustomResolution: -1
+ m_Strength: 1
+ m_Bias: 0.05
+ m_NormalBias: 0.4
+ m_NearPlane: 0.2
+ m_CullingMatrixOverride:
+ e00: 1
+ e01: 0
+ e02: 0
+ e03: 0
+ e10: 0
+ e11: 1
+ e12: 0
+ e13: 0
+ e20: 0
+ e21: 0
+ e22: 1
+ e23: 0
+ e30: 0
+ e31: 0
+ e32: 0
+ e33: 1
+ m_UseCullingMatrixOverride: 0
+ m_Cookie: {fileID: 0}
+ m_DrawHalo: 0
+ m_Flare: {fileID: 0}
+ m_RenderMode: 0
+ m_CullingMask:
+ serializedVersion: 2
+ m_Bits: 4294967295
+ m_RenderingLayerMask: 1
+ m_Lightmapping: 4
+ m_LightShadowCasterMode: 2
+ m_AreaSize: {x: 0.5, y: 0.5}
+ m_BounceIntensity: 1
+ m_ColorTemperature: 6570
+ m_UseColorTemperature: 1
+ m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0}
+ m_UseBoundingSphereOverride: 0
+ m_UseViewFrustumForShadowCasterCull: 1
+ m_ShadowRadius: 0.1
+ m_ShadowAngle: 0
+--- !u!4 &774345918
+Transform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 774345915}
+ m_LocalRotation: {x: 0.27059805, y: -0.6532815, z: 0.27059805, w: 0.6532815}
+ m_LocalPosition: {x: 0, y: 1, z: 0.75}
+ m_LocalScale: {x: 1, y: 1, z: 1}
+ m_ConstrainProportionsScale: 0
+ m_Children:
+ - {fileID: 664233134}
+ m_Father: {fileID: 0}
+ m_RootOrder: 3
+ m_LocalEulerAnglesHint: {x: 45, y: -90, z: 0}
+--- !u!1 &854104168
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 854104171}
+ - component: {fileID: 854104170}
+ - component: {fileID: 854104169}
+ m_Layer: 0
+ m_Name: Point LightTransparent
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!114 &854104169
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 854104168}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 7a68c43fe1f2a47cfa234b5eeaa98012, type: 3}
+ m_Name:
+ m_EditorClassIdentifier:
+ m_Intensity: 600
+ m_EnableSpotReflector: 1
+ m_LuxAtDistance: 1
+ m_InnerSpotPercent: 0
+ m_SpotIESCutoffPercent: 100
+ m_LightDimmer: 1
+ m_VolumetricDimmer: 1
+ m_LightUnit: 0
+ m_FadeDistance: 10000
+ m_VolumetricFadeDistance: 10000
+ m_AffectDiffuse: 1
+ m_AffectSpecular: 1
+ m_NonLightmappedOnly: 0
+ m_ShapeWidth: 0.5
+ m_ShapeHeight: 0.5
+ m_AspectRatio: 1
+ m_ShapeRadius: 0.1
+ m_SoftnessScale: 1
+ m_UseCustomSpotLightShadowCone: 0
+ m_CustomSpotLightShadowCone: 30
+ m_MaxSmoothness: 0.99
+ m_ApplyRangeAttenuation: 1
+ m_DisplayAreaLightEmissiveMesh: 0
+ m_AreaLightCookie: {fileID: 0}
+ m_IESPoint: {fileID: 0}
+ m_IESSpot: {fileID: 0}
+ m_IncludeForRayTracing: 1
+ m_AreaLightShadowCone: 120
+ m_UseScreenSpaceShadows: 0
+ m_InteractsWithSky: 1
+ m_AngularDiameter: 0.5
+ m_FlareSize: 2
+ m_FlareTint: {r: 1, g: 1, b: 1, a: 1}
+ m_FlareFalloff: 4
+ m_SurfaceTexture: {fileID: 0}
+ m_SurfaceTint: {r: 1, g: 1, b: 1, a: 1}
+ m_Distance: 1.5e+11
+ m_UseRayTracedShadows: 1
+ m_NumRayTracingSamples: 1
+ m_FilterTracedShadow: 1
+ m_FilterSizeTraced: 8
+ m_SunLightConeAngle: 0.5
+ m_LightShadowRadius: 0.5
+ m_SemiTransparentShadow: 1
+ m_ColorShadow: 1
+ m_DistanceBasedFiltering: 0
+ m_EvsmExponent: 15
+ m_EvsmLightLeakBias: 0
+ m_EvsmVarianceBias: 0.00001
+ m_EvsmBlurPasses: 0
+ m_LightlayersMask: 1
+ m_LinkShadowLayers: 1
+ m_ShadowNearPlane: 0.1
+ m_BlockerSampleCount: 24
+ m_FilterSampleCount: 16
+ m_MinFilterSize: 0.1
+ m_KernelSize: 5
+ m_LightAngle: 1
+ m_MaxDepthBias: 0.001
+ m_ShadowResolution:
+ m_Override: 512
+ m_UseOverride: 1
+ m_Level: 0
+ m_ShadowDimmer: 1
+ m_VolumetricShadowDimmer: 1
+ m_ShadowFadeDistance: 10000
+ m_UseContactShadow:
+ m_Override: 0
+ m_UseOverride: 1
+ m_Level: 0
+ m_RayTracedContactShadow: 0
+ m_ShadowTint: {r: 0, g: 0, b: 0, a: 1}
+ m_PenumbraTint: 0
+ m_NormalBias: 0.75
+ m_SlopeBias: 0.5
+ m_ShadowUpdateMode: 0
+ m_AlwaysDrawDynamicShadows: 0
+ m_UpdateShadowOnLightMovement: 0
+ m_CachedShadowTranslationThreshold: 0.01
+ m_CachedShadowAngularThreshold: 0.5
+ m_BarnDoorAngle: 90
+ m_BarnDoorLength: 0.05
+ m_preserveCachedShadow: 0
+ m_OnDemandShadowRenderOnPlacement: 1
+ m_ShadowCascadeRatios:
+ - 0.05
+ - 0.2
+ - 0.3
+ m_ShadowCascadeBorders:
+ - 0.2
+ - 0.2
+ - 0.2
+ - 0.2
+ m_ShadowAlgorithm: 0
+ m_ShadowVariant: 0
+ m_ShadowPrecision: 0
+ useOldInspector: 0
+ useVolumetric: 1
+ featuresFoldout: 1
+ m_AreaLightEmissiveMeshShadowCastingMode: 0
+ m_AreaLightEmissiveMeshMotionVectorGenerationMode: 0
+ m_AreaLightEmissiveMeshLayer: -1
+ m_Version: 11
+ m_ObsoleteShadowResolutionTier: 1
+ m_ObsoleteUseShadowQualitySettings: 0
+ m_ObsoleteCustomShadowResolution: 512
+ m_ObsoleteContactShadows: 0
+ m_PointlightHDType: 0
+ m_SpotLightShape: 0
+ m_AreaLightShape: 0
+--- !u!108 &854104170
+Light:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 854104168}
+ m_Enabled: 1
+ serializedVersion: 10
+ m_Type: 0
+ m_Shape: 0
+ m_Color: {r: 1, g: 1, b: 1, a: 1}
+ m_Intensity: 1222.1244
+ m_Range: 2
+ m_SpotAngle: 45.6
+ m_InnerSpotAngle: 21.80208
+ m_CookieSize: 10
+ m_Shadows:
+ m_Type: 1
+ m_Resolution: -1
+ m_CustomResolution: -1
+ m_Strength: 1
+ m_Bias: 0.05
+ m_NormalBias: 0.4
+ m_NearPlane: 0.2
+ m_CullingMatrixOverride:
+ e00: 1
+ e01: 0
+ e02: 0
+ e03: 0
+ e10: 0
+ e11: 1
+ e12: 0
+ e13: 0
+ e20: 0
+ e21: 0
+ e22: 1
+ e23: 0
+ e30: 0
+ e31: 0
+ e32: 0
+ e33: 1
+ m_UseCullingMatrixOverride: 0
+ m_Cookie: {fileID: 0}
+ m_DrawHalo: 0
+ m_Flare: {fileID: 0}
+ m_RenderMode: 0
+ m_CullingMask:
+ serializedVersion: 2
+ m_Bits: 4294967295
+ m_RenderingLayerMask: 1
+ m_Lightmapping: 4
+ m_LightShadowCasterMode: 2
+ m_AreaSize: {x: 0.5, y: 0.5}
+ m_BounceIntensity: 1
+ m_ColorTemperature: 6570
+ m_UseColorTemperature: 1
+ m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0}
+ m_UseBoundingSphereOverride: 0
+ m_UseViewFrustumForShadowCasterCull: 1
+ m_ShadowRadius: 0.1
+ m_ShadowAngle: 0
+--- !u!4 &854104171
+Transform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 854104168}
+ m_LocalRotation: {x: 0.27059805, y: -0.6532815, z: 0.27059805, w: 0.6532815}
+ m_LocalPosition: {x: 0, y: 1, z: -1}
+ m_LocalScale: {x: 1, y: 1, z: 1}
+ m_ConstrainProportionsScale: 0
+ m_Children:
+ - {fileID: 261440656}
+ m_Father: {fileID: 0}
+ m_RootOrder: 4
+ m_LocalEulerAnglesHint: {x: 45, y: -90, z: 0}
diff --git a/TestProjects/HDRP_DXR_Tests/Assets/Scenes/716_SpotShadow_Matte_Edge.unity.meta b/TestProjects/HDRP_DXR_Tests/Assets/Scenes/716_SpotShadow_Matte_Edge.unity.meta
new file mode 100644
index 00000000000..690a3c39abf
--- /dev/null
+++ b/TestProjects/HDRP_DXR_Tests/Assets/Scenes/716_SpotShadow_Matte_Edge.unity.meta
@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: ce93c6d12f3215e4f91492941b86e47e
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/TestProjects/HDRP_DXR_Tests/ProjectSettings/EditorBuildSettings.asset b/TestProjects/HDRP_DXR_Tests/ProjectSettings/EditorBuildSettings.asset
index 4486c0cb32c..e0775ea4eb5 100644
--- a/TestProjects/HDRP_DXR_Tests/ProjectSettings/EditorBuildSettings.asset
+++ b/TestProjects/HDRP_DXR_Tests/ProjectSettings/EditorBuildSettings.asset
@@ -251,6 +251,12 @@ EditorBuildSettings:
- enabled: 1
path: Assets/Scenes/714_AreaShadow_Matte.unity
guid: b4e3d982133c1c24cad67533f4a204ee
+ - enabled: 1
+ path: Assets/Scenes/715_PointShadow_Matte_Edge.unity
+ guid: 6bb64157e4d92ed43a51a4c3582d7d32
+ - enabled: 1
+ path: Assets/Scenes/716_SpotShadow_Matte_Edge.unity
+ guid: ce93c6d12f3215e4f91492941b86e47e
- enabled: 1
path: Assets/Scenes/717_DirectionalLightTransmission.unity
guid: ba799739088f73744873fb5720fcddd3
diff --git a/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/LinuxEditor/Vulkan/None/1705_Decals-stress-test.png b/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/LinuxEditor/Vulkan/None/1705_Decals-stress-test.png
index ecc2506c123..c75c2f1e28a 100644
--- a/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/LinuxEditor/Vulkan/None/1705_Decals-stress-test.png
+++ b/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/LinuxEditor/Vulkan/None/1705_Decals-stress-test.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:c2007e58e8b93590d38031207b067094640829ec887b86b230681be55f613efb
-size 227829
+oid sha256:aed6e0893c74c6c65bdb0813ed1e238a8caeb4b7430ace157b20b082c3d49052
+size 227125
diff --git a/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/LinuxEditor/Vulkan/None/2551_SSR.png b/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/LinuxEditor/Vulkan/None/2551_SSR.png
index 2b46f27886c..4cac355c1f9 100644
--- a/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/LinuxEditor/Vulkan/None/2551_SSR.png
+++ b/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/LinuxEditor/Vulkan/None/2551_SSR.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:fb40216df7d6a01b50f427310bf1aad2c088e2d2398920fe7e0fa99ae3275afe
-size 148213
+oid sha256:ccd55d3989e04b35a5015c60d1ad5b0275be1df427d64cde0eba43a070c0ade6
+size 300
diff --git a/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/LinuxEditor/Vulkan/None/5004_Pbr_Sky_High_Altitude.png b/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/LinuxEditor/Vulkan/None/5004_Pbr_Sky_High_Altitude.png
index d8c5b41fe1d..9325c13d41f 100644
--- a/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/LinuxEditor/Vulkan/None/5004_Pbr_Sky_High_Altitude.png
+++ b/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/LinuxEditor/Vulkan/None/5004_Pbr_Sky_High_Altitude.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:46ef2a4cd65911092d22c9a921409f47fd8eb8a8fd84a2f2f3ba14132074e18e
-size 801933
+oid sha256:aab4d2dfaaf8eaea6d76da4b99868c4d49d99bb19e8b7c015e7d44b719e7f2cf
+size 699124
diff --git a/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/LinuxEditor/Vulkan/None/5005_Pbr_Sky_Med_Altitude.png b/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/LinuxEditor/Vulkan/None/5005_Pbr_Sky_Med_Altitude.png
index d97fc4d03bd..db920b87fb2 100644
--- a/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/LinuxEditor/Vulkan/None/5005_Pbr_Sky_Med_Altitude.png
+++ b/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/LinuxEditor/Vulkan/None/5005_Pbr_Sky_Med_Altitude.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:4b0c184fe3a2f65d4f8210a3c7342d0a232fcd0e8dd9c3ec23ce1ef2ee90c7cd
-size 264343
+oid sha256:e4ebe4802faa276ad414cf52ff007b18316cff7ed78f4c5a1dfe3d74aabb5ca7
+size 233422
diff --git a/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/LinuxEditor/Vulkan/None/5006_Pbr_Sky_Low_Altitude.png b/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/LinuxEditor/Vulkan/None/5006_Pbr_Sky_Low_Altitude.png
index 21423657673..9c50346f85d 100644
--- a/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/LinuxEditor/Vulkan/None/5006_Pbr_Sky_Low_Altitude.png
+++ b/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/LinuxEditor/Vulkan/None/5006_Pbr_Sky_Low_Altitude.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:0a47dee53c90f8c8e1e8f6b69f3ee0a88d540ce4767372b7d18d3e5816f4401c
-size 105068
+oid sha256:17cf11c156a4031b19e8ef801958d106197d14f7e5788e1de35d17904439385d
+size 92121
diff --git a/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/OSXEditor/Metal/None/1705_Decals-stress-test.png b/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/OSXEditor/Metal/None/1705_Decals-stress-test.png
index dc5c31fb84a..2c4a035c19f 100644
--- a/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/OSXEditor/Metal/None/1705_Decals-stress-test.png
+++ b/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/OSXEditor/Metal/None/1705_Decals-stress-test.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:cb980466cf8b2b9285d5280e9ef46702d5f441b00af4dc7b1ba0d68d65742a02
-size 231363
+oid sha256:9c56fbe1f27b43dc66ee11c7a16add002852dbc0de7363bf46362f950778687e
+size 223398
diff --git a/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/OSXEditor/Metal/None/5004_Pbr_Sky_High_Altitude.png b/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/OSXEditor/Metal/None/5004_Pbr_Sky_High_Altitude.png
index b5182262ac6..3152c5b6250 100644
--- a/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/OSXEditor/Metal/None/5004_Pbr_Sky_High_Altitude.png
+++ b/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/OSXEditor/Metal/None/5004_Pbr_Sky_High_Altitude.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:aa2586bc9a522e81bd7914c5c603d07ef80f85c93d45c452296b3525a7c16838
-size 701578
+oid sha256:9fac299733232dcae72a314e227eb3d8e0204408ea5f4456c13ec1243ee69585
+size 701245
diff --git a/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/OSXEditor/Metal/None/5005_Pbr_Sky_Med_Altitude.png b/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/OSXEditor/Metal/None/5005_Pbr_Sky_Med_Altitude.png
index ff42408aa5b..6906db7e748 100644
--- a/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/OSXEditor/Metal/None/5005_Pbr_Sky_Med_Altitude.png
+++ b/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/OSXEditor/Metal/None/5005_Pbr_Sky_Med_Altitude.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:3b251e69e598fb07a8541dfa06ea7ad5fcd836de08aa00dd09dfc9bf4f885fc0
-size 208550
+oid sha256:9d600ae745c587a3ae5d9d9efebea1577fa874590a4400e17460533af224df50
+size 207320
diff --git a/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/OSXEditor/Metal/None/5006_Pbr_Sky_Low_Altitude.png b/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/OSXEditor/Metal/None/5006_Pbr_Sky_Low_Altitude.png
index ec3a216e548..51deca60897 100644
--- a/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/OSXEditor/Metal/None/5006_Pbr_Sky_Low_Altitude.png
+++ b/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/OSXEditor/Metal/None/5006_Pbr_Sky_Low_Altitude.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:e52ec8d9e57626d175f26ce3303ff38abd57b1204543ef0d5e6375b523baae40
-size 74986
+oid sha256:0d15a48883b9879272258b0643f9efc79801f1cf1734660e716b69d02d19afb4
+size 74199
diff --git a/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D11/None/1705_Decals-stress-test.png b/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D11/None/1705_Decals-stress-test.png
index ba84aea3eb6..18d22296987 100644
--- a/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D11/None/1705_Decals-stress-test.png
+++ b/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D11/None/1705_Decals-stress-test.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:9782b8e1c0c09dcae4ffccbdc2d13c4e24b294d642969918a770a9227fb9aaa1
-size 230013
+oid sha256:4e4a1e6de695de3b99e74c2cba6f15f9528a549c25363ef747eb905a7fdfde09
+size 229750
diff --git a/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D11/None/5004_Pbr_Sky_High_Altitude.png b/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D11/None/5004_Pbr_Sky_High_Altitude.png
index c58d3f3a913..2e6671fc087 100644
--- a/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D11/None/5004_Pbr_Sky_High_Altitude.png
+++ b/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D11/None/5004_Pbr_Sky_High_Altitude.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:20496acf0100e1cc5bba8e0e46aaaa2152be815e3f5a1abeb7964837a6347fb7
-size 698615
+oid sha256:d67e5f5a1ea9313305d3cbd3cb77d8387bcac1dfeae87885cecdb0a863c97348
+size 698960
diff --git a/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D11/None/5005_Pbr_Sky_Med_Altitude.png b/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D11/None/5005_Pbr_Sky_Med_Altitude.png
index 0d12b3f2dd5..5bb19310a5f 100644
--- a/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D11/None/5005_Pbr_Sky_Med_Altitude.png
+++ b/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D11/None/5005_Pbr_Sky_Med_Altitude.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:27e77e06fff20608349ac590aec7310b38fb56edb763712ecdb6391f9f14f708
-size 234387
+oid sha256:64d0a498c809ee4495bb7478153de2861816a477a08c9e05febf4850c3ac9393
+size 233511
diff --git a/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D11/None/5006_Pbr_Sky_Low_Altitude.png b/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D11/None/5006_Pbr_Sky_Low_Altitude.png
index 5df030e6dff..cd9d105a500 100644
--- a/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D11/None/5006_Pbr_Sky_Low_Altitude.png
+++ b/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D11/None/5006_Pbr_Sky_Low_Altitude.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:30696614b8d2a88611dcc2aaa1202fe78848a5f1c16ec8024aacb32d9163ed10
-size 93594
+oid sha256:671e18b61f33595f0f371bf2de0d16a98dbf97253bbea73761f36c54374d97c8
+size 92277
diff --git a/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D12/None/1705_Decals-stress-test.png b/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D12/None/1705_Decals-stress-test.png
index 5e81dca5bf1..18d22296987 100644
--- a/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D12/None/1705_Decals-stress-test.png
+++ b/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D12/None/1705_Decals-stress-test.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:68f6ecea323e85af27235afce8c40ce4a79a50be3aaaa1a0137e5027fe1ff648
-size 263085
+oid sha256:4e4a1e6de695de3b99e74c2cba6f15f9528a549c25363ef747eb905a7fdfde09
+size 229750
diff --git a/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D12/None/5004_Pbr_Sky_High_Altitude.png b/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D12/None/5004_Pbr_Sky_High_Altitude.png
index 525dcbccff0..023c073a34c 100644
--- a/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D12/None/5004_Pbr_Sky_High_Altitude.png
+++ b/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D12/None/5004_Pbr_Sky_High_Altitude.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:015fba9c0cc74ff1863876c20c7fcd54fbd3cf3adb49c5d22ad9907399d79032
-size 801874
+oid sha256:e29cd897765b3328297aecdf5002049eae01131f0a2ee8078d9f3a96704cd6c5
+size 698953
diff --git a/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D12/None/5005_Pbr_Sky_Med_Altitude.png b/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D12/None/5005_Pbr_Sky_Med_Altitude.png
index b76eec6f179..716fb9b6617 100644
--- a/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D12/None/5005_Pbr_Sky_Med_Altitude.png
+++ b/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D12/None/5005_Pbr_Sky_Med_Altitude.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:0e096d7e00b88ad322c8ca1959b350390b5857522d64d8e502e18cf68f4a793f
-size 264473
+oid sha256:9675cc9249cba5ef9562d443e9ad8c0d85bf46251a4c89a9b95873c1e7e84913
+size 233609
diff --git a/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D12/None/5006_Pbr_Sky_Low_Altitude.png b/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D12/None/5006_Pbr_Sky_Low_Altitude.png
index 094fcebbda7..bf5d7ec51b4 100644
--- a/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D12/None/5006_Pbr_Sky_Low_Altitude.png
+++ b/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Direct3D12/None/5006_Pbr_Sky_Low_Altitude.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:44233b87b3a46accb5f504529a9376995f6c01599fc490d84fe9284f1b91dbaf
-size 105079
+oid sha256:fb63d23c70ff18dba09b04b3f32434e08dc7fc56baff8bc15f18eafd1ae9c90a
+size 92198
diff --git a/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Vulkan/None/1705_Decals-stress-test.png b/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Vulkan/None/1705_Decals-stress-test.png
index ecc2506c123..c75c2f1e28a 100644
--- a/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Vulkan/None/1705_Decals-stress-test.png
+++ b/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Vulkan/None/1705_Decals-stress-test.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:c2007e58e8b93590d38031207b067094640829ec887b86b230681be55f613efb
-size 227829
+oid sha256:aed6e0893c74c6c65bdb0813ed1e238a8caeb4b7430ace157b20b082c3d49052
+size 227125
diff --git a/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Vulkan/None/5004_Pbr_Sky_High_Altitude.png b/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Vulkan/None/5004_Pbr_Sky_High_Altitude.png
index 9271d6fc757..9325c13d41f 100644
--- a/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Vulkan/None/5004_Pbr_Sky_High_Altitude.png
+++ b/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Vulkan/None/5004_Pbr_Sky_High_Altitude.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:d578f4deaf15cb8fbf6c6d5767c996f3b40c941862547861db04538709388bee
-size 698957
+oid sha256:aab4d2dfaaf8eaea6d76da4b99868c4d49d99bb19e8b7c015e7d44b719e7f2cf
+size 699124
diff --git a/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Vulkan/None/5005_Pbr_Sky_Med_Altitude.png b/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Vulkan/None/5005_Pbr_Sky_Med_Altitude.png
index 548cedbf47d..db920b87fb2 100644
--- a/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Vulkan/None/5005_Pbr_Sky_Med_Altitude.png
+++ b/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Vulkan/None/5005_Pbr_Sky_Med_Altitude.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:4ff914d8b94326d5c7b8c714e6c40f0baed49e1a44c262a92d693a055e9f76a0
-size 234391
+oid sha256:e4ebe4802faa276ad414cf52ff007b18316cff7ed78f4c5a1dfe3d74aabb5ca7
+size 233422
diff --git a/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Vulkan/None/5006_Pbr_Sky_Low_Altitude.png b/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Vulkan/None/5006_Pbr_Sky_Low_Altitude.png
index de6df70c1cb..9c50346f85d 100644
--- a/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Vulkan/None/5006_Pbr_Sky_Low_Altitude.png
+++ b/TestProjects/HDRP_Tests/Assets/ReferenceImages/Linear/WindowsEditor/Vulkan/None/5006_Pbr_Sky_Low_Altitude.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:d010c5c072451be22ec6e747406a98474e2a6e6c518a16cba136f26c1baa7661
-size 93601
+oid sha256:17cf11c156a4031b19e8ef801958d106197d14f7e5788e1de35d17904439385d
+size 92121
diff --git a/com.unity.render-pipelines.core/CHANGELOG.md b/com.unity.render-pipelines.core/CHANGELOG.md
index 461753f89e0..fde1380c5b6 100644
--- a/com.unity.render-pipelines.core/CHANGELOG.md
+++ b/com.unity.render-pipelines.core/CHANGELOG.md
@@ -6,8 +6,8 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
## [12.1.3] - 2021-11-17
-Version Updated
-The version number for this package has increased due to a version update of a related graphics package.
+### Fixed
+- Fixed XR support in CoreUtils.DrawFullscreen function.
## [12.1.2] - 2021-10-22
diff --git a/com.unity.render-pipelines.core/Runtime/PostProcessing/LensFlareCommonSRP.cs b/com.unity.render-pipelines.core/Runtime/PostProcessing/LensFlareCommonSRP.cs
index a004846a974..82618eb2af5 100644
--- a/com.unity.render-pipelines.core/Runtime/PostProcessing/LensFlareCommonSRP.cs
+++ b/com.unity.render-pipelines.core/Runtime/PostProcessing/LensFlareCommonSRP.cs
@@ -666,6 +666,12 @@ static public void DoLensFlareDataDrivenCommon(Material lensFlareShader, LensFla
}
Vector3 diffToObject = positionWS - cameraPositionWS;
+ // Check if the light is forward, can be an issue with,
+ // the math associated to Panini projection
+ if (Vector3.Dot(cam.transform.forward, diffToObject) < 0.0f)
+ {
+ continue;
+ }
float distToObject = diffToObject.magnitude;
float coefDistSample = distToObject / comp.maxAttenuationDistance;
float coefScaleSample = distToObject / comp.maxAttenuationScale;
diff --git a/com.unity.render-pipelines.core/Runtime/Utilities/CoreUtils.cs b/com.unity.render-pipelines.core/Runtime/Utilities/CoreUtils.cs
index 51cb6e77cd0..6e75ec6dee6 100644
--- a/com.unity.render-pipelines.core/Runtime/Utilities/CoreUtils.cs
+++ b/com.unity.render-pipelines.core/Runtime/Utilities/CoreUtils.cs
@@ -795,7 +795,7 @@ public static void DrawFullScreen(CommandBuffer commandBuffer, Material material
RenderTargetIdentifier colorBuffer,
MaterialPropertyBlock properties = null, int shaderPassId = 0)
{
- commandBuffer.SetRenderTarget(colorBuffer);
+ commandBuffer.SetRenderTarget(colorBuffer, 0, CubemapFace.Unknown, -1);
commandBuffer.DrawProcedural(Matrix4x4.identity, material, shaderPassId, MeshTopology.Triangles, 3, 1, properties);
}
diff --git a/com.unity.render-pipelines.high-definition/CHANGELOG.md b/com.unity.render-pipelines.high-definition/CHANGELOG.md
index 9d842910262..fdfe11f78e1 100644
--- a/com.unity.render-pipelines.high-definition/CHANGELOG.md
+++ b/com.unity.render-pipelines.high-definition/CHANGELOG.md
@@ -16,6 +16,18 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
- Fixed stackLit coat screen space reflection and raytrace reflection light hierarchy and IBL fallback
- Fixed custom pass utils Blur and Copy functions in XR.
- Fixed SpeedTree graph compatibility by removing custom interpolators.
+- Fixed edges and ghosting appearing on shadow matte due to the shadow being black outside the range of the light (case 1371441).
+- Fixed interpolation issue with wind orientation (case 1379841).
+- Fixed range fields for depth of field (case 1376609).
+- Fixed exception on DLSS when motion vectors are disabled (case # 1377986).
+- Fixed Lens Flare visible when being behind a camera with Panini Projection on (case 1370214)
+- Fixed alpha channel display in color picker in Local Volumetric Fog component (the alpha is not used for the fog) (case 1381267).
+- Fixed default numbder of physically based sky bounce from 8 to 3
+- Fixed decal performances when they use different material and the same draw order.
+- Fixed Nans happening due to volumetric clouds when the pixel color is perfectly black (case 1379185).
+- Fixed missing information in the tooltip of affects smooth surfaces of the ray traced reflections denoiser (case 1376918).
+- Fixed objects belonging to preview scenes being marked as dirty during migration (case 1367204).
+- Fixed compilation errors from Path Tracing on the PS5 build.
## [12.1.2] - 2021-10-22
diff --git a/com.unity.render-pipelines.high-definition/Documentation~/Default-Settings-Window.md b/com.unity.render-pipelines.high-definition/Documentation~/Default-Settings-Window.md
index 67c32ce1d9c..e664cef8a8a 100644
--- a/com.unity.render-pipelines.high-definition/Documentation~/Default-Settings-Window.md
+++ b/com.unity.render-pipelines.high-definition/Documentation~/Default-Settings-Window.md
@@ -1,6 +1,6 @@
# HDRP Global Settings Window
-The High Definition Render Pipeline (HDRP) adds the HDRP Settings tab to Unity's Graphics Settings window. You can use this tab to set up default settings for certain features in your Project. You can:
+The High Definition Render Pipeline (HDRP) adds the HDRP Settings tab to Unity's Graphics Settings window. Use this tab to set up default settings for certain features in your Project. You can:
- Assign Render Pipeline Resources Assets for your HDRP Project.
- Set the verboseness of Shader variant information that Unity writes to the Console window when you build your Project.
@@ -11,19 +11,25 @@ The HDRP Settings tab is part of the Graphics Settings window. To get to this ta
## Volume Profiles
-You can use this section to assign and edit a [Volume Profile](Volume-Profile.md) that [Volumes](Volumes.md) use by default in your Scenes. You do not need to create a Volume for this specific Volume Profile to be active, because HDRP always processes it as if it is assigned to a global Volume in the Scene, but with the lowest priority. This means that any Volume that you add to a Scene takes priority.
+You can use the **Volume Profiles** section to assign and edit a [Volume Profile](Volume-Profile.md) that [Volumes](Volumes.md) use by default in your Scenes. You do not need to create a Volume for this specific Volume Profile to be active, because HDRP always processes it as if it's assigned to a global Volume in the Scene, but with the lowest priority. This means that any Volume that you add to a Scene takes priority.
-The Default Volume Profile Asset references a Volume Profile in the HDRP Package folder called DefaultSettingsVolumeProfile by default. Below it, you can add [Volume overrides](Volume-Components.md), and edit their properties. You can also assign your own Volume Profile to this property field. Be aware that this property must always reference a Volume Profile. If you assign your own Volume Profile and then delete it, HDRP automatically re-assigns the DefaultSettingsVolumeProfile from the HDRP Package folder.
+The **Default Volume Profile Asset** (A) references a Volume Profile in the HDRP package folder called `DefaultSettingsVolumeProfile` by default. Below it, you can add [Volume overrides](Volume-Components.md), and edit their properties. You can assign your own Volume Profile to this property field. Be aware that this property must always reference a Volume Profile. If you assign your own Volume Profile and then delete it, HDRP automatically re-assigns the `DefaultSettingsVolumeProfile` from the HDRP package folder.
-The LookDev Volume Profile Asset references the Volume Profile HDRP uses in the [LookDev window](Look-Dev.md). This Asset works in almost the same way as the Default Volume Profile Asset, except that it overrides [Visual Environment Components](Override-Visual-Environment.md) and sky components.
+The **LookDev Volume Profile Asset** (B) references the Volume Profile HDRP uses in the [LookDev window](Look-Dev.md). This Asset works in almost the same way as the Default Volume Profile Asset, except that it overrides [Visual Environment Components](Override-Visual-Environment.md) and sky components.
## Diffusion Profile Assets
Use this section to select which custom [Diffusion Profiles](Diffusion-Profile.md) can be in view at the same time. To use more than 15 custom Diffusion Profiles in a Scene, use the [Diffusion Profile Override](Override-Diffusion-Profile.md) inside a Volume. This allows you to specify which Diffusion Profiles to use in a certain area (or in the Scene if the Volume is global).
-## Frame Settings
+The following image shows the Diffusion Profile Assets section set up for HDRP's default scene:
-The [Frame Settings](Frame-Settings.md) control the rendering passes that Cameras make at runtime. Use this section to set default values for the Frame Settings that all Cameras use if you do not enable their Custom Frame Settings checkbox. For information about what each property does, see [Frame Settings](Frame-Settings.md).
+
+
+## Frame Settings (Default Values)
+
+The [Frame Settings](Frame-Settings.md) control the rendering passes that Cameras perform at runtime.
+
+Use this section to set default values for the Frame Settings that all Cameras use if you don't enable their Custom Frame Settings checkbox. For information about what each property does, see [Frame Settings](Frame-Settings.md).
## Layers Names
@@ -34,26 +40,29 @@ The [Frame Settings](Frame-Settings.md) control the rendering passes that Camera
## Custom Post Process Orders
-Use this section to select which custom post processing effect will be used in the project and in which order they will be executed.
-You have one list per post processing injection point: `After Opaque And Sky`, `Before Post Process` and `After Post Process`. See the [Custom Post Process](Custom-Post-Process.md) documentation for more details.
+Use this section to select which custom post processing effect HDRP uses in the project and at which stage in the render pipeline it executes them.
+
+HDRP provides one list for each post processing injection point. See the [Custom Post Process](Custom-Post-Process.md) documentation for more details.
+
+
## Miscellaneous
| **Property** | **Description** |
| --------------------------| ------------------------------------------------------------ |
-| Shader Variant Log Level | Use the drop-down to select what information HDRP logs about Shader variants when you build your Unity Project. • Disabled: HDRP doesn’t log any Shader variant information.• Only HDRP Shaders: Only log Shader variant information for HDRP Shaders.• All Shaders: Log Shader variant information for every Shader type. |
-| Lens Attenuation Mode | Set the attenuation mode of the lens that is used to compute exposure. With imperfect lens some energy is lost when converting from EV100 to the exposure multiplier, while a perfect lens has no attenuation and no energy is lost. |
-| Dynamic Render Pass Culling | When this option is enabled, HDRP will use the RendererList API to dynamically skip certain drawing passes based on the type of currently visible objects. For example if no objects with distortion are drawn, the Render Graph passes that draw the distortion effect (and their dependencies - like the color pyramid generation) will be skipped.
-| Use DLSS Custom Project Id | Controls whether to use a custom project ID for the NVIDIA Deep Learning Super Sampling module. If you enable this property, you can use **DLSS Custom Project Id** to specify a custom project ID.
This property only appears if you enable the NVIDIA package (com.unity.modules.nvidia) in your Unity project. |
-| DLSS Custom Project Id | Controls whether to use a custom project ID for the NVIDIA Deep Learning Super Sampling (DLSS) module. If you enable this property, you can use **DLSS Custom Project Id** to specify a custom project ID. If you disable this property, Unity generates a unique project ID.
This property only appears if you enable the NVIDIA package (com.unity.modules.nvidia) in your Unity project. |
-| Runtime Debug Shaders | When enabled, Unity includes shader variants that let you use the Rendering Debugger window to debug your build. When disabled, Unity excludes ("strips") these variants. Enable this when you want to debug your shaders in the Rendering Debugger window, and disable it otherwise. |
+| Shader Variant Log Level | Use the drop-down to select what information HDRP logs about Shader variants when you build your Unity Project.
• **Disabled**: HDRP doesn’t log any Shader variant information.
• **Only HDRP Shaders**: Only log Shader variant information for HDRP Shaders.
• **All Shaders**: Log Shader variant information for every Shader type. |
+| Lens Attenuation Mode | Set the attenuation mode of the lens that HDRP uses to compute exposure.
•**Imperfect lens**: This mode loses some energy when HDRP converts from EV100 to the exposure multiplier.
•**Perfect lens**: This mode has no attenuation and doesn't lose any energy. |
+| Dynamic Render Pass Culling | When you enable this option, HDRP uses the RendererList API to skip drawing passes based on the type of GameObjects visible in the current frame objects. For example, if HDRP doesn't draw an object with distortion, it skips the Render Graph passes that draw the distortion effect and their dependencies, like the color pyramid generation. |
+| Use DLSS Custom Project ID | Controls whether to use a custom project ID for the NVIDIA Deep Learning Super Sampling module. If you enable this property, you can use **DLSS Custom Project ID** to specify a custom project ID.
This property only appears if you enable the NVIDIA package (com.unity.modules.nvidia) in your Unity project. |
+| DLSS Custom Project ID | Controls whether to use a custom project ID for the NVIDIA Deep Learning Super Sampling (DLSS) module. If you enable this property, you can use **DLSS Custom Project ID** to specify a custom project ID. If you disable this property, Unity generates a unique project ID.
This property only appears if you enable the NVIDIA package (com.unity.modules.nvidia) in your Unity project. |
+| Runtime Debug Shaders | When enabled, Unity includes shader variants that let you use the Rendering Debugger window to debug your build. When disabled, Unity excludes (strips) these variants. Enable this when you want to debug your shaders in the Rendering Debugger window, and disable it otherwise. |
## Resources
-The Resources list includes the Shaders, Materials, Textures, and other Assets that the High Definition Render Pipeline (HDRP) uses.
+The Resources list includes the Shaders, Materials, Textures, and other Assets that HDRP uses.
| **Property** | **Description** |
| ------------------------- | ------------------------------------------------------------ |
-| **Player Resources** | Stores references to Shaders and Materials that HDRP uses. When you build your Unity Project, HDRP embeds all of the resources that this Asset references. It allows you to set up multiple render pipelines in a Unity Project and, when you build the Project, Unity only embeds Shaders and Materials relevant for that pipeline. This is the Scriptable Render Pipeline equivalent of Unity’s Resources folder mechanism. When you create a new HDRP Global Settings Asset, the HDRenderPipelineRuntimeResources from HDRP package is automatically referenced in it. |
-| **Ray Tracing Resources** | Stores references to Shaders and Materials that HDRP uses for ray tracing. HDRP stores these resources in a separate Asset file from the main pipeline resources so that it can use less memory for applications that don't support ray tracing. When you create a new HDRP Global Settings Asset, the HDRenderPipelineRayTracingResources from HDRP package is automatically referenced in it if your project use ray tracing. |
-| **Editor Resources** | Stores reference resources for the Editor only. Unity does not include these when you build your Unity Project. When you create a new HDRP Global Settings Asset, the HDRenderPipelineEditorResources from HDRP package is automatically referenced in it. |
+| **Player Resources** | Stores references to Shaders and Materials that HDRP uses. When you build your Unity Project, HDRP embeds all the resources that this Asset references.
Use this property to set up multiple render pipelines in a Unity Project. When you build the Project Unity only embeds Shaders and Materials relevant for that pipeline. This is the Scriptable Render Pipeline equivalent of Unity’s Resources folder mechanism.
When you create a new HDRP Global Settings Asset, the `HDRenderPipelineRuntimeResources` from HDRP package is automatically referenced in it. |
+| **Ray Tracing Resources** | Stores references to Shaders and Materials that HDRP uses for ray tracing.
HDRP stores these resources in a separate Asset file from the main pipeline resources so that it can use less memory for applications that don't support ray tracing. When you create a new HDRP Global Settings Asset, the `HDRenderPipelineRayTracingResources` from HDRP package is automatically referenced in it if your project use ray tracing. |
+| **Editor Resources** | Stores reference resources for the Editor only.
Unity doesn't include these when you build your Unity Project. When you create a new HDRP Global Settings Asset, the `HDRenderPipelineEditorResources` from HDRP package is automatically referenced in it. |
diff --git a/com.unity.render-pipelines.high-definition/Documentation~/Images/HDRPgs_Custom_PP.png b/com.unity.render-pipelines.high-definition/Documentation~/Images/HDRPgs_Custom_PP.png
new file mode 100644
index 00000000000..b2679570df9
--- /dev/null
+++ b/com.unity.render-pipelines.high-definition/Documentation~/Images/HDRPgs_Custom_PP.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:03c3d71ba6be538f6b1730124af5ad9382c3ac5c18ca247e0437c9a440fb9a22
+size 18954
diff --git a/com.unity.render-pipelines.high-definition/Documentation~/Images/HDRPgs_Diffusion_Profile_Assets.png b/com.unity.render-pipelines.high-definition/Documentation~/Images/HDRPgs_Diffusion_Profile_Assets.png
new file mode 100644
index 00000000000..36be2d28960
--- /dev/null
+++ b/com.unity.render-pipelines.high-definition/Documentation~/Images/HDRPgs_Diffusion_Profile_Assets.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:54de7d42ad74c852c159e38999c85c8df4675ac9430257dd4f644ff08f09c3c6
+size 36201
diff --git a/com.unity.render-pipelines.high-definition/Documentation~/Images/HDRPgs_Layers_Names.png b/com.unity.render-pipelines.high-definition/Documentation~/Images/HDRPgs_Layers_Names.png
new file mode 100644
index 00000000000..206457f5cb2
--- /dev/null
+++ b/com.unity.render-pipelines.high-definition/Documentation~/Images/HDRPgs_Layers_Names.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:28b329deabcdc42beacc668cddc72aa1b9ecc4f13da86d6cce7a3c1947a47f25
+size 8205
diff --git a/com.unity.render-pipelines.high-definition/Documentation~/Images/HDRPgs_Volume_Profiles.png b/com.unity.render-pipelines.high-definition/Documentation~/Images/HDRPgs_Volume_Profiles.png
new file mode 100644
index 00000000000..05c9436b782
--- /dev/null
+++ b/com.unity.render-pipelines.high-definition/Documentation~/Images/HDRPgs_Volume_Profiles.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:c2c6ba57a6dacee3466067d24f4074816f9093b7d1e7e0e525bc832297cf7bb3
+size 117466
diff --git a/com.unity.render-pipelines.high-definition/Documentation~/Override-Physically-Based-Sky.md b/com.unity.render-pipelines.high-definition/Documentation~/Override-Physically-Based-Sky.md
index 714545a6678..2a4cffe2394 100644
--- a/com.unity.render-pipelines.high-definition/Documentation~/Override-Physically-Based-Sky.md
+++ b/com.unity.render-pipelines.high-definition/Documentation~/Override-Physically-Based-Sky.md
@@ -130,6 +130,10 @@ The default values in either mode make it so the planet's surface is at **0** on
* If not in **Spherical Mode**, decrease the **Sea Level**.
+## Warmup cost
+
+This sky type requires heavy precomputation to be rendered. Because of this, the first few frames (depending on the *Number of bounces* parameter) are going to take much longer. This needs to be taken into consideration when switching from another sky type to the Physically Based Sky for example as it might produce a noticeable drop in framerate.
+
### Reference list
* Bruneton, Eric, and Fabrice Neyret. 2008. “Precomputed Atmospheric Scattering.” *Computer Graphics Forum* 27, no. 4 (2008): 1079–86. https://doi.org/10.1111/j.1467-8659.2008.01245.x.
diff --git a/com.unity.render-pipelines.high-definition/Editor/Lighting/Reflection/HDScreenSpaceReflectionEditor.cs b/com.unity.render-pipelines.high-definition/Editor/Lighting/Reflection/HDScreenSpaceReflectionEditor.cs
index 15f5cead0d3..8de585446d8 100644
--- a/com.unity.render-pipelines.high-definition/Editor/Lighting/Reflection/HDScreenSpaceReflectionEditor.cs
+++ b/com.unity.render-pipelines.high-definition/Editor/Lighting/Reflection/HDScreenSpaceReflectionEditor.cs
@@ -112,8 +112,8 @@ public override void OnEnable()
static public readonly GUIContent k_DenoiseText = EditorGUIUtility.TrTextContent("Denoise", "Enable denoising on the ray traced reflections.");
static public readonly GUIContent k_FullResolutionText = EditorGUIUtility.TrTextContent("Full Resolution", "Enables full resolution mode.");
static public readonly GUIContent k_DenoiseRadiusText = EditorGUIUtility.TrTextContent("Denoiser Radius", "Controls the radius of reflection denoiser.");
- static public readonly GUIContent k_AffectsSmoothSurfacesText = EditorGUIUtility.TrTextContent("Affect Smooth Surfaces", "When enabled, the denoiser affects perfectly smooth surfaces.");
- static public readonly GUIContent k_MaxMixedRaySteps = EditorGUIUtility.TrTextContent("Max Ray Steps", "Sets the maximum number of steps HDRP uses for mixed tracingg.");
+ static public readonly GUIContent k_AffectsSmoothSurfacesText = EditorGUIUtility.TrTextContent("Affects Smooth Surfaces", "When enabled, the denoiser also affects perfectly smooth surfaces. When you use Quality mode with multiple bounces, the denoiser always affects smooth surfaces by default.");
+ static public readonly GUIContent k_MaxMixedRaySteps = EditorGUIUtility.TrTextContent("Max Ray Steps", "Sets the maximum number of steps HDRP uses for mixed tracing.");
void RayTracingQualityModeGUI()
{
diff --git a/com.unity.render-pipelines.high-definition/Editor/PostProcessing/DepthOfFieldEditor.cs b/com.unity.render-pipelines.high-definition/Editor/PostProcessing/DepthOfFieldEditor.cs
index 614cc61e7ee..99d86902baf 100644
--- a/com.unity.render-pipelines.high-definition/Editor/PostProcessing/DepthOfFieldEditor.cs
+++ b/com.unity.render-pipelines.high-definition/Editor/PostProcessing/DepthOfFieldEditor.cs
@@ -117,10 +117,55 @@ void DrawFocusSettings(int mode)
}
else if (mode == (int)DepthOfFieldMode.Manual)
{
+ EditorGUI.BeginChangeCheck();
PropertyField(m_NearFocusStart, Styles.k_NearFocusStart);
+ if (EditorGUI.EndChangeCheck())
+ {
+ float maxBound = m_NearFocusEnd.overrideState.boolValue ? m_NearFocusEnd.value.floatValue :
+ m_FarFocusStart.overrideState.boolValue ? m_FarFocusStart.value.floatValue :
+ m_FarFocusEnd.overrideState.boolValue ? m_FarFocusEnd.value.floatValue : float.MaxValue;
+ if (m_NearFocusStart.value.floatValue >= maxBound)
+ m_NearFocusStart.value.floatValue = maxBound - 1e-5f;
+ }
+
+ EditorGUI.BeginChangeCheck();
PropertyField(m_NearFocusEnd, Styles.k_NearFocusEnd);
+ if (EditorGUI.EndChangeCheck())
+ {
+ float minBound = m_NearFocusStart.overrideState.boolValue ? m_NearFocusStart.value.floatValue : float.MinValue;
+ if (m_NearFocusEnd.value.floatValue <= minBound)
+ m_NearFocusEnd.value.floatValue = minBound + 1e-5f;
+
+ float maxBound = m_FarFocusStart.overrideState.boolValue ? m_FarFocusStart.value.floatValue :
+ m_FarFocusEnd.overrideState.boolValue ? m_FarFocusEnd.value.floatValue : float.MaxValue;
+ if (m_NearFocusEnd.value.floatValue >= maxBound)
+ m_NearFocusEnd.value.floatValue = maxBound - 1e-5f;
+ }
+
+ EditorGUI.BeginChangeCheck();
PropertyField(m_FarFocusStart, Styles.k_FarFocusStart);
+ if (EditorGUI.EndChangeCheck())
+ {
+ float minBound = m_NearFocusEnd.overrideState.boolValue ? m_NearFocusEnd.value.floatValue :
+ m_NearFocusStart.overrideState.boolValue ? m_NearFocusStart.value.floatValue : float.MinValue;
+ if (m_FarFocusStart.value.floatValue <= minBound)
+ m_FarFocusStart.value.floatValue = minBound + 1e-5f;
+
+ float maxBound = m_FarFocusEnd.overrideState.boolValue ? m_FarFocusEnd.value.floatValue : float.MaxValue;
+ if (m_FarFocusStart.value.floatValue >= maxBound)
+ m_FarFocusStart.value.floatValue = maxBound - 1e-5f;
+ }
+
+ EditorGUI.BeginChangeCheck();
PropertyField(m_FarFocusEnd, Styles.k_FarFocusEnd);
+ if (EditorGUI.EndChangeCheck())
+ {
+ float minBound = m_FarFocusStart.overrideState.boolValue ? m_FarFocusStart.value.floatValue :
+ m_NearFocusEnd.overrideState.boolValue ? m_NearFocusEnd.value.floatValue :
+ m_NearFocusStart.overrideState.boolValue ? m_NearFocusStart.value.floatValue : float.MinValue;
+ if (m_FarFocusEnd.value.floatValue <= minBound)
+ m_FarFocusEnd.value.floatValue = minBound + 1e-5f;
+ }
}
}
diff --git a/com.unity.render-pipelines.high-definition/Editor/SceneTemplates/Outdoors/SkyandFogSettingsProfile.asset b/com.unity.render-pipelines.high-definition/Editor/SceneTemplates/Outdoors/SkyandFogSettingsProfile.asset
index b60f94a79e6..2a7f356d5fa 100644
--- a/com.unity.render-pipelines.high-definition/Editor/SceneTemplates/Outdoors/SkyandFogSettingsProfile.asset
+++ b/com.unity.render-pipelines.high-definition/Editor/SceneTemplates/Outdoors/SkyandFogSettingsProfile.asset
@@ -13,12 +13,9 @@ MonoBehaviour:
m_Name:
m_EditorClassIdentifier:
active: 1
- m_AdvancedMode: 0
rotation:
m_OverrideState: 0
m_Value: 0
- min: 0
- max: 360
skyIntensityMode:
m_OverrideState: 0
m_Value: 0
@@ -28,11 +25,9 @@ MonoBehaviour:
multiplier:
m_OverrideState: 0
m_Value: 1
- min: 0
upperHemisphereLuxValue:
m_OverrideState: 0
m_Value: 1
- min: 0
upperHemisphereLuxColor:
m_OverrideState: 0
m_Value: {x: 0, y: 0, z: 0}
@@ -45,14 +40,9 @@ MonoBehaviour:
updatePeriod:
m_OverrideState: 0
m_Value: 0
- min: 0
includeSunInBaking:
m_OverrideState: 0
m_Value: 0
- m_SkyVersion: 1
- m_ObsoleteEarthPreset:
- m_OverrideState: 0
- m_Value: 1
type:
m_OverrideState: 0
m_Value: 1
@@ -65,66 +55,42 @@ MonoBehaviour:
planetaryRadius:
m_OverrideState: 0
m_Value: 6378100
- min: 0
planetCenterPosition:
m_OverrideState: 0
m_Value: {x: 0, y: -6378100, z: 0}
airDensityR:
m_OverrideState: 0
m_Value: 0.04534
- min: 0
- max: 1
airDensityG:
m_OverrideState: 0
m_Value: 0.10237241
- min: 0
- max: 1
airDensityB:
m_OverrideState: 0
m_Value: 0.23264056
- min: 0
- max: 1
airTint:
m_OverrideState: 0
m_Value: {r: 0.9, g: 0.9, b: 1, a: 1}
- hdr: 0
- showAlpha: 0
- showEyeDropper: 1
airMaximumAltitude:
m_OverrideState: 0
m_Value: 55261.973
- min: 0
aerosolDensity:
m_OverrideState: 0
m_Value: 0.01192826
- min: 0
- max: 1
aerosolTint:
m_OverrideState: 0
m_Value: {r: 0.9, g: 0.9, b: 0.9, a: 1}
- hdr: 0
- showAlpha: 0
- showEyeDropper: 1
aerosolMaximumAltitude:
m_OverrideState: 0
m_Value: 8289.296
- min: 0
aerosolAnisotropy:
m_OverrideState: 0
m_Value: 0
- min: -1
- max: 1
numberOfBounces:
m_OverrideState: 0
- m_Value: 8
- min: 1
- max: 10
+ m_Value: 3
groundTint:
m_OverrideState: 1
m_Value: {r: 0.122641504, g: 0.1043775, b: 0.09313812, a: 1}
- hdr: 0
- showAlpha: 0
- showEyeDropper: 0
groundColorTexture:
m_OverrideState: 0
m_Value: {fileID: 0}
@@ -134,7 +100,6 @@ MonoBehaviour:
groundEmissionMultiplier:
m_OverrideState: 0
m_Value: 1
- min: 0
planetRotation:
m_OverrideState: 0
m_Value: {x: 0, y: 0, z: 0}
@@ -144,42 +109,31 @@ MonoBehaviour:
spaceEmissionMultiplier:
m_OverrideState: 0
m_Value: 1
- min: 0
spaceRotation:
m_OverrideState: 0
m_Value: {x: 0, y: 0, z: 0}
colorSaturation:
m_OverrideState: 0
m_Value: 1
- min: 0
- max: 1
alphaSaturation:
m_OverrideState: 0
m_Value: 1
- min: 0
- max: 1
alphaMultiplier:
m_OverrideState: 0
m_Value: 1
- min: 0
- max: 1
horizonTint:
m_OverrideState: 0
m_Value: {r: 1, g: 1, b: 1, a: 1}
- hdr: 0
- showAlpha: 0
- showEyeDropper: 0
zenithTint:
m_OverrideState: 0
m_Value: {r: 1, g: 1, b: 1, a: 1}
- hdr: 0
- showAlpha: 0
- showEyeDropper: 0
horizonZenithShift:
m_OverrideState: 0
m_Value: 0
- min: -1
- max: 1
+ m_SkyVersion: 1
+ m_ObsoleteEarthPreset:
+ m_OverrideState: 0
+ m_Value: 1
--- !u!114 &-4151792930034644520
MonoBehaviour:
m_ObjectHideFlags: 3
@@ -193,7 +147,6 @@ MonoBehaviour:
m_Name:
m_EditorClassIdentifier:
active: 1
- m_AdvancedMode: 0
quality:
m_OverrideState: 0
m_Value: 1
@@ -206,32 +159,21 @@ MonoBehaviour:
color:
m_OverrideState: 0
m_Value: {r: 0.5, g: 0.5, b: 0.5, a: 1}
- hdr: 1
- showAlpha: 0
- showEyeDropper: 1
tint:
m_OverrideState: 0
m_Value: {r: 1, g: 1, b: 1, a: 1}
- hdr: 1
- showAlpha: 0
- showEyeDropper: 1
maxFogDistance:
m_OverrideState: 0
m_Value: 5000
- min: 0
mipFogMaxMip:
m_OverrideState: 0
m_Value: 0.5
- min: 0
- max: 1
mipFogNear:
m_OverrideState: 0
m_Value: 0
- min: 0
mipFogFar:
m_OverrideState: 0
m_Value: 1000
- min: 0
baseHeight:
m_OverrideState: 0
m_Value: 0
@@ -241,61 +183,42 @@ MonoBehaviour:
meanFreePath:
m_OverrideState: 0
m_Value: 400
- min: 1
enableVolumetricFog:
m_OverrideState: 1
m_Value: 1
albedo:
m_OverrideState: 0
m_Value: {r: 1, g: 1, b: 1, a: 1}
- hdr: 0
- showAlpha: 1
- showEyeDropper: 1
globalLightProbeDimmer:
m_OverrideState: 0
m_Value: 1
- min: 0
- max: 1
depthExtent:
m_OverrideState: 0
m_Value: 64
- min: 0.1
denoisingMode:
m_OverrideState: 0
m_Value: 2
anisotropy:
m_OverrideState: 1
m_Value: 0.65
- min: -1
- max: 1
sliceDistributionUniformity:
m_OverrideState: 0
m_Value: 0.75
- min: 0
- max: 1
m_FogControlMode:
m_OverrideState: 0
m_Value: 0
screenResolutionPercentage:
m_OverrideState: 0
m_Value: 12.5
- min: 6.25
- max: 100
volumeSliceCount:
m_OverrideState: 0
m_Value: 64
- min: 1
- max: 1024
m_VolumetricFogBudget:
m_OverrideState: 0
m_Value: 0.33
- min: 0
- max: 1
m_ResolutionDepthRatio:
m_OverrideState: 0
m_Value: 0.666
- min: 0
- max: 1
directionalLightsOnly:
m_OverrideState: 0
m_Value: 0
@@ -329,13 +252,21 @@ MonoBehaviour:
m_Name:
m_EditorClassIdentifier:
active: 1
- m_AdvancedMode: 0
skyType:
m_OverrideState: 1
m_Value: 4
+ cloudType:
+ m_OverrideState: 0
+ m_Value: 0
skyAmbientMode:
m_OverrideState: 1
m_Value: 0
+ windOrientation:
+ m_OverrideState: 0
+ m_Value: 0
+ windSpeed:
+ m_OverrideState: 0
+ m_Value: 100
fogType:
m_OverrideState: 1
m_Value: 0
@@ -352,7 +283,6 @@ MonoBehaviour:
m_Name: Exposure
m_EditorClassIdentifier:
active: 1
- m_AdvancedMode: 0
mode:
m_OverrideState: 1
m_Value: 4
@@ -458,19 +388,15 @@ MonoBehaviour:
adaptationSpeedDarkToLight:
m_OverrideState: 0
m_Value: 3
- min: 0.001
adaptationSpeedLightToDark:
m_OverrideState: 0
m_Value: 1
- min: 0.001
weightTextureMask:
m_OverrideState: 0
m_Value: {fileID: 0}
histogramPercentages:
m_OverrideState: 0
m_Value: {x: 40, y: 90}
- min: 0
- max: 100
histogramUseCurveRemapping:
m_OverrideState: 0
m_Value: 0
@@ -495,4 +421,3 @@ MonoBehaviour:
proceduralSoftness:
m_OverrideState: 0
m_Value: 0.5
- min: 0
diff --git a/com.unity.render-pipelines.high-definition/Editor/SceneTemplates/OutdoorsDXR/SkyandFogSettingsProfile.asset b/com.unity.render-pipelines.high-definition/Editor/SceneTemplates/OutdoorsDXR/SkyandFogSettingsProfile.asset
index b60f94a79e6..2a7f356d5fa 100644
--- a/com.unity.render-pipelines.high-definition/Editor/SceneTemplates/OutdoorsDXR/SkyandFogSettingsProfile.asset
+++ b/com.unity.render-pipelines.high-definition/Editor/SceneTemplates/OutdoorsDXR/SkyandFogSettingsProfile.asset
@@ -13,12 +13,9 @@ MonoBehaviour:
m_Name:
m_EditorClassIdentifier:
active: 1
- m_AdvancedMode: 0
rotation:
m_OverrideState: 0
m_Value: 0
- min: 0
- max: 360
skyIntensityMode:
m_OverrideState: 0
m_Value: 0
@@ -28,11 +25,9 @@ MonoBehaviour:
multiplier:
m_OverrideState: 0
m_Value: 1
- min: 0
upperHemisphereLuxValue:
m_OverrideState: 0
m_Value: 1
- min: 0
upperHemisphereLuxColor:
m_OverrideState: 0
m_Value: {x: 0, y: 0, z: 0}
@@ -45,14 +40,9 @@ MonoBehaviour:
updatePeriod:
m_OverrideState: 0
m_Value: 0
- min: 0
includeSunInBaking:
m_OverrideState: 0
m_Value: 0
- m_SkyVersion: 1
- m_ObsoleteEarthPreset:
- m_OverrideState: 0
- m_Value: 1
type:
m_OverrideState: 0
m_Value: 1
@@ -65,66 +55,42 @@ MonoBehaviour:
planetaryRadius:
m_OverrideState: 0
m_Value: 6378100
- min: 0
planetCenterPosition:
m_OverrideState: 0
m_Value: {x: 0, y: -6378100, z: 0}
airDensityR:
m_OverrideState: 0
m_Value: 0.04534
- min: 0
- max: 1
airDensityG:
m_OverrideState: 0
m_Value: 0.10237241
- min: 0
- max: 1
airDensityB:
m_OverrideState: 0
m_Value: 0.23264056
- min: 0
- max: 1
airTint:
m_OverrideState: 0
m_Value: {r: 0.9, g: 0.9, b: 1, a: 1}
- hdr: 0
- showAlpha: 0
- showEyeDropper: 1
airMaximumAltitude:
m_OverrideState: 0
m_Value: 55261.973
- min: 0
aerosolDensity:
m_OverrideState: 0
m_Value: 0.01192826
- min: 0
- max: 1
aerosolTint:
m_OverrideState: 0
m_Value: {r: 0.9, g: 0.9, b: 0.9, a: 1}
- hdr: 0
- showAlpha: 0
- showEyeDropper: 1
aerosolMaximumAltitude:
m_OverrideState: 0
m_Value: 8289.296
- min: 0
aerosolAnisotropy:
m_OverrideState: 0
m_Value: 0
- min: -1
- max: 1
numberOfBounces:
m_OverrideState: 0
- m_Value: 8
- min: 1
- max: 10
+ m_Value: 3
groundTint:
m_OverrideState: 1
m_Value: {r: 0.122641504, g: 0.1043775, b: 0.09313812, a: 1}
- hdr: 0
- showAlpha: 0
- showEyeDropper: 0
groundColorTexture:
m_OverrideState: 0
m_Value: {fileID: 0}
@@ -134,7 +100,6 @@ MonoBehaviour:
groundEmissionMultiplier:
m_OverrideState: 0
m_Value: 1
- min: 0
planetRotation:
m_OverrideState: 0
m_Value: {x: 0, y: 0, z: 0}
@@ -144,42 +109,31 @@ MonoBehaviour:
spaceEmissionMultiplier:
m_OverrideState: 0
m_Value: 1
- min: 0
spaceRotation:
m_OverrideState: 0
m_Value: {x: 0, y: 0, z: 0}
colorSaturation:
m_OverrideState: 0
m_Value: 1
- min: 0
- max: 1
alphaSaturation:
m_OverrideState: 0
m_Value: 1
- min: 0
- max: 1
alphaMultiplier:
m_OverrideState: 0
m_Value: 1
- min: 0
- max: 1
horizonTint:
m_OverrideState: 0
m_Value: {r: 1, g: 1, b: 1, a: 1}
- hdr: 0
- showAlpha: 0
- showEyeDropper: 0
zenithTint:
m_OverrideState: 0
m_Value: {r: 1, g: 1, b: 1, a: 1}
- hdr: 0
- showAlpha: 0
- showEyeDropper: 0
horizonZenithShift:
m_OverrideState: 0
m_Value: 0
- min: -1
- max: 1
+ m_SkyVersion: 1
+ m_ObsoleteEarthPreset:
+ m_OverrideState: 0
+ m_Value: 1
--- !u!114 &-4151792930034644520
MonoBehaviour:
m_ObjectHideFlags: 3
@@ -193,7 +147,6 @@ MonoBehaviour:
m_Name:
m_EditorClassIdentifier:
active: 1
- m_AdvancedMode: 0
quality:
m_OverrideState: 0
m_Value: 1
@@ -206,32 +159,21 @@ MonoBehaviour:
color:
m_OverrideState: 0
m_Value: {r: 0.5, g: 0.5, b: 0.5, a: 1}
- hdr: 1
- showAlpha: 0
- showEyeDropper: 1
tint:
m_OverrideState: 0
m_Value: {r: 1, g: 1, b: 1, a: 1}
- hdr: 1
- showAlpha: 0
- showEyeDropper: 1
maxFogDistance:
m_OverrideState: 0
m_Value: 5000
- min: 0
mipFogMaxMip:
m_OverrideState: 0
m_Value: 0.5
- min: 0
- max: 1
mipFogNear:
m_OverrideState: 0
m_Value: 0
- min: 0
mipFogFar:
m_OverrideState: 0
m_Value: 1000
- min: 0
baseHeight:
m_OverrideState: 0
m_Value: 0
@@ -241,61 +183,42 @@ MonoBehaviour:
meanFreePath:
m_OverrideState: 0
m_Value: 400
- min: 1
enableVolumetricFog:
m_OverrideState: 1
m_Value: 1
albedo:
m_OverrideState: 0
m_Value: {r: 1, g: 1, b: 1, a: 1}
- hdr: 0
- showAlpha: 1
- showEyeDropper: 1
globalLightProbeDimmer:
m_OverrideState: 0
m_Value: 1
- min: 0
- max: 1
depthExtent:
m_OverrideState: 0
m_Value: 64
- min: 0.1
denoisingMode:
m_OverrideState: 0
m_Value: 2
anisotropy:
m_OverrideState: 1
m_Value: 0.65
- min: -1
- max: 1
sliceDistributionUniformity:
m_OverrideState: 0
m_Value: 0.75
- min: 0
- max: 1
m_FogControlMode:
m_OverrideState: 0
m_Value: 0
screenResolutionPercentage:
m_OverrideState: 0
m_Value: 12.5
- min: 6.25
- max: 100
volumeSliceCount:
m_OverrideState: 0
m_Value: 64
- min: 1
- max: 1024
m_VolumetricFogBudget:
m_OverrideState: 0
m_Value: 0.33
- min: 0
- max: 1
m_ResolutionDepthRatio:
m_OverrideState: 0
m_Value: 0.666
- min: 0
- max: 1
directionalLightsOnly:
m_OverrideState: 0
m_Value: 0
@@ -329,13 +252,21 @@ MonoBehaviour:
m_Name:
m_EditorClassIdentifier:
active: 1
- m_AdvancedMode: 0
skyType:
m_OverrideState: 1
m_Value: 4
+ cloudType:
+ m_OverrideState: 0
+ m_Value: 0
skyAmbientMode:
m_OverrideState: 1
m_Value: 0
+ windOrientation:
+ m_OverrideState: 0
+ m_Value: 0
+ windSpeed:
+ m_OverrideState: 0
+ m_Value: 100
fogType:
m_OverrideState: 1
m_Value: 0
@@ -352,7 +283,6 @@ MonoBehaviour:
m_Name: Exposure
m_EditorClassIdentifier:
active: 1
- m_AdvancedMode: 0
mode:
m_OverrideState: 1
m_Value: 4
@@ -458,19 +388,15 @@ MonoBehaviour:
adaptationSpeedDarkToLight:
m_OverrideState: 0
m_Value: 3
- min: 0.001
adaptationSpeedLightToDark:
m_OverrideState: 0
m_Value: 1
- min: 0.001
weightTextureMask:
m_OverrideState: 0
m_Value: {fileID: 0}
histogramPercentages:
m_OverrideState: 0
m_Value: {x: 40, y: 90}
- min: 0
- max: 100
histogramUseCurveRemapping:
m_OverrideState: 0
m_Value: 0
@@ -495,4 +421,3 @@ MonoBehaviour:
proceduralSoftness:
m_OverrideState: 0
m_Value: 0.5
- min: 0
diff --git a/com.unity.render-pipelines.high-definition/Editor/Sky/VisualEnvironmentEditor.cs b/com.unity.render-pipelines.high-definition/Editor/Sky/VisualEnvironmentEditor.cs
index f5f5bb7c49c..1a4efbcbc37 100644
--- a/com.unity.render-pipelines.high-definition/Editor/Sky/VisualEnvironmentEditor.cs
+++ b/com.unity.render-pipelines.high-definition/Editor/Sky/VisualEnvironmentEditor.cs
@@ -152,10 +152,11 @@ public override void OnInspectorGUI()
sealed class LocalWindParameterDrawer
{
- public static readonly string[] modeNames = Enum.GetNames(typeof(WindParameter.WindOverrideMode));
- public static readonly int popupWidth = 70;
+ static readonly string[] modeNames = Enum.GetNames(typeof(WindParameter.WindOverrideMode));
+ static readonly string[] modeNamesNoMultiply = { WindParameter.WindOverrideMode.Custom.ToString(), WindParameter.WindOverrideMode.Global.ToString(), WindParameter.WindOverrideMode.Additive.ToString() };
+ static readonly int popupWidth = 70;
- public static bool BeginGUI(out Rect rect, GUIContent title, SerializedDataParameter parameter, SerializedProperty mode)
+ public static bool BeginGUI(out Rect rect, GUIContent title, SerializedDataParameter parameter, SerializedProperty mode, bool excludeMultiply)
{
rect = EditorGUILayout.GetControlRect();
rect.xMax -= popupWidth + 2;
@@ -163,7 +164,7 @@ public static bool BeginGUI(out Rect rect, GUIContent title, SerializedDataParam
var popupRect = rect;
popupRect.x = rect.xMax + 2;
popupRect.width = popupWidth;
- mode.intValue = EditorGUI.Popup(popupRect, mode.intValue, modeNames);
+ mode.intValue = EditorGUI.Popup(popupRect, mode.intValue, excludeMultiply ? modeNamesNoMultiply : modeNames);
if (mode.intValue == (int)WindParameter.WindOverrideMode.Additive)
{
@@ -203,7 +204,7 @@ sealed class WindOrientationParameterDrawer : VolumeParameterDrawer
public override bool OnGUI(SerializedDataParameter parameter, GUIContent title)
{
var mode = parameter.value.FindPropertyRelative("mode");
- if (!LocalWindParameterDrawer.BeginGUI(out var rect, title, parameter, mode))
+ if (!LocalWindParameterDrawer.BeginGUI(out var rect, title, parameter, mode, true))
{
var value = parameter.value.FindPropertyRelative("customValue");
value.floatValue = EditorGUI.Slider(rect, title, value.floatValue, 0.0f, 360.0f);
@@ -220,7 +221,7 @@ sealed class WindSpeedParameterDrawer : VolumeParameterDrawer
public override bool OnGUI(SerializedDataParameter parameter, GUIContent title)
{
var mode = parameter.value.FindPropertyRelative("mode");
- if (!LocalWindParameterDrawer.BeginGUI(out var rect, title, parameter, mode))
+ if (!LocalWindParameterDrawer.BeginGUI(out var rect, title, parameter, mode, false))
{
var value = parameter.value.FindPropertyRelative("customValue");
value.floatValue = EditorGUI.FloatField(rect, title, value.floatValue);
diff --git a/com.unity.render-pipelines.high-definition/Runtime/Core/Migration/MigrationDescription.cs b/com.unity.render-pipelines.high-definition/Runtime/Core/Migration/MigrationDescription.cs
index 4387472d02e..69de711ac25 100644
--- a/com.unity.render-pipelines.high-definition/Runtime/Core/Migration/MigrationDescription.cs
+++ b/com.unity.render-pipelines.high-definition/Runtime/Core/Migration/MigrationDescription.cs
@@ -125,7 +125,11 @@ public bool Migrate(TTarget target)
UnityEditor.EditorApplication.delayCall += () =>
{
if (targetObject != null && !targetObject.Equals(null))
- UnityEditor.EditorUtility.SetDirty(targetObject);
+ {
+ // Only dirty the object's scene if it can be saved, preview scenes are not saved (case 1367204).
+ if (!UnityEditor.SceneManagement.EditorSceneManager.IsPreviewSceneObject(targetObject))
+ UnityEditor.EditorUtility.SetDirty(targetObject);
+ }
};
}
#endif
diff --git a/com.unity.render-pipelines.high-definition/Runtime/Lighting/VolumetricLighting/LocalVolumetricFog.cs b/com.unity.render-pipelines.high-definition/Runtime/Lighting/VolumetricLighting/LocalVolumetricFog.cs
index 4f609aa8c99..fd7e6e86309 100644
--- a/com.unity.render-pipelines.high-definition/Runtime/Lighting/VolumetricLighting/LocalVolumetricFog.cs
+++ b/com.unity.render-pipelines.high-definition/Runtime/Lighting/VolumetricLighting/LocalVolumetricFog.cs
@@ -8,6 +8,7 @@ namespace UnityEngine.Rendering.HighDefinition
public partial struct LocalVolumetricFogArtistParameters
{
/// Single scattering albedo: [0, 1]. Alpha is ignored.
+ [ColorUsage(false)]
public Color albedo;
/// Mean free path, in meters: [1, inf].
public float meanFreePath; // Should be chromatic - this is an optimization!
diff --git a/com.unity.render-pipelines.high-definition/Runtime/Lighting/VolumetricLighting/VolumetricCloudsUtilities.hlsl b/com.unity.render-pipelines.high-definition/Runtime/Lighting/VolumetricLighting/VolumetricCloudsUtilities.hlsl
index 9246c6eb166..1e5a73f4409 100644
--- a/com.unity.render-pipelines.high-definition/Runtime/Lighting/VolumetricLighting/VolumetricCloudsUtilities.hlsl
+++ b/com.unity.render-pipelines.high-definition/Runtime/Lighting/VolumetricLighting/VolumetricCloudsUtilities.hlsl
@@ -502,9 +502,17 @@ void FillCloudUpscaleNeighborhoodData(int2 groupThreadId, int subRegionIdx, out
float EvaluateFinalTransmittance(float3 color, float transmittance)
{
// Due to the high intensity of the sun, we often need apply the transmittance in a tonemapped space
- float3 resultColor = color / (1.0 + color) * transmittance;
- resultColor = resultColor / (1.0 - resultColor);
- return _ImprovedTransmittanceBlend ? Luminance(resultColor / color) : transmittance;
+ // As we only produce one transmittance, we evaluate the approximation on the luminance of the color
+ float luminance = Luminance(color);
+
+ // Apply the tone mapping and then the transmittance
+ float resultLuminance = luminance / (1.0 + luminance) * transmittance;
+
+ // reverse the tone mapping
+ resultLuminance = resultLuminance / (1.0 - resultLuminance);
+
+ // This approach only makes sense if the color is not black
+ return (luminance > 0.0 && _ImprovedTransmittanceBlend == 1) ? resultLuminance / luminance : transmittance;
}
#endif // REAL_TIME_VOLUMETRIC_CLOUDS
diff --git a/com.unity.render-pipelines.high-definition/Runtime/Material/Decal/DecalSystem.cs b/com.unity.render-pipelines.high-definition/Runtime/Material/Decal/DecalSystem.cs
index 007d4e60c75..b76ac2c1fa9 100644
--- a/com.unity.render-pipelines.high-definition/Runtime/Material/Decal/DecalSystem.cs
+++ b/com.unity.render-pipelines.high-definition/Runtime/Material/Decal/DecalSystem.cs
@@ -492,9 +492,23 @@ public void UpdateCachedData(DecalHandle handle, DecalProjector decalProjector)
m_CachedFadeFactor[index] = data.fadeFactor;
m_CachedDecalLayerMask[index] = data.decalLayerMask;
+ UpdateCachedDrawOrder();
+
UpdateJobArrays(index, decalProjector);
}
+ public void UpdateCachedDrawOrder()
+ {
+ if (this.m_Material.HasProperty(HDShaderIDs._DrawOrder))
+ {
+ m_CachedDrawOrder = this.m_Material.GetInt(HDShaderIDs._DrawOrder);
+ }
+ else
+ {
+ m_CachedDrawOrder = 0;
+ }
+ }
+
// Update memory allocation and assign decal handle, then update cached data
public DecalHandle AddDecal(int materialID, DecalProjector decalProjector)
{
@@ -821,20 +835,7 @@ public int Count
}
}
- public int DrawOrder
- {
- get
- {
- if (this.m_Material.HasProperty(HDShaderIDs._DrawOrder))
- {
- return this.m_Material.GetInt(HDShaderIDs._DrawOrder);
- }
- else
- {
- return 0;
- }
- }
- }
+ public int DrawOrder => m_CachedDrawOrder;
private List m_DecalToWorld = new List();
private List m_NormalToWorld = new List();
@@ -845,6 +846,7 @@ public int DrawOrder
private int m_NumResults = 0;
private int m_InstanceCount = 0;
private int m_DecalsCount = 0;
+ private int m_CachedDrawOrder = 0;
private Vector2[] m_CachedDrawDistances = new Vector2[kDecalBlockSize]; // x - draw distance, y - fade scale
private Vector2[] m_CachedAngleFade = new Vector2[kDecalBlockSize]; // x - scale fade, y - bias fade
private Vector4[] m_CachedUVScaleBias = new Vector4[kDecalBlockSize]; // xy - scale, zw bias
@@ -1100,10 +1102,12 @@ public void CreateDrawData()
m_DecalSetsRenderList.Clear();
foreach (var pair in m_DecalSets)
{
+ pair.Value.UpdateCachedDrawOrder();
+
if (pair.Value.IsDrawn())
{
int insertIndex = 0;
- while ((insertIndex < m_DecalSetsRenderList.Count) && (pair.Value.DrawOrder >= m_DecalSetsRenderList[insertIndex].DrawOrder))
+ while ((insertIndex < m_DecalSetsRenderList.Count) && (pair.Value.DrawOrder > m_DecalSetsRenderList[insertIndex].DrawOrder))
{
insertIndex++;
}
diff --git a/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/PathTracing/Shaders/PathTracingMain.raytrace b/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/PathTracing/Shaders/PathTracingMain.raytrace
index 4c22d53e523..265376c2cfa 100644
--- a/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/PathTracing/Shaders/PathTracingMain.raytrace
+++ b/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/PathTracing/Shaders/PathTracingMain.raytrace
@@ -158,11 +158,11 @@ void RayGen()
else // Orthographic projection
{
uint2 pixelResolution = DispatchRaysDimensions().xy;
- float3 screenCoord = float3(2.0 * jitteredPixelCoord.x / pixelResolution.x - 1.0,
+ float4 screenCoord = float4(2.0 * jitteredPixelCoord.x / pixelResolution.x - 1.0,
-2.0 * jitteredPixelCoord.y / pixelResolution.y + 1.0,
- 0.0);
+ 0.0, 0.0);
- ray.Origin = mul(_InvViewProjMatrix, screenCoord);
+ ray.Origin = mul(_InvViewProjMatrix, screenCoord).xyz;
ray.Direction = cameraDirection;
}
diff --git a/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Raytracing/Shaders/Shadows/RaytracingShadow.compute b/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Raytracing/Shaders/Shadows/RaytracingShadow.compute
index ce7edddd241..f1f8bd43e18 100644
--- a/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Raytracing/Shaders/Shadows/RaytracingShadow.compute
+++ b/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Raytracing/Shaders/Shadows/RaytracingShadow.compute
@@ -576,12 +576,11 @@ void RaytracingPointShadowSample(uint3 dispatchThreadId : SV_DispatchThreadID, u
float rayLength = length(rayDirection);
rayDirection = rayDirection / rayLength;
- // If this ray is under the surface, no need to shoot it
- float lightRange2 = lightData.range * lightData.range;
- if (dot(normalData.normalWS, rayDirection) < 0.0 || dist2 > lightRange2)
- {
- samplePDF = -1.0;
- }
+ // If the normal of this pixel cannot face the light, we invalidate it
+ samplePDF = dot(normalData.normalWS, rayDirection) > 0.0 ? samplePDF : -1.0;
+
+ // If this pixel is beyond the range of the light, we invalidate it
+ samplePDF = dist2 < (lightData.range * lightData.range) ? samplePDF : -2.0;
// Output the direction to the target uav
_RaytracingDirectionBuffer[COORD_TEXTURE2D_X(currentCoord)] = float4(rayDirection, samplePDF);
@@ -650,15 +649,14 @@ void RaytracingSpotShadowSample(uint3 dispatchThreadId : SV_DispatchThreadID, ui
float rayLength = length(rayDirection);
rayDirection = rayDirection / rayLength;
- // If this ray is under the surface, no need to shoot it
- float lightRange2 = lightData.range * lightData.range;
- if (dot(normalData.normalWS, rayDirection) < 0.0 || dist2 > lightRange2)
- {
- samplePDF = -1.0;
- }
-
// If the direction is going out of the cone, we invalidate this ray (to avoid casting useless rays)
- samplePDF = dot(-rayDirection, lightData.forward) > cos(_RaytracingSpotAngle * 0.5f) ? samplePDF : -1.0;
+ samplePDF = dot(-rayDirection, lightData.forward) > cos(_RaytracingSpotAngle * 0.5f) ? samplePDF : -2.0;
+
+ // If the normal of this pixel cannot face the light, we invalidate it
+ samplePDF = dot(normalData.normalWS, rayDirection) > 0.0 ? samplePDF : -1.0;
+
+ // If this pixel is beyond the range of the light, we invalidate it
+ samplePDF = dist2 < (lightData.range * lightData.range) ? samplePDF : -2.0;
// Output the direction to the target uav
_RaytracingDirectionBuffer[COORD_TEXTURE2D_X(currentCoord)] = float4(rayDirection, samplePDF);
diff --git a/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Raytracing/Shaders/Shadows/RaytracingShadow.raytrace b/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Raytracing/Shaders/Shadows/RaytracingShadow.raytrace
index 29b820ee86e..4085dc267eb 100644
--- a/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Raytracing/Shaders/Shadows/RaytracingShadow.raytrace
+++ b/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Raytracing/Shaders/Shadows/RaytracingShadow.raytrace
@@ -537,20 +537,22 @@ void RayGenShadowSegmentSingle()
// Read the ray distance
float rayDistance = LOAD_TEXTURE2D_X(_RayTracingLengthBuffer, currentPixelCoord).x;
- // If the distance is negative, it means the rays is a visible intersection.
- if (rayDistance < 0.0)
+ // Fetch the ray direction
+ float4 rayDirection = LOAD_TEXTURE2D_X(_RaytracingDirectionBuffer, currentPixelCoord);
+
+ // Read the previous integration value
+ float previousValue = _RaytracedShadowIntegration[COORD_TEXTURE2D_X(currentPixelCoord)];
+
+ // If we are inside the light (spot or point), we consider that we have no occlusion and end the execution.
+ if (rayDistance < 0.0 || rayDirection.w == -2.0)
{
// Read the previous value and add one
- float previousValue = _RaytracedShadowIntegration[COORD_TEXTURE2D_X(currentPixelCoord)];
_RaytracedShadowIntegration[COORD_TEXTURE2D_X(currentPixelCoord)] = previousValue + 1.0 / (float)_RaytracingNumSamples;
_VelocityBuffer[COORD_TEXTURE2D_X(currentPixelCoord)] = 1.0;
return;
}
- // Fetch the ray direction
- float4 rayDirection = LOAD_TEXTURE2D_X(_RaytracingDirectionBuffer, currentPixelCoord);
-
- // If the PDF is negative, means the ray means a hit (no need to shoot it)
+ // If this point doesn't see the light, we set it to black
if (rayDirection.w < 0.0) return;
// Make sure it is taken into account in the ray counters
@@ -595,7 +597,6 @@ void RayGenShadowSegmentSingle()
TraceRay(_RaytracingAccelerationStructure, RAY_FLAG_CULL_FRONT_FACING_TRIANGLES | RAY_FLAG_ACCEPT_FIRST_HIT_AND_END_SEARCH, RAYTRACINGRENDERERFLAG_CAST_SHADOW, 0, 1, 0, rayDescriptor, rayIntersection);
// Add the contribution of this sample
- float previousValue = _RaytracedShadowIntegration[COORD_TEXTURE2D_X(currentPixelCoord)];
float previousVelocityValue = _VelocityBuffer[COORD_TEXTURE2D_X(currentPixelCoord)].x;
float previousDistanceValue = _RaytracingDistanceBufferRW[COORD_TEXTURE2D_X(currentPixelCoord)].x;
@@ -626,20 +627,23 @@ void RayGenSemiTransparentShadowSegmentSingle()
// Read the ray distance
float rayDistance = LOAD_TEXTURE2D_X(_RayTracingLengthBuffer, currentPixelCoord).x;
- // If the distance is negative, it means the rays is a visible intersection.
- if (rayDistance < 0.0)
+ // Fetch the ray direction
+ float4 rayDirection = LOAD_TEXTURE2D_X(_RaytracingDirectionBuffer, currentPixelCoord);
+
+ // Read the previous integration value
+ float previousValue = _RaytracedShadowIntegration[COORD_TEXTURE2D_X(currentPixelCoord)];
+
+ // If we are inside the light (spot or point), we consider that we have no occlusion and end the execution.
+ if (rayDistance < 0.0 || rayDirection.w == -2.0)
{
// Read the previous value and add one
- float previousValue = _RaytracedShadowIntegration[COORD_TEXTURE2D_X(currentPixelCoord)];
_RaytracedShadowIntegration[COORD_TEXTURE2D_X(currentPixelCoord)] = previousValue + 1.0 / (float)_RaytracingNumSamples;
+ _VelocityBuffer[COORD_TEXTURE2D_X(currentPixelCoord)] = 1.0;
return;
}
- // Fetch the ray direction
- float4 rayDirection = LOAD_TEXTURE2D_X(_RaytracingDirectionBuffer, currentPixelCoord);
-
- // If the PDF is negative, means the ray means a hit (no need to shoot it)
- if (rayDirection.w < 0.0) return;
+ // If this point doesn't see the light, we set it to black
+ if (rayDirection.w <= 0.0) return;
// Make sure it is taken into account in the ray counters
if (_RayCountEnabled > 0)
@@ -698,7 +702,6 @@ void RayGenSemiTransparentShadowSegmentSingle()
}
// Add the contribution of this sample
- float previousValue = _RaytracedShadowIntegration[COORD_TEXTURE2D_X(currentPixelCoord)];
float previousVelocityValue = _VelocityBuffer[COORD_TEXTURE2D_X(currentPixelCoord)].x;
float previousDistanceValue = _RaytracingDistanceBufferRW[COORD_TEXTURE2D_X(currentPixelCoord)].x;
_RaytracedShadowIntegration[COORD_TEXTURE2D_X(currentPixelCoord)] = previousValue + Luminance(rayIntersection.color) / (float)_RaytracingNumSamples;
diff --git a/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/RenderPass/DLSSPass.cs b/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/RenderPass/DLSSPass.cs
index c860cb50eac..d7e44beffc7 100644
--- a/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/RenderPass/DLSSPass.cs
+++ b/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/RenderPass/DLSSPass.cs
@@ -40,13 +40,13 @@ public static ViewResources GetViewResources(in ViewResourceHandles handles)
{
var resources = new ViewResources
{
- source = (RenderTexture)handles.source,
- output = (RenderTexture)handles.output,
- depth = (RenderTexture)handles.depth,
- motionVectors = (RenderTexture)handles.motionVectors
+ source = (Texture)handles.source,
+ output = (Texture)handles.output,
+ depth = (Texture)handles.depth,
+ motionVectors = (Texture)handles.motionVectors
};
- resources.biasColorMask = (handles.biasColorMask.IsValid()) ? (RenderTexture)handles.biasColorMask : (RenderTexture)null;
+ resources.biasColorMask = (handles.biasColorMask.IsValid()) ? (Texture)handles.biasColorMask : (Texture)null;
return resources;
}
@@ -115,11 +115,11 @@ public struct Parameters
public struct ViewResources
{
- public RenderTexture source;
- public RenderTexture output;
- public RenderTexture depth;
- public RenderTexture motionVectors;
- public RenderTexture biasColorMask;
+ public Texture source;
+ public Texture output;
+ public Texture depth;
+ public Texture motionVectors;
+ public Texture biasColorMask;
}
public struct CameraResources
@@ -390,11 +390,11 @@ public void UpdateViewState(
}
public void SubmitDlssCommands(
- RenderTexture source,
- RenderTexture depth,
- RenderTexture motionVectors,
- RenderTexture biasColorMask,
- RenderTexture output,
+ Texture source,
+ Texture depth,
+ Texture motionVectors,
+ Texture biasColorMask,
+ Texture output,
CommandBuffer cmdBuffer)
{
if (m_DlssContext == null)
diff --git a/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Utility/HDUtils.cs b/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Utility/HDUtils.cs
index fc4172a5296..9f46f0dfd17 100644
--- a/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Utility/HDUtils.cs
+++ b/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Utility/HDUtils.cs
@@ -1179,5 +1179,50 @@ internal static void ReleaseComponentSingletons()
ComponentSingleton.Release();
ComponentSingleton.Release();
}
+
+ internal static float InterpolateOrientation(float fromValue, float toValue, float t)
+ {
+ // Compute the direct distance
+ float directDistance = Mathf.Abs(toValue - fromValue);
+ float outputValue = 0.0f;
+
+ // Handle the two cases
+ if (fromValue < toValue)
+ {
+ float upperRange = 360.0f - toValue;
+ float lowerRange = fromValue;
+ float alternativeDistance = upperRange + lowerRange;
+ if (alternativeDistance < directDistance)
+ {
+ float targetValue = toValue - 360.0f;
+ outputValue = fromValue + (targetValue - fromValue) * t;
+ if (outputValue < 0.0f)
+ outputValue += 360.0f;
+ }
+ else
+ {
+ outputValue = fromValue + (toValue - fromValue) * t;
+ }
+ }
+ else
+ {
+ float upperRange = 360.0f - fromValue;
+ float lowerRange = toValue;
+ float alternativeDistance = upperRange + lowerRange;
+ if (alternativeDistance < directDistance)
+ {
+ float targetValue = toValue + 360.0f;
+ outputValue = fromValue + (targetValue - fromValue) * t;
+ if (outputValue > 360.0f)
+ outputValue -= 360.0f;
+ }
+ else
+ {
+ outputValue = fromValue + (toValue - fromValue) * t;
+ }
+ }
+
+ return outputValue;
+ }
}
}
diff --git a/com.unity.render-pipelines.high-definition/Runtime/Sky/PhysicallyBasedSky/PhysicallyBasedSky.cs b/com.unity.render-pipelines.high-definition/Runtime/Sky/PhysicallyBasedSky/PhysicallyBasedSky.cs
index 52c0c81b2df..616e13df028 100644
--- a/com.unity.render-pipelines.high-definition/Runtime/Sky/PhysicallyBasedSky/PhysicallyBasedSky.cs
+++ b/com.unity.render-pipelines.high-definition/Runtime/Sky/PhysicallyBasedSky/PhysicallyBasedSky.cs
@@ -113,7 +113,7 @@ public partial class PhysicallyBasedSky : SkySettings
/// Number of scattering events.
[Tooltip("Sets the number of scattering events. This increases the quality of the sky visuals but also increases the pre-computation time.")]
- public ClampedIntParameter numberOfBounces = new ClampedIntParameter(8, 1, 10);
+ public ClampedIntParameter numberOfBounces = new ClampedIntParameter(3, 1, 10);
/// Ground tint.
[Tooltip("Specifies a color that HDRP uses to tint the Ground Color Texture.")]
diff --git a/com.unity.render-pipelines.high-definition/Runtime/Sky/VisualEnvironment.cs b/com.unity.render-pipelines.high-definition/Runtime/Sky/VisualEnvironment.cs
index 06b4e581719..d369fc25f95 100644
--- a/com.unity.render-pipelines.high-definition/Runtime/Sky/VisualEnvironment.cs
+++ b/com.unity.render-pipelines.high-definition/Runtime/Sky/VisualEnvironment.cs
@@ -180,7 +180,7 @@ public override int GetHashCode()
/// Returns interpolated value from the visual environment.
/// The camera containing the volume stack to evaluate
/// The value for this parameter.
- public float GetValue(HDCamera camera)
+ public virtual float GetValue(HDCamera camera)
{
if (value.mode == WindOverrideMode.Custom)
return value.customValue;
@@ -218,6 +218,36 @@ public WindOrientationParameter(float value = 0.0f, WindOverrideMode mode = Wind
/// The value for this parameter.
protected override float GetGlobalValue(HDCamera camera) =>
camera.volumeStack.GetComponent().windOrientation.value;
+
+ /// Interpolates between two values.
+ /// The start value
+ /// The end value
+ /// The interpolation factor in range [0,1]
+ public override void Interp(WindParamaterValue from, WindParamaterValue to, float t)
+ {
+ // These are not used
+ m_Value.multiplyValue = 0;
+
+ // Binary state that cannot be blended
+ m_Value.mode = t > 0f ? to.mode : from.mode;
+
+ // Override the orientation specific values
+ m_Value.additiveValue = from.additiveValue + (to.additiveValue - from.additiveValue) * t;
+ m_Value.customValue = HDUtils.InterpolateOrientation(from.customValue, to.customValue, t);
+ }
+
+ /// Returns interpolated value from the visual environment.
+ /// The camera containing the volume stack to evaluate
+ /// The value for this parameter.
+ public override float GetValue(HDCamera camera)
+ {
+ // Multiply mode is not supported for wind orientation
+ if (value.mode == WindOverrideMode.Multiply)
+ throw new NotSupportedException("Texture format not supported");
+
+ // Otherwise we want the base behavior
+ return base.GetValue(camera);
+ }
}
///