From 4be8380a40623f4d4dbfd37fd64bdd55223bbac4 Mon Sep 17 00:00:00 2001 From: milan Date: Wed, 8 Mar 2023 15:39:58 +0100 Subject: [PATCH] render stencil portals (transparent) --- .../Portal/Assets/Materials/PortalDepth.mat | 30 ++ .../Assets/Materials/PortalDepth.mat.meta | 8 + .../Assets/Materials/PortalDepth.shader | 12 + .../Assets/Materials/PortalDepth.shader.meta | 9 + Assets/Portal/Assets/Prefabs/Portal.prefab | 11 +- Assets/Portal/Runtime/FullScreenDepth.cs | 55 ++++ Assets/Portal/Runtime/FullScreenDepth.cs.meta | 3 + Assets/Portal/Runtime/Portal.cs | 5 +- Assets/Portal/Runtime/RenderPortalCameras.cs | 4 +- Assets/Portal/Runtime/RenderPortals.cs | 28 +- Assets/Scenes/StencilPortalScene.unity | 258 ++++++++++++++++-- Assets/URP/URP-HighFidelity-Renderer.asset | 64 ++++- Assets/URP/URP-HighFidelity.asset | 7 +- Assets/VR/Assets/Prefabs/XR Origin.prefab | 41 ++- 14 files changed, 475 insertions(+), 60 deletions(-) create mode 100644 Assets/Portal/Assets/Materials/PortalDepth.mat create mode 100644 Assets/Portal/Assets/Materials/PortalDepth.mat.meta create mode 100644 Assets/Portal/Assets/Materials/PortalDepth.shader create mode 100644 Assets/Portal/Assets/Materials/PortalDepth.shader.meta create mode 100644 Assets/Portal/Runtime/FullScreenDepth.cs create mode 100644 Assets/Portal/Runtime/FullScreenDepth.cs.meta diff --git a/Assets/Portal/Assets/Materials/PortalDepth.mat b/Assets/Portal/Assets/Materials/PortalDepth.mat new file mode 100644 index 0000000..228e6ce --- /dev/null +++ b/Assets/Portal/Assets/Materials/PortalDepth.mat @@ -0,0 +1,30 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: PortalDepth + m_Shader: {fileID: 4800000, guid: 9c438221637f2c0439e5af0dadf1f829, type: 3} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 + m_ValidKeywords: [] + m_InvalidKeywords: [] + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_LockedProperties: + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: [] + m_Ints: [] + m_Floats: + - _PortalNumber: 0 + m_Colors: [] + m_BuildTextureStacks: [] diff --git a/Assets/Portal/Assets/Materials/PortalDepth.mat.meta b/Assets/Portal/Assets/Materials/PortalDepth.mat.meta new file mode 100644 index 0000000..23e47dd --- /dev/null +++ b/Assets/Portal/Assets/Materials/PortalDepth.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: b788aaf4ec13aab459f370617052b5c1 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Portal/Assets/Materials/PortalDepth.shader b/Assets/Portal/Assets/Materials/PortalDepth.shader new file mode 100644 index 0000000..27bdedc --- /dev/null +++ b/Assets/Portal/Assets/Materials/PortalDepth.shader @@ -0,0 +1,12 @@ +Shader "Escape Room Engine/PortalDepth" { + SubShader { + Pass { + ColorMask 0 + + Stencil { + Ref 1 + Comp LEqual + } + } + } +} \ No newline at end of file diff --git a/Assets/Portal/Assets/Materials/PortalDepth.shader.meta b/Assets/Portal/Assets/Materials/PortalDepth.shader.meta new file mode 100644 index 0000000..f069373 --- /dev/null +++ b/Assets/Portal/Assets/Materials/PortalDepth.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 9c438221637f2c0439e5af0dadf1f829 +ShaderImporter: + externalObjects: {} + defaultTextures: [] + nonModifiableTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Portal/Assets/Prefabs/Portal.prefab b/Assets/Portal/Assets/Prefabs/Portal.prefab index e8eeac5..6b8eb4e 100644 --- a/Assets/Portal/Assets/Prefabs/Portal.prefab +++ b/Assets/Portal/Assets/Prefabs/Portal.prefab @@ -12,7 +12,7 @@ GameObject: - component: {fileID: 8547629936759508216} - component: {fileID: 5871497001431693362} m_Layer: 7 - m_Name: Portal Screen + m_Name: Screen m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 @@ -25,14 +25,14 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 5366957160841664999} - m_LocalRotation: {x: 0.7071068, y: 0, z: 0, w: 0.7071067} + m_LocalRotation: {x: 0.7071068, y: 0, z: 0, w: 0.7071068} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 2246995198243242195} m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_LocalEulerAnglesHint: {x: 90, y: 0, z: 0} --- !u!33 &8547629936759508216 MeshFilter: m_ObjectHideFlags: 0 @@ -134,7 +134,6 @@ MonoBehaviour: linkedPortal: {fileID: 0} minNearClipPlane: 0.0001 screen: {fileID: 5871497001431693362} - cameraTransform: {fileID: 0} portalTransform: {fileID: 2246995198243242195} --- !u!65 &7604291350124895408 BoxCollider: @@ -182,14 +181,14 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8470391359842711396} - m_LocalRotation: {x: 0.7071068, y: 0, z: 0, w: 0.7071067} + m_LocalRotation: {x: 0.7071068, y: 0, z: 0, w: 0.7071068} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 2246995198243242195} m_RootOrder: 1 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_LocalEulerAnglesHint: {x: 90, y: 0, z: 0} --- !u!33 &5289736326143877755 MeshFilter: m_ObjectHideFlags: 0 diff --git a/Assets/Portal/Runtime/FullScreenDepth.cs b/Assets/Portal/Runtime/FullScreenDepth.cs new file mode 100644 index 0000000..fddf373 --- /dev/null +++ b/Assets/Portal/Runtime/FullScreenDepth.cs @@ -0,0 +1,55 @@ +using System.Collections.Generic; +using UnityEngine; +using UnityEngine.Rendering; +using UnityEngine.Rendering.Universal; + +namespace EscapeRoomEngine.Portal.Runtime +{ + public class FullScreenDepth : ScriptableRendererFeature + { + private class RenderPass : ScriptableRenderPass + { + private RenderStateBlock _renderStateBlock; + + private readonly LayerMask _layer; + + public RenderPass(LayerMask layer, RenderPassEvent renderPassEvent) + { + _layer = layer; + + this.renderPassEvent = renderPassEvent; + _renderStateBlock = new RenderStateBlock(RenderStateMask.Nothing); + } + + public override void Execute(ScriptableRenderContext context, ref RenderingData renderingData) + { + var sortingCriteria = renderingData.cameraData.defaultOpaqueSortFlags; + var drawingSettings = + CreateDrawingSettings( + new List + { + new("SRPDefaultUnlit"), new("UniversalForward"), new("UniversalForwardOnly") + }, + ref renderingData, sortingCriteria); + + var filteringSettings = new FilteringSettings(RenderQueueRange.opaque, _layer); + context.DrawRenderers(renderingData.cullResults, ref drawingSettings, ref filteringSettings, ref _renderStateBlock); + } + } + + private RenderPass _renderPass; + + public LayerMask layer; + public RenderPassEvent renderPassEvent = RenderPassEvent.AfterRenderingOpaques; + + public override void Create() + { + _renderPass = new RenderPass(layer, renderPassEvent); + } + + public override void AddRenderPasses(ScriptableRenderer renderer, ref RenderingData renderingData) + { + renderer.EnqueuePass(_renderPass); + } + } +} \ No newline at end of file diff --git a/Assets/Portal/Runtime/FullScreenDepth.cs.meta b/Assets/Portal/Runtime/FullScreenDepth.cs.meta new file mode 100644 index 0000000..e683aa7 --- /dev/null +++ b/Assets/Portal/Runtime/FullScreenDepth.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 7ace2de170db48acb344b9e43cb6524e +timeCreated: 1682972259 \ No newline at end of file diff --git a/Assets/Portal/Runtime/Portal.cs b/Assets/Portal/Runtime/Portal.cs index 6ae0718..8017b54 100644 --- a/Assets/Portal/Runtime/Portal.cs +++ b/Assets/Portal/Runtime/Portal.cs @@ -26,9 +26,10 @@ namespace EscapeRoomEngine.Portal.Runtime /// public float minNearClipPlane = 0.0001f; /// - /// The mesh where the portal will be drawn. + /// The meshes where the portal will draw its stencil and depth. /// - [BoxGroup("Internal")] public MeshRenderer screen; + [BoxGroup("Internal")] [SerializeField] + private MeshRenderer screen; /// /// The transform marking the edge of the portal plane. /// diff --git a/Assets/Portal/Runtime/RenderPortalCameras.cs b/Assets/Portal/Runtime/RenderPortalCameras.cs index 1d04d5f..1ec26ea 100644 --- a/Assets/Portal/Runtime/RenderPortalCameras.cs +++ b/Assets/Portal/Runtime/RenderPortalCameras.cs @@ -32,7 +32,7 @@ namespace EscapeRoomEngine.Portal.Runtime _layers = layers; _passType = passType; - renderPassEvent = RenderPassEvent.AfterRenderingOpaques; + renderPassEvent = passType == PassType.Opaque ? RenderPassEvent.AfterRenderingOpaques : RenderPassEvent.BeforeRenderingTransparents; _renderStateBlock = new RenderStateBlock(RenderStateMask.Nothing); // set stencil @@ -107,7 +107,7 @@ namespace EscapeRoomEngine.Portal.Runtime public override void AddRenderPasses(ScriptableRenderer renderer, ref RenderingData renderingData) { renderer.EnqueuePass(_opaquePass); - // renderer.EnqueuePass(_transparentPass); TODO: enable + renderer.EnqueuePass(_transparentPass); } } } \ No newline at end of file diff --git a/Assets/Portal/Runtime/RenderPortals.cs b/Assets/Portal/Runtime/RenderPortals.cs index 37ffe74..dffb4b1 100644 --- a/Assets/Portal/Runtime/RenderPortals.cs +++ b/Assets/Portal/Runtime/RenderPortals.cs @@ -7,17 +7,19 @@ namespace EscapeRoomEngine.Portal.Runtime { public class RenderPortals : ScriptableRendererFeature { - private class PortalRenderPass : ScriptableRenderPass + private class RenderPass : ScriptableRenderPass { private RenderStateBlock _renderStateBlock; - private readonly LayerMask _layers; + private readonly LayerMask _layer; + private readonly Material _overwriteMaterial; - public PortalRenderPass(LayerMask layers) + public RenderPass(LayerMask layer, Material overwriteMaterial, RenderPassEvent renderPassEvent) { - _layers = layers; + _layer = layer; + _overwriteMaterial = overwriteMaterial; - renderPassEvent = RenderPassEvent.AfterRenderingOpaques; + this.renderPassEvent = renderPassEvent; _renderStateBlock = new RenderStateBlock(RenderStateMask.Nothing); } @@ -31,24 +33,30 @@ namespace EscapeRoomEngine.Portal.Runtime new("SRPDefaultUnlit"), new("UniversalForward"), new("UniversalForwardOnly") }, ref renderingData, sortingCriteria); + if (_overwriteMaterial) + { + drawingSettings.overrideMaterial = _overwriteMaterial; + } - var filteringSettings = new FilteringSettings(RenderQueueRange.opaque, _layers); + var filteringSettings = new FilteringSettings(RenderQueueRange.opaque, _layer); context.DrawRenderers(renderingData.cullResults, ref drawingSettings, ref filteringSettings, ref _renderStateBlock); } } - private PortalRenderPass _portalPass; + private RenderPass _renderPass; - public LayerMask layers; + public LayerMask layer; + public Material overwriteMaterial; + public RenderPassEvent renderPassEvent = RenderPassEvent.AfterRenderingOpaques; public override void Create() { - _portalPass = new PortalRenderPass(layers); + _renderPass = new RenderPass(layer, overwriteMaterial, renderPassEvent); } public override void AddRenderPasses(ScriptableRenderer renderer, ref RenderingData renderingData) { - renderer.EnqueuePass(_portalPass); + renderer.EnqueuePass(_renderPass); } } } \ No newline at end of file diff --git a/Assets/Scenes/StencilPortalScene.unity b/Assets/Scenes/StencilPortalScene.unity index 91ddafa..3c02d20 100644 --- a/Assets/Scenes/StencilPortalScene.unity +++ b/Assets/Scenes/StencilPortalScene.unity @@ -309,7 +309,7 @@ GameObject: m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 2147483647 - m_IsActive: 0 + m_IsActive: 1 --- !u!4 &230809358 Transform: m_ObjectHideFlags: 0 @@ -325,6 +325,7 @@ Transform: - {fileID: 1338880438} - {fileID: 1451317369} - {fileID: 393237280} + - {fileID: 353778188} m_Father: {fileID: 1453220877} m_RootOrder: -1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} @@ -354,7 +355,7 @@ Transform: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 259858787} m_LocalRotation: {x: 0.1297753, y: -0, z: -0, w: 0.9915434} - m_LocalPosition: {x: -0.302, y: 1.039, z: -0.164} + m_LocalPosition: {x: -0.302, y: 1.039, z: -0.822} m_LocalScale: {x: 0.13379, y: 0.28, z: 0.13379} m_ConstrainProportionsScale: 0 m_Children: [] @@ -419,11 +420,6 @@ PrefabInstance: serializedVersion: 3 m_TransformParent: {fileID: 0} m_Modifications: - - target: {fileID: 4586981498204149835, guid: ecbf9ce952d5f38458b8237a4483c562, - type: 3} - propertyPath: m_Enabled - value: 0 - objectReference: {fileID: 0} - target: {fileID: 5061459391527264860, guid: ecbf9ce952d5f38458b8237a4483c562, type: 3} propertyPath: m_IsActive @@ -507,28 +503,126 @@ PrefabInstance: - target: {fileID: 6854256365667908692, guid: ecbf9ce952d5f38458b8237a4483c562, type: 3} propertyPath: m_LocalPosition.z - value: -1 + value: 0 objectReference: {fileID: 0} - target: {fileID: 6854256365667908692, guid: ecbf9ce952d5f38458b8237a4483c562, type: 3} propertyPath: m_LocalRotation.w - value: 1 + value: 0.000003010034 objectReference: {fileID: 0} - target: {fileID: 6854256365667908692, guid: ecbf9ce952d5f38458b8237a4483c562, type: 3} propertyPath: m_LocalRotation.x - value: 0.0000004768371 + value: 1.449507e-12 + objectReference: {fileID: 0} + - target: {fileID: 6854256365667908692, guid: ecbf9ce952d5f38458b8237a4483c562, + type: 3} + propertyPath: m_LocalRotation.y + value: -1 + objectReference: {fileID: 0} + - target: {fileID: 6854256365667908692, guid: ecbf9ce952d5f38458b8237a4483c562, + type: 3} + propertyPath: m_LocalRotation.z + value: 0.00000047683716 objectReference: {fileID: 0} - target: {fileID: 6854256365667908692, guid: ecbf9ce952d5f38458b8237a4483c562, type: 3} propertyPath: m_LocalEulerAnglesHint.x value: 0 objectReference: {fileID: 0} + - target: {fileID: 6854256365667908692, guid: ecbf9ce952d5f38458b8237a4483c562, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -180 + objectReference: {fileID: 0} m_RemovedComponents: [] m_RemovedGameObjects: [] m_AddedGameObjects: [] m_AddedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: ecbf9ce952d5f38458b8237a4483c562, type: 3} +--- !u!1 &353778187 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 353778188} + - component: {fileID: 353778190} + - component: {fileID: 353778189} + m_Layer: 0 + m_Name: Capsule (3) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 2147483647 + m_IsActive: 1 +--- !u!4 &353778188 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 353778187} + m_LocalRotation: {x: -0, y: -0, z: 0.080624446, w: 0.9967446} + m_LocalPosition: {x: 0.193, y: 0.475, z: 1.936} + m_LocalScale: {x: 0.22218, y: 0.22218, z: 0.22218} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 230809358} + m_RootOrder: -1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 9.249} +--- !u!23 &353778189 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 353778187} + 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: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 7f259a434905b1b48a8984e5a62a84d2, 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 &353778190 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 353778187} + m_Mesh: {fileID: 10208, guid: 0000000000000000e000000000000000, type: 0} --- !u!1 &393237279 GameObject: m_ObjectHideFlags: 0 @@ -582,7 +676,7 @@ MeshRenderer: m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: - - {fileID: 2100000, guid: 93b04c4f28fa9dc4e9014c610a57f954, type: 2} + - {fileID: 2100000, guid: 7f259a434905b1b48a8984e5a62a84d2, type: 2} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 @@ -839,7 +933,7 @@ Transform: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 603545547} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0.319, y: 0, z: -0.21} + m_LocalPosition: {x: 0.213, y: 0, z: -0.867} m_LocalScale: {x: 0.13379, y: 0.13379, z: 0.13379} m_ConstrainProportionsScale: 0 m_Children: [] @@ -957,8 +1051,8 @@ Transform: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 613329380} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 1} - m_LocalScale: {x: 0.2, y: 1, z: 0.4} + m_LocalPosition: {x: 0, y: 0, z: 0.5} + m_LocalScale: {x: 0.2, y: 1, z: 0.5} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 1453220877} @@ -1278,7 +1372,7 @@ Transform: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1338880437} m_LocalRotation: {x: -0.5140753, y: 0.08534964, z: 0.15125602, w: 0.83997846} - m_LocalPosition: {x: 0.286, y: 0.589, z: -0.219} + m_LocalPosition: {x: 0.286, y: 0.589, z: -0.794} m_LocalScale: {x: 0.22218, y: 0.22218, z: 0.22218} m_ConstrainProportionsScale: 0 m_Children: [] @@ -1305,7 +1399,7 @@ MeshRenderer: m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: - - {fileID: 2100000, guid: 7f259a434905b1b48a8984e5a62a84d2, type: 2} + - {fileID: 2100000, guid: 93b04c4f28fa9dc4e9014c610a57f954, type: 2} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 @@ -1361,7 +1455,7 @@ Transform: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1451317368} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0.193, y: 0.475, z: 0.623} + m_LocalPosition: {x: 0.193, y: 0.475, z: -1.499} m_LocalScale: {x: 0.22218, y: 0.22218, z: 0.22218} m_ConstrainProportionsScale: 0 m_Children: [] @@ -1453,6 +1547,7 @@ Transform: - {fileID: 259858788} - {fileID: 545153747} - {fileID: 613329381} + - {fileID: 1814201350} - {fileID: 230809358} m_Father: {fileID: 612192276} m_RootOrder: -1 @@ -1487,27 +1582,27 @@ PrefabInstance: - target: {fileID: 2246995198243242195, guid: c50e7df1078c96f46bc6825f7e422fb7, type: 3} propertyPath: m_LocalPosition.z - value: 0 + value: -1 objectReference: {fileID: 0} - target: {fileID: 2246995198243242195, guid: c50e7df1078c96f46bc6825f7e422fb7, type: 3} propertyPath: m_LocalRotation.w - value: 1 + value: 0.0000029504295 objectReference: {fileID: 0} - target: {fileID: 2246995198243242195, guid: c50e7df1078c96f46bc6825f7e422fb7, type: 3} propertyPath: m_LocalRotation.x - value: 0 + value: -0 objectReference: {fileID: 0} - target: {fileID: 2246995198243242195, guid: c50e7df1078c96f46bc6825f7e422fb7, type: 3} propertyPath: m_LocalRotation.y - value: 0 + value: 1 objectReference: {fileID: 0} - target: {fileID: 2246995198243242195, guid: c50e7df1078c96f46bc6825f7e422fb7, type: 3} propertyPath: m_LocalRotation.z - value: 0 + value: -0 objectReference: {fileID: 0} - target: {fileID: 2246995198243242195, guid: c50e7df1078c96f46bc6825f7e422fb7, type: 3} @@ -1517,18 +1612,28 @@ PrefabInstance: - target: {fileID: 2246995198243242195, guid: c50e7df1078c96f46bc6825f7e422fb7, type: 3} propertyPath: m_LocalEulerAnglesHint.y - value: 0 + value: 180 objectReference: {fileID: 0} - target: {fileID: 2246995198243242195, guid: c50e7df1078c96f46bc6825f7e422fb7, type: 3} propertyPath: m_LocalEulerAnglesHint.z value: 0 objectReference: {fileID: 0} + - target: {fileID: 2443429395130904898, guid: c50e7df1078c96f46bc6825f7e422fb7, + type: 3} + propertyPath: m_IsActive + value: 1 + objectReference: {fileID: 0} - target: {fileID: 2713893991261817724, guid: c50e7df1078c96f46bc6825f7e422fb7, type: 3} propertyPath: m_IsActive value: 0 objectReference: {fileID: 0} + - target: {fileID: 5366957160841664999, guid: c50e7df1078c96f46bc6825f7e422fb7, + type: 3} + propertyPath: m_IsActive + value: 1 + objectReference: {fileID: 0} - target: {fileID: 5635962022185625128, guid: c50e7df1078c96f46bc6825f7e422fb7, type: 3} propertyPath: m_Name @@ -1665,7 +1770,7 @@ Transform: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1681740147} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: -0.18, y: 0, z: -0.12099999} + m_LocalPosition: {x: -0.286, y: 0, z: -0.778} m_LocalScale: {x: 0.13379, y: 0.13379, z: 0.13379} m_ConstrainProportionsScale: 0 m_Children: [] @@ -1722,6 +1827,111 @@ MeshFilter: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1681740147} m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &1814201349 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1814201350} + - component: {fileID: 1814201353} + - component: {fileID: 1814201352} + - component: {fileID: 1814201351} + m_Layer: 0 + m_Name: Cube + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1814201350 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1814201349} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 2} + m_LocalScale: {x: 2, y: 0.05, z: 0.05} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1453220877} + m_RootOrder: -1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!65 &1814201351 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1814201349} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &1814201352 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1814201349} + 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: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 31321ba15b8f8eb4c954353edc038b1d, 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 &1814201353 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1814201349} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} --- !u!1001 &1933565651 PrefabInstance: m_ObjectHideFlags: 0 diff --git a/Assets/URP/URP-HighFidelity-Renderer.asset b/Assets/URP/URP-HighFidelity-Renderer.asset index 4ba8eba..4f45830 100644 --- a/Assets/URP/URP-HighFidelity-Renderer.asset +++ b/Assets/URP/URP-HighFidelity-Renderer.asset @@ -1,5 +1,39 @@ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: +--- !u!114 &-7323701910238630107 +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: 7ace2de170db48acb344b9e43cb6524e, type: 3} + m_Name: FullScreenDepth + m_EditorClassIdentifier: + m_Active: 1 + layer: + serializedVersion: 2 + m_Bits: 256 + renderPassEvent: 300 +--- !u!114 &-2441009228830351196 +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: 7ace2de170db48acb344b9e43cb6524e, type: 3} + m_Name: FullScreenDepth + m_EditorClassIdentifier: + m_Active: 1 + layer: + serializedVersion: 2 + m_Bits: 256 + renderPassEvent: 450 --- !u!114 &-1878332245247344467 MonoBehaviour: m_ObjectHideFlags: 0 @@ -45,12 +79,14 @@ MonoBehaviour: m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 19d058f65954fe84dacdf8eae0a2a980, type: 3} - m_Name: Portal Stencil + m_Name: PortalStencil m_EditorClassIdentifier: m_Active: 1 - layers: + layer: serializedVersion: 2 m_Bits: 128 + overwriteMaterial: {fileID: 0} + renderPassEvent: 300 --- !u!114 &11400000 MonoBehaviour: m_ObjectHideFlags: 0 @@ -67,13 +103,15 @@ MonoBehaviour: debugReplacementPS: {fileID: 4800000, guid: cf852408f2e174538bcd9b7fda1c5ae7, type: 3} m_RendererFeatures: - - {fileID: -1878332245247344467} - {fileID: -1381608776974771741} - - {fileID: 7693142412764493824} + - {fileID: -7323701910238630107} - {fileID: 4760723987118474777} - m_RendererFeatureMap: adc0de57c6d2eee5e359db2d238ad3ec00b851af4388c36a19c6e02d3e7d1142 + - {fileID: -2441009228830351196} + - {fileID: 7606148040103864242} + - {fileID: -1878332245247344467} + m_RendererFeatureMap: e359db2d238ad3ec256f604feafb5c9a19c6e02d3e7d1142a4e01d160acb1fdeb2a76ce757778e69adc0de57c6d2eee5 m_UseNativeRenderPass: 0 - postProcessData: {fileID: 0} + postProcessData: {fileID: 11400000, guid: 41439944d30ece34e96484bdb6645b55, type: 2} xrSystemData: {fileID: 11400000, guid: 60e1133243b97e347b653163a8c01b64, type: 2} shaders: blitPS: {fileID: 4800000, guid: c17132b1f77d20942aa75f8429c0f8bc, type: 3} @@ -110,7 +148,7 @@ MonoBehaviour: m_DepthPrimingMode: 0 m_CopyDepthMode: 0 m_AccurateGbufferNormals: 0 - m_IntermediateTextureMode: 1 + m_IntermediateTextureMode: 0 --- !u!114 &4760723987118474777 MonoBehaviour: m_ObjectHideFlags: 0 @@ -121,13 +159,13 @@ MonoBehaviour: m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: eaf6ad8627b74652be2715a93378d05f, type: 3} - m_Name: Render Portal Cameras + m_Name: RenderPortalCameras m_EditorClassIdentifier: m_Active: 1 layers: serializedVersion: 2 m_Bits: 119 ---- !u!114 &7693142412764493824 +--- !u!114 &7606148040103864242 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} @@ -137,9 +175,11 @@ MonoBehaviour: m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 19d058f65954fe84dacdf8eae0a2a980, type: 3} - m_Name: Full Screen Depth + m_Name: PortalDepth m_EditorClassIdentifier: m_Active: 1 - layers: + layer: serializedVersion: 2 - m_Bits: 256 + m_Bits: 128 + overwriteMaterial: {fileID: 2100000, guid: b788aaf4ec13aab459f370617052b5c1, type: 2} + renderPassEvent: 450 diff --git a/Assets/URP/URP-HighFidelity.asset b/Assets/URP/URP-HighFidelity.asset index ec93268..23db3c5 100644 --- a/Assets/URP/URP-HighFidelity.asset +++ b/Assets/URP/URP-HighFidelity.asset @@ -39,9 +39,9 @@ MonoBehaviour: m_AdditionalLightsPerObjectLimit: 8 m_AdditionalLightShadowsSupported: 1 m_AdditionalLightsShadowmapResolution: 4096 - m_AdditionalLightsShadowResolutionTierLow: 128 - m_AdditionalLightsShadowResolutionTierMedium: 256 - m_AdditionalLightsShadowResolutionTierHigh: 512 + m_AdditionalLightsShadowResolutionTierLow: 512 + m_AdditionalLightsShadowResolutionTierMedium: 1024 + m_AdditionalLightsShadowResolutionTierHigh: 2048 m_ReflectionProbeBlending: 1 m_ReflectionProbeBoxProjection: 1 m_ShadowDistance: 20 @@ -56,6 +56,7 @@ MonoBehaviour: m_SoftShadowsSupported: 1 m_ConservativeEnclosingSphere: 0 m_NumIterationsEnclosingSphere: 64 + m_SoftShadowQuality: 3 m_AdditionalLightsCookieResolution: 4096 m_AdditionalLightsCookieFormat: 4 m_UseSRPBatcher: 1 diff --git a/Assets/VR/Assets/Prefabs/XR Origin.prefab b/Assets/VR/Assets/Prefabs/XR Origin.prefab index 629c7e3..cfc24fb 100644 --- a/Assets/VR/Assets/Prefabs/XR Origin.prefab +++ b/Assets/VR/Assets/Prefabs/XR Origin.prefab @@ -145,6 +145,7 @@ MonoBehaviour: m_EditorClassIdentifier: m_TrackingType: 0 m_UpdateType: 0 + m_IgnoreTrackingState: 0 m_PositionInput: m_UseReference: 0 m_Action: @@ -185,6 +186,18 @@ MonoBehaviour: m_Flags: 0 m_Flags: 0 m_Reference: {fileID: 0} + m_TrackingStateInput: + m_UseReference: 0 + m_Action: + m_Name: + m_Type: 0 + m_ExpectedControlType: + m_Id: + m_Processors: + m_Interactions: + m_SingletonActionBindings: [] + m_Flags: 0 + m_Reference: {fileID: 0} m_PositionAction: m_Name: m_Type: 0 @@ -316,6 +329,7 @@ MonoBehaviour: m_EditorClassIdentifier: m_TrackingType: 0 m_UpdateType: 0 + m_IgnoreTrackingState: 0 m_PositionInput: m_UseReference: 0 m_Action: @@ -372,6 +386,18 @@ MonoBehaviour: m_Flags: 0 m_Flags: 0 m_Reference: {fileID: 0} + m_TrackingStateInput: + m_UseReference: 0 + m_Action: + m_Name: + m_Type: 0 + m_ExpectedControlType: + m_Id: + m_Processors: + m_Interactions: + m_SingletonActionBindings: [] + m_Flags: 0 + m_Reference: {fileID: 0} m_PositionAction: m_Name: m_Type: 0 @@ -577,6 +603,7 @@ MonoBehaviour: m_EditorClassIdentifier: m_TrackingType: 0 m_UpdateType: 0 + m_IgnoreTrackingState: 0 m_PositionInput: m_UseReference: 0 m_Action: @@ -617,6 +644,18 @@ MonoBehaviour: m_Flags: 0 m_Flags: 0 m_Reference: {fileID: 0} + m_TrackingStateInput: + m_UseReference: 0 + m_Action: + m_Name: + m_Type: 0 + m_ExpectedControlType: + m_Id: + m_Processors: + m_Interactions: + m_SingletonActionBindings: [] + m_Flags: 0 + m_Reference: {fileID: 0} m_PositionAction: m_Name: m_Type: 0 @@ -1022,8 +1061,8 @@ Transform: m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - - {fileID: 8899029464470268750} - {fileID: 419816428804372186} + - {fileID: 8899029464470268750} - {fileID: 419816428871882043} - {fileID: 419816428230682310} - {fileID: 419816429261119707}