diff --git a/.idea/.idea.IchniCreatorStudio/.idea/indexLayout.xml b/.idea/.idea.IchniCreatorStudio/.idea/indexLayout.xml new file mode 100644 index 00000000..7b08163c --- /dev/null +++ b/.idea/.idea.IchniCreatorStudio/.idea/indexLayout.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/.vsconfig b/.vsconfig new file mode 100644 index 00000000..f019fd0a --- /dev/null +++ b/.vsconfig @@ -0,0 +1,6 @@ +{ + "version": "1.0", + "components": [ + "Microsoft.VisualStudio.Workload.ManagedGame" + ] +} diff --git a/Assets/000_assets/Anim.meta b/Assets/000_assets/Anim.meta new file mode 100644 index 00000000..9d8f671c --- /dev/null +++ b/Assets/000_assets/Anim.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: b620e892c4e6cef42b58998db5e25480 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/000_assets/Anim/DTM_Trail.controller b/Assets/000_assets/Anim/DTM_Trail.controller new file mode 100644 index 00000000..e8c3c85f --- /dev/null +++ b/Assets/000_assets/Anim/DTM_Trail.controller @@ -0,0 +1,72 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1102 &-5044118729681229552 +AnimatorState: + serializedVersion: 6 + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: HitPoint + m_Speed: 1 + m_CycleOffset: 0 + m_Transitions: [] + m_StateMachineBehaviours: [] + m_Position: {x: 50, y: 50, z: 0} + m_IKOnFeet: 0 + m_WriteDefaultValues: 1 + m_Mirror: 0 + m_SpeedParameterActive: 0 + m_MirrorParameterActive: 0 + m_CycleOffsetParameterActive: 0 + m_TimeParameterActive: 0 + m_Motion: {fileID: 7400000, guid: 96eebd1d5b544e74ca55536541f943f2, type: 2} + m_Tag: + m_SpeedParameter: + m_MirrorParameter: + m_CycleOffsetParameter: + m_TimeParameter: +--- !u!91 &9100000 +AnimatorController: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: DTM_Trail + serializedVersion: 5 + m_AnimatorParameters: [] + m_AnimatorLayers: + - serializedVersion: 5 + m_Name: Base Layer + m_StateMachine: {fileID: 5902170936534288239} + m_Mask: {fileID: 0} + m_Motions: [] + m_Behaviours: [] + m_BlendingMode: 0 + m_SyncedLayerIndex: -1 + m_DefaultWeight: 0 + m_IKPass: 0 + m_SyncedLayerAffectsTiming: 0 + m_Controller: {fileID: 9100000} +--- !u!1107 &5902170936534288239 +AnimatorStateMachine: + serializedVersion: 6 + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Base Layer + m_ChildStates: + - serializedVersion: 1 + m_State: {fileID: -5044118729681229552} + m_Position: {x: 320, y: 130, z: 0} + m_ChildStateMachines: [] + m_AnyStateTransitions: [] + m_EntryTransitions: [] + m_StateMachineTransitions: {} + m_StateMachineBehaviours: [] + m_AnyStatePosition: {x: 50, y: 20, z: 0} + m_EntryPosition: {x: 50, y: 120, z: 0} + m_ExitPosition: {x: 800, y: 120, z: 0} + m_ParentStateMachinePosition: {x: 800, y: 20, z: 0} + m_DefaultState: {fileID: -5044118729681229552} diff --git a/Assets/000_assets/Anim/DTM_Trail.controller.meta b/Assets/000_assets/Anim/DTM_Trail.controller.meta new file mode 100644 index 00000000..2a58627e --- /dev/null +++ b/Assets/000_assets/Anim/DTM_Trail.controller.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 518b73ce1b7c250478e9e8283dfcbee6 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 9100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/000_assets/Anim/HitPoint_Show01.anim b/Assets/000_assets/Anim/HitPoint_Show01.anim new file mode 100644 index 00000000..f1af7e24 --- /dev/null +++ b/Assets/000_assets/Anim/HitPoint_Show01.anim @@ -0,0 +1,434 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!74 &7400000 +AnimationClip: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: HitPoint_Show01 + serializedVersion: 7 + m_Legacy: 0 + m_Compressed: 0 + m_UseHighQualityCurve: 1 + m_RotationCurves: [] + m_CompressedRotationCurves: [] + m_EulerCurves: [] + m_PositionCurves: [] + m_ScaleCurves: [] + m_FloatCurves: + - serializedVersion: 2 + curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.33333334 + value: 0.033 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: material._cube_radius + path: Particle System + classID: 199 + script: {fileID: 0} + flags: 0 + - serializedVersion: 2 + curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.33333334 + value: 0.05 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: material._cube_width + path: Particle System + classID: 199 + script: {fileID: 0} + flags: 0 + - serializedVersion: 2 + curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.5 + value: 0.5 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: material._ring_radius + path: Particle System + classID: 199 + script: {fileID: 0} + flags: 0 + - serializedVersion: 2 + curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0.16666667 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.28333333 + value: 0.11 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.5 + value: 0.01 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: material._ring_width + path: Particle System + classID: 199 + script: {fileID: 0} + flags: 0 + - serializedVersion: 2 + curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0.9 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.5 + value: 0.9 + inSlope: 0 + outSlope: -0.43721995 + tangentMode: 1 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.09370208 + - serializedVersion: 3 + time: 1 + value: 0.5 + inSlope: -0.03507681 + outSlope: -0.03507681 + tangentMode: 0 + weightedMode: 1 + inWeight: 0.8706604 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: material._gapsize + path: Particle System + classID: 199 + script: {fileID: 0} + flags: 0 + m_PPtrCurves: [] + m_SampleRate: 60 + m_WrapMode: 0 + m_Bounds: + m_Center: {x: 0, y: 0, z: 0} + m_Extent: {x: 0, y: 0, z: 0} + m_ClipBindingConstant: + genericBindings: + - serializedVersion: 2 + path: 922205677 + attribute: 2312236205 + script: {fileID: 0} + typeID: 199 + customType: 22 + isPPtrCurve: 0 + isIntCurve: 0 + isSerializeReferenceCurve: 0 + - serializedVersion: 2 + path: 922205677 + attribute: 2357554547 + script: {fileID: 0} + typeID: 199 + customType: 22 + isPPtrCurve: 0 + isIntCurve: 0 + isSerializeReferenceCurve: 0 + - serializedVersion: 2 + path: 922205677 + attribute: 2401919657 + script: {fileID: 0} + typeID: 199 + customType: 22 + isPPtrCurve: 0 + isIntCurve: 0 + isSerializeReferenceCurve: 0 + - serializedVersion: 2 + path: 922205677 + attribute: 2385326758 + script: {fileID: 0} + typeID: 199 + customType: 22 + isPPtrCurve: 0 + isIntCurve: 0 + isSerializeReferenceCurve: 0 + - serializedVersion: 2 + path: 922205677 + attribute: 2345372462 + script: {fileID: 0} + typeID: 199 + customType: 22 + isPPtrCurve: 0 + isIntCurve: 0 + isSerializeReferenceCurve: 0 + pptrCurveMapping: [] + m_AnimationClipSettings: + serializedVersion: 2 + m_AdditiveReferencePoseClip: {fileID: 0} + m_AdditiveReferencePoseTime: 0 + m_StartTime: 0 + m_StopTime: 1 + m_OrientationOffsetY: 0 + m_Level: 0 + m_CycleOffset: 0 + m_HasAdditiveReferencePose: 0 + m_LoopTime: 0 + m_LoopBlend: 0 + m_LoopBlendOrientation: 0 + m_LoopBlendPositionY: 0 + m_LoopBlendPositionXZ: 0 + m_KeepOriginalOrientation: 0 + m_KeepOriginalPositionY: 1 + m_KeepOriginalPositionXZ: 0 + m_HeightFromFeet: 0 + m_Mirror: 0 + m_EditorCurves: + - serializedVersion: 2 + curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.33333334 + value: 0.033 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: material._cube_radius + path: Particle System + classID: 199 + script: {fileID: 0} + flags: 0 + - serializedVersion: 2 + curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.33333334 + value: 0.05 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: material._cube_width + path: Particle System + classID: 199 + script: {fileID: 0} + flags: 0 + - serializedVersion: 2 + curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.5 + value: 0.5 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: material._ring_radius + path: Particle System + classID: 199 + script: {fileID: 0} + flags: 0 + - serializedVersion: 2 + curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0.16666667 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.28333333 + value: 0.11 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.5 + value: 0.01 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: material._ring_width + path: Particle System + classID: 199 + script: {fileID: 0} + flags: 0 + - serializedVersion: 2 + curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0.9 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.5 + value: 0.9 + inSlope: 0 + outSlope: -0.43721995 + tangentMode: 1 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.09370208 + - serializedVersion: 3 + time: 1 + value: 0.5 + inSlope: -0.03507681 + outSlope: -0.03507681 + tangentMode: 0 + weightedMode: 1 + inWeight: 0.8706604 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: material._gapsize + path: Particle System + classID: 199 + script: {fileID: 0} + flags: 0 + m_EulerEditorCurves: [] + m_HasGenericRootTransform: 0 + m_HasMotionFloatCurves: 0 + m_Events: [] diff --git a/Assets/000_assets/Anim/HitPoint_Show01.anim.meta b/Assets/000_assets/Anim/HitPoint_Show01.anim.meta new file mode 100644 index 00000000..fd06f715 --- /dev/null +++ b/Assets/000_assets/Anim/HitPoint_Show01.anim.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 96eebd1d5b544e74ca55536541f943f2 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 7400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/000_assets/shader/New Material.mat b/Assets/000_assets/shader/New Material.mat index c407fc1a..432ea36f 100644 --- a/Assets/000_assets/shader/New Material.mat +++ b/Assets/000_assets/shader/New Material.mat @@ -18,8 +18,7 @@ Material: m_DoubleSidedGI: 0 m_CustomRenderQueue: -1 stringTagMap: {} - disabledShaderPasses: - - MOTIONVECTORS + disabledShaderPasses: [] m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -40,19 +39,23 @@ Material: m_Floats: - _AlphaCutoff: 0.5 - _Opacity: 1 + - _QueueControl: 0 + - _QueueOffset: 0 + - _ReceiveShadows: 1 - _count: 8 - _cube_radius: 0.033 - _cube_softness: 0 - _cube_width: 0.05 - - _gap_softness: 1 + - _gap_softness: 0 - _gapsize: 0.5 - _ring_radius: 0.5 - - _ring_rotation: -1 + - _ring_rotation: 0 + - _ring_rotation_angle: 0 - _ring_softness: 0 - - _ring_width: 0.02 + - _ring_width: 0.01 m_Colors: - _EmissionColor: {r: 1, g: 1, b: 1, a: 1} - - _ImageColor: {r: 1, g: 1, b: 1, a: 0} + - _ImageColor: {r: 2, g: 2, b: 2, a: 1} m_BuildTextureStacks: [] m_AllowLocking: 1 --- !u!114 &2669937578497038573 diff --git a/Assets/000_assets/shader/hit_point.shader b/Assets/000_assets/shader/hit_point.shader index e954916f..12118fb9 100644 --- a/Assets/000_assets/shader/hit_point.shader +++ b/Assets/000_assets/shader/hit_point.shader @@ -6,7 +6,7 @@ Shader "Soullies/hit_point" { [HideInInspector] _AlphaCutoff("Alpha Cutoff ", Range(0, 1)) = 0.5 [HideInInspector] _EmissionColor("Emission Color", Color) = (1,1,1,1) - [HDR] _ImageColor( "ImageColor", Color ) = ( 1, 1, 1, 0 ) + [HDR] _ImageColor( "ImageColor", Color ) = ( 1, 1, 1, 1 ) _Opacity( "Opacity", Float ) = 1 [Header(cube)] _cube_radius( "cube_radius", Range( 0, 0.5 ) ) = 0.05854658 _cube_width( "cube_width", Range( 0, 0.5 ) ) = 0.01032564 @@ -18,10 +18,27 @@ Shader "Soullies/hit_point" _gap_softness( "gap_softness", Range( 0, 1 ) ) = 0 _count( "count", Float ) = 8 _ring_rotation( "ring_rotation", Float ) = 0 + _ring_rotation_angle( "ring_rotation_angle", Float ) = 0 - [HideInInspector][NoScaleOffset] unity_Lightmaps("unity_Lightmaps", 2DArray) = "" {} + + //_TessPhongStrength( "Tess Phong Strength", Range( 0, 1 ) ) = 0.5 + //_TessValue( "Tess Max Tessellation", Range( 1, 32 ) ) = 16 + //_TessMin( "Tess Min Distance", Float ) = 10 + //_TessMax( "Tess Max Distance", Float ) = 25 + //_TessEdgeLength ( "Tess Edge length", Range( 2, 50 ) ) = 16 + //_TessMaxDisp( "Tess Max Displacement", Float ) = 25 + + [HideInInspector] _QueueOffset("_QueueOffset", Float) = 0 + [HideInInspector] _QueueControl("_QueueControl", Float) = -1 + + [HideInInspector][NoScaleOffset] unity_Lightmaps("unity_Lightmaps", 2DArray) = "" {} [HideInInspector][NoScaleOffset] unity_LightmapsInd("unity_LightmapsInd", 2DArray) = "" {} [HideInInspector][NoScaleOffset] unity_ShadowMasks("unity_ShadowMasks", 2DArray) = "" {} + + //[HideInInspector][ToggleUI] _AddPrecomputedVelocity("Add Precomputed Velocity", Float) = 1 + [HideInInspector][ToggleOff] _ReceiveShadows("Receive Shadows", Float) = 1 + + //[HideInInspector] _XRMotionVectorsPass("_XRMotionVectorsPass", Float) = 1 } SubShader @@ -30,639 +47,220 @@ Shader "Soullies/hit_point" - Tags { "RenderPipeline"="UniversalPipeline" "RenderType"="Transparent" "Queue"="Transparent" "UniversalMaterialType"="Lit" "ShaderGraphShader"="true" } + Tags { "RenderPipeline"="UniversalPipeline" "RenderType"="Transparent" "Queue"="Transparent" "UniversalMaterialType"="Unlit" } - Cull Off + Cull Back + AlphaToMask Off + + HLSLINCLUDE - #pragma target 3.0 + #pragma target 4.5 #pragma prefer_hlslcc gles // ensure rendering platforms toggle list is visible + #if ( SHADER_TARGET > 35 ) && defined( SHADER_API_GLES3 ) + #error For WebGL2/GLES3, please set your shader target to 3.5 via SubShader options. URP shaders in ASE use target 4.5 by default. + #endif + #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Common.hlsl" #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Filtering.hlsl" + #ifndef ASE_TESS_FUNCS + #define ASE_TESS_FUNCS + float4 FixedTess( float tessValue ) + { + return tessValue; + } + + float CalcDistanceTessFactor (float4 vertex, float minDist, float maxDist, float tess, float4x4 o2w, float3 cameraPos ) + { + float3 wpos = mul(o2w,vertex).xyz; + float dist = distance (wpos, cameraPos); + float f = clamp(1.0 - (dist - minDist) / (maxDist - minDist), 0.01, 1.0) * tess; + return f; + } + + float4 CalcTriEdgeTessFactors (float3 triVertexFactors) + { + float4 tess; + tess.x = 0.5 * (triVertexFactors.y + triVertexFactors.z); + tess.y = 0.5 * (triVertexFactors.x + triVertexFactors.z); + tess.z = 0.5 * (triVertexFactors.x + triVertexFactors.y); + tess.w = (triVertexFactors.x + triVertexFactors.y + triVertexFactors.z) / 3.0f; + return tess; + } + + float CalcEdgeTessFactor (float3 wpos0, float3 wpos1, float edgeLen, float3 cameraPos, float4 scParams ) + { + float dist = distance (0.5 * (wpos0+wpos1), cameraPos); + float len = distance(wpos0, wpos1); + float f = max(len * scParams.y / (edgeLen * dist), 1.0); + return f; + } + + float DistanceFromPlane (float3 pos, float4 plane) + { + float d = dot (float4(pos,1.0f), plane); + return d; + } + + bool WorldViewFrustumCull (float3 wpos0, float3 wpos1, float3 wpos2, float cullEps, float4 planes[6] ) + { + float4 planeTest; + planeTest.x = (( DistanceFromPlane(wpos0, planes[0]) > -cullEps) ? 1.0f : 0.0f ) + + (( DistanceFromPlane(wpos1, planes[0]) > -cullEps) ? 1.0f : 0.0f ) + + (( DistanceFromPlane(wpos2, planes[0]) > -cullEps) ? 1.0f : 0.0f ); + planeTest.y = (( DistanceFromPlane(wpos0, planes[1]) > -cullEps) ? 1.0f : 0.0f ) + + (( DistanceFromPlane(wpos1, planes[1]) > -cullEps) ? 1.0f : 0.0f ) + + (( DistanceFromPlane(wpos2, planes[1]) > -cullEps) ? 1.0f : 0.0f ); + planeTest.z = (( DistanceFromPlane(wpos0, planes[2]) > -cullEps) ? 1.0f : 0.0f ) + + (( DistanceFromPlane(wpos1, planes[2]) > -cullEps) ? 1.0f : 0.0f ) + + (( DistanceFromPlane(wpos2, planes[2]) > -cullEps) ? 1.0f : 0.0f ); + planeTest.w = (( DistanceFromPlane(wpos0, planes[3]) > -cullEps) ? 1.0f : 0.0f ) + + (( DistanceFromPlane(wpos1, planes[3]) > -cullEps) ? 1.0f : 0.0f ) + + (( DistanceFromPlane(wpos2, planes[3]) > -cullEps) ? 1.0f : 0.0f ); + return !all (planeTest); + } + + float4 DistanceBasedTess( float4 v0, float4 v1, float4 v2, float tess, float minDist, float maxDist, float4x4 o2w, float3 cameraPos ) + { + float3 f; + f.x = CalcDistanceTessFactor (v0,minDist,maxDist,tess,o2w,cameraPos); + f.y = CalcDistanceTessFactor (v1,minDist,maxDist,tess,o2w,cameraPos); + f.z = CalcDistanceTessFactor (v2,minDist,maxDist,tess,o2w,cameraPos); + + return CalcTriEdgeTessFactors (f); + } + + float4 EdgeLengthBasedTess( float4 v0, float4 v1, float4 v2, float edgeLength, float4x4 o2w, float3 cameraPos, float4 scParams ) + { + float3 pos0 = mul(o2w,v0).xyz; + float3 pos1 = mul(o2w,v1).xyz; + float3 pos2 = mul(o2w,v2).xyz; + float4 tess; + tess.x = CalcEdgeTessFactor (pos1, pos2, edgeLength, cameraPos, scParams); + tess.y = CalcEdgeTessFactor (pos2, pos0, edgeLength, cameraPos, scParams); + tess.z = CalcEdgeTessFactor (pos0, pos1, edgeLength, cameraPos, scParams); + tess.w = (tess.x + tess.y + tess.z) / 3.0f; + return tess; + } + + float4 EdgeLengthBasedTessCull( float4 v0, float4 v1, float4 v2, float edgeLength, float maxDisplacement, float4x4 o2w, float3 cameraPos, float4 scParams, float4 planes[6] ) + { + float3 pos0 = mul(o2w,v0).xyz; + float3 pos1 = mul(o2w,v1).xyz; + float3 pos2 = mul(o2w,v2).xyz; + float4 tess; + + if (WorldViewFrustumCull(pos0, pos1, pos2, maxDisplacement, planes)) + { + tess = 0.0f; + } + else + { + tess.x = CalcEdgeTessFactor (pos1, pos2, edgeLength, cameraPos, scParams); + tess.y = CalcEdgeTessFactor (pos2, pos0, edgeLength, cameraPos, scParams); + tess.z = CalcEdgeTessFactor (pos0, pos1, edgeLength, cameraPos, scParams); + tess.w = (tess.x + tess.y + tess.z) / 3.0f; + } + return tess; + } + #endif //ASE_TESS_FUNCS ENDHLSL Pass { - Name "Sprite Lit" - Tags { "LightMode"="Universal2D" } + + Name "Forward" + Tags { "LightMode"="UniversalForwardOnly" } Blend SrcAlpha OneMinusSrcAlpha, One OneMinusSrcAlpha - ZTest LEqual ZWrite Off + ZTest LEqual Offset 0 , 0 ColorMask RGBA + HLSLPROGRAM - #define ASE_VERSION 19904 - #define ASE_SRP_VERSION -1 - - + #define _ALPHATEST_ON 1 + #pragma multi_compile_fragment _ _SCREEN_SPACE_OCCLUSION #pragma multi_compile_instancing - - #pragma vertex vert - #pragma fragment frag - - #pragma multi_compile_fragment _ DEBUG_DISPLAY - #pragma multi_compile_vertex _ SKINNED_SPRITE - - #pragma multi_compile _ USE_SHAPE_LIGHT_TYPE_0 - #pragma multi_compile _ USE_SHAPE_LIGHT_TYPE_1 - #pragma multi_compile _ USE_SHAPE_LIGHT_TYPE_2 - #pragma multi_compile _ USE_SHAPE_LIGHT_TYPE_3 - - #define _SURFACE_TYPE_TRANSPARENT 1 - #define ATTRIBUTES_NEED_NORMAL - #define ATTRIBUTES_NEED_TANGENT - #define ATTRIBUTES_NEED_TEXCOORD0 - #define ATTRIBUTES_NEED_COLOR - #define FEATURES_GRAPH_VERTEX_NORMAL_OUTPUT - #define FEATURES_GRAPH_VERTEX_TANGENT_OUTPUT - #define VARYINGS_NEED_POSITION_WS - #define VARYINGS_NEED_TEXCOORD0 - #define VARYINGS_NEED_COLOR - #define VARYINGS_NEED_SCREENPOSITION - #define FEATURES_GRAPH_VERTEX - - #define SHADERPASS SHADERPASS_SPRITELIT - - #include_with_pragmas "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Fog.hlsl" - #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Color.hlsl" - #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Texture.hlsl" - #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Core.hlsl" - #include "Packages/com.unity.render-pipelines.universal/Shaders/2D/Include/Core2D.hlsl" - #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Lighting.hlsl" - #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Input.hlsl" - #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/TextureStack.hlsl" - #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/FoveatedRendering.hlsl" - #include_with_pragmas "Packages/com.unity.render-pipelines.core/ShaderLibrary/FoveatedRenderingKeywords.hlsl" - #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/DebugMipmapStreamingMacros.hlsl" - #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/ShaderGraphFunctions.hlsl" - #include "Packages/com.unity.render-pipelines.universal/Shaders/2D/Include/LightingUtility.hlsl" - #include "Packages/com.unity.render-pipelines.universal/Editor/ShaderGraph/Includes/ShaderPass.hlsl" - - #include "Packages/com.unity.render-pipelines.universal/Shaders/2D/Include/SurfaceData2D.hlsl" - #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Debug/Debugging2D.hlsl" - - #if USE_SHAPE_LIGHT_TYPE_0 - SHAPE_LIGHT(0) - #endif - - #if USE_SHAPE_LIGHT_TYPE_1 - SHAPE_LIGHT(1) - #endif - - #if USE_SHAPE_LIGHT_TYPE_2 - SHAPE_LIGHT(2) - #endif - - #if USE_SHAPE_LIGHT_TYPE_3 - SHAPE_LIGHT(3) - #endif - - #include "Packages/com.unity.render-pipelines.universal/Shaders/2D/Include/CombinedShapeLightShared.hlsl" - - #define ASE_NEEDS_TEXTURE_COORDINATES0 - #define ASE_NEEDS_FRAG_TEXTURE_COORDINATES0 - - - CBUFFER_START( UnityPerMaterial ) - float4 _ImageColor; - float _cube_width; - float _cube_softness; - float _cube_radius; - float _ring_width; - float _ring_softness; - float _ring_radius; - float _gapsize; - float _gap_softness; - float _ring_rotation; - float _count; - float _Opacity; - CBUFFER_END - - - struct VertexInput - { - float3 positionOS : POSITION; - float3 normal : NORMAL; - float4 tangent : TANGENT; - float4 uv0 : TEXCOORD0; - float4 color : COLOR; - - UNITY_SKINNED_VERTEX_INPUTS - UNITY_VERTEX_INPUT_INSTANCE_ID - }; - - struct VertexOutput - { - float4 positionCS : SV_POSITION; - float4 texCoord0 : TEXCOORD0; - float4 color : TEXCOORD1; - float4 screenPosition : TEXCOORD2; - float3 positionWS : TEXCOORD3; - float4 ase_color : COLOR; - UNITY_VERTEX_INPUT_INSTANCE_ID - UNITY_VERTEX_OUTPUT_STEREO - }; - - #if ETC1_EXTERNAL_ALPHA - TEXTURE2D(_AlphaTex); SAMPLER(sampler_AlphaTex); - float _EnableAlphaTexture; - #endif - - - VertexOutput vert( VertexInput v ) - { - VertexOutput o = (VertexOutput)0; - - UNITY_SETUP_INSTANCE_ID(v); - UNITY_TRANSFER_INSTANCE_ID(v, o); - UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o); - UNITY_SKINNED_VERTEX_COMPUTE(v); - - v.positionOS = UnityFlipSprite( v.positionOS, unity_SpriteProps.xy ); - - o.ase_color = v.color; - #ifdef ASE_ABSOLUTE_VERTEX_POS - float3 defaultVertexValue = v.positionOS; - #else - float3 defaultVertexValue = float3(0, 0, 0); - #endif - float3 vertexValue = defaultVertexValue; - #ifdef ASE_ABSOLUTE_VERTEX_POS - v.positionOS = vertexValue; - #else - v.positionOS += vertexValue; - #endif - v.normal = v.normal; - v.tangent.xyz = v.tangent.xyz; - - VertexPositionInputs vertexInput = GetVertexPositionInputs(v.positionOS); - - o.positionCS = vertexInput.positionCS; - o.positionWS = vertexInput.positionWS; - o.texCoord0 = v.uv0; - o.color = v.color; - o.screenPosition = vertexInput.positionNDC; - return o; - } - - half4 frag( VertexOutput IN ) : SV_Target - { - UNITY_SETUP_INSTANCE_ID(IN); - UNITY_SETUP_STEREO_EYE_INDEX_POST_VERTEX(IN); - - float4 positionCS = IN.positionCS; - float3 positionWS = IN.positionWS; - - float2 break104 = ( IN.texCoord0.xy - float2( 0.5,0.5 ) ); - float smoothstepResult130 = smoothstep( _cube_width , ( _cube_width + _cube_softness ) , abs( ( ( abs( break104.x ) + abs( break104.y ) ) - _cube_radius ) )); - float2 temp_output_34_0_g1 = ( IN.texCoord0.xy - float2( 0.5,0.5 ) ); - float2 break39_g1 = temp_output_34_0_g1; - float2 appendResult50_g1 = (float2(( 1.0 * ( length( temp_output_34_0_g1 ) * 2.0 ) ) , ( ( atan2( break39_g1.x , break39_g1.y ) * ( 1.0 / TWO_PI ) ) * 1.0 ))); - float2 break53_g1 = appendResult50_g1; - float smoothstepResult106 = smoothstep( _ring_width , ( _ring_width + _ring_softness ) , abs( ( break53_g1.x - _ring_radius ) )); - float smoothstepResult120 = smoothstep( _gapsize , ( _gapsize + _gap_softness ) , frac( ( ( break53_g1.y + ( _TimeParameters.x * ( _ring_rotation / 10.0 ) ) ) * _count ) )); - float4 break89 = _ImageColor; - float4 appendResult90 = (float4(break89.r , break89.g , break89.b , _Opacity)); - - float4 Color = ( ( ( 1.0 - smoothstepResult130 ) + saturate( ( ( 1.0 - smoothstepResult106 ) * smoothstepResult120 ) ) ) * IN.ase_color * appendResult90 ); - float4 Mask = float4(1,1,1,1); - float3 Normal = float3( 0, 0, 1 ); - - #if ETC1_EXTERNAL_ALPHA - float4 alpha = SAMPLE_TEXTURE2D(_AlphaTex, sampler_AlphaTex, IN.texCoord0.xy); - Color.a = lerp( Color.a, alpha.r, _EnableAlphaTexture); - #endif - - SurfaceData2D surfaceData; - InitializeSurfaceData(Color.rgb, Color.a, Mask, surfaceData); - InputData2D inputData; - InitializeInputData(IN.texCoord0.xy, half2(IN.screenPosition.xy / IN.screenPosition.w), inputData); - SETUP_DEBUG_DATA_2D(inputData, positionWS, positionCS); - return CombinedShapeLightShared(surfaceData, inputData); - - Color *= IN.color; - } - - ENDHLSL - } - - - Pass - { - - Name "Sprite Normal" - Tags { "LightMode"="NormalsRendering" } - - Blend SrcAlpha OneMinusSrcAlpha, One OneMinusSrcAlpha - ZTest LEqual - ZWrite Off - Offset 0 , 0 - ColorMask RGBA - - - HLSLPROGRAM - - #define ASE_VERSION 19904 - #define ASE_SRP_VERSION -1 - - - #pragma multi_compile_instancing - - #pragma vertex vert - #pragma fragment frag - - #pragma multi_compile _ SKINNED_SPRITE - + #pragma instancing_options renderinglayer + #pragma multi_compile _ LOD_FADE_CROSSFADE + #define ASE_FOG 1 #define _SURFACE_TYPE_TRANSPARENT 1 - #define ATTRIBUTES_NEED_NORMAL - #define ATTRIBUTES_NEED_TANGENT - #define FEATURES_GRAPH_VERTEX_NORMAL_OUTPUT - #define FEATURES_GRAPH_VERTEX_TANGENT_OUTPUT - #define VARYINGS_NEED_NORMAL_WS - #define VARYINGS_NEED_TANGENT_WS - #define FEATURES_GRAPH_VERTEX - - #define SHADERPASS SHADERPASS_SPRITENORMAL - - #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Color.hlsl" - #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Texture.hlsl" - #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Core.hlsl" - #include "Packages/com.unity.render-pipelines.universal/Shaders/2D/Include/Core2D.hlsl" - #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Lighting.hlsl" - #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Input.hlsl" - #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/TextureStack.hlsl" - #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/FoveatedRendering.hlsl" - #include_with_pragmas "Packages/com.unity.render-pipelines.core/ShaderLibrary/FoveatedRenderingKeywords.hlsl" - #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/DebugMipmapStreamingMacros.hlsl" - #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/ShaderGraphFunctions.hlsl" - #include "Packages/com.unity.render-pipelines.universal/Shaders/2D/Include/NormalsRenderingShared.hlsl" - #include "Packages/com.unity.render-pipelines.universal/Editor/ShaderGraph/Includes/ShaderPass.hlsl" - - #define ASE_NEEDS_TEXTURE_COORDINATES0 - #define ASE_NEEDS_FRAG_TEXTURE_COORDINATES0 - #define ASE_NEEDS_FRAG_COLOR - - - CBUFFER_START( UnityPerMaterial ) - float4 _ImageColor; - float _cube_width; - float _cube_softness; - float _cube_radius; - float _ring_width; - float _ring_softness; - float _ring_radius; - float _gapsize; - float _gap_softness; - float _ring_rotation; - float _count; - float _Opacity; - CBUFFER_END - - - struct VertexInput - { - float3 positionOS : POSITION; - float3 normal : NORMAL; - float4 tangent : TANGENT; - float4 uv0 : TEXCOORD0; - float4 color : COLOR; - - UNITY_SKINNED_VERTEX_INPUTS - UNITY_VERTEX_INPUT_INSTANCE_ID - }; - - struct VertexOutput - { - float4 positionCS : SV_POSITION; - float4 texCoord0 : TEXCOORD0; - float4 color : TEXCOORD1; - float3 normalWS : TEXCOORD2; - float4 tangentWS : TEXCOORD3; - float3 bitangentWS : TEXCOORD4; - - UNITY_VERTEX_INPUT_INSTANCE_ID - UNITY_VERTEX_OUTPUT_STEREO - }; - - - VertexOutput vert( VertexInput v ) - { - VertexOutput o = (VertexOutput)0; - - UNITY_SETUP_INSTANCE_ID(v); - UNITY_TRANSFER_INSTANCE_ID(v, o); - UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o); - UNITY_SKINNED_VERTEX_COMPUTE(v); - - v.positionOS = UnityFlipSprite( v.positionOS, unity_SpriteProps.xy ); - - - #ifdef ASE_ABSOLUTE_VERTEX_POS - float3 defaultVertexValue = v.positionOS; - #else - float3 defaultVertexValue = float3(0, 0, 0); - #endif - float3 vertexValue = defaultVertexValue; - #ifdef ASE_ABSOLUTE_VERTEX_POS - v.positionOS = vertexValue; - #else - v.positionOS += vertexValue; - #endif - v.normal = v.normal; - v.tangent.xyz = v.tangent.xyz; - - VertexPositionInputs vertexInput = GetVertexPositionInputs(v.positionOS); - - o.texCoord0 = v.uv0; - o.color = v.color; - o.positionCS = vertexInput.positionCS; - - float3 normalWS = TransformObjectToWorldNormal(v.normal); - o.normalWS = -GetViewForwardDir(); - float4 tangentWS = float4( TransformObjectToWorldDir(v.tangent.xyz), v.tangent.w); - o.tangentWS = normalize(tangentWS); - half crossSign = (tangentWS.w > 0.0 ? 1.0 : -1.0) * GetOddNegativeScale(); - o.bitangentWS = crossSign * cross(normalWS, tangentWS.xyz) * tangentWS.w; - return o; - } - - half4 frag( VertexOutput IN ) : SV_Target - { - UNITY_SETUP_INSTANCE_ID(IN); - UNITY_SETUP_STEREO_EYE_INDEX_POST_VERTEX(IN); - - float2 break104 = ( IN.texCoord0.xy - float2( 0.5,0.5 ) ); - float smoothstepResult130 = smoothstep( _cube_width , ( _cube_width + _cube_softness ) , abs( ( ( abs( break104.x ) + abs( break104.y ) ) - _cube_radius ) )); - float2 temp_output_34_0_g1 = ( IN.texCoord0.xy - float2( 0.5,0.5 ) ); - float2 break39_g1 = temp_output_34_0_g1; - float2 appendResult50_g1 = (float2(( 1.0 * ( length( temp_output_34_0_g1 ) * 2.0 ) ) , ( ( atan2( break39_g1.x , break39_g1.y ) * ( 1.0 / TWO_PI ) ) * 1.0 ))); - float2 break53_g1 = appendResult50_g1; - float smoothstepResult106 = smoothstep( _ring_width , ( _ring_width + _ring_softness ) , abs( ( break53_g1.x - _ring_radius ) )); - float smoothstepResult120 = smoothstep( _gapsize , ( _gapsize + _gap_softness ) , frac( ( ( break53_g1.y + ( _TimeParameters.x * ( _ring_rotation / 10.0 ) ) ) * _count ) )); - float4 break89 = _ImageColor; - float4 appendResult90 = (float4(break89.r , break89.g , break89.b , _Opacity)); - - float4 Color = ( ( ( 1.0 - smoothstepResult130 ) + saturate( ( ( 1.0 - smoothstepResult106 ) * smoothstepResult120 ) ) ) * IN.color * appendResult90 ); - float3 Normal = float3( 0, 0, 1 ); - - Color *= IN.color; - - return NormalsRenderingShared(Color, Normal, IN.tangentWS.xyz, IN.bitangentWS, IN.normalWS); - } - - ENDHLSL - } - - - Pass - { - - Name "Sprite Forward" - Tags { "LightMode"="UniversalForward" } - - Blend SrcAlpha OneMinusSrcAlpha, One OneMinusSrcAlpha - ZTest LEqual - ZWrite Off - Offset 0 , 0 - ColorMask RGBA - - - HLSLPROGRAM - #define ASE_VERSION 19904 #define ASE_SRP_VERSION -1 - #pragma multi_compile_instancing + #pragma multi_compile_fragment _ _DBUFFER_MRT1 _DBUFFER_MRT2 _DBUFFER_MRT3 + + #pragma multi_compile_fragment _ DEBUG_DISPLAY #pragma vertex vert #pragma fragment frag - #pragma multi_compile_fragment _ DEBUG_DISPLAY - #pragma multi_compile_vertex _ SKINNED_SPRITE - - #define _SURFACE_TYPE_TRANSPARENT 1 - #define ATTRIBUTES_NEED_NORMAL - #define ATTRIBUTES_NEED_TANGENT - #define ATTRIBUTES_NEED_TEXCOORD0 - #define ATTRIBUTES_NEED_COLOR - #define FEATURES_GRAPH_VERTEX_NORMAL_OUTPUT - #define FEATURES_GRAPH_VERTEX_TANGENT_OUTPUT - #define VARYINGS_NEED_POSITION_WS - #define VARYINGS_NEED_TEXCOORD0 - #define VARYINGS_NEED_COLOR - #define FEATURES_GRAPH_VERTEX - - #define SHADERPASS SHADERPASS_SPRITEFORWARD + #define SHADERPASS SHADERPASS_UNLIT + #include_with_pragmas "Packages/com.unity.render-pipelines.universal/ShaderLibrary/DOTS.hlsl" + #include_with_pragmas "Packages/com.unity.render-pipelines.universal/ShaderLibrary/RenderingLayers.hlsl" #include_with_pragmas "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Fog.hlsl" #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Color.hlsl" #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Texture.hlsl" #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Core.hlsl" - #include "Packages/com.unity.render-pipelines.universal/Shaders/2D/Include/Core2D.hlsl" #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Lighting.hlsl" #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Input.hlsl" #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/TextureStack.hlsl" - #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/FoveatedRendering.hlsl" #include_with_pragmas "Packages/com.unity.render-pipelines.core/ShaderLibrary/FoveatedRenderingKeywords.hlsl" - #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/DebugMipmapStreamingMacros.hlsl" + #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/FoveatedRendering.hlsl" #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/ShaderGraphFunctions.hlsl" + #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/DBuffer.hlsl" #include "Packages/com.unity.render-pipelines.universal/Editor/ShaderGraph/Includes/ShaderPass.hlsl" - #include "Packages/com.unity.render-pipelines.universal/Shaders/2D/Include/SurfaceData2D.hlsl" - #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Debug/Debugging2D.hlsl" + #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Debug/Debugging3D.hlsl" + #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/SurfaceData.hlsl" + + #if defined(LOD_FADE_CROSSFADE) + #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/LODCrossFade.hlsl" + #endif #define ASE_NEEDS_TEXTURE_COORDINATES0 #define ASE_NEEDS_FRAG_TEXTURE_COORDINATES0 - #define ASE_NEEDS_FRAG_COLOR - CBUFFER_START( UnityPerMaterial ) - float4 _ImageColor; - float _cube_width; - float _cube_softness; - float _cube_radius; - float _ring_width; - float _ring_softness; - float _ring_radius; - float _gapsize; - float _gap_softness; - float _ring_rotation; - float _count; - float _Opacity; - CBUFFER_END + #if defined(ASE_EARLY_Z_DEPTH_OPTIMIZE) && (SHADER_TARGET >= 45) + #define ASE_SV_DEPTH SV_DepthLessEqual + #define ASE_SV_POSITION_QUALIFIERS linear noperspective centroid + #else + #define ASE_SV_DEPTH SV_Depth + #define ASE_SV_POSITION_QUALIFIERS + #endif - - struct VertexInput + struct Attributes { - float3 positionOS : POSITION; - float3 normal : NORMAL; - float4 tangent : TANGENT; - float4 uv0 : TEXCOORD0; - float4 color : COLOR; - - UNITY_SKINNED_VERTEX_INPUTS + float4 positionOS : POSITION; + half3 normalOS : NORMAL; + float4 ase_color : COLOR; + float4 ase_texcoord : TEXCOORD0; UNITY_VERTEX_INPUT_INSTANCE_ID }; - struct VertexOutput + struct PackedVaryings { - float4 positionCS : SV_POSITION; - float4 texCoord0 : TEXCOORD0; - float4 color : TEXCOORD1; - float3 positionWS : TEXCOORD2; - + ASE_SV_POSITION_QUALIFIERS float4 positionCS : SV_POSITION; + float4 positionWSAndFogFactor : TEXCOORD0; + half3 normalWS : TEXCOORD1; + float4 ase_color : COLOR; + float4 ase_texcoord2 : TEXCOORD2; UNITY_VERTEX_INPUT_INSTANCE_ID UNITY_VERTEX_OUTPUT_STEREO }; - #if ETC1_EXTERNAL_ALPHA - TEXTURE2D( _AlphaTex ); SAMPLER( sampler_AlphaTex ); - float _EnableAlphaTexture; - #endif - - - VertexOutput vert( VertexInput v ) - { - VertexOutput o = (VertexOutput)0; - UNITY_SETUP_INSTANCE_ID(v); - UNITY_TRANSFER_INSTANCE_ID(v, o); - UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o); - UNITY_SKINNED_VERTEX_COMPUTE( v ); - - v.positionOS = UnityFlipSprite( v.positionOS, unity_SpriteProps.xy ); - - - #ifdef ASE_ABSOLUTE_VERTEX_POS - float3 defaultVertexValue = v.positionOS; - #else - float3 defaultVertexValue = float3( 0, 0, 0 ); - #endif - float3 vertexValue = defaultVertexValue; - #ifdef ASE_ABSOLUTE_VERTEX_POS - v.positionOS = vertexValue; - #else - v.positionOS += vertexValue; - #endif - v.normal = v.normal; - v.tangent.xyz = v.tangent.xyz; - - VertexPositionInputs vertexInput = GetVertexPositionInputs(v.positionOS); - - o.positionCS = vertexInput.positionCS; - o.positionWS = vertexInput.positionWS; - o.texCoord0 = v.uv0; - o.color = v.color; - - return o; - } - - half4 frag( VertexOutput IN ) : SV_Target - { - UNITY_SETUP_INSTANCE_ID(IN); - UNITY_SETUP_STEREO_EYE_INDEX_POST_VERTEX(IN); - - float4 positionCS = IN.positionCS; - float3 positionWS = IN.positionWS; - - float2 break104 = ( IN.texCoord0.xy - float2( 0.5,0.5 ) ); - float smoothstepResult130 = smoothstep( _cube_width , ( _cube_width + _cube_softness ) , abs( ( ( abs( break104.x ) + abs( break104.y ) ) - _cube_radius ) )); - float2 temp_output_34_0_g1 = ( IN.texCoord0.xy - float2( 0.5,0.5 ) ); - float2 break39_g1 = temp_output_34_0_g1; - float2 appendResult50_g1 = (float2(( 1.0 * ( length( temp_output_34_0_g1 ) * 2.0 ) ) , ( ( atan2( break39_g1.x , break39_g1.y ) * ( 1.0 / TWO_PI ) ) * 1.0 ))); - float2 break53_g1 = appendResult50_g1; - float smoothstepResult106 = smoothstep( _ring_width , ( _ring_width + _ring_softness ) , abs( ( break53_g1.x - _ring_radius ) )); - float smoothstepResult120 = smoothstep( _gapsize , ( _gapsize + _gap_softness ) , frac( ( ( break53_g1.y + ( _TimeParameters.x * ( _ring_rotation / 10.0 ) ) ) * _count ) )); - float4 break89 = _ImageColor; - float4 appendResult90 = (float4(break89.r , break89.g , break89.b , _Opacity)); - - float4 Color = ( ( ( 1.0 - smoothstepResult130 ) + saturate( ( ( 1.0 - smoothstepResult106 ) * smoothstepResult120 ) ) ) * IN.color * appendResult90 ); - - #if defined(DEBUG_DISPLAY) - SurfaceData2D surfaceData; - InitializeSurfaceData(Color.rgb, Color.a, surfaceData); - InputData2D inputData; - InitializeInputData(positionWS.xy, half2(IN.texCoord0.xy), inputData); - half4 debugColor = 0; - - SETUP_DEBUG_DATA_2D(inputData, positionWS, positionCS); - - if (CanDebugOverrideOutputColor(surfaceData, inputData, debugColor)) - { - return debugColor; - } - #endif - - #if ETC1_EXTERNAL_ALPHA - float4 alpha = SAMPLE_TEXTURE2D( _AlphaTex, sampler_AlphaTex, IN.texCoord0.xy ); - Color.a = lerp( Color.a, alpha.r, _EnableAlphaTexture ); - #endif - - Color *= IN.color; - return Color; - } - - ENDHLSL - } - - Pass - { - - Name "SceneSelectionPass" - Tags { "LightMode"="SceneSelectionPass" } - - Cull Off - - HLSLPROGRAM - - #define ASE_VERSION 19904 - #define ASE_SRP_VERSION -1 - - - #pragma multi_compile_instancing - - #pragma vertex vert - #pragma fragment frag - - #pragma multi_compile _ DEBUG_DISPLAY SKINNED_SPRITE - - #define _SURFACE_TYPE_TRANSPARENT 1 - #define ATTRIBUTES_NEED_NORMAL - #define ATTRIBUTES_NEED_TANGENT - #define FEATURES_GRAPH_VERTEX_NORMAL_OUTPUT - #define FEATURES_GRAPH_VERTEX_TANGENT_OUTPUT - #define FEATURES_GRAPH_VERTEX - - #define SHADERPASS SHADERPASS_DEPTHONLY - #define SCENESELECTIONPASS 1 - - #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Color.hlsl" - #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Texture.hlsl" - #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Core.hlsl" - #include "Packages/com.unity.render-pipelines.universal/Shaders/2D/Include/Core2D.hlsl" - #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Lighting.hlsl" - #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Input.hlsl" - #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/TextureStack.hlsl" - #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/FoveatedRendering.hlsl" - #include_with_pragmas "Packages/com.unity.render-pipelines.core/ShaderLibrary/FoveatedRenderingKeywords.hlsl" - #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/DebugMipmapStreamingMacros.hlsl" - #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/ShaderGraphFunctions.hlsl" - #include_with_pragmas "Packages/com.unity.render-pipelines.universal/ShaderLibrary/DOTS.hlsl" - #include "Packages/com.unity.render-pipelines.universal/Editor/ShaderGraph/Includes/ShaderPass.hlsl" - - #define ASE_NEEDS_TEXTURE_COORDINATES0 - #define ASE_NEEDS_FRAG_TEXTURE_COORDINATES0 - - - CBUFFER_START( UnityPerMaterial ) + CBUFFER_START(UnityPerMaterial) float4 _ImageColor; float _cube_width; float _cube_softness; @@ -673,142 +271,1088 @@ Shader "Soullies/hit_point" float _gapsize; float _gap_softness; float _ring_rotation; + float _ring_rotation_angle; float _count; float _Opacity; + #ifdef ASE_TESSELLATION + float _TessPhongStrength; + float _TessValue; + float _TessMin; + float _TessMax; + float _TessEdgeLength; + float _TessMaxDisp; + #endif CBUFFER_END - - struct VertexInput - { - float3 positionOS : POSITION; - float3 normal : NORMAL; - float4 tangent : TANGENT; - float4 ase_texcoord : TEXCOORD0; - float4 ase_color : COLOR; - UNITY_SKINNED_VERTEX_INPUTS - UNITY_VERTEX_INPUT_INSTANCE_ID - }; - - struct VertexOutput - { - float4 positionCS : SV_POSITION; - float4 ase_texcoord : TEXCOORD0; - float4 ase_color : COLOR; - UNITY_VERTEX_INPUT_INSTANCE_ID - }; - - int _ObjectId; - int _PassValue; + - VertexOutput vert(VertexInput v ) + PackedVaryings VertexFunction( Attributes input ) { - VertexOutput o = (VertexOutput)0; + PackedVaryings output = (PackedVaryings)0; + UNITY_SETUP_INSTANCE_ID(input); + UNITY_TRANSFER_INSTANCE_ID(input, output); + UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(output); - UNITY_SETUP_INSTANCE_ID(v); - UNITY_TRANSFER_INSTANCE_ID(v, o); - UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o); - UNITY_SKINNED_VERTEX_COMPUTE(v); - - v.positionOS = UnityFlipSprite( v.positionOS, unity_SpriteProps.xy ); - - o.ase_texcoord.xy = v.ase_texcoord.xy; - o.ase_color = v.ase_color; + output.ase_color = input.ase_color; + output.ase_texcoord2.xy = input.ase_texcoord.xy; //setting value to unused interpolator channels and avoid initialization warnings - o.ase_texcoord.zw = 0; + output.ase_texcoord2.zw = 0; + #ifdef ASE_ABSOLUTE_VERTEX_POS - float3 defaultVertexValue = v.positionOS; + float3 defaultVertexValue = input.positionOS.xyz; #else float3 defaultVertexValue = float3(0, 0, 0); #endif + float3 vertexValue = defaultVertexValue; + #ifdef ASE_ABSOLUTE_VERTEX_POS - v.positionOS = vertexValue; + input.positionOS.xyz = vertexValue; #else - v.positionOS += vertexValue; + input.positionOS.xyz += vertexValue; #endif - VertexPositionInputs vertexInput = GetVertexPositionInputs(v.positionOS); - float3 positionWS = TransformObjectToWorld(v.positionOS); - o.positionCS = TransformWorldToHClip(positionWS); + input.normalOS = input.normalOS; - return o; + VertexPositionInputs vertexInput = GetVertexPositionInputs( input.positionOS.xyz ); + VertexNormalInputs normalInput = GetVertexNormalInputs( input.normalOS ); + + float fogFactor = 0; + #if defined(ASE_FOG) && !defined(_FOG_FRAGMENT) + fogFactor = ComputeFogFactor(vertexInput.positionCS.z); + #endif + + output.positionCS = vertexInput.positionCS; + output.positionWSAndFogFactor = float4( vertexInput.positionWS, fogFactor ); + output.normalWS = normalInput.normalWS; + return output; } - half4 frag(VertexOutput IN) : SV_TARGET + #if defined(ASE_TESSELLATION) + struct VertexControl { - float2 break104 = ( IN.ase_texcoord.xy - float2( 0.5,0.5 ) ); + float4 positionOS : INTERNALTESSPOS; + half3 normalOS : NORMAL; + float4 ase_color : COLOR; + float4 ase_texcoord : TEXCOORD0; + + UNITY_VERTEX_INPUT_INSTANCE_ID + }; + + struct TessellationFactors + { + float edge[3] : SV_TessFactor; + float inside : SV_InsideTessFactor; + }; + + VertexControl vert ( Attributes input ) + { + VertexControl output; + UNITY_SETUP_INSTANCE_ID(input); + UNITY_TRANSFER_INSTANCE_ID(input, output); + output.positionOS = input.positionOS; + output.normalOS = input.normalOS; + output.ase_color = input.ase_color; + output.ase_texcoord = input.ase_texcoord; + return output; + } + + TessellationFactors TessellationFunction (InputPatch input) + { + TessellationFactors output; + float4 tf = 1; + float tessValue = _TessValue; float tessMin = _TessMin; float tessMax = _TessMax; + float edgeLength = _TessEdgeLength; float tessMaxDisp = _TessMaxDisp; + #if defined(ASE_FIXED_TESSELLATION) + tf = FixedTess( tessValue ); + #elif defined(ASE_DISTANCE_TESSELLATION) + tf = DistanceBasedTess(input[0].positionOS, input[1].positionOS, input[2].positionOS, tessValue, tessMin, tessMax, GetObjectToWorldMatrix(), _WorldSpaceCameraPos ); + #elif defined(ASE_LENGTH_TESSELLATION) + tf = EdgeLengthBasedTess(input[0].positionOS, input[1].positionOS, input[2].positionOS, edgeLength, GetObjectToWorldMatrix(), _WorldSpaceCameraPos, _ScreenParams ); + #elif defined(ASE_LENGTH_CULL_TESSELLATION) + tf = EdgeLengthBasedTessCull(input[0].positionOS, input[1].positionOS, input[2].positionOS, edgeLength, tessMaxDisp, GetObjectToWorldMatrix(), _WorldSpaceCameraPos, _ScreenParams, unity_CameraWorldClipPlanes ); + #endif + output.edge[0] = tf.x; output.edge[1] = tf.y; output.edge[2] = tf.z; output.inside = tf.w; + return output; + } + + [domain("tri")] + [partitioning("fractional_odd")] + [outputtopology("triangle_cw")] + [patchconstantfunc("TessellationFunction")] + [outputcontrolpoints(3)] + VertexControl HullFunction(InputPatch patch, uint id : SV_OutputControlPointID) + { + return patch[id]; + } + + [domain("tri")] + PackedVaryings DomainFunction(TessellationFactors factors, OutputPatch patch, float3 bary : SV_DomainLocation) + { + Attributes output = (Attributes) 0; + output.positionOS = patch[0].positionOS * bary.x + patch[1].positionOS * bary.y + patch[2].positionOS * bary.z; + output.normalOS = patch[0].normalOS * bary.x + patch[1].normalOS * bary.y + patch[2].normalOS * bary.z; + output.ase_color = patch[0].ase_color * bary.x + patch[1].ase_color * bary.y + patch[2].ase_color * bary.z; + output.ase_texcoord = patch[0].ase_texcoord * bary.x + patch[1].ase_texcoord * bary.y + patch[2].ase_texcoord * bary.z; + #if defined(ASE_PHONG_TESSELLATION) + float3 pp[3]; + for (int i = 0; i < 3; ++i) + pp[i] = output.positionOS.xyz - patch[i].normalOS * (dot(output.positionOS.xyz, patch[i].normalOS) - dot(patch[i].positionOS.xyz, patch[i].normalOS)); + float phongStrength = _TessPhongStrength; + output.positionOS.xyz = phongStrength * (pp[0]*bary.x + pp[1]*bary.y + pp[2]*bary.z) + (1.0f-phongStrength) * output.positionOS.xyz; + #endif + UNITY_TRANSFER_INSTANCE_ID(patch[0], output); + return VertexFunction(output); + } + #else + PackedVaryings vert ( Attributes input ) + { + return VertexFunction( input ); + } + #endif + + half4 frag ( PackedVaryings input + #if defined( ASE_DEPTH_WRITE_ON ) + ,out float outputDepth : ASE_SV_DEPTH + #endif + #ifdef _WRITE_RENDERING_LAYERS + , out uint outRenderingLayers : SV_Target1 + #endif + ) : SV_Target + { + UNITY_SETUP_INSTANCE_ID(input); + UNITY_SETUP_STEREO_EYE_INDEX_POST_VERTEX(input); + + #if defined( _SURFACE_TYPE_TRANSPARENT ) + const bool isTransparent = true; + #else + const bool isTransparent = false; + #endif + + #if defined(LOD_FADE_CROSSFADE) + LODFadeCrossFade( input.positionCS ); + #endif + + #if defined(MAIN_LIGHT_CALCULATE_SHADOWS) + float4 shadowCoord = TransformWorldToShadowCoord( input.positionWSAndFogFactor.xyz ); + #else + float4 shadowCoord = float4(0, 0, 0, 0); + #endif + + float3 PositionWS = input.positionWSAndFogFactor.xyz; + float3 PositionRWS = GetCameraRelativePositionWS( PositionWS ); + half3 ViewDirWS = GetWorldSpaceNormalizeViewDir( PositionWS ); + float4 ShadowCoord = shadowCoord; + float4 ScreenPosNorm = float4( GetNormalizedScreenSpaceUV( input.positionCS ), input.positionCS.zw ); + float4 ClipPos = ComputeClipSpacePosition( ScreenPosNorm.xy, input.positionCS.z ) * input.positionCS.w; + float4 ScreenPos = ComputeScreenPos( ClipPos ); + half3 NormalWS = normalize( input.normalWS ); + + float2 break104 = ( input.ase_texcoord2.xy - float2( 0.5,0.5 ) ); float smoothstepResult130 = smoothstep( _cube_width , ( _cube_width + _cube_softness ) , abs( ( ( abs( break104.x ) + abs( break104.y ) ) - _cube_radius ) )); - float2 temp_output_34_0_g1 = ( IN.ase_texcoord.xy - float2( 0.5,0.5 ) ); + float2 temp_output_34_0_g1 = ( input.ase_texcoord2.xy - float2( 0.5,0.5 ) ); float2 break39_g1 = temp_output_34_0_g1; float2 appendResult50_g1 = (float2(( 1.0 * ( length( temp_output_34_0_g1 ) * 2.0 ) ) , ( ( atan2( break39_g1.x , break39_g1.y ) * ( 1.0 / TWO_PI ) ) * 1.0 ))); float2 break53_g1 = appendResult50_g1; float smoothstepResult106 = smoothstep( _ring_width , ( _ring_width + _ring_softness ) , abs( ( break53_g1.x - _ring_radius ) )); - float smoothstepResult120 = smoothstep( _gapsize , ( _gapsize + _gap_softness ) , frac( ( ( break53_g1.y + ( _TimeParameters.x * ( _ring_rotation / 10.0 ) ) ) * _count ) )); - float4 break89 = _ImageColor; - float4 appendResult90 = (float4(break89.r , break89.g , break89.b , _Opacity)); + float smoothstepResult120 = smoothstep( _gapsize , ( _gapsize + _gap_softness ) , frac( ( ( break53_g1.y + ( _TimeParameters.x * ( _ring_rotation / 10.0 ) ) + _ring_rotation_angle ) * _count ) )); - float4 Color = ( ( ( 1.0 - smoothstepResult130 ) + saturate( ( ( 1.0 - smoothstepResult106 ) * smoothstepResult120 ) ) ) * IN.ase_color * appendResult90 ); + float3 BakedAlbedo = 0; + float3 BakedEmission = 0; + float3 Color = ( input.ase_color * _ImageColor ).rgb; + float Alpha = ( saturate( ( ( 1.0 - smoothstepResult130 ) + saturate( ( ( 1.0 - smoothstepResult106 ) * smoothstepResult120 ) ) ) ) * _Opacity ); + float AlphaClipThreshold = 0.5; + float AlphaClipThresholdShadow = 0.5; + + #if defined( ASE_DEPTH_WRITE_ON ) + float DeviceDepth = input.positionCS.z; + #endif + + #if defined( _ALPHATEST_ON ) + AlphaDiscard( Alpha, AlphaClipThreshold ); + #endif + + #if defined(MAIN_LIGHT_CALCULATE_SHADOWS) && defined(ASE_CHANGES_WORLD_POS) + ShadowCoord = TransformWorldToShadowCoord( PositionWS ); + #endif + + InputData inputData = (InputData)0; + inputData.positionWS = PositionWS; + inputData.positionCS = float4( input.positionCS.xy, ClipPos.zw / ClipPos.w ); + inputData.normalizedScreenSpaceUV = ScreenPosNorm.xy; + inputData.normalWS = NormalWS; + inputData.viewDirectionWS = ViewDirWS; + + #if defined(_SCREEN_SPACE_OCCLUSION) && !defined(_SURFACE_TYPE_TRANSPARENT) + float2 normalizedScreenSpaceUV = GetNormalizedScreenSpaceUV(input.positionCS); + AmbientOcclusionFactor aoFactor = GetScreenSpaceAmbientOcclusion(normalizedScreenSpaceUV); + Color.rgb *= aoFactor.directAmbientOcclusion; + #endif + + #ifdef ASE_FOG + inputData.fogCoord = InitializeInputDataFog(float4(inputData.positionWS, 1.0), input.positionWSAndFogFactor.w); + #endif + + #if defined(_DBUFFER) + ApplyDecalToBaseColor(input.positionCS, Color); + #endif + + #ifdef ASE_FOG + #ifdef TERRAIN_SPLAT_ADDPASS + Color.rgb = MixFogColor(Color.rgb, half3(0,0,0), inputData.fogCoord); + #else + Color.rgb = MixFog(Color.rgb, inputData.fogCoord); + #endif + #endif + + #if defined( ASE_DEPTH_WRITE_ON ) + outputDepth = DeviceDepth; + #endif + + #ifdef _WRITE_RENDERING_LAYERS + outRenderingLayers = EncodeMeshRenderingLayer(); + #endif + + #if defined( ASE_OPAQUE_KEEP_ALPHA ) + return half4( Color, Alpha ); + #else + return half4( Color, OutputAlpha( Alpha, isTransparent ) ); + #endif + } + ENDHLSL + } + + + Pass + { + + Name "ShadowCaster" + Tags { "LightMode"="ShadowCaster" } + + ZWrite On + ZTest LEqual + AlphaToMask Off + ColorMask 0 + + HLSLPROGRAM + + #define _ALPHATEST_ON 1 + #pragma multi_compile_instancing + #pragma multi_compile _ LOD_FADE_CROSSFADE + #define ASE_FOG 1 + #define _SURFACE_TYPE_TRANSPARENT 1 + #define ASE_VERSION 19904 + #define ASE_SRP_VERSION -1 + + + #pragma multi_compile_vertex _ _CASTING_PUNCTUAL_LIGHT_SHADOW + + #pragma vertex vert + #pragma fragment frag + + #define SHADERPASS SHADERPASS_SHADOWCASTER + + #include_with_pragmas "Packages/com.unity.render-pipelines.universal/ShaderLibrary/DOTS.hlsl" + #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Color.hlsl" + #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Core.hlsl" + #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Lighting.hlsl" + #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/ShaderGraphFunctions.hlsl" + + #if defined(LOD_FADE_CROSSFADE) + #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/LODCrossFade.hlsl" + #endif + + #define ASE_NEEDS_TEXTURE_COORDINATES0 + #define ASE_NEEDS_FRAG_TEXTURE_COORDINATES0 + + + #if defined(ASE_EARLY_Z_DEPTH_OPTIMIZE) && (SHADER_TARGET >= 45) + #define ASE_SV_DEPTH SV_DepthLessEqual + #define ASE_SV_POSITION_QUALIFIERS linear noperspective centroid + #else + #define ASE_SV_DEPTH SV_Depth + #define ASE_SV_POSITION_QUALIFIERS + #endif + + struct Attributes + { + float4 positionOS : POSITION; + half3 normalOS : NORMAL; + float4 ase_texcoord : TEXCOORD0; + UNITY_VERTEX_INPUT_INSTANCE_ID + }; + + struct PackedVaryings + { + ASE_SV_POSITION_QUALIFIERS float4 positionCS : SV_POSITION; + float4 ase_texcoord : TEXCOORD0; + UNITY_VERTEX_INPUT_INSTANCE_ID + UNITY_VERTEX_OUTPUT_STEREO + }; + + CBUFFER_START(UnityPerMaterial) + float4 _ImageColor; + float _cube_width; + float _cube_softness; + float _cube_radius; + float _ring_width; + float _ring_softness; + float _ring_radius; + float _gapsize; + float _gap_softness; + float _ring_rotation; + float _ring_rotation_angle; + float _count; + float _Opacity; + #ifdef ASE_TESSELLATION + float _TessPhongStrength; + float _TessValue; + float _TessMin; + float _TessMax; + float _TessEdgeLength; + float _TessMaxDisp; + #endif + CBUFFER_END + + + + + float3 _LightDirection; + float3 _LightPosition; + + PackedVaryings VertexFunction( Attributes input ) + { + PackedVaryings output; + UNITY_SETUP_INSTANCE_ID(input); + UNITY_TRANSFER_INSTANCE_ID(input, output); + UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO( output ); + + output.ase_texcoord.xy = input.ase_texcoord.xy; + + //setting value to unused interpolator channels and avoid initialization warnings + output.ase_texcoord.zw = 0; + + #ifdef ASE_ABSOLUTE_VERTEX_POS + float3 defaultVertexValue = input.positionOS.xyz; + #else + float3 defaultVertexValue = float3(0, 0, 0); + #endif + + float3 vertexValue = defaultVertexValue; + #ifdef ASE_ABSOLUTE_VERTEX_POS + input.positionOS.xyz = vertexValue; + #else + input.positionOS.xyz += vertexValue; + #endif + + input.normalOS = input.normalOS; + + float3 positionWS = TransformObjectToWorld( input.positionOS.xyz ); + half3 normalWS = TransformObjectToWorldDir(input.normalOS); + + #if _CASTING_PUNCTUAL_LIGHT_SHADOW + float3 lightDirectionWS = normalize(_LightPosition - positionWS); + #else + float3 lightDirectionWS = _LightDirection; + #endif + + float4 positionCS = TransformWorldToHClip(ApplyShadowBias(positionWS, normalWS, lightDirectionWS)); + + #if UNITY_REVERSED_Z + positionCS.z = min(positionCS.z, UNITY_NEAR_CLIP_VALUE); + #else + positionCS.z = max(positionCS.z, UNITY_NEAR_CLIP_VALUE); + #endif + + output.positionCS = positionCS; + return output; + } + + #if defined(ASE_TESSELLATION) + struct VertexControl + { + float4 positionOS : INTERNALTESSPOS; + half3 normalOS : NORMAL; + float4 ase_texcoord : TEXCOORD0; + + UNITY_VERTEX_INPUT_INSTANCE_ID + }; + + struct TessellationFactors + { + float edge[3] : SV_TessFactor; + float inside : SV_InsideTessFactor; + }; + + VertexControl vert ( Attributes input ) + { + VertexControl output; + UNITY_SETUP_INSTANCE_ID(input); + UNITY_TRANSFER_INSTANCE_ID(input, output); + output.positionOS = input.positionOS; + output.normalOS = input.normalOS; + output.ase_texcoord = input.ase_texcoord; + return output; + } + + TessellationFactors TessellationFunction (InputPatch input) + { + TessellationFactors output; + float4 tf = 1; + float tessValue = _TessValue; float tessMin = _TessMin; float tessMax = _TessMax; + float edgeLength = _TessEdgeLength; float tessMaxDisp = _TessMaxDisp; + #if defined(ASE_FIXED_TESSELLATION) + tf = FixedTess( tessValue ); + #elif defined(ASE_DISTANCE_TESSELLATION) + tf = DistanceBasedTess(input[0].positionOS, input[1].positionOS, input[2].positionOS, tessValue, tessMin, tessMax, GetObjectToWorldMatrix(), _WorldSpaceCameraPos ); + #elif defined(ASE_LENGTH_TESSELLATION) + tf = EdgeLengthBasedTess(input[0].positionOS, input[1].positionOS, input[2].positionOS, edgeLength, GetObjectToWorldMatrix(), _WorldSpaceCameraPos, _ScreenParams ); + #elif defined(ASE_LENGTH_CULL_TESSELLATION) + tf = EdgeLengthBasedTessCull(input[0].positionOS, input[1].positionOS, input[2].positionOS, edgeLength, tessMaxDisp, GetObjectToWorldMatrix(), _WorldSpaceCameraPos, _ScreenParams, unity_CameraWorldClipPlanes ); + #endif + output.edge[0] = tf.x; output.edge[1] = tf.y; output.edge[2] = tf.z; output.inside = tf.w; + return output; + } + + [domain("tri")] + [partitioning("fractional_odd")] + [outputtopology("triangle_cw")] + [patchconstantfunc("TessellationFunction")] + [outputcontrolpoints(3)] + VertexControl HullFunction(InputPatch patch, uint id : SV_OutputControlPointID) + { + return patch[id]; + } + + [domain("tri")] + PackedVaryings DomainFunction(TessellationFactors factors, OutputPatch patch, float3 bary : SV_DomainLocation) + { + Attributes output = (Attributes) 0; + output.positionOS = patch[0].positionOS * bary.x + patch[1].positionOS * bary.y + patch[2].positionOS * bary.z; + output.normalOS = patch[0].normalOS * bary.x + patch[1].normalOS * bary.y + patch[2].normalOS * bary.z; + output.ase_texcoord = patch[0].ase_texcoord * bary.x + patch[1].ase_texcoord * bary.y + patch[2].ase_texcoord * bary.z; + #if defined(ASE_PHONG_TESSELLATION) + float3 pp[3]; + for (int i = 0; i < 3; ++i) + pp[i] = output.positionOS.xyz - patch[i].normalOS * (dot(output.positionOS.xyz, patch[i].normalOS) - dot(patch[i].positionOS.xyz, patch[i].normalOS)); + float phongStrength = _TessPhongStrength; + output.positionOS.xyz = phongStrength * (pp[0]*bary.x + pp[1]*bary.y + pp[2]*bary.z) + (1.0f-phongStrength) * output.positionOS.xyz; + #endif + UNITY_TRANSFER_INSTANCE_ID(patch[0], output); + return VertexFunction(output); + } + #else + PackedVaryings vert ( Attributes input ) + { + return VertexFunction( input ); + } + #endif + + half4 frag(PackedVaryings input + #if defined( ASE_DEPTH_WRITE_ON ) + ,out float outputDepth : ASE_SV_DEPTH + #endif + ) : SV_Target + { + UNITY_SETUP_INSTANCE_ID( input ); + UNITY_SETUP_STEREO_EYE_INDEX_POST_VERTEX( input ); + + float4 ScreenPosNorm = float4( GetNormalizedScreenSpaceUV( input.positionCS ), input.positionCS.zw ); + float4 ClipPos = ComputeClipSpacePosition( ScreenPosNorm.xy, input.positionCS.z ) * input.positionCS.w; + float4 ScreenPos = ComputeScreenPos( ClipPos ); + + float2 break104 = ( input.ase_texcoord.xy - float2( 0.5,0.5 ) ); + float smoothstepResult130 = smoothstep( _cube_width , ( _cube_width + _cube_softness ) , abs( ( ( abs( break104.x ) + abs( break104.y ) ) - _cube_radius ) )); + float2 temp_output_34_0_g1 = ( input.ase_texcoord.xy - float2( 0.5,0.5 ) ); + float2 break39_g1 = temp_output_34_0_g1; + float2 appendResult50_g1 = (float2(( 1.0 * ( length( temp_output_34_0_g1 ) * 2.0 ) ) , ( ( atan2( break39_g1.x , break39_g1.y ) * ( 1.0 / TWO_PI ) ) * 1.0 ))); + float2 break53_g1 = appendResult50_g1; + float smoothstepResult106 = smoothstep( _ring_width , ( _ring_width + _ring_softness ) , abs( ( break53_g1.x - _ring_radius ) )); + float smoothstepResult120 = smoothstep( _gapsize , ( _gapsize + _gap_softness ) , frac( ( ( break53_g1.y + ( _TimeParameters.x * ( _ring_rotation / 10.0 ) ) + _ring_rotation_angle ) * _count ) )); + + + float Alpha = ( saturate( ( ( 1.0 - smoothstepResult130 ) + saturate( ( ( 1.0 - smoothstepResult106 ) * smoothstepResult120 ) ) ) ) * _Opacity ); + float AlphaClipThreshold = 0.5; + float AlphaClipThresholdShadow = 0.5; + + #if defined( ASE_DEPTH_WRITE_ON ) + float DeviceDepth = input.positionCS.z; + #endif + + #if defined( _ALPHATEST_ON ) + #if defined( _ALPHATEST_SHADOW_ON ) + AlphaDiscard( Alpha, AlphaClipThresholdShadow ); + #else + AlphaDiscard( Alpha, AlphaClipThreshold ); + #endif + #endif + + #if defined(LOD_FADE_CROSSFADE) + LODFadeCrossFade( input.positionCS ); + #endif + + #if defined( ASE_DEPTH_WRITE_ON ) + outputDepth = DeviceDepth; + #endif + + return 0; + } + ENDHLSL + } + + + Pass + { + + Name "DepthOnly" + Tags { "LightMode"="DepthOnly" } + + ZWrite On + ColorMask 0 + AlphaToMask Off + + HLSLPROGRAM + + #define _ALPHATEST_ON 1 + #pragma multi_compile_instancing + #pragma multi_compile _ LOD_FADE_CROSSFADE + #define ASE_FOG 1 + #define _SURFACE_TYPE_TRANSPARENT 1 + #define ASE_VERSION 19904 + #define ASE_SRP_VERSION -1 + + + #pragma vertex vert + #pragma fragment frag + + #include_with_pragmas "Packages/com.unity.render-pipelines.universal/ShaderLibrary/DOTS.hlsl" + #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Color.hlsl" + #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Core.hlsl" + #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Lighting.hlsl" + #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/ShaderGraphFunctions.hlsl" + + #if defined(LOD_FADE_CROSSFADE) + #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/LODCrossFade.hlsl" + #endif + + #define ASE_NEEDS_TEXTURE_COORDINATES0 + #define ASE_NEEDS_FRAG_TEXTURE_COORDINATES0 + + + #if defined(ASE_EARLY_Z_DEPTH_OPTIMIZE) && (SHADER_TARGET >= 45) + #define ASE_SV_DEPTH SV_DepthLessEqual + #define ASE_SV_POSITION_QUALIFIERS linear noperspective centroid + #else + #define ASE_SV_DEPTH SV_Depth + #define ASE_SV_POSITION_QUALIFIERS + #endif + + struct Attributes + { + float4 positionOS : POSITION; + half3 normalOS : NORMAL; + float4 ase_texcoord : TEXCOORD0; + UNITY_VERTEX_INPUT_INSTANCE_ID + }; + + struct PackedVaryings + { + ASE_SV_POSITION_QUALIFIERS float4 positionCS : SV_POSITION; + float4 ase_texcoord : TEXCOORD0; + UNITY_VERTEX_INPUT_INSTANCE_ID + UNITY_VERTEX_OUTPUT_STEREO + }; + + CBUFFER_START(UnityPerMaterial) + float4 _ImageColor; + float _cube_width; + float _cube_softness; + float _cube_radius; + float _ring_width; + float _ring_softness; + float _ring_radius; + float _gapsize; + float _gap_softness; + float _ring_rotation; + float _ring_rotation_angle; + float _count; + float _Opacity; + #ifdef ASE_TESSELLATION + float _TessPhongStrength; + float _TessValue; + float _TessMin; + float _TessMax; + float _TessEdgeLength; + float _TessMaxDisp; + #endif + CBUFFER_END + + + + + PackedVaryings VertexFunction( Attributes input ) + { + PackedVaryings output = (PackedVaryings)0; + UNITY_SETUP_INSTANCE_ID(input); + UNITY_TRANSFER_INSTANCE_ID(input, output); + UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(output); + + output.ase_texcoord.xy = input.ase_texcoord.xy; + + //setting value to unused interpolator channels and avoid initialization warnings + output.ase_texcoord.zw = 0; + + #ifdef ASE_ABSOLUTE_VERTEX_POS + float3 defaultVertexValue = input.positionOS.xyz; + #else + float3 defaultVertexValue = float3(0, 0, 0); + #endif + + float3 vertexValue = defaultVertexValue; + + #ifdef ASE_ABSOLUTE_VERTEX_POS + input.positionOS.xyz = vertexValue; + #else + input.positionOS.xyz += vertexValue; + #endif + + VertexPositionInputs vertexInput = GetVertexPositionInputs( input.positionOS.xyz ); + + output.positionCS = vertexInput.positionCS; + return output; + } + + #if defined(ASE_TESSELLATION) + struct VertexControl + { + float4 positionOS : INTERNALTESSPOS; + half3 normalOS : NORMAL; + float4 ase_texcoord : TEXCOORD0; + + UNITY_VERTEX_INPUT_INSTANCE_ID + }; + + struct TessellationFactors + { + float edge[3] : SV_TessFactor; + float inside : SV_InsideTessFactor; + }; + + VertexControl vert ( Attributes input ) + { + VertexControl output; + UNITY_SETUP_INSTANCE_ID(input); + UNITY_TRANSFER_INSTANCE_ID(input, output); + output.positionOS = input.positionOS; + output.normalOS = input.normalOS; + output.ase_texcoord = input.ase_texcoord; + return output; + } + + TessellationFactors TessellationFunction (InputPatch input) + { + TessellationFactors output; + float4 tf = 1; + float tessValue = _TessValue; float tessMin = _TessMin; float tessMax = _TessMax; + float edgeLength = _TessEdgeLength; float tessMaxDisp = _TessMaxDisp; + #if defined(ASE_FIXED_TESSELLATION) + tf = FixedTess( tessValue ); + #elif defined(ASE_DISTANCE_TESSELLATION) + tf = DistanceBasedTess(input[0].positionOS, input[1].positionOS, input[2].positionOS, tessValue, tessMin, tessMax, GetObjectToWorldMatrix(), _WorldSpaceCameraPos ); + #elif defined(ASE_LENGTH_TESSELLATION) + tf = EdgeLengthBasedTess(input[0].positionOS, input[1].positionOS, input[2].positionOS, edgeLength, GetObjectToWorldMatrix(), _WorldSpaceCameraPos, _ScreenParams ); + #elif defined(ASE_LENGTH_CULL_TESSELLATION) + tf = EdgeLengthBasedTessCull(input[0].positionOS, input[1].positionOS, input[2].positionOS, edgeLength, tessMaxDisp, GetObjectToWorldMatrix(), _WorldSpaceCameraPos, _ScreenParams, unity_CameraWorldClipPlanes ); + #endif + output.edge[0] = tf.x; output.edge[1] = tf.y; output.edge[2] = tf.z; output.inside = tf.w; + return output; + } + + [domain("tri")] + [partitioning("fractional_odd")] + [outputtopology("triangle_cw")] + [patchconstantfunc("TessellationFunction")] + [outputcontrolpoints(3)] + VertexControl HullFunction(InputPatch patch, uint id : SV_OutputControlPointID) + { + return patch[id]; + } + + [domain("tri")] + PackedVaryings DomainFunction(TessellationFactors factors, OutputPatch patch, float3 bary : SV_DomainLocation) + { + Attributes output = (Attributes) 0; + output.positionOS = patch[0].positionOS * bary.x + patch[1].positionOS * bary.y + patch[2].positionOS * bary.z; + output.normalOS = patch[0].normalOS * bary.x + patch[1].normalOS * bary.y + patch[2].normalOS * bary.z; + output.ase_texcoord = patch[0].ase_texcoord * bary.x + patch[1].ase_texcoord * bary.y + patch[2].ase_texcoord * bary.z; + #if defined(ASE_PHONG_TESSELLATION) + float3 pp[3]; + for (int i = 0; i < 3; ++i) + pp[i] = output.positionOS.xyz - patch[i].normalOS * (dot(output.positionOS.xyz, patch[i].normalOS) - dot(patch[i].positionOS.xyz, patch[i].normalOS)); + float phongStrength = _TessPhongStrength; + output.positionOS.xyz = phongStrength * (pp[0]*bary.x + pp[1]*bary.y + pp[2]*bary.z) + (1.0f-phongStrength) * output.positionOS.xyz; + #endif + UNITY_TRANSFER_INSTANCE_ID(patch[0], output); + return VertexFunction(output); + } + #else + PackedVaryings vert ( Attributes input ) + { + return VertexFunction( input ); + } + #endif + + half4 frag(PackedVaryings input + #if defined( ASE_DEPTH_WRITE_ON ) + ,out float outputDepth : ASE_SV_DEPTH + #endif + ) : SV_Target + { + UNITY_SETUP_INSTANCE_ID(input); + UNITY_SETUP_STEREO_EYE_INDEX_POST_VERTEX( input ); + + float4 ScreenPosNorm = float4( GetNormalizedScreenSpaceUV( input.positionCS ), input.positionCS.zw ); + float4 ClipPos = ComputeClipSpacePosition( ScreenPosNorm.xy, input.positionCS.z ) * input.positionCS.w; + float4 ScreenPos = ComputeScreenPos( ClipPos ); + + float2 break104 = ( input.ase_texcoord.xy - float2( 0.5,0.5 ) ); + float smoothstepResult130 = smoothstep( _cube_width , ( _cube_width + _cube_softness ) , abs( ( ( abs( break104.x ) + abs( break104.y ) ) - _cube_radius ) )); + float2 temp_output_34_0_g1 = ( input.ase_texcoord.xy - float2( 0.5,0.5 ) ); + float2 break39_g1 = temp_output_34_0_g1; + float2 appendResult50_g1 = (float2(( 1.0 * ( length( temp_output_34_0_g1 ) * 2.0 ) ) , ( ( atan2( break39_g1.x , break39_g1.y ) * ( 1.0 / TWO_PI ) ) * 1.0 ))); + float2 break53_g1 = appendResult50_g1; + float smoothstepResult106 = smoothstep( _ring_width , ( _ring_width + _ring_softness ) , abs( ( break53_g1.x - _ring_radius ) )); + float smoothstepResult120 = smoothstep( _gapsize , ( _gapsize + _gap_softness ) , frac( ( ( break53_g1.y + ( _TimeParameters.x * ( _ring_rotation / 10.0 ) ) + _ring_rotation_angle ) * _count ) )); + + + float Alpha = ( saturate( ( ( 1.0 - smoothstepResult130 ) + saturate( ( ( 1.0 - smoothstepResult106 ) * smoothstepResult120 ) ) ) ) * _Opacity ); + float AlphaClipThreshold = 0.5; + + #if defined( ASE_DEPTH_WRITE_ON ) + float DeviceDepth = input.positionCS.z; + #endif + + #if defined( _ALPHATEST_ON ) + AlphaDiscard( Alpha, AlphaClipThreshold ); + #endif + + #if defined(LOD_FADE_CROSSFADE) + LODFadeCrossFade( input.positionCS ); + #endif + + #if defined( ASE_DEPTH_WRITE_ON ) + outputDepth = DeviceDepth; + #endif + + return 0; + } + ENDHLSL + } + + + Pass + { + + Name "SceneSelectionPass" + Tags { "LightMode"="SceneSelectionPass" } + + Cull Off + AlphaToMask Off + + HLSLPROGRAM + + #define _ALPHATEST_ON 1 + #define ASE_FOG 1 + #define _SURFACE_TYPE_TRANSPARENT 1 + #define ASE_VERSION 19904 + #define ASE_SRP_VERSION -1 + + + #pragma vertex vert + #pragma fragment frag + + #define ATTRIBUTES_NEED_NORMAL + #define ATTRIBUTES_NEED_TANGENT + #define SHADERPASS SHADERPASS_DEPTHONLY + + #include_with_pragmas "Packages/com.unity.render-pipelines.universal/ShaderLibrary/DOTS.hlsl" + #include_with_pragmas "Packages/com.unity.render-pipelines.universal/ShaderLibrary/RenderingLayers.hlsl" + #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Color.hlsl" + #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Texture.hlsl" + #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Core.hlsl" + #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Lighting.hlsl" + #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/TextureStack.hlsl" + #include_with_pragmas "Packages/com.unity.render-pipelines.core/ShaderLibrary/FoveatedRenderingKeywords.hlsl" + #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/FoveatedRendering.hlsl" + #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/ShaderGraphFunctions.hlsl" + #include "Packages/com.unity.render-pipelines.universal/Editor/ShaderGraph/Includes/ShaderPass.hlsl" + + #define ASE_NEEDS_TEXTURE_COORDINATES0 + #define ASE_NEEDS_FRAG_TEXTURE_COORDINATES0 + + + struct Attributes + { + float4 positionOS : POSITION; + half3 normalOS : NORMAL; + float4 ase_texcoord : TEXCOORD0; + UNITY_VERTEX_INPUT_INSTANCE_ID + }; + + struct PackedVaryings + { + float4 positionCS : SV_POSITION; + float4 ase_texcoord : TEXCOORD0; + UNITY_VERTEX_INPUT_INSTANCE_ID + UNITY_VERTEX_OUTPUT_STEREO + }; + + CBUFFER_START(UnityPerMaterial) + float4 _ImageColor; + float _cube_width; + float _cube_softness; + float _cube_radius; + float _ring_width; + float _ring_softness; + float _ring_radius; + float _gapsize; + float _gap_softness; + float _ring_rotation; + float _ring_rotation_angle; + float _count; + float _Opacity; + #ifdef ASE_TESSELLATION + float _TessPhongStrength; + float _TessValue; + float _TessMin; + float _TessMax; + float _TessEdgeLength; + float _TessMaxDisp; + #endif + CBUFFER_END + + + + + int _ObjectId; + int _PassValue; + + struct SurfaceDescription + { + float Alpha; + float AlphaClipThreshold; + }; + + PackedVaryings VertexFunction(Attributes input ) + { + PackedVaryings output; + ZERO_INITIALIZE(PackedVaryings, output); + + UNITY_SETUP_INSTANCE_ID(input); + UNITY_TRANSFER_INSTANCE_ID(input, output); + UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(output); + + output.ase_texcoord.xy = input.ase_texcoord.xy; + + //setting value to unused interpolator channels and avoid initialization warnings + output.ase_texcoord.zw = 0; + + #ifdef ASE_ABSOLUTE_VERTEX_POS + float3 defaultVertexValue = input.positionOS.xyz; + #else + float3 defaultVertexValue = float3(0, 0, 0); + #endif + + float3 vertexValue = defaultVertexValue; + + #ifdef ASE_ABSOLUTE_VERTEX_POS + input.positionOS.xyz = vertexValue; + #else + input.positionOS.xyz += vertexValue; + #endif + + VertexPositionInputs vertexInput = GetVertexPositionInputs( input.positionOS.xyz ); + + output.positionCS = vertexInput.positionCS; + return output; + } + + #if defined(ASE_TESSELLATION) + struct VertexControl + { + float4 positionOS : INTERNALTESSPOS; + half3 normalOS : NORMAL; + float4 ase_texcoord : TEXCOORD0; + + UNITY_VERTEX_INPUT_INSTANCE_ID + }; + + struct TessellationFactors + { + float edge[3] : SV_TessFactor; + float inside : SV_InsideTessFactor; + }; + + VertexControl vert ( Attributes input ) + { + VertexControl output; + UNITY_SETUP_INSTANCE_ID(input); + UNITY_TRANSFER_INSTANCE_ID(input, output); + output.positionOS = input.positionOS; + output.normalOS = input.normalOS; + output.ase_texcoord = input.ase_texcoord; + return output; + } + + TessellationFactors TessellationFunction (InputPatch input) + { + TessellationFactors output; + float4 tf = 1; + float tessValue = _TessValue; float tessMin = _TessMin; float tessMax = _TessMax; + float edgeLength = _TessEdgeLength; float tessMaxDisp = _TessMaxDisp; + #if defined(ASE_FIXED_TESSELLATION) + tf = FixedTess( tessValue ); + #elif defined(ASE_DISTANCE_TESSELLATION) + tf = DistanceBasedTess(input[0].positionOS, input[1].positionOS, input[2].positionOS, tessValue, tessMin, tessMax, GetObjectToWorldMatrix(), _WorldSpaceCameraPos ); + #elif defined(ASE_LENGTH_TESSELLATION) + tf = EdgeLengthBasedTess(input[0].positionOS, input[1].positionOS, input[2].positionOS, edgeLength, GetObjectToWorldMatrix(), _WorldSpaceCameraPos, _ScreenParams ); + #elif defined(ASE_LENGTH_CULL_TESSELLATION) + tf = EdgeLengthBasedTessCull(input[0].positionOS, input[1].positionOS, input[2].positionOS, edgeLength, tessMaxDisp, GetObjectToWorldMatrix(), _WorldSpaceCameraPos, _ScreenParams, unity_CameraWorldClipPlanes ); + #endif + output.edge[0] = tf.x; output.edge[1] = tf.y; output.edge[2] = tf.z; output.inside = tf.w; + return output; + } + + [domain("tri")] + [partitioning("fractional_odd")] + [outputtopology("triangle_cw")] + [patchconstantfunc("TessellationFunction")] + [outputcontrolpoints(3)] + VertexControl HullFunction(InputPatch patch, uint id : SV_OutputControlPointID) + { + return patch[id]; + } + + [domain("tri")] + PackedVaryings DomainFunction(TessellationFactors factors, OutputPatch patch, float3 bary : SV_DomainLocation) + { + Attributes output = (Attributes) 0; + output.positionOS = patch[0].positionOS * bary.x + patch[1].positionOS * bary.y + patch[2].positionOS * bary.z; + output.normalOS = patch[0].normalOS * bary.x + patch[1].normalOS * bary.y + patch[2].normalOS * bary.z; + output.ase_texcoord = patch[0].ase_texcoord * bary.x + patch[1].ase_texcoord * bary.y + patch[2].ase_texcoord * bary.z; + #if defined(ASE_PHONG_TESSELLATION) + float3 pp[3]; + for (int i = 0; i < 3; ++i) + pp[i] = output.positionOS.xyz - patch[i].normalOS * (dot(output.positionOS.xyz, patch[i].normalOS) - dot(patch[i].positionOS.xyz, patch[i].normalOS)); + float phongStrength = _TessPhongStrength; + output.positionOS.xyz = phongStrength * (pp[0]*bary.x + pp[1]*bary.y + pp[2]*bary.z) + (1.0f-phongStrength) * output.positionOS.xyz; + #endif + UNITY_TRANSFER_INSTANCE_ID(patch[0], output); + return VertexFunction(output); + } + #else + PackedVaryings vert ( Attributes input ) + { + return VertexFunction( input ); + } + #endif + + half4 frag(PackedVaryings input ) : SV_Target + { + SurfaceDescription surfaceDescription = (SurfaceDescription)0; + + float2 break104 = ( input.ase_texcoord.xy - float2( 0.5,0.5 ) ); + float smoothstepResult130 = smoothstep( _cube_width , ( _cube_width + _cube_softness ) , abs( ( ( abs( break104.x ) + abs( break104.y ) ) - _cube_radius ) )); + float2 temp_output_34_0_g1 = ( input.ase_texcoord.xy - float2( 0.5,0.5 ) ); + float2 break39_g1 = temp_output_34_0_g1; + float2 appendResult50_g1 = (float2(( 1.0 * ( length( temp_output_34_0_g1 ) * 2.0 ) ) , ( ( atan2( break39_g1.x , break39_g1.y ) * ( 1.0 / TWO_PI ) ) * 1.0 ))); + float2 break53_g1 = appendResult50_g1; + float smoothstepResult106 = smoothstep( _ring_width , ( _ring_width + _ring_softness ) , abs( ( break53_g1.x - _ring_radius ) )); + float smoothstepResult120 = smoothstep( _gapsize , ( _gapsize + _gap_softness ) , frac( ( ( break53_g1.y + ( _TimeParameters.x * ( _ring_rotation / 10.0 ) ) + _ring_rotation_angle ) * _count ) )); + + + surfaceDescription.Alpha = ( saturate( ( ( 1.0 - smoothstepResult130 ) + saturate( ( ( 1.0 - smoothstepResult106 ) * smoothstepResult120 ) ) ) ) * _Opacity ); + surfaceDescription.AlphaClipThreshold = 0.5; + + #if _ALPHATEST_ON + float alphaClipThreshold = 0.01f; + #if ALPHA_CLIP_THRESHOLD + alphaClipThreshold = surfaceDescription.AlphaClipThreshold; + #endif + clip(surfaceDescription.Alpha - alphaClipThreshold); + #endif half4 outColor = half4(_ObjectId, _PassValue, 1.0, 1.0); return outColor; } - - ENDHLSL - } + ENDHLSL + } - Pass - { + Pass + { - Name "ScenePickingPass" - Tags { "LightMode"="Picking" } + Name "ScenePickingPass" + Tags { "LightMode"="Picking" } - Cull Off + AlphaToMask Off - HLSLPROGRAM + HLSLPROGRAM + #define _ALPHATEST_ON 1 + #define ASE_FOG 1 + #define _SURFACE_TYPE_TRANSPARENT 1 #define ASE_VERSION 19904 #define ASE_SRP_VERSION -1 - #pragma multi_compile_instancing - #pragma vertex vert #pragma fragment frag - #pragma multi_compile _ DEBUG_DISPLAY SKINNED_SPRITE + #define ATTRIBUTES_NEED_NORMAL + #define ATTRIBUTES_NEED_TANGENT - #define _SURFACE_TYPE_TRANSPARENT 1 - #define ATTRIBUTES_NEED_NORMAL - #define ATTRIBUTES_NEED_TANGENT - #define FEATURES_GRAPH_VERTEX_NORMAL_OUTPUT - #define FEATURES_GRAPH_VERTEX_TANGENT_OUTPUT - #define FEATURES_GRAPH_VERTEX - - #define SHADERPASS SHADERPASS_DEPTHONLY - #define SCENEPICKINGPASS 1 + #define SHADERPASS SHADERPASS_DEPTHONLY + #include_with_pragmas "Packages/com.unity.render-pipelines.universal/ShaderLibrary/DOTS.hlsl" + #include_with_pragmas "Packages/com.unity.render-pipelines.universal/ShaderLibrary/RenderingLayers.hlsl" #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Color.hlsl" #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Texture.hlsl" #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Core.hlsl" - #include "Packages/com.unity.render-pipelines.universal/Shaders/2D/Include/Core2D.hlsl" #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Lighting.hlsl" - #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Input.hlsl" #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/TextureStack.hlsl" - #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/FoveatedRendering.hlsl" #include_with_pragmas "Packages/com.unity.render-pipelines.core/ShaderLibrary/FoveatedRenderingKeywords.hlsl" - #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/DebugMipmapStreamingMacros.hlsl" + #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/FoveatedRendering.hlsl" #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/ShaderGraphFunctions.hlsl" - #include_with_pragmas "Packages/com.unity.render-pipelines.universal/ShaderLibrary/DOTS.hlsl" #include "Packages/com.unity.render-pipelines.universal/Editor/ShaderGraph/Includes/ShaderPass.hlsl" - #define ASE_NEEDS_TEXTURE_COORDINATES0 - #define ASE_NEEDS_FRAG_TEXTURE_COORDINATES0 + #if defined(LOD_FADE_CROSSFADE) + #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/LODCrossFade.hlsl" + #endif + + #define ASE_NEEDS_TEXTURE_COORDINATES0 + #define ASE_NEEDS_FRAG_TEXTURE_COORDINATES0 - CBUFFER_START( UnityPerMaterial ) + struct Attributes + { + float4 positionOS : POSITION; + half3 normalOS : NORMAL; + float4 ase_texcoord : TEXCOORD0; + UNITY_VERTEX_INPUT_INSTANCE_ID + }; + + struct PackedVaryings + { + float4 positionCS : SV_POSITION; + float4 ase_texcoord : TEXCOORD0; + UNITY_VERTEX_INPUT_INSTANCE_ID + UNITY_VERTEX_OUTPUT_STEREO + }; + + CBUFFER_START(UnityPerMaterial) float4 _ImageColor; float _cube_width; float _cube_softness; @@ -819,147 +1363,1124 @@ Shader "Soullies/hit_point" float _gapsize; float _gap_softness; float _ring_rotation; + float _ring_rotation_angle; float _count; float _Opacity; + #ifdef ASE_TESSELLATION + float _TessPhongStrength; + float _TessValue; + float _TessMin; + float _TessMax; + float _TessEdgeLength; + float _TessMaxDisp; + #endif CBUFFER_END - - struct VertexInput - { - float3 positionOS : POSITION; - float3 normal : NORMAL; - float4 tangent : TANGENT; - float4 ase_texcoord : TEXCOORD0; - float4 ase_color : COLOR; - UNITY_SKINNED_VERTEX_INPUTS - UNITY_VERTEX_INPUT_INSTANCE_ID - }; - - struct VertexOutput - { - float4 positionCS : SV_POSITION; - float4 ase_texcoord : TEXCOORD0; - float4 ase_color : COLOR; - UNITY_VERTEX_INPUT_INSTANCE_ID - }; - - float4 _SelectionID; + - VertexOutput vert(VertexInput v ) + float4 _SelectionID; + + struct SurfaceDescription { - VertexOutput o = (VertexOutput)0; + float Alpha; + float AlphaClipThreshold; + }; - UNITY_SETUP_INSTANCE_ID(v); - UNITY_TRANSFER_INSTANCE_ID(v, o); - UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o); - UNITY_SKINNED_VERTEX_COMPUTE(v); + PackedVaryings VertexFunction(Attributes input ) + { + PackedVaryings output; + ZERO_INITIALIZE(PackedVaryings, output); - v.positionOS = UnityFlipSprite( v.positionOS, unity_SpriteProps.xy ); + UNITY_SETUP_INSTANCE_ID(input); + UNITY_TRANSFER_INSTANCE_ID(input, output); + UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(output); - o.ase_texcoord.xy = v.ase_texcoord.xy; - o.ase_color = v.ase_color; + output.ase_texcoord.xy = input.ase_texcoord.xy; //setting value to unused interpolator channels and avoid initialization warnings - o.ase_texcoord.zw = 0; + output.ase_texcoord.zw = 0; + #ifdef ASE_ABSOLUTE_VERTEX_POS - float3 defaultVertexValue = v.positionOS; + float3 defaultVertexValue = input.positionOS.xyz; #else float3 defaultVertexValue = float3(0, 0, 0); #endif + float3 vertexValue = defaultVertexValue; + #ifdef ASE_ABSOLUTE_VERTEX_POS - v.positionOS = vertexValue; + input.positionOS.xyz = vertexValue; #else - v.positionOS += vertexValue; + input.positionOS.xyz += vertexValue; #endif - VertexPositionInputs vertexInput = GetVertexPositionInputs(v.positionOS); - float3 positionWS = TransformObjectToWorld(v.positionOS); - o.positionCS = TransformWorldToHClip(positionWS); + VertexPositionInputs vertexInput = GetVertexPositionInputs( input.positionOS.xyz ); - return o; + output.positionCS = vertexInput.positionCS; + return output; } - half4 frag(VertexOutput IN ) : SV_TARGET + #if defined(ASE_TESSELLATION) + struct VertexControl { - float2 break104 = ( IN.ase_texcoord.xy - float2( 0.5,0.5 ) ); + float4 positionOS : INTERNALTESSPOS; + half3 normalOS : NORMAL; + float4 ase_texcoord : TEXCOORD0; + + UNITY_VERTEX_INPUT_INSTANCE_ID + }; + + struct TessellationFactors + { + float edge[3] : SV_TessFactor; + float inside : SV_InsideTessFactor; + }; + + VertexControl vert ( Attributes input ) + { + VertexControl output; + UNITY_SETUP_INSTANCE_ID(input); + UNITY_TRANSFER_INSTANCE_ID(input, output); + output.positionOS = input.positionOS; + output.normalOS = input.normalOS; + output.ase_texcoord = input.ase_texcoord; + return output; + } + + TessellationFactors TessellationFunction (InputPatch input) + { + TessellationFactors output; + float4 tf = 1; + float tessValue = _TessValue; float tessMin = _TessMin; float tessMax = _TessMax; + float edgeLength = _TessEdgeLength; float tessMaxDisp = _TessMaxDisp; + #if defined(ASE_FIXED_TESSELLATION) + tf = FixedTess( tessValue ); + #elif defined(ASE_DISTANCE_TESSELLATION) + tf = DistanceBasedTess(input[0].positionOS, input[1].positionOS, input[2].positionOS, tessValue, tessMin, tessMax, GetObjectToWorldMatrix(), _WorldSpaceCameraPos ); + #elif defined(ASE_LENGTH_TESSELLATION) + tf = EdgeLengthBasedTess(input[0].positionOS, input[1].positionOS, input[2].positionOS, edgeLength, GetObjectToWorldMatrix(), _WorldSpaceCameraPos, _ScreenParams ); + #elif defined(ASE_LENGTH_CULL_TESSELLATION) + tf = EdgeLengthBasedTessCull(input[0].positionOS, input[1].positionOS, input[2].positionOS, edgeLength, tessMaxDisp, GetObjectToWorldMatrix(), _WorldSpaceCameraPos, _ScreenParams, unity_CameraWorldClipPlanes ); + #endif + output.edge[0] = tf.x; output.edge[1] = tf.y; output.edge[2] = tf.z; output.inside = tf.w; + return output; + } + + [domain("tri")] + [partitioning("fractional_odd")] + [outputtopology("triangle_cw")] + [patchconstantfunc("TessellationFunction")] + [outputcontrolpoints(3)] + VertexControl HullFunction(InputPatch patch, uint id : SV_OutputControlPointID) + { + return patch[id]; + } + + [domain("tri")] + PackedVaryings DomainFunction(TessellationFactors factors, OutputPatch patch, float3 bary : SV_DomainLocation) + { + Attributes output = (Attributes) 0; + output.positionOS = patch[0].positionOS * bary.x + patch[1].positionOS * bary.y + patch[2].positionOS * bary.z; + output.normalOS = patch[0].normalOS * bary.x + patch[1].normalOS * bary.y + patch[2].normalOS * bary.z; + output.ase_texcoord = patch[0].ase_texcoord * bary.x + patch[1].ase_texcoord * bary.y + patch[2].ase_texcoord * bary.z; + #if defined(ASE_PHONG_TESSELLATION) + float3 pp[3]; + for (int i = 0; i < 3; ++i) + pp[i] = output.positionOS.xyz - patch[i].normalOS * (dot(output.positionOS.xyz, patch[i].normalOS) - dot(patch[i].positionOS.xyz, patch[i].normalOS)); + float phongStrength = _TessPhongStrength; + output.positionOS.xyz = phongStrength * (pp[0]*bary.x + pp[1]*bary.y + pp[2]*bary.z) + (1.0f-phongStrength) * output.positionOS.xyz; + #endif + UNITY_TRANSFER_INSTANCE_ID(patch[0], output); + return VertexFunction(output); + } + #else + PackedVaryings vert ( Attributes input ) + { + return VertexFunction( input ); + } + #endif + + half4 frag(PackedVaryings input ) : SV_Target + { + SurfaceDescription surfaceDescription = (SurfaceDescription)0; + + float2 break104 = ( input.ase_texcoord.xy - float2( 0.5,0.5 ) ); float smoothstepResult130 = smoothstep( _cube_width , ( _cube_width + _cube_softness ) , abs( ( ( abs( break104.x ) + abs( break104.y ) ) - _cube_radius ) )); - float2 temp_output_34_0_g1 = ( IN.ase_texcoord.xy - float2( 0.5,0.5 ) ); + float2 temp_output_34_0_g1 = ( input.ase_texcoord.xy - float2( 0.5,0.5 ) ); float2 break39_g1 = temp_output_34_0_g1; float2 appendResult50_g1 = (float2(( 1.0 * ( length( temp_output_34_0_g1 ) * 2.0 ) ) , ( ( atan2( break39_g1.x , break39_g1.y ) * ( 1.0 / TWO_PI ) ) * 1.0 ))); float2 break53_g1 = appendResult50_g1; float smoothstepResult106 = smoothstep( _ring_width , ( _ring_width + _ring_softness ) , abs( ( break53_g1.x - _ring_radius ) )); - float smoothstepResult120 = smoothstep( _gapsize , ( _gapsize + _gap_softness ) , frac( ( ( break53_g1.y + ( _TimeParameters.x * ( _ring_rotation / 10.0 ) ) ) * _count ) )); - float4 break89 = _ImageColor; - float4 appendResult90 = (float4(break89.r , break89.g , break89.b , _Opacity)); + float smoothstepResult120 = smoothstep( _gapsize , ( _gapsize + _gap_softness ) , frac( ( ( break53_g1.y + ( _TimeParameters.x * ( _ring_rotation / 10.0 ) ) + _ring_rotation_angle ) * _count ) )); - float4 Color = ( ( ( 1.0 - smoothstepResult130 ) + saturate( ( ( 1.0 - smoothstepResult106 ) * smoothstepResult120 ) ) ) * IN.ase_color * appendResult90 ); - half4 outColor = unity_SelectionID; + + surfaceDescription.Alpha = ( saturate( ( ( 1.0 - smoothstepResult130 ) + saturate( ( ( 1.0 - smoothstepResult106 ) * smoothstepResult120 ) ) ) ) * _Opacity ); + surfaceDescription.AlphaClipThreshold = 0.5; + + #if _ALPHATEST_ON + float alphaClipThreshold = 0.01f; + #if ALPHA_CLIP_THRESHOLD + alphaClipThreshold = surfaceDescription.AlphaClipThreshold; + #endif + clip(surfaceDescription.Alpha - alphaClipThreshold); + #endif + + half4 outColor = 0; + outColor = unity_SelectionID; + return outColor; } - ENDHLSL - } + ENDHLSL + } + + + Pass + { + + Name "DepthNormals" + Tags { "LightMode"="DepthNormalsOnly" } + + ZTest LEqual + ZWrite On + + HLSLPROGRAM + + #define _ALPHATEST_ON 1 + #pragma multi_compile_instancing + #pragma multi_compile _ LOD_FADE_CROSSFADE + #define ASE_FOG 1 + #define _SURFACE_TYPE_TRANSPARENT 1 + #define ASE_VERSION 19904 + #define ASE_SRP_VERSION -1 + + + #pragma multi_compile_fragment _ _GBUFFER_NORMALS_OCT + + #pragma vertex vert + #pragma fragment frag + + #define ATTRIBUTES_NEED_NORMAL + #define ATTRIBUTES_NEED_TANGENT + #define VARYINGS_NEED_NORMAL_WS + + #define SHADERPASS SHADERPASS_DEPTHNORMALSONLY + + #include_with_pragmas "Packages/com.unity.render-pipelines.universal/ShaderLibrary/DOTS.hlsl" + #include_with_pragmas "Packages/com.unity.render-pipelines.universal/ShaderLibrary/RenderingLayers.hlsl" + #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Color.hlsl" + #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Texture.hlsl" + #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Core.hlsl" + #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Lighting.hlsl" + #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/TextureStack.hlsl" + #include_with_pragmas "Packages/com.unity.render-pipelines.core/ShaderLibrary/FoveatedRenderingKeywords.hlsl" + #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/FoveatedRendering.hlsl" + #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/ShaderGraphFunctions.hlsl" + #include "Packages/com.unity.render-pipelines.universal/Editor/ShaderGraph/Includes/ShaderPass.hlsl" + + #if defined(LOD_FADE_CROSSFADE) + #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/LODCrossFade.hlsl" + #endif + + #define ASE_NEEDS_TEXTURE_COORDINATES0 + #define ASE_NEEDS_FRAG_TEXTURE_COORDINATES0 + + + #if defined(ASE_EARLY_Z_DEPTH_OPTIMIZE) && (SHADER_TARGET >= 45) + #define ASE_SV_DEPTH SV_DepthLessEqual + #define ASE_SV_POSITION_QUALIFIERS linear noperspective centroid + #else + #define ASE_SV_DEPTH SV_Depth + #define ASE_SV_POSITION_QUALIFIERS + #endif + + struct Attributes + { + float4 positionOS : POSITION; + half3 normalOS : NORMAL; + float4 ase_texcoord : TEXCOORD0; + UNITY_VERTEX_INPUT_INSTANCE_ID + }; + + struct PackedVaryings + { + ASE_SV_POSITION_QUALIFIERS float4 positionCS : SV_POSITION; + half3 normalWS : TEXCOORD0; + float4 ase_texcoord1 : TEXCOORD1; + UNITY_VERTEX_INPUT_INSTANCE_ID + UNITY_VERTEX_OUTPUT_STEREO + }; + + CBUFFER_START(UnityPerMaterial) + float4 _ImageColor; + float _cube_width; + float _cube_softness; + float _cube_radius; + float _ring_width; + float _ring_softness; + float _ring_radius; + float _gapsize; + float _gap_softness; + float _ring_rotation; + float _ring_rotation_angle; + float _count; + float _Opacity; + #ifdef ASE_TESSELLATION + float _TessPhongStrength; + float _TessValue; + float _TessMin; + float _TessMax; + float _TessEdgeLength; + float _TessMaxDisp; + #endif + CBUFFER_END + + + + + struct SurfaceDescription + { + float Alpha; + float AlphaClipThreshold; + }; + + PackedVaryings VertexFunction( Attributes input ) + { + PackedVaryings output; + ZERO_INITIALIZE(PackedVaryings, output); + + UNITY_SETUP_INSTANCE_ID(input); + UNITY_TRANSFER_INSTANCE_ID(input, output); + UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(output); + + output.ase_texcoord1.xy = input.ase_texcoord.xy; + + //setting value to unused interpolator channels and avoid initialization warnings + output.ase_texcoord1.zw = 0; + #ifdef ASE_ABSOLUTE_VERTEX_POS + float3 defaultVertexValue = input.positionOS.xyz; + #else + float3 defaultVertexValue = float3(0, 0, 0); + #endif + + float3 vertexValue = defaultVertexValue; + + #ifdef ASE_ABSOLUTE_VERTEX_POS + input.positionOS.xyz = vertexValue; + #else + input.positionOS.xyz += vertexValue; + #endif + + input.normalOS = input.normalOS; + + VertexPositionInputs vertexInput = GetVertexPositionInputs( input.positionOS.xyz ); + VertexNormalInputs normalInput = GetVertexNormalInputs( input.normalOS ); + + output.positionCS = vertexInput.positionCS; + output.normalWS = normalInput.normalWS; + return output; + } + + #if defined(ASE_TESSELLATION) + struct VertexControl + { + float4 positionOS : INTERNALTESSPOS; + half3 normalOS : NORMAL; + float4 ase_texcoord : TEXCOORD0; + + UNITY_VERTEX_INPUT_INSTANCE_ID + }; + + struct TessellationFactors + { + float edge[3] : SV_TessFactor; + float inside : SV_InsideTessFactor; + }; + + VertexControl vert ( Attributes input ) + { + VertexControl output; + UNITY_SETUP_INSTANCE_ID(input); + UNITY_TRANSFER_INSTANCE_ID(input, output); + output.positionOS = input.positionOS; + output.normalOS = input.normalOS; + output.ase_texcoord = input.ase_texcoord; + return output; + } + + TessellationFactors TessellationFunction (InputPatch input) + { + TessellationFactors output; + float4 tf = 1; + float tessValue = _TessValue; float tessMin = _TessMin; float tessMax = _TessMax; + float edgeLength = _TessEdgeLength; float tessMaxDisp = _TessMaxDisp; + #if defined(ASE_FIXED_TESSELLATION) + tf = FixedTess( tessValue ); + #elif defined(ASE_DISTANCE_TESSELLATION) + tf = DistanceBasedTess(input[0].positionOS, input[1].positionOS, input[2].positionOS, tessValue, tessMin, tessMax, GetObjectToWorldMatrix(), _WorldSpaceCameraPos ); + #elif defined(ASE_LENGTH_TESSELLATION) + tf = EdgeLengthBasedTess(input[0].positionOS, input[1].positionOS, input[2].positionOS, edgeLength, GetObjectToWorldMatrix(), _WorldSpaceCameraPos, _ScreenParams ); + #elif defined(ASE_LENGTH_CULL_TESSELLATION) + tf = EdgeLengthBasedTessCull(input[0].positionOS, input[1].positionOS, input[2].positionOS, edgeLength, tessMaxDisp, GetObjectToWorldMatrix(), _WorldSpaceCameraPos, _ScreenParams, unity_CameraWorldClipPlanes ); + #endif + output.edge[0] = tf.x; output.edge[1] = tf.y; output.edge[2] = tf.z; output.inside = tf.w; + return output; + } + + [domain("tri")] + [partitioning("fractional_odd")] + [outputtopology("triangle_cw")] + [patchconstantfunc("TessellationFunction")] + [outputcontrolpoints(3)] + VertexControl HullFunction(InputPatch patch, uint id : SV_OutputControlPointID) + { + return patch[id]; + } + + [domain("tri")] + PackedVaryings DomainFunction(TessellationFactors factors, OutputPatch patch, float3 bary : SV_DomainLocation) + { + Attributes output = (Attributes) 0; + output.positionOS = patch[0].positionOS * bary.x + patch[1].positionOS * bary.y + patch[2].positionOS * bary.z; + output.normalOS = patch[0].normalOS * bary.x + patch[1].normalOS * bary.y + patch[2].normalOS * bary.z; + output.ase_texcoord = patch[0].ase_texcoord * bary.x + patch[1].ase_texcoord * bary.y + patch[2].ase_texcoord * bary.z; + #if defined(ASE_PHONG_TESSELLATION) + float3 pp[3]; + for (int i = 0; i < 3; ++i) + pp[i] = output.positionOS.xyz - patch[i].normalOS * (dot(output.positionOS.xyz, patch[i].normalOS) - dot(patch[i].positionOS.xyz, patch[i].normalOS)); + float phongStrength = _TessPhongStrength; + output.positionOS.xyz = phongStrength * (pp[0]*bary.x + pp[1]*bary.y + pp[2]*bary.z) + (1.0f-phongStrength) * output.positionOS.xyz; + #endif + UNITY_TRANSFER_INSTANCE_ID(patch[0], output); + return VertexFunction(output); + } + #else + PackedVaryings vert ( Attributes input ) + { + return VertexFunction( input ); + } + #endif + + void frag(PackedVaryings input + , out half4 outNormalWS : SV_Target0 + #if defined( ASE_DEPTH_WRITE_ON ) + ,out float outputDepth : ASE_SV_DEPTH + #endif + #ifdef _WRITE_RENDERING_LAYERS + , out uint outRenderingLayers : SV_Target1 + #endif + ) + { + UNITY_SETUP_INSTANCE_ID(input); + UNITY_SETUP_STEREO_EYE_INDEX_POST_VERTEX( input ); + + half3 NormalWS = normalize( input.normalWS ); + float4 ScreenPosNorm = float4( GetNormalizedScreenSpaceUV( input.positionCS ), input.positionCS.zw ); + float4 ClipPos = ComputeClipSpacePosition( ScreenPosNorm.xy, input.positionCS.z ) * input.positionCS.w; + float4 ScreenPos = ComputeScreenPos( ClipPos ); + + float2 break104 = ( input.ase_texcoord1.xy - float2( 0.5,0.5 ) ); + float smoothstepResult130 = smoothstep( _cube_width , ( _cube_width + _cube_softness ) , abs( ( ( abs( break104.x ) + abs( break104.y ) ) - _cube_radius ) )); + float2 temp_output_34_0_g1 = ( input.ase_texcoord1.xy - float2( 0.5,0.5 ) ); + float2 break39_g1 = temp_output_34_0_g1; + float2 appendResult50_g1 = (float2(( 1.0 * ( length( temp_output_34_0_g1 ) * 2.0 ) ) , ( ( atan2( break39_g1.x , break39_g1.y ) * ( 1.0 / TWO_PI ) ) * 1.0 ))); + float2 break53_g1 = appendResult50_g1; + float smoothstepResult106 = smoothstep( _ring_width , ( _ring_width + _ring_softness ) , abs( ( break53_g1.x - _ring_radius ) )); + float smoothstepResult120 = smoothstep( _gapsize , ( _gapsize + _gap_softness ) , frac( ( ( break53_g1.y + ( _TimeParameters.x * ( _ring_rotation / 10.0 ) ) + _ring_rotation_angle ) * _count ) )); + + + float Alpha = ( saturate( ( ( 1.0 - smoothstepResult130 ) + saturate( ( ( 1.0 - smoothstepResult106 ) * smoothstepResult120 ) ) ) ) * _Opacity ); + float AlphaClipThreshold = 0.5; + + #if defined( ASE_DEPTH_WRITE_ON ) + float DeviceDepth = input.positionCS.z; + #endif + + #ifdef _ALPHATEST_ON + clip(Alpha - AlphaClipThreshold); + #endif + + #if defined(LOD_FADE_CROSSFADE) + LODFadeCrossFade( input.positionCS ); + #endif + + #if defined( ASE_DEPTH_WRITE_ON ) + outputDepth = DeviceDepth; + #endif + + #if defined(_GBUFFER_NORMALS_OCT) + float2 octNormalWS = PackNormalOctQuadEncode(NormalWS); + float2 remappedOctNormalWS = saturate(octNormalWS * 0.5 + 0.5); + half3 packedNormalWS = PackFloat2To888(remappedOctNormalWS); + outNormalWS = half4(packedNormalWS, 0.0); + #else + outNormalWS = half4(NormalizeNormalPerPixel( NormalWS ), 0.0); + #endif + + #ifdef _WRITE_RENDERING_LAYERS + outRenderingLayers = EncodeMeshRenderingLayer(); + #endif + } + ENDHLSL + } + + + Pass + { + + Name "MotionVectors" + Tags { "LightMode"="MotionVectors" } + + ColorMask RG + + HLSLPROGRAM + + #define _ALPHATEST_ON 1 + #pragma multi_compile _ LOD_FADE_CROSSFADE + #define ASE_FOG 1 + #define _SURFACE_TYPE_TRANSPARENT 1 + #define ASE_VERSION 19904 + #define ASE_SRP_VERSION -1 + + + #pragma vertex vert + #pragma fragment frag + + #define SHADERPASS SHADERPASS_MOTION_VECTORS + + #include_with_pragmas "Packages/com.unity.render-pipelines.universal/ShaderLibrary/DOTS.hlsl" + #include_with_pragmas "Packages/com.unity.render-pipelines.universal/ShaderLibrary/RenderingLayers.hlsl" + #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Color.hlsl" + #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Texture.hlsl" + #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Core.hlsl" + #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Lighting.hlsl" + #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Input.hlsl" + #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/TextureStack.hlsl" + #include_with_pragmas "Packages/com.unity.render-pipelines.core/ShaderLibrary/FoveatedRenderingKeywords.hlsl" + #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/FoveatedRendering.hlsl" + #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/ShaderGraphFunctions.hlsl" + #include "Packages/com.unity.render-pipelines.universal/Editor/ShaderGraph/Includes/ShaderPass.hlsl" + + #if defined(LOD_FADE_CROSSFADE) + #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/LODCrossFade.hlsl" + #endif + + #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/MotionVectorsCommon.hlsl" + + #define ASE_NEEDS_TEXTURE_COORDINATES0 + #define ASE_NEEDS_FRAG_TEXTURE_COORDINATES0 + + + #if defined(ASE_EARLY_Z_DEPTH_OPTIMIZE) && (SHADER_TARGET >= 45) + #define ASE_SV_DEPTH SV_DepthLessEqual + #define ASE_SV_POSITION_QUALIFIERS linear noperspective centroid + #else + #define ASE_SV_DEPTH SV_Depth + #define ASE_SV_POSITION_QUALIFIERS + #endif + + struct Attributes + { + float4 positionOS : POSITION; + float3 positionOld : TEXCOORD4; + #if _ADD_PRECOMPUTED_VELOCITY + float3 alembicMotionVector : TEXCOORD5; + #endif + half3 normalOS : NORMAL; + half4 tangentOS : TANGENT; + float4 ase_texcoord : TEXCOORD0; + UNITY_VERTEX_INPUT_INSTANCE_ID + }; + + struct PackedVaryings + { + float4 positionCS : SV_POSITION; + float4 positionCSNoJitter : TEXCOORD0; + float4 previousPositionCSNoJitter : TEXCOORD1; + float3 positionWS : TEXCOORD2; + float4 ase_texcoord3 : TEXCOORD3; + UNITY_VERTEX_INPUT_INSTANCE_ID + UNITY_VERTEX_OUTPUT_STEREO + }; + + CBUFFER_START(UnityPerMaterial) + float4 _ImageColor; + float _cube_width; + float _cube_softness; + float _cube_radius; + float _ring_width; + float _ring_softness; + float _ring_radius; + float _gapsize; + float _gap_softness; + float _ring_rotation; + float _ring_rotation_angle; + float _count; + float _Opacity; + #ifdef ASE_TRANSMISSION + float _TransmissionShadow; + #endif + #ifdef ASE_TRANSLUCENCY + float _TransStrength; + float _TransNormal; + float _TransScattering; + float _TransDirect; + float _TransAmbient; + float _TransShadow; + #endif + #ifdef ASE_TESSELLATION + float _TessPhongStrength; + float _TessValue; + float _TessMin; + float _TessMax; + float _TessEdgeLength; + float _TessMaxDisp; + #endif + CBUFFER_END + + #ifdef SCENEPICKINGPASS + float4 _SelectionID; + #endif + + #ifdef SCENESELECTIONPASS + int _ObjectId; + int _PassValue; + #endif + + + + + PackedVaryings VertexFunction( Attributes input ) + { + PackedVaryings output = (PackedVaryings)0; + UNITY_SETUP_INSTANCE_ID(input); + UNITY_TRANSFER_INSTANCE_ID(input, output); + UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(output); + + output.ase_texcoord3.xy = input.ase_texcoord.xy; + + //setting value to unused interpolator channels and avoid initialization warnings + output.ase_texcoord3.zw = 0; + + #ifdef ASE_ABSOLUTE_VERTEX_POS + float3 defaultVertexValue = input.positionOS.xyz; + #else + float3 defaultVertexValue = float3(0, 0, 0); + #endif + + float3 vertexValue = defaultVertexValue; + + #ifdef ASE_ABSOLUTE_VERTEX_POS + input.positionOS.xyz = vertexValue; + #else + input.positionOS.xyz += vertexValue; + #endif + + VertexPositionInputs vertexInput = GetVertexPositionInputs( input.positionOS.xyz ); + + #if defined(APPLICATION_SPACE_WARP_MOTION) + output.positionCSNoJitter = mul(_NonJitteredViewProjMatrix, mul(UNITY_MATRIX_M, input.positionOS)); + output.positionCS = output.positionCSNoJitter; + #else + output.positionCS = vertexInput.positionCS; + output.positionCSNoJitter = mul(_NonJitteredViewProjMatrix, mul(UNITY_MATRIX_M, input.positionOS)); + #endif + + float4 prevPos = ( unity_MotionVectorsParams.x == 1 ) ? float4( input.positionOld, 1 ) : input.positionOS; + + #if _ADD_PRECOMPUTED_VELOCITY + prevPos = prevPos - float4(input.alembicMotionVector, 0); + #endif + + output.previousPositionCSNoJitter = mul( _PrevViewProjMatrix, mul( UNITY_PREV_MATRIX_M, prevPos ) ); + output.positionWS = vertexInput.positionWS; + return output; + } + + PackedVaryings vert ( Attributes input ) + { + return VertexFunction( input ); + } + + half4 frag( PackedVaryings input + #if defined( ASE_DEPTH_WRITE_ON ) + ,out float outputDepth : ASE_SV_DEPTH + #endif + ) : SV_Target + { + UNITY_SETUP_INSTANCE_ID(input); + UNITY_SETUP_STEREO_EYE_INDEX_POST_VERTEX( input ); + + float3 PositionWS = input.positionWS; + float3 PositionRWS = GetCameraRelativePositionWS( PositionWS ); + float4 ScreenPosNorm = float4( GetNormalizedScreenSpaceUV( input.positionCS ), input.positionCS.zw ); + float4 ClipPos = ComputeClipSpacePosition( ScreenPosNorm.xy, input.positionCS.z ) * input.positionCS.w; + + float2 break104 = ( input.ase_texcoord3.xy - float2( 0.5,0.5 ) ); + float smoothstepResult130 = smoothstep( _cube_width , ( _cube_width + _cube_softness ) , abs( ( ( abs( break104.x ) + abs( break104.y ) ) - _cube_radius ) )); + float2 temp_output_34_0_g1 = ( input.ase_texcoord3.xy - float2( 0.5,0.5 ) ); + float2 break39_g1 = temp_output_34_0_g1; + float2 appendResult50_g1 = (float2(( 1.0 * ( length( temp_output_34_0_g1 ) * 2.0 ) ) , ( ( atan2( break39_g1.x , break39_g1.y ) * ( 1.0 / TWO_PI ) ) * 1.0 ))); + float2 break53_g1 = appendResult50_g1; + float smoothstepResult106 = smoothstep( _ring_width , ( _ring_width + _ring_softness ) , abs( ( break53_g1.x - _ring_radius ) )); + float smoothstepResult120 = smoothstep( _gapsize , ( _gapsize + _gap_softness ) , frac( ( ( break53_g1.y + ( _TimeParameters.x * ( _ring_rotation / 10.0 ) ) + _ring_rotation_angle ) * _count ) )); + + + float Alpha = ( saturate( ( ( 1.0 - smoothstepResult130 ) + saturate( ( ( 1.0 - smoothstepResult106 ) * smoothstepResult120 ) ) ) ) * _Opacity ); + float AlphaClipThreshold = 0.5; + + #if defined( ASE_DEPTH_WRITE_ON ) + float DeviceDepth = input.positionCS.z; + #endif + + #ifdef _ALPHATEST_ON + clip(Alpha - AlphaClipThreshold); + #endif + + #if defined( ASE_CHANGES_WORLD_POS ) + float3 positionOS = mul( GetWorldToObjectMatrix(), float4( PositionWS, 1.0 ) ).xyz; + float3 previousPositionWS = mul( GetPrevObjectToWorldMatrix(), float4( positionOS, 1.0 ) ).xyz; + input.positionCSNoJitter = mul( _NonJitteredViewProjMatrix, float4( PositionWS, 1.0 ) ); + input.previousPositionCSNoJitter = mul( _PrevViewProjMatrix, float4( previousPositionWS, 1.0 ) ); + #endif + + #if defined( LOD_FADE_CROSSFADE ) + LODFadeCrossFade( input.positionCS ); + #endif + + #if defined( ASE_DEPTH_WRITE_ON ) + outputDepth = DeviceDepth; + #endif + + #if defined(APPLICATION_SPACE_WARP_MOTION) + return float4( CalcAswNdcMotionVectorFromCsPositions( input.positionCSNoJitter, input.previousPositionCSNoJitter ), 1 ); + #else + return float4( CalcNdcMotionVectorFromCsPositions( input.positionCSNoJitter, input.previousPositionCSNoJitter ), 0, 0 ); + #endif + } + ENDHLSL + } + + + Pass + { + + Name "GBuffer" + Tags { "LightMode"="UniversalGBuffer" } + + Blend SrcAlpha OneMinusSrcAlpha, One OneMinusSrcAlpha + ZWrite Off + ZTest LEqual + Offset 0 , 0 + ColorMask RGBA + + + + HLSLPROGRAM + + + #define _ALPHATEST_ON 1 + #pragma multi_compile_fragment _ _SCREEN_SPACE_OCCLUSION + #define ASE_FOG 1 + #define _SURFACE_TYPE_TRANSPARENT 1 + #define ASE_VERSION 19904 + #define ASE_SRP_VERSION -1 + + + + #pragma multi_compile _ DOTS_INSTANCING_ON + + + #pragma multi_compile_fragment _ _DBUFFER_MRT1 _DBUFFER_MRT2 _DBUFFER_MRT3 + #pragma multi_compile_fragment _ _GBUFFER_NORMALS_OCT + #pragma multi_compile_fragment _ _RENDER_PASS_ENABLED + + + #pragma multi_compile_fragment _ _WRITE_RENDERING_LAYERS + + + #pragma vertex vert + #pragma fragment frag + + #define SHADERPASS SHADERPASS_GBUFFER + + + + + + #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Color.hlsl" + #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Texture.hlsl" + #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Core.hlsl" + #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Lighting.hlsl" + #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Input.hlsl" + #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/TextureStack.hlsl" + + + #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/FoveatedRendering.hlsl" + + + + #if ASE_SRP_VERSION >=140009 + #include_with_pragmas "Packages/com.unity.render-pipelines.core/ShaderLibrary/FoveatedRenderingKeywords.hlsl" + #endif + + + #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/ShaderGraphFunctions.hlsl" + #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/DBuffer.hlsl" + #include "Packages/com.unity.render-pipelines.universal/Editor/ShaderGraph/Includes/ShaderPass.hlsl" + + #if defined(LOD_FADE_CROSSFADE) + #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/LODCrossFade.hlsl" + #endif + + #if defined(UNITY_INSTANCING_ENABLED) && defined(_TERRAIN_INSTANCED_PERPIXEL_NORMAL) + #define ENABLE_TERRAIN_PERPIXEL_NORMAL + #endif + + #define ASE_NEEDS_TEXTURE_COORDINATES0 + #define ASE_NEEDS_FRAG_TEXTURE_COORDINATES0 + + + #if defined(ASE_EARLY_Z_DEPTH_OPTIMIZE) && (SHADER_TARGET >= 45) + #define ASE_SV_DEPTH SV_DepthLessEqual + #define ASE_SV_POSITION_QUALIFIERS linear noperspective centroid + #else + #define ASE_SV_DEPTH SV_Depth + #define ASE_SV_POSITION_QUALIFIERS + #endif + + struct Attributes + { + float4 positionOS : POSITION; + half3 normalOS : NORMAL; + float4 ase_color : COLOR; + float4 ase_texcoord : TEXCOORD0; + UNITY_VERTEX_INPUT_INSTANCE_ID + }; + + struct PackedVaryings + { + ASE_SV_POSITION_QUALIFIERS float4 positionCS : SV_POSITION; + float3 positionWS : TEXCOORD0; + half3 normalWS : TEXCOORD1; + float4 ase_color : COLOR; + float4 ase_texcoord2 : TEXCOORD2; + UNITY_VERTEX_INPUT_INSTANCE_ID + UNITY_VERTEX_OUTPUT_STEREO + }; + + CBUFFER_START(UnityPerMaterial) + float4 _ImageColor; + float _cube_width; + float _cube_softness; + float _cube_radius; + float _ring_width; + float _ring_softness; + float _ring_radius; + float _gapsize; + float _gap_softness; + float _ring_rotation; + float _ring_rotation_angle; + float _count; + float _Opacity; + #ifdef ASE_TRANSMISSION + float _TransmissionShadow; + #endif + #ifdef ASE_TRANSLUCENCY + float _TransStrength; + float _TransNormal; + float _TransScattering; + float _TransDirect; + float _TransAmbient; + float _TransShadow; + #endif + #ifdef ASE_TESSELLATION + float _TessPhongStrength; + float _TessValue; + float _TessMin; + float _TessMax; + float _TessEdgeLength; + float _TessMaxDisp; + #endif + CBUFFER_END + + #ifdef SCENEPICKINGPASS + float4 _SelectionID; + #endif + + #ifdef SCENESELECTIONPASS + int _ObjectId; + int _PassValue; + #endif + + + + #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/GBufferOutput.hlsl" + + + PackedVaryings VertexFunction( Attributes input ) + { + PackedVaryings output = (PackedVaryings)0; + UNITY_SETUP_INSTANCE_ID(input); + UNITY_TRANSFER_INSTANCE_ID(input, output); + UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(output); + + output.ase_color = input.ase_color; + output.ase_texcoord2.xy = input.ase_texcoord.xy; + + //setting value to unused interpolator channels and avoid initialization warnings + output.ase_texcoord2.zw = 0; + #ifdef ASE_ABSOLUTE_VERTEX_POS + float3 defaultVertexValue = input.positionOS.xyz; + #else + float3 defaultVertexValue = float3(0, 0, 0); + #endif + + float3 vertexValue = defaultVertexValue; + + #ifdef ASE_ABSOLUTE_VERTEX_POS + input.positionOS.xyz = vertexValue; + #else + input.positionOS.xyz += vertexValue; + #endif + + VertexPositionInputs vertexInput = GetVertexPositionInputs( input.positionOS.xyz ); + VertexNormalInputs normalInput = GetVertexNormalInputs( input.normalOS ); + + output.positionCS = vertexInput.positionCS; + output.positionWS = vertexInput.positionWS; + output.normalWS = normalInput.normalWS; + return output; + } + + #if defined(ASE_TESSELLATION) + struct VertexControl + { + float4 positionOS : INTERNALTESSPOS; + half3 normalOS : NORMAL; + float4 ase_color : COLOR; + float4 ase_texcoord : TEXCOORD0; + + UNITY_VERTEX_INPUT_INSTANCE_ID + }; + + struct TessellationFactors + { + float edge[3] : SV_TessFactor; + float inside : SV_InsideTessFactor; + }; + + VertexControl vert ( Attributes input ) + { + VertexControl output; + UNITY_SETUP_INSTANCE_ID(input); + UNITY_TRANSFER_INSTANCE_ID(input, output); + output.positionOS = input.positionOS; + output.normalOS = input.normalOS; + output.ase_color = input.ase_color; + output.ase_texcoord = input.ase_texcoord; + return output; + } + + TessellationFactors TessellationFunction (InputPatch input) + { + TessellationFactors output; + float4 tf = 1; + float tessValue = _TessValue; float tessMin = _TessMin; float tessMax = _TessMax; + float edgeLength = _TessEdgeLength; float tessMaxDisp = _TessMaxDisp; + #if defined(ASE_FIXED_TESSELLATION) + tf = FixedTess( tessValue ); + #elif defined(ASE_DISTANCE_TESSELLATION) + tf = DistanceBasedTess(input[0].positionOS, input[1].positionOS, input[2].positionOS, tessValue, tessMin, tessMax, GetObjectToWorldMatrix(), _WorldSpaceCameraPos ); + #elif defined(ASE_LENGTH_TESSELLATION) + tf = EdgeLengthBasedTess(input[0].positionOS, input[1].positionOS, input[2].positionOS, edgeLength, GetObjectToWorldMatrix(), _WorldSpaceCameraPos, _ScreenParams ); + #elif defined(ASE_LENGTH_CULL_TESSELLATION) + tf = EdgeLengthBasedTessCull(input[0].positionOS, input[1].positionOS, input[2].positionOS, edgeLength, tessMaxDisp, GetObjectToWorldMatrix(), _WorldSpaceCameraPos, _ScreenParams, unity_CameraWorldClipPlanes ); + #endif + output.edge[0] = tf.x; output.edge[1] = tf.y; output.edge[2] = tf.z; output.inside = tf.w; + return output; + } + + [domain("tri")] + [partitioning("fractional_odd")] + [outputtopology("triangle_cw")] + [patchconstantfunc("TessellationFunction")] + [outputcontrolpoints(3)] + VertexControl HullFunction(InputPatch patch, uint id : SV_OutputControlPointID) + { + return patch[id]; + } + + [domain("tri")] + PackedVaryings DomainFunction(TessellationFactors factors, OutputPatch patch, float3 bary : SV_DomainLocation) + { + Attributes output = (Attributes) 0; + output.positionOS = patch[0].positionOS * bary.x + patch[1].positionOS * bary.y + patch[2].positionOS * bary.z; + output.normalOS = patch[0].normalOS * bary.x + patch[1].normalOS * bary.y + patch[2].normalOS * bary.z; + output.ase_color = patch[0].ase_color * bary.x + patch[1].ase_color * bary.y + patch[2].ase_color * bary.z; + output.ase_texcoord = patch[0].ase_texcoord * bary.x + patch[1].ase_texcoord * bary.y + patch[2].ase_texcoord * bary.z; + #if defined(ASE_PHONG_TESSELLATION) + float3 pp[3]; + for (int i = 0; i < 3; ++i) + pp[i] = output.positionOS.xyz - patch[i].normalOS * (dot(output.positionOS.xyz, patch[i].normalOS) - dot(patch[i].positionOS.xyz, patch[i].normalOS)); + float phongStrength = _TessPhongStrength; + output.positionOS.xyz = phongStrength * (pp[0]*bary.x + pp[1]*bary.y + pp[2]*bary.z) + (1.0f-phongStrength) * output.positionOS.xyz; + #endif + UNITY_TRANSFER_INSTANCE_ID(patch[0], output); + return VertexFunction(output); + } + #else + PackedVaryings vert ( Attributes input ) + { + return VertexFunction( input ); + } + #endif + + GBufferFragOutput frag ( PackedVaryings input + #if defined( ASE_DEPTH_WRITE_ON ) + ,out float outputDepth : ASE_SV_DEPTH + #endif + ) + { + UNITY_SETUP_INSTANCE_ID(input); + UNITY_SETUP_STEREO_EYE_INDEX_POST_VERTEX(input); + + #if defined(LOD_FADE_CROSSFADE) + LODFadeCrossFade( input.positionCS ); + #endif + + float3 PositionWS = input.positionWS; + float3 ViewDirWS = GetWorldSpaceNormalizeViewDir( PositionWS ); + float4 ScreenPosNorm = float4( GetNormalizedScreenSpaceUV( input.positionCS ), input.positionCS.zw ); + float4 ClipPos = ComputeClipSpacePosition( ScreenPosNorm.xy, input.positionCS.z ) * input.positionCS.w; + float4 ScreenPos = ComputeScreenPos( ClipPos ); + half3 NormalWS = normalize( input.normalWS ); + + float2 break104 = ( input.ase_texcoord2.xy - float2( 0.5,0.5 ) ); + float smoothstepResult130 = smoothstep( _cube_width , ( _cube_width + _cube_softness ) , abs( ( ( abs( break104.x ) + abs( break104.y ) ) - _cube_radius ) )); + float2 temp_output_34_0_g1 = ( input.ase_texcoord2.xy - float2( 0.5,0.5 ) ); + float2 break39_g1 = temp_output_34_0_g1; + float2 appendResult50_g1 = (float2(( 1.0 * ( length( temp_output_34_0_g1 ) * 2.0 ) ) , ( ( atan2( break39_g1.x , break39_g1.y ) * ( 1.0 / TWO_PI ) ) * 1.0 ))); + float2 break53_g1 = appendResult50_g1; + float smoothstepResult106 = smoothstep( _ring_width , ( _ring_width + _ring_softness ) , abs( ( break53_g1.x - _ring_radius ) )); + float smoothstepResult120 = smoothstep( _gapsize , ( _gapsize + _gap_softness ) , frac( ( ( break53_g1.y + ( _TimeParameters.x * ( _ring_rotation / 10.0 ) ) + _ring_rotation_angle ) * _count ) )); + + + float3 Color = ( input.ase_color * _ImageColor ).rgb; + float Alpha = ( saturate( ( ( 1.0 - smoothstepResult130 ) + saturate( ( ( 1.0 - smoothstepResult106 ) * smoothstepResult120 ) ) ) ) * _Opacity ); + float AlphaClipThreshold = 0.5; + float AlphaClipThresholdShadow = 0.5; + + #if defined( ASE_DEPTH_WRITE_ON ) + float DeviceDepth = input.positionCS.z; + #endif + + #ifdef _ALPHATEST_ON + clip(Alpha - AlphaClipThreshold); + #endif + + InputData inputData = (InputData)0; + inputData.positionWS = PositionWS; + inputData.positionCS = float4( input.positionCS.xy, ClipPos.zw / ClipPos.w ); + inputData.normalizedScreenSpaceUV = ScreenPosNorm.xy; + inputData.normalWS = NormalWS; + inputData.viewDirectionWS = ViewDirWS; + + #if defined(_DBUFFER) + ApplyDecalToBaseColor(input.positionCS, Color); + #endif + + #if defined( ASE_DEPTH_WRITE_ON ) + outputDepth = DeviceDepth; + #endif + + SurfaceData surfaceData = (SurfaceData)0; + surfaceData.albedo = Color; + surfaceData.alpha = Alpha; + + #if defined( _SCREEN_SPACE_OCCLUSION ) // GBuffer never has transparents + float2 normalizedScreenSpaceUV = GetNormalizedScreenSpaceUV( input.positionCS ); + AmbientOcclusionFactor aoFactor = GetScreenSpaceAmbientOcclusion( normalizedScreenSpaceUV ); + surfaceData.occlusion = aoFactor.directAmbientOcclusion; + #else + surfaceData.occlusion = 1; + #endif + + return PackGBuffersSurfaceData( surfaceData, inputData, float3( 0, 0, 0 ) ); + } + + ENDHLSL + } } - CustomEditor "AmplifyShaderEditor.MaterialInspector" + + CustomEditor "UnityEditor.ShaderGraphUnlitGUI" FallBack "Hidden/Shader Graph/FallbackError" - Fallback "Hidden/InternalErrorShader" + Fallback Off } /*ASEBEGIN Version=19904 Node;AmplifyShaderEditor.TexCoordVertexDataNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;52;-3328,464;Inherit;True;0;2;0;5;FLOAT2;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4 Node;AmplifyShaderEditor.Vector2Node, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;50;-3328,688;Inherit;False;Constant;_Vector2;Vector 0;0;0;Create;True;0;0;0;False;0;False;0.5,0.5;0,0;0;3;FLOAT2;0;FLOAT;1;FLOAT;2 -Node;AmplifyShaderEditor.RangedFloatNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;135;-3744,1136;Inherit;False;Property;_ring_rotation;ring_rotation;11;0;Create;True;0;0;0;False;0;False;0;1;0;0;0;1;FLOAT;0 +Node;AmplifyShaderEditor.RangedFloatNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;135;-3824,1056;Inherit;False;Property;_ring_rotation;ring_rotation;11;0;Create;True;0;0;0;False;0;False;0;-1;0;0;0;1;FLOAT;0 Node;AmplifyShaderEditor.SimpleSubtractOpNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;51;-3088,576;Inherit;True;2;0;FLOAT2;0,0;False;1;FLOAT2;0,0;False;1;FLOAT2;0 -Node;AmplifyShaderEditor.SimpleTimeNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;134;-3728,944;Inherit;False;1;0;FLOAT;1;False;1;FLOAT;0 -Node;AmplifyShaderEditor.SimpleDivideOpNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;138;-3424,1152;Inherit;False;2;0;FLOAT;0;False;1;FLOAT;10;False;1;FLOAT;0 +Node;AmplifyShaderEditor.SimpleTimeNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;134;-3808,864;Inherit;False;1;0;FLOAT;1;False;1;FLOAT;0 +Node;AmplifyShaderEditor.SimpleDivideOpNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;138;-3568,1056;Inherit;False;2;0;FLOAT;0;False;1;FLOAT;10;False;1;FLOAT;0 Node;AmplifyShaderEditor.BreakToComponentsNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;104;-2768,608;Inherit;True;FLOAT2;1;0;FLOAT2;0,0;False;16;FLOAT;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4;FLOAT;5;FLOAT;6;FLOAT;7;FLOAT;8;FLOAT;9;FLOAT;10;FLOAT;11;FLOAT;12;FLOAT;13;FLOAT;14;FLOAT;15 Node;AmplifyShaderEditor.RangedFloatNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;107;-2944,1200;Inherit;False;Property;_ring_radius;ring_radius;5;1;[Header];Create;True;1;ring;0;0;False;0;False;0.5802088;0.5;0;1;0;1;FLOAT;0 -Node;AmplifyShaderEditor.SimpleMultiplyOpNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;136;-3248,992;Inherit;True;2;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0 -Node;AmplifyShaderEditor.FunctionNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;105;-2864,896;Inherit;True;Polar Coordinates;-1;;1;7dab8e02884cf104ebefaa2e788e4162;0;4;1;FLOAT2;0,0;False;2;FLOAT2;0.5,0.5;False;3;FLOAT;1;False;4;FLOAT;1;False;3;FLOAT2;0;FLOAT;55;FLOAT;56 +Node;AmplifyShaderEditor.SimpleMultiplyOpNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;136;-3328,912;Inherit;True;2;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0 +Node;AmplifyShaderEditor.FunctionNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;105;-2880,896;Inherit;True;Polar Coordinates;-1;;1;7dab8e02884cf104ebefaa2e788e4162;0;4;1;FLOAT2;0,0;False;2;FLOAT2;0.5,0.5;False;3;FLOAT;1;False;4;FLOAT;1;False;3;FLOAT2;0;FLOAT;55;FLOAT;56 +Node;AmplifyShaderEditor.RangedFloatNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;157;-3296,1328;Inherit;False;Property;_ring_rotation_angle;ring_rotation_angle;12;0;Create;True;0;0;0;False;0;False;0;-1;0;0;0;1;FLOAT;0 Node;AmplifyShaderEditor.SimpleSubtractOpNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;110;-2480,928;Inherit;True;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0 -Node;AmplifyShaderEditor.RangedFloatNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;114;-2784,1392;Inherit;False;Property;_count;count;10;0;Create;True;0;0;0;False;0;False;8;16;0;0;0;1;FLOAT;0 Node;AmplifyShaderEditor.AbsOpNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;60;-2464,608;Inherit;False;1;0;FLOAT;0;False;1;FLOAT;0 Node;AmplifyShaderEditor.AbsOpNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;67;-2464,704;Inherit;False;1;0;FLOAT;0;False;1;FLOAT;0 Node;AmplifyShaderEditor.RangedFloatNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;112;-2480,1264;Inherit;False;Property;_ring_softness;ring_softness;7;0;Create;True;0;0;0;False;0;False;0;0;0;1;0;1;FLOAT;0 -Node;AmplifyShaderEditor.SimpleAddOpNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;137;-2608,1296;Inherit;True;2;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0 +Node;AmplifyShaderEditor.RangedFloatNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;114;-2832,1472;Inherit;False;Property;_count;count;10;0;Create;True;0;0;0;False;0;False;8;8;0;0;0;1;FLOAT;0 +Node;AmplifyShaderEditor.SimpleAddOpNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;137;-2624,1344;Inherit;True;3;3;0;FLOAT;0;False;1;FLOAT;0;False;2;FLOAT;0;False;1;FLOAT;0 Node;AmplifyShaderEditor.SimpleAddOpNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;111;-2112,1200;Inherit;False;2;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0 Node;AmplifyShaderEditor.SimpleAddOpNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;61;-2272,576;Inherit;True;2;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0 +Node;AmplifyShaderEditor.AbsOpNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;108;-2240,928;Inherit;True;1;0;FLOAT;0;False;1;FLOAT;0 +Node;AmplifyShaderEditor.RangedFloatNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;133;-2048,672;Inherit;False;Property;_cube_radius;cube_radius;2;1;[Header];Create;True;1;cube;0;0;False;0;False;0.05854658;0.033;0;0.5;0;1;FLOAT;0 +Node;AmplifyShaderEditor.SimpleMultiplyOpNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;117;-2400,1376;Inherit;True;2;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0 Node;AmplifyShaderEditor.RangedFloatNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;116;-2432,1712;Inherit;False;Property;_gap_softness;gap_softness;9;0;Create;True;0;0;0;False;0;False;0;0;0;1;0;1;FLOAT;0 Node;AmplifyShaderEditor.RangedFloatNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;109;-2464,1168;Inherit;False;Property;_ring_width;ring_width;6;0;Create;True;0;0;0;False;0;False;0.05130975;0.01;0;0.5;0;1;FLOAT;0 -Node;AmplifyShaderEditor.AbsOpNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;108;-2240,928;Inherit;True;1;0;FLOAT;0;False;1;FLOAT;0 -Node;AmplifyShaderEditor.RangedFloatNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;133;-2048,672;Inherit;False;Property;_cube_radius;cube_radius;2;1;[Header];Create;True;1;cube;0;0;False;0;False;0.05854658;0.05;0;0.5;0;1;FLOAT;0 -Node;AmplifyShaderEditor.SimpleMultiplyOpNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;117;-2400,1376;Inherit;True;2;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0 Node;AmplifyShaderEditor.SimpleAddOpNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;121;-2080,1632;Inherit;False;2;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0 Node;AmplifyShaderEditor.SimpleSubtractOpNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;126;-1872,400;Inherit;True;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0 Node;AmplifyShaderEditor.SmoothstepOpNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;106;-1968,960;Inherit;True;3;0;FLOAT;0;False;1;FLOAT;0;False;2;FLOAT;1;False;1;FLOAT;0 Node;AmplifyShaderEditor.RangedFloatNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;131;-1936,848;Inherit;False;Property;_cube_softness;cube_softness;4;0;Create;True;0;0;0;False;0;False;0;0;0;1;0;1;FLOAT;0 -Node;AmplifyShaderEditor.RangedFloatNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;115;-2448,1616;Inherit;False;Property;_gapsize;gap size;8;0;Create;True;0;0;0;False;0;False;0.8467217;0.75;0;1;0;1;FLOAT;0 Node;AmplifyShaderEditor.FractNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;119;-2160,1424;Inherit;False;1;0;FLOAT;0;False;1;FLOAT;0 +Node;AmplifyShaderEditor.RangedFloatNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;115;-2448,1616;Inherit;False;Property;_gapsize;gap size;8;0;Create;True;0;0;0;False;0;False;0.8467217;0.5;0;1;0;1;FLOAT;0 Node;AmplifyShaderEditor.OneMinusNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;113;-1696,976;Inherit;True;1;0;FLOAT;0;False;1;FLOAT;0 Node;AmplifyShaderEditor.AbsOpNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;127;-1632,400;Inherit;True;1;0;FLOAT;0;False;1;FLOAT;0 Node;AmplifyShaderEditor.SimpleAddOpNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;128;-1456,752;Inherit;False;2;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0 Node;AmplifyShaderEditor.SmoothstepOpNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;120;-1840,1344;Inherit;True;3;0;FLOAT;0;False;1;FLOAT;0;False;2;FLOAT;1;False;1;FLOAT;0 -Node;AmplifyShaderEditor.RangedFloatNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;132;-1760,656;Inherit;False;Property;_cube_width;cube_width;3;0;Create;True;0;0;0;False;0;False;0.01032564;0.01;0;0.5;0;1;FLOAT;0 -Node;AmplifyShaderEditor.ColorNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;86;-976,1376;Inherit;False;Property;_ImageColor;ImageColor;0;1;[HDR];Create;True;0;0;0;False;0;False;1,1,1,0;1,1,1,0;True;True;0;6;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4;FLOAT3;5 +Node;AmplifyShaderEditor.RangedFloatNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;132;-1760,656;Inherit;False;Property;_cube_width;cube_width;3;0;Create;True;0;0;0;False;0;False;0.01032564;0.05;0;0.5;0;1;FLOAT;0 Node;AmplifyShaderEditor.SmoothstepOpNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;130;-1360,432;Inherit;True;3;0;FLOAT;0;False;1;FLOAT;0;False;2;FLOAT;1;False;1;FLOAT;0 Node;AmplifyShaderEditor.SimpleMultiplyOpNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;122;-1408,1136;Inherit;True;2;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0 -Node;AmplifyShaderEditor.SaturateNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;124;-1104,1168;Inherit;False;1;0;FLOAT;0;False;1;FLOAT;0 -Node;AmplifyShaderEditor.BreakToComponentsNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;89;-688,1344;Inherit;False;COLOR;1;0;COLOR;0,0,0,0;False;16;FLOAT;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4;FLOAT;5;FLOAT;6;FLOAT;7;FLOAT;8;FLOAT;9;FLOAT;10;FLOAT;11;FLOAT;12;FLOAT;13;FLOAT;14;FLOAT;15 -Node;AmplifyShaderEditor.RangedFloatNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;88;-896,1584;Inherit;False;Property;_Opacity;Opacity;1;0;Create;True;0;0;0;False;0;False;1;1;0;0;0;1;FLOAT;0 Node;AmplifyShaderEditor.OneMinusNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;129;-1088,448;Inherit;True;1;0;FLOAT;0;False;1;FLOAT;0 -Node;AmplifyShaderEditor.DynamicAppendNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;90;-544,1344;Inherit;False;FLOAT4;4;0;FLOAT;0;False;1;FLOAT;0;False;2;FLOAT;0;False;3;FLOAT;0;False;1;FLOAT4;0 -Node;AmplifyShaderEditor.VertexColorNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;81;-880,1216;Inherit;False;0;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4 +Node;AmplifyShaderEditor.SaturateNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;124;-1104,1168;Inherit;False;1;0;FLOAT;0;False;1;FLOAT;0 Node;AmplifyShaderEditor.SimpleAddOpNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;125;-848,864;Inherit;True;2;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0 -Node;AmplifyShaderEditor.SimpleMultiplyOpNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;82;-384,912;Inherit;True;3;3;0;FLOAT;0;False;1;COLOR;0,0,0,0;False;2;FLOAT4;0,0,0,0;False;1;COLOR;0 -Node;AmplifyShaderEditor.TemplateMultiPassMasterNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;94;480,640;Float;False;False;-1;2;AmplifyShaderEditor.MaterialInspector;0;1;New Amplify Shader;199187dac283dbe4a8cb1ea611d70c58;True;Sprite Normal;0;1;Sprite Normal;0;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;2;False;;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;5;RenderPipeline=UniversalPipeline;RenderType=Transparent=RenderType;Queue=Transparent=Queue=0;UniversalMaterialType=Lit;ShaderGraphShader=true;True;0;True;12;all;0;False;True;2;5;False;;10;False;;3;1;False;;10;False;;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;True;True;True;True;0;False;;False;False;False;False;False;False;False;True;False;0;False;;255;False;;255;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;False;True;2;False;;True;3;False;;True;True;0;False;;0;False;;True;1;LightMode=NormalsRendering;False;False;0;Hidden/InternalErrorShader;0;0;Standard;0;False;0 -Node;AmplifyShaderEditor.TemplateMultiPassMasterNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;95;480,640;Float;False;False;-1;2;AmplifyShaderEditor.MaterialInspector;0;1;New Amplify Shader;199187dac283dbe4a8cb1ea611d70c58;True;Sprite Forward;0;2;Sprite Forward;0;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;2;False;;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;5;RenderPipeline=UniversalPipeline;RenderType=Transparent=RenderType;Queue=Transparent=Queue=0;UniversalMaterialType=Lit;ShaderGraphShader=true;True;0;True;12;all;0;False;True;2;5;False;;10;False;;3;1;False;;10;False;;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;True;True;True;True;0;False;;False;False;False;False;False;False;False;True;False;0;False;;255;False;;255;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;False;True;2;False;;True;3;False;;True;True;0;False;;0;False;;True;1;LightMode=UniversalForward;False;False;0;Hidden/InternalErrorShader;0;0;Standard;0;False;0 -Node;AmplifyShaderEditor.TemplateMultiPassMasterNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;96;480,640;Float;False;False;-1;2;AmplifyShaderEditor.MaterialInspector;0;1;New Amplify Shader;199187dac283dbe4a8cb1ea611d70c58;True;SceneSelectionPass;0;3;SceneSelectionPass;0;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;2;False;;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;5;RenderPipeline=UniversalPipeline;RenderType=Transparent=RenderType;Queue=Transparent=Queue=0;UniversalMaterialType=Lit;ShaderGraphShader=true;True;0;True;12;all;0;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;2;False;;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;1;LightMode=SceneSelectionPass;False;False;0;Hidden/InternalErrorShader;0;0;Standard;0;False;0 -Node;AmplifyShaderEditor.TemplateMultiPassMasterNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;97;480,640;Float;False;False;-1;2;AmplifyShaderEditor.MaterialInspector;0;1;New Amplify Shader;199187dac283dbe4a8cb1ea611d70c58;True;ScenePickingPass;0;4;ScenePickingPass;0;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;2;False;;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;5;RenderPipeline=UniversalPipeline;RenderType=Transparent=RenderType;Queue=Transparent=Queue=0;UniversalMaterialType=Lit;ShaderGraphShader=true;True;0;True;12;all;0;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;2;False;;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;1;LightMode=Picking;False;False;0;Hidden/InternalErrorShader;0;0;Standard;0;False;0 -Node;AmplifyShaderEditor.TemplateMultiPassMasterNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;93;48,880;Float;False;True;-1;2;AmplifyShaderEditor.MaterialInspector;0;16;Soullies/hit_point;199187dac283dbe4a8cb1ea611d70c58;True;Sprite Lit;0;0;Sprite Lit;6;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;2;False;;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;5;RenderPipeline=UniversalPipeline;RenderType=Transparent=RenderType;Queue=Transparent=Queue=0;UniversalMaterialType=Lit;ShaderGraphShader=true;True;2;True;12;all;0;False;True;2;5;False;;10;False;;3;1;False;;10;False;;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;True;True;True;True;0;False;;False;False;False;False;False;False;False;True;False;0;False;;255;False;;255;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;False;True;2;False;;True;3;False;;True;True;0;False;;0;False;;True;1;LightMode=Universal2D;False;False;0;Hidden/InternalErrorShader;0;0;Standard;3;Vertex Position;1;0;Debug Display;0;0;External Alpha;0;0;0;5;True;True;True;True;True;False;;False;0 +Node;AmplifyShaderEditor.VertexColorNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;81;-880,1168;Inherit;False;0;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4 +Node;AmplifyShaderEditor.RangedFloatNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;88;-592,1424;Inherit;False;Property;_Opacity;Opacity;1;0;Create;True;0;0;0;False;0;False;1;1;0;0;0;1;FLOAT;0 +Node;AmplifyShaderEditor.SaturateNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;155;-528,1136;Inherit;True;1;0;FLOAT;0;False;1;FLOAT;0 +Node;AmplifyShaderEditor.ColorNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;86;-976,1376;Inherit;False;Property;_ImageColor;ImageColor;0;1;[HDR];Create;True;0;0;0;False;0;False;1,1,1,1;2,2,2,1;True;True;0;6;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4;FLOAT3;5 +Node;AmplifyShaderEditor.SimpleMultiplyOpNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;82;-384,896;Inherit;True;2;2;0;COLOR;0,0,0,0;False;1;COLOR;0,0,0,0;False;1;COLOR;0 +Node;AmplifyShaderEditor.SimpleMultiplyOpNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;153;-240,1200;Inherit;True;2;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0 +Node;AmplifyShaderEditor.TemplateMultiPassMasterNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;140;48,880;Float;False;False;-1;3;UnityEditor.ShaderGraphUnlitGUI;0;13;New Amplify Shader;2992e84f91cbeb14eab234972e07ea9d;True;ExtraPrePass;0;0;ExtraPrePass;5;False;False;False;False;False;False;False;False;False;False;False;False;True;0;False;;False;True;0;False;;False;False;False;False;False;False;False;False;False;True;False;0;False;;255;False;;255;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;False;False;False;False;True;4;RenderPipeline=UniversalPipeline;RenderType=Opaque=RenderType;Queue=Geometry=Queue=0;UniversalMaterialType=Unlit;True;5;True;12;all;0;False;True;1;1;False;;0;False;;0;1;False;;0;False;;False;False;False;False;False;False;False;False;False;False;False;False;True;0;False;;False;True;True;True;True;True;0;False;;False;False;False;False;False;False;False;True;False;0;False;;255;False;;255;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;False;True;1;False;;True;3;False;;True;True;0;False;;0;False;;True;0;False;False;0;;0;0;Standard;0;False;0 +Node;AmplifyShaderEditor.TemplateMultiPassMasterNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;142;48,880;Float;False;False;-1;3;UnityEditor.ShaderGraphUnlitGUI;0;13;New Amplify Shader;2992e84f91cbeb14eab234972e07ea9d;True;ShadowCaster;0;2;ShadowCaster;0;False;False;False;False;False;False;False;False;False;False;False;False;True;0;False;;False;True;0;False;;False;False;False;False;False;False;False;False;False;True;False;0;False;;255;False;;255;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;False;False;False;False;True;4;RenderPipeline=UniversalPipeline;RenderType=Opaque=RenderType;Queue=Geometry=Queue=0;UniversalMaterialType=Unlit;True;5;True;12;all;0;False;False;False;False;False;False;False;False;False;False;False;False;True;0;False;;False;False;False;True;False;False;False;False;0;False;;False;False;False;False;False;False;False;False;False;True;1;False;;True;3;False;;False;True;1;LightMode=ShadowCaster;False;False;0;;0;0;Standard;0;False;0 +Node;AmplifyShaderEditor.TemplateMultiPassMasterNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;143;48,880;Float;False;False;-1;3;UnityEditor.ShaderGraphUnlitGUI;0;13;New Amplify Shader;2992e84f91cbeb14eab234972e07ea9d;True;DepthOnly;0;3;DepthOnly;0;False;False;False;False;False;False;False;False;False;False;False;False;True;0;False;;False;True;0;False;;False;False;False;False;False;False;False;False;False;True;False;0;False;;255;False;;255;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;False;False;False;False;True;4;RenderPipeline=UniversalPipeline;RenderType=Opaque=RenderType;Queue=Geometry=Queue=0;UniversalMaterialType=Unlit;True;5;True;12;all;0;False;False;False;False;False;False;False;False;False;False;False;False;True;0;False;;False;False;False;True;False;False;False;False;0;False;;False;False;False;False;False;False;False;False;False;True;1;False;;False;False;True;1;LightMode=DepthOnly;False;False;0;;0;0;Standard;0;False;0 +Node;AmplifyShaderEditor.TemplateMultiPassMasterNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;144;48,880;Float;False;False;-1;3;UnityEditor.ShaderGraphUnlitGUI;0;13;New Amplify Shader;2992e84f91cbeb14eab234972e07ea9d;True;Meta;0;4;Meta;0;False;False;False;False;False;False;False;False;False;False;False;False;True;0;False;;False;True;0;False;;False;False;False;False;False;False;False;False;False;True;False;0;False;;255;False;;255;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;False;False;False;False;True;4;RenderPipeline=UniversalPipeline;RenderType=Opaque=RenderType;Queue=Geometry=Queue=0;UniversalMaterialType=Unlit;True;5;True;12;all;0;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;2;False;;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;1;LightMode=Meta;False;False;0;;0;0;Standard;0;False;0 +Node;AmplifyShaderEditor.TemplateMultiPassMasterNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;145;48,880;Float;False;False;-1;3;UnityEditor.ShaderGraphUnlitGUI;0;13;New Amplify Shader;2992e84f91cbeb14eab234972e07ea9d;True;Universal2D;0;5;Universal2D;0;False;False;False;False;False;False;False;False;False;False;False;False;True;0;False;;False;True;0;False;;False;False;False;False;False;False;False;False;False;True;False;0;False;;255;False;;255;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;False;False;False;False;True;4;RenderPipeline=UniversalPipeline;RenderType=Opaque=RenderType;Queue=Geometry=Queue=0;UniversalMaterialType=Unlit;True;5;True;12;all;0;False;True;1;1;False;;0;False;;0;1;False;;0;False;;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;True;True;True;True;0;False;;False;False;False;False;False;False;False;True;False;0;False;;255;False;;255;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;False;True;1;False;;True;3;False;;True;True;0;False;;0;False;;True;1;LightMode=Universal2D;False;False;0;;0;0;Standard;0;False;0 +Node;AmplifyShaderEditor.TemplateMultiPassMasterNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;146;48,880;Float;False;False;-1;3;UnityEditor.ShaderGraphUnlitGUI;0;13;New Amplify Shader;2992e84f91cbeb14eab234972e07ea9d;True;SceneSelectionPass;0;6;SceneSelectionPass;0;False;False;False;False;False;False;False;False;False;False;False;False;True;0;False;;False;True;0;False;;False;False;False;False;False;False;False;False;False;True;False;0;False;;255;False;;255;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;False;False;False;False;True;4;RenderPipeline=UniversalPipeline;RenderType=Opaque=RenderType;Queue=Geometry=Queue=0;UniversalMaterialType=Unlit;True;5;True;12;all;0;False;False;False;False;False;False;False;False;False;False;False;False;True;0;False;;False;True;2;False;;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;1;LightMode=SceneSelectionPass;False;False;0;;0;0;Standard;0;False;0 +Node;AmplifyShaderEditor.TemplateMultiPassMasterNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;147;48,880;Float;False;False;-1;3;UnityEditor.ShaderGraphUnlitGUI;0;13;New Amplify Shader;2992e84f91cbeb14eab234972e07ea9d;True;ScenePickingPass;0;7;ScenePickingPass;0;False;False;False;False;False;False;False;False;False;False;False;False;True;0;False;;False;True;0;False;;False;False;False;False;False;False;False;False;False;True;False;0;False;;255;False;;255;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;False;False;False;False;True;4;RenderPipeline=UniversalPipeline;RenderType=Opaque=RenderType;Queue=Geometry=Queue=0;UniversalMaterialType=Unlit;True;5;True;12;all;0;False;False;False;False;False;False;False;False;False;False;False;False;True;0;False;;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;1;LightMode=Picking;False;False;0;;0;0;Standard;0;False;0 +Node;AmplifyShaderEditor.TemplateMultiPassMasterNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;148;48,880;Float;False;False;-1;3;UnityEditor.ShaderGraphUnlitGUI;0;13;New Amplify Shader;2992e84f91cbeb14eab234972e07ea9d;True;DepthNormals;0;8;DepthNormals;0;False;False;False;False;False;False;False;False;False;False;False;False;True;0;False;;False;True;0;False;;False;False;False;False;False;False;False;False;False;True;False;0;False;;255;False;;255;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;False;False;False;False;True;4;RenderPipeline=UniversalPipeline;RenderType=Opaque=RenderType;Queue=Geometry=Queue=0;UniversalMaterialType=Unlit;True;5;True;12;all;0;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;1;False;;True;3;False;;False;True;1;LightMode=DepthNormalsOnly;False;False;0;;0;0;Standard;0;False;0 +Node;AmplifyShaderEditor.TemplateMultiPassMasterNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;149;48,880;Float;False;False;-1;3;UnityEditor.ShaderGraphUnlitGUI;0;13;New Amplify Shader;2992e84f91cbeb14eab234972e07ea9d;True;DepthNormalsOnly;0;9;DepthNormalsOnly;0;False;False;False;False;False;False;False;False;False;False;False;False;True;0;False;;False;True;0;False;;False;False;False;False;False;False;False;False;False;True;False;0;False;;255;False;;255;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;False;False;False;False;True;4;RenderPipeline=UniversalPipeline;RenderType=Opaque=RenderType;Queue=Geometry=Queue=0;UniversalMaterialType=Unlit;True;5;True;12;all;0;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;1;False;;True;3;False;;False;True;1;LightMode=DepthNormalsOnly;False;True;9;d3d11;metal;vulkan;xboxone;xboxseries;playstation;ps4;ps5;switch;0;;0;0;Standard;0;False;0 +Node;AmplifyShaderEditor.TemplateMultiPassMasterNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;150;48,880;Float;False;False;-1;3;UnityEditor.ShaderGraphUnlitGUI;0;13;New Amplify Shader;2992e84f91cbeb14eab234972e07ea9d;True;MotionVectors;0;10;MotionVectors;0;False;False;False;False;False;False;False;False;False;False;False;False;True;0;False;;False;True;0;False;;False;False;False;False;False;False;False;False;False;True;False;0;False;;255;False;;255;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;False;False;False;False;True;4;RenderPipeline=UniversalPipeline;RenderType=Opaque=RenderType;Queue=Geometry=Queue=0;UniversalMaterialType=Unlit;True;5;True;12;all;0;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;True;True;False;False;0;False;;False;False;False;False;False;False;False;False;False;False;False;False;True;1;LightMode=MotionVectors;False;False;0;;0;0;Standard;0;False;0 +Node;AmplifyShaderEditor.TemplateMultiPassMasterNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;151;48,880;Float;False;False;-1;3;UnityEditor.ShaderGraphUnlitGUI;0;13;New Amplify Shader;2992e84f91cbeb14eab234972e07ea9d;True;XRMotionVectors;0;11;XRMotionVectors;0;False;False;False;False;False;False;False;False;False;False;False;False;True;0;False;;False;True;0;False;;False;False;False;False;False;False;False;False;False;True;False;0;False;;255;False;;255;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;False;False;False;False;True;4;RenderPipeline=UniversalPipeline;RenderType=Opaque=RenderType;Queue=Geometry=Queue=0;UniversalMaterialType=Unlit;True;5;True;12;all;0;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;True;True;True;True;0;False;;False;False;False;False;False;False;False;True;True;1;False;;255;False;;1;False;;7;False;;3;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;False;False;False;False;True;1;LightMode=XRMotionVectors;False;False;0;;0;0;Standard;0;False;0 +Node;AmplifyShaderEditor.TemplateMultiPassMasterNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;152;48,880;Float;False;False;-1;3;UnityEditor.ShaderGraphUnlitGUI;0;13;New Amplify Shader;2992e84f91cbeb14eab234972e07ea9d;True;GBuffer;0;12;GBuffer;0;False;False;False;False;False;False;False;False;False;False;False;False;True;0;False;;False;True;0;False;;False;False;False;False;False;False;False;False;False;True;False;0;False;;255;False;;255;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;False;False;False;False;True;4;RenderPipeline=UniversalPipeline;RenderType=Opaque=RenderType;Queue=Geometry=Queue=0;UniversalMaterialType=Unlit;True;5;True;12;all;0;False;True;1;5;False;;10;False;;1;1;False;;10;False;;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;True;True;True;True;0;False;;False;False;False;False;False;False;False;True;False;0;False;;255;False;;255;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;False;True;2;False;;True;3;False;;True;True;0;False;;0;False;;True;1;LightMode=UniversalGBuffer;False;False;0;;0;0;Standard;0;False;0 +Node;AmplifyShaderEditor.TemplateMultiPassMasterNode, AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;141;128,896;Float;False;True;-1;3;UnityEditor.ShaderGraphUnlitGUI;0;13;Soullies/hit_point;2992e84f91cbeb14eab234972e07ea9d;True;Forward;0;1;Forward;9;False;False;False;False;False;False;False;False;False;False;False;False;True;0;False;;False;True;0;False;;False;False;False;False;False;False;False;False;False;True;False;0;False;;255;False;;255;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;False;False;False;False;True;4;RenderPipeline=UniversalPipeline;RenderType=Transparent=RenderType;Queue=Transparent=Queue=0;UniversalMaterialType=Unlit;True;5;True;12;all;0;False;True;1;5;False;;10;False;;1;1;False;;10;False;;False;False;False;False;False;False;False;False;False;False;False;False;False;False;True;True;True;True;True;0;False;;False;False;False;False;False;False;False;True;False;0;False;;255;False;;255;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;False;True;2;False;;True;3;False;;True;True;0;False;;0;False;;True;1;LightMode=UniversalForwardOnly;False;False;0;;0;0;Standard;30;Surface;1;639170540006787254; Keep Alpha;0;0; Blend;0;0;Two Sided;1;0;Alpha Clipping;1;0; Use Shadow Threshold;0;0;Forward Only;0;0;Cast Shadows;1;0;Receive Shadows;1;0;Receive SSAO;1;0;Motion Vectors;1;0; Add Precomputed Velocity;0;0; XR Motion Vectors;0;0;GPU Instancing;1;0;LOD CrossFade;1;0;Built-in Fog;1;0;Meta Pass;0;0;Extra Pre Pass;0;0;Tessellation;0;0; Phong;0;0; Strength;0.5,False,;0; Type;0;0; Tess;16,False,;0; Min;10,False,;0; Max;25,False,;0; Edge Length;16,False,;0; Max Displacement;25,False,;0;Write Depth;0;0; Early Z;0;0;Vertex Position;1;0;0;13;False;True;True;True;False;False;True;True;True;False;True;False;True;False;;False;0 WireConnection;51;0;52;0 WireConnection;51;1;50;0 WireConnection;138;0;135;0 @@ -972,6 +2493,7 @@ WireConnection;60;0;104;0 WireConnection;67;0;104;1 WireConnection;137;0;105;56 WireConnection;137;1;136;0 +WireConnection;137;2;157;0 WireConnection;111;0;109;0 WireConnection;111;1;112;0 WireConnection;61;0;60;0 @@ -999,18 +2521,16 @@ WireConnection;130;1;132;0 WireConnection;130;2;128;0 WireConnection;122;0;113;0 WireConnection;122;1;120;0 -WireConnection;124;0;122;0 -WireConnection;89;0;86;0 WireConnection;129;0;130;0 -WireConnection;90;0;89;0 -WireConnection;90;1;89;1 -WireConnection;90;2;89;2 -WireConnection;90;3;88;0 +WireConnection;124;0;122;0 WireConnection;125;0;129;0 WireConnection;125;1;124;0 -WireConnection;82;0;125;0 -WireConnection;82;1;81;0 -WireConnection;82;2;90;0 -WireConnection;93;1;82;0 +WireConnection;155;0;125;0 +WireConnection;82;0;81;0 +WireConnection;82;1;86;0 +WireConnection;153;0;155;0 +WireConnection;153;1;88;0 +WireConnection;141;2;82;0 +WireConnection;141;3;153;0 ASEEND*/ -//CHKSM=699DC0E0B724C3A08B90C09E42F1CD1C15033B93 \ No newline at end of file +//CHKSM=9C4243C0C8B4CC83FEDBA9606402FBC2E687345F \ No newline at end of file diff --git a/Assets/FR2_Cache.asset b/Assets/FR2_Cache.asset index 51e6c70d..3edc5e72 100644 --- a/Assets/FR2_Cache.asset +++ b/Assets/FR2_Cache.asset @@ -5800,15 +5800,15 @@ MonoBehaviour: UseGUIDsList: [] - guid: 30dde730c51f742719fcc5c36eb811e5 type: 2 - m_fileInfoHash: 5792.cs + m_fileInfoHash: 5881.cs m_assetbundle: m_addressable: m_atlas: - m_fileSize: 5792 - m_assetChangeTS: 1781434906 - m_fileInfoReadTS: 1781434934 - m_fileWriteTS: 1781434516 - m_cachefileWriteTS: 1781434516 + m_fileSize: 5881 + m_assetChangeTS: 1778983877 + m_fileInfoReadTS: 1778983931 + m_fileWriteTS: 1773552443 + m_cachefileWriteTS: 1773552443 refreshStamp: 3 UseGUIDsList: [] - guid: 30fdb7163494e28429d56613fe407bf4 @@ -6462,15 +6462,15 @@ MonoBehaviour: UseGUIDsList: [] - guid: 40784921009324241a68ffc3b2ed7fcf type: 2 - m_fileInfoHash: 2546.cs + m_fileInfoHash: 2580.cs m_assetbundle: m_addressable: m_atlas: - m_fileSize: 2546 - m_assetChangeTS: 1781434906 - m_fileInfoReadTS: 1781434934 - m_fileWriteTS: 1781434831 - m_cachefileWriteTS: 1781434831 + m_fileSize: 2580 + m_assetChangeTS: 1778983877 + m_fileInfoReadTS: 1778983931 + m_fileWriteTS: 1773552443 + m_cachefileWriteTS: 1773552443 refreshStamp: 3 UseGUIDsList: [] - guid: 40b83fe632985494f96d2211c1963835 @@ -19111,15 +19111,15 @@ MonoBehaviour: ids: 30000000 - guid: 1119784540bef4e73b37c7cb9f597065 type: 2 - m_fileInfoHash: 6004.cs + m_fileInfoHash: 6112.cs m_assetbundle: m_addressable: m_atlas: - m_fileSize: 6004 - m_assetChangeTS: 1781434906 - m_fileInfoReadTS: 1781434934 - m_fileWriteTS: 1781434508 - m_cachefileWriteTS: 1781434508 + m_fileSize: 6112 + m_assetChangeTS: 1778983877 + m_fileInfoReadTS: 1778983930 + m_fileWriteTS: 1773552443 + m_cachefileWriteTS: 1773552443 refreshStamp: 3 UseGUIDsList: [] - guid: 1139f30c04130724d998e1bae48d15c6 @@ -111633,15 +111633,15 @@ MonoBehaviour: UseGUIDsList: [] - guid: e6daf69621681491bb09cc72e2ff4bdb type: 2 - m_fileInfoHash: 6104.cs + m_fileInfoHash: 6212.cs m_assetbundle: m_addressable: m_atlas: - m_fileSize: 6104 - m_assetChangeTS: 1781434906 - m_fileInfoReadTS: 1781434934 - m_fileWriteTS: 1781434497 - m_cachefileWriteTS: 1781434497 + m_fileSize: 6212 + m_assetChangeTS: 1778983877 + m_fileInfoReadTS: 1778983918 + m_fileWriteTS: 1773552443 + m_cachefileWriteTS: 1773552443 refreshStamp: 3 UseGUIDsList: [] - guid: e6eaf65e87b042ddaf5a91ef8b512fb7 @@ -120756,15 +120756,15 @@ MonoBehaviour: UseGUIDsList: [] - guid: 771a58a2b0d89ca4d9440f8463a03ff2 type: 2 - m_fileInfoHash: 8618.cs + m_fileInfoHash: 8601.cs m_assetbundle: m_addressable: m_atlas: - m_fileSize: 8618 - m_assetChangeTS: 1781614736 - m_fileInfoReadTS: 1781614746 - m_fileWriteTS: 1781447058 - m_cachefileWriteTS: 1781447058 + m_fileSize: 8601 + m_assetChangeTS: 1778983877 + m_fileInfoReadTS: 1778983917 + m_fileWriteTS: 1773552443 + m_cachefileWriteTS: 1773552443 refreshStamp: 3 UseGUIDsList: [] - guid: 773a09ce32081ad4bbba6453a2a50423 @@ -128976,15 +128976,15 @@ MonoBehaviour: UseGUIDsList: [] - guid: f7cd635f67bf63c4bbbb6b3ff8c1a295 type: 2 - m_fileInfoHash: 25969.cs + m_fileInfoHash: 26244.cs m_assetbundle: m_addressable: m_atlas: - m_fileSize: 25969 - m_assetChangeTS: 1781434906 - m_fileInfoReadTS: 1781434934 - m_fileWriteTS: 1781434487 - m_cachefileWriteTS: 1781434487 + m_fileSize: 26244 + m_assetChangeTS: 1780690083 + m_fileInfoReadTS: 1780690094 + m_fileWriteTS: 1780690075 + m_cachefileWriteTS: 1780690075 refreshStamp: 3 UseGUIDsList: [] - guid: f7cd1e478bcba4d0f9570597921367a0 @@ -154572,15 +154572,15 @@ MonoBehaviour: UseGUIDsList: [] - guid: 99c9720ab356a0642a771bea13969a05 type: 3 - m_fileInfoHash: 1260434.unity + m_fileInfoHash: 1266553.unity m_assetbundle: m_addressable: m_atlas: - m_fileSize: 1260434 - m_assetChangeTS: 1781435874 - m_fileInfoReadTS: 1781435877 - m_fileWriteTS: 1781435873 - m_cachefileWriteTS: 1781435873 + m_fileSize: 1266553 + m_assetChangeTS: 1780591987 + m_fileInfoReadTS: 1780592004 + m_fileWriteTS: 1780591987 + m_cachefileWriteTS: 1780591987 refreshStamp: 3 UseGUIDsList: - guid: 06a20df987b317044a05ea694c976948 @@ -156079,6 +156079,8 @@ MonoBehaviour: ids: 73000000 - guid: 90539df1cd5704abcb25fec9f3f5f84b ids: 73000000 + - guid: 5ba4ce13e345fc6488c516cc37c35015 + ids: - guid: 91b11ec37fbc84f4fb6ba3b2eb5dc514 ids: 1c000000d5000000 - guid: 0270f3eb8f22ae74890226a42c0b6da4 @@ -156143,32 +156145,44 @@ MonoBehaviour: ids: 1c000000d5000000 - guid: c50c7c9c8871c91409e4470d3c721189 ids: d50000001c000000 + - guid: bc99ff1458babbf418cadaa025d9c4fc + ids: 73000000 + - guid: d3b6d8ae350f6e64fa36b94b021a99b1 + ids: + - guid: 87e4ec14fb3f1ed42ad998feb07506f5 + ids: + - guid: 55d0ca39526c5e94ebac2e6da0c8d80c + ids: + - guid: 6cdb8cc0b3fb21f49b1a761000205509 + ids: 73000000 - guid: 5b33b2e663e78774c9f0c9af55018725 ids: 73000000 + - guid: e64d4b6c88d9d47488d476cf81f30f27 + ids: + - guid: ee774914fec90eb469a4484a6d367804 + ids: - guid: c78150f2237d29247b0f01c770f06979 ids: 1c000000 - guid: f87b5805002ec9649bcb1b96d8a16ba9 ids: 1c000000 - guid: 02f78a9ec76d40f49bfac78c64a754d1 ids: 1c000000 + - guid: 3ee40aa79cd242a5b53b0b0ca4f13f0f + ids: 1c000000 + - guid: ee148e281f3c41c5b4ff5f8a5afe5a6c + ids: 1c000000 - guid: 809d29b9ca1b74947aca02225d2ec233 ids: 1c000000 - guid: b0f85f7da5042c0448a526d5ecacbfa9 ids: 1c000000 - guid: 0a39a4452fd810640afd1be6e700edee ids: 1c000000 + - guid: f66c4aa44c09b6a42a2b5b9f9334d824 + ids: 1c000000 - guid: a7ec9e7ad8b847b7ae4510af83c5d868 ids: 1c000000 - guid: 3028dc075ba8c584d9bc7d1e0255e038 ids: 1c000000 - - guid: 3ee40aa79cd242a5b53b0b0ca4f13f0f - ids: 1c000000 - - guid: f66c4aa44c09b6a42a2b5b9f9334d824 - ids: 1c000000 - - guid: 2fd6421f253b4ef1a19526541f9ffc0c - ids: 1c000000 - - guid: ee148e281f3c41c5b4ff5f8a5afe5a6c - ids: 1c000000 - guid: 990a2f951c73f0449a8596028e51c11e type: 9 m_fileInfoHash: 83084.shadersubgraph @@ -159642,15 +159656,15 @@ MonoBehaviour: UseGUIDsList: [] - guid: d9388465a0abc4ef2ab1be2c62476fca type: 2 - m_fileInfoHash: 2965.cs + m_fileInfoHash: 2952.cs m_assetbundle: m_addressable: m_atlas: - m_fileSize: 2965 - m_assetChangeTS: 1781434906 - m_fileInfoReadTS: 1781434934 - m_fileWriteTS: 1781434555 - m_cachefileWriteTS: 1781434555 + m_fileSize: 2952 + m_assetChangeTS: 1780595518 + m_fileInfoReadTS: 1780595532 + m_fileWriteTS: 1780595514 + m_cachefileWriteTS: 1780595514 refreshStamp: 3 UseGUIDsList: [] - guid: d9682e749d3efc642af54d789d9090a6 @@ -171068,15 +171082,15 @@ MonoBehaviour: UseGUIDsList: [] - guid: 8aec23c9f50e6d842b158c7554ce30ec type: 2 - m_fileInfoHash: 4035.cs + m_fileInfoHash: 4176.cs m_assetbundle: m_addressable: m_atlas: - m_fileSize: 4035 - m_assetChangeTS: 1781434906 - m_fileInfoReadTS: 1781434934 - m_fileWriteTS: 1781434581 - m_cachefileWriteTS: 1781434581 + m_fileSize: 4176 + m_assetChangeTS: 1778983877 + m_fileInfoReadTS: 1778983900 + m_fileWriteTS: 1773552443 + m_cachefileWriteTS: 1773552443 refreshStamp: 3 UseGUIDsList: [] - guid: 8a7d4bd6e93e45bba4d6067fcdc39f85 @@ -177377,15 +177391,15 @@ MonoBehaviour: UseGUIDsList: [] - guid: eaac9d0bf222646fc89d03493f9fca69 type: 2 - m_fileInfoHash: 22664.cs + m_fileInfoHash: 22698.cs m_assetbundle: m_addressable: m_atlas: - m_fileSize: 22664 - m_assetChangeTS: 1781434906 - m_fileInfoReadTS: 1781434934 - m_fileWriteTS: 1781434589 - m_cachefileWriteTS: 1781434589 + m_fileSize: 22698 + m_assetChangeTS: 1778983877 + m_fileInfoReadTS: 1778983900 + m_fileWriteTS: 1764463561 + m_cachefileWriteTS: 1764463561 refreshStamp: 3 UseGUIDsList: [] - guid: eacc8c07331ade049a6102ca81caa612 @@ -177811,15 +177825,15 @@ MonoBehaviour: UseGUIDsList: [] - guid: fa441a41a13cc794cb909abea76cd7a1 type: 2 - m_fileInfoHash: 9028.cs + m_fileInfoHash: 8996.cs m_assetbundle: m_addressable: m_atlas: - m_fileSize: 9028 - m_assetChangeTS: 1781614736 - m_fileInfoReadTS: 1781614746 - m_fileWriteTS: 1781447053 - m_cachefileWriteTS: 1781447053 + m_fileSize: 8996 + m_assetChangeTS: 1778983877 + m_fileInfoReadTS: 1778983900 + m_fileWriteTS: 1773552443 + m_cachefileWriteTS: 1773552443 refreshStamp: 3 UseGUIDsList: [] - guid: fab445eb945d63047822a7a6b81b959d @@ -217187,15 +217201,15 @@ MonoBehaviour: UseGUIDsList: [] - guid: 6d87960788a4be94e87ff13bb81625cd type: 2 - m_fileInfoHash: 8962.cs + m_fileInfoHash: 8774.cs m_assetbundle: m_addressable: m_atlas: - m_fileSize: 8962 - m_assetChangeTS: 1781614736 - m_fileInfoReadTS: 1781614746 - m_fileWriteTS: 1781447061 - m_cachefileWriteTS: 1781447061 + m_fileSize: 8774 + m_assetChangeTS: 1778983877 + m_fileInfoReadTS: 1778983899 + m_fileWriteTS: 1773552443 + m_cachefileWriteTS: 1773552443 refreshStamp: 3 UseGUIDsList: [] - guid: 6de79ae237e51554da96fd28f68b66a6 @@ -259526,6 +259540,19 @@ MonoBehaviour: m_cachefileWriteTS: 0 refreshStamp: 3 UseGUIDsList: [] + - guid: 0023a0858ba124646a55dfcb7231ed46 + type: 9 + m_fileInfoHash: 369874.unitypackage + m_assetbundle: + m_addressable: + m_atlas: + m_fileSize: 369874 + m_assetChangeTS: 0 + m_fileInfoReadTS: 1779792796 + m_fileWriteTS: 1756322241 + m_cachefileWriteTS: 1756322241 + refreshStamp: 3 + UseGUIDsList: [] - guid: 500fa088aa9cc4995bf2e832f1b5798d type: 9 m_fileInfoHash: 1745.png @@ -259552,6 +259579,19 @@ MonoBehaviour: m_cachefileWriteTS: 1779125020 refreshStamp: 3 UseGUIDsList: [] + - guid: 70777e8ce9f3c8d4a8182ca2f965cdb2 + type: 9 + m_fileInfoHash: 108227.unitypackage + m_assetbundle: + m_addressable: + m_atlas: + m_fileSize: 108227 + m_assetChangeTS: 0 + m_fileInfoReadTS: 1779792796 + m_fileWriteTS: 1756322398 + m_cachefileWriteTS: 1756322398 + refreshStamp: 3 + UseGUIDsList: [] - guid: a0546550f9c594246ba226e211664589 type: 9 m_fileInfoHash: 1151.png @@ -259565,6 +259605,19 @@ MonoBehaviour: m_cachefileWriteTS: 1779125020 refreshStamp: 3 UseGUIDsList: [] + - guid: c0a0a980c9ba86345bc15411db88d34f + type: 9 + m_fileInfoHash: 45767503.unitypackage + m_assetbundle: + m_addressable: + m_atlas: + m_fileSize: 45767503 + m_assetChangeTS: 0 + m_fileInfoReadTS: 1779792796 + m_fileWriteTS: 1756322510 + m_cachefileWriteTS: 1756322510 + refreshStamp: 3 + UseGUIDsList: [] - guid: d0022f0eb21a4294a815e5f72de5489e type: 1 m_fileInfoHash: @@ -259578,6 +259631,32 @@ MonoBehaviour: m_cachefileWriteTS: 0 refreshStamp: 3 UseGUIDsList: [] + - guid: e00e6f90ab8233e46a41c5e33917c642 + type: 9 + m_fileInfoHash: 557844.unitypackage + m_assetbundle: + m_addressable: + m_atlas: + m_fileSize: 557844 + m_assetChangeTS: 0 + m_fileInfoReadTS: 1779792796 + m_fileWriteTS: 1756322554 + m_cachefileWriteTS: 1756322554 + refreshStamp: 3 + UseGUIDsList: [] + - guid: 0190b8bde50f12943926613d9a63c89a + type: 9 + m_fileInfoHash: 269031.unitypackage + m_assetbundle: + m_addressable: + m_atlas: + m_fileSize: 269031 + m_assetChangeTS: 0 + m_fileInfoReadTS: 1779792796 + m_fileWriteTS: 1757349462 + m_cachefileWriteTS: 1757349462 + refreshStamp: 3 + UseGUIDsList: [] - guid: 41a5684395dbb47bcbc0893ff4d382a7 type: 9 m_fileInfoHash: 555.png @@ -259617,6 +259696,45 @@ MonoBehaviour: m_cachefileWriteTS: 1682613715 refreshStamp: 3 UseGUIDsList: [] + - guid: d1c0b77896049554fa4b635531caf741 + type: 9 + m_fileInfoHash: 3185682.unitypackage + m_assetbundle: + m_addressable: + m_atlas: + m_fileSize: 3185682 + m_assetChangeTS: 0 + m_fileInfoReadTS: 1779792796 + m_fileWriteTS: 1756322536 + m_cachefileWriteTS: 1756322536 + refreshStamp: 3 + UseGUIDsList: [] + - guid: 2243c8b4e1ab6914995699133f67ab5a + type: 9 + m_fileInfoHash: 84545.unitypackage + m_assetbundle: + m_addressable: + m_atlas: + m_fileSize: 84545 + m_assetChangeTS: 0 + m_fileInfoReadTS: 1779792796 + m_fileWriteTS: 1756322282 + m_cachefileWriteTS: 1756322282 + refreshStamp: 3 + UseGUIDsList: [] + - guid: 929783250050f8a448821b6ca1f2c578 + type: 9 + m_fileInfoHash: 41699.unitypackage + m_assetbundle: + m_addressable: + m_atlas: + m_fileSize: 41699 + m_assetChangeTS: 0 + m_fileInfoReadTS: 1779792796 + m_fileWriteTS: 1756322450 + m_cachefileWriteTS: 1756322450 + refreshStamp: 3 + UseGUIDsList: [] - guid: 1396f5bdc432cd247ac75b97a31e4d1a type: 9 m_fileInfoHash: 2174464.pdb @@ -259630,6 +259748,19 @@ MonoBehaviour: m_cachefileWriteTS: 1682613715 refreshStamp: 3 UseGUIDsList: [] + - guid: 13ab599a7bda4e54fba3e92a13c9580a + type: 9 + m_fileInfoHash: 79965.unitypackage + m_assetbundle: + m_addressable: + m_atlas: + m_fileSize: 79965 + m_assetChangeTS: 0 + m_fileInfoReadTS: 1779792796 + m_fileWriteTS: 1756322264 + m_cachefileWriteTS: 1756322264 + refreshStamp: 3 + UseGUIDsList: [] - guid: 634bb6e12edb749f9b79698db77d2bd3 type: 9 m_fileInfoHash: 433.asmdef @@ -259682,6 +259813,19 @@ MonoBehaviour: m_cachefileWriteTS: 1682613715 refreshStamp: 3 UseGUIDsList: [] + - guid: 641c955d37d2fac4f87e00ac5c9d9bd8 + type: 9 + m_fileInfoHash: 360203.unitypackage + m_assetbundle: + m_addressable: + m_atlas: + m_fileSize: 360203 + m_assetChangeTS: 0 + m_fileInfoReadTS: 1779792796 + m_fileWriteTS: 1756322382 + m_cachefileWriteTS: 1756322382 + refreshStamp: 3 + UseGUIDsList: [] - guid: 9422d9b1fde3cf644b4a0dddd10a7348 type: 9 m_fileInfoHash: 4719.md @@ -259695,6 +259839,71 @@ MonoBehaviour: m_cachefileWriteTS: 1682613715 refreshStamp: 3 UseGUIDsList: [] + - guid: b460b52e6c1feae45b70b7ddc2c45bd6 + type: 9 + m_fileInfoHash: 23184.unitypackage + m_assetbundle: + m_addressable: + m_atlas: + m_fileSize: 23184 + m_assetChangeTS: 0 + m_fileInfoReadTS: 1779792796 + m_fileWriteTS: 1756322489 + m_cachefileWriteTS: 1756322489 + refreshStamp: 3 + UseGUIDsList: [] + - guid: e447b3d7d913d694ca35f74e30581840 + type: 9 + m_fileInfoHash: 277741.unitypackage + m_assetbundle: + m_addressable: + m_atlas: + m_fileSize: 277741 + m_assetChangeTS: 0 + m_fileInfoReadTS: 1779792796 + m_fileWriteTS: 1757349504 + m_cachefileWriteTS: 1757349504 + refreshStamp: 3 + UseGUIDsList: [] + - guid: f4990f6ace6142c4bbbf41cdd80b0bd3 + type: 9 + m_fileInfoHash: 45519.unitypackage + m_assetbundle: + m_addressable: + m_atlas: + m_fileSize: 45519 + m_assetChangeTS: 0 + m_fileInfoReadTS: 1779792796 + m_fileWriteTS: 1756322580 + m_cachefileWriteTS: 1756322580 + refreshStamp: 3 + UseGUIDsList: [] + - guid: 3579d9cf4b75c564faa8fffc58a9f3f6 + type: 9 + m_fileInfoHash: 369778.unitypackage + m_assetbundle: + m_addressable: + m_atlas: + m_fileSize: 369778 + m_assetChangeTS: 0 + m_fileInfoReadTS: 1779792796 + m_fileWriteTS: 1756322310 + m_cachefileWriteTS: 1756322310 + refreshStamp: 3 + UseGUIDsList: [] + - guid: 6584a66582083a1459dcf5e4e87f6d62 + type: 9 + m_fileInfoHash: 268546.unitypackage + m_assetbundle: + m_addressable: + m_atlas: + m_fileSize: 268546 + m_assetChangeTS: 0 + m_fileInfoReadTS: 1779792796 + m_fileWriteTS: 1757349478 + m_cachefileWriteTS: 1757349478 + refreshStamp: 3 + UseGUIDsList: [] - guid: a5a20a36fab5ed4fc023d92d2ac579fb type: 1 m_fileInfoHash: @@ -259708,6 +259917,19 @@ MonoBehaviour: m_cachefileWriteTS: 0 refreshStamp: 3 UseGUIDsList: [] + - guid: c5303861611f41c438a30be552da5de4 + type: 9 + m_fileInfoHash: 91198.unitypackage + m_assetbundle: + m_addressable: + m_atlas: + m_fileSize: 91198 + m_assetChangeTS: 0 + m_fileInfoReadTS: 1779792796 + m_fileWriteTS: 1756322515 + m_cachefileWriteTS: 1756322515 + refreshStamp: 3 + UseGUIDsList: [] - guid: f5e7dc4996b7f4f1fb3cbd2f3313c757 type: 9 m_fileInfoHash: 1107.png @@ -259734,6 +259956,19 @@ MonoBehaviour: m_cachefileWriteTS: 1682613715 refreshStamp: 3 UseGUIDsList: [] + - guid: 2690f45490c175045bbdc63395bf6278 + type: 9 + m_fileInfoHash: 365438.unitypackage + m_assetbundle: + m_addressable: + m_atlas: + m_fileSize: 365438 + m_assetChangeTS: 0 + m_fileInfoReadTS: 1779792796 + m_fileWriteTS: 1756322286 + m_cachefileWriteTS: 1756322286 + refreshStamp: 3 + UseGUIDsList: [] - guid: 664fd9cfb43999d4bac66493d29a4822 type: 9 m_fileInfoHash: 1693.png @@ -259760,6 +259995,84 @@ MonoBehaviour: m_cachefileWriteTS: 1779125020 refreshStamp: 3 UseGUIDsList: [] + - guid: d69745226619e3241a8e04ce86aee6a6 + type: 9 + m_fileInfoHash: 269026.unitypackage + m_assetbundle: + m_addressable: + m_atlas: + m_fileSize: 269026 + m_assetChangeTS: 0 + m_fileInfoReadTS: 1779792796 + m_fileWriteTS: 1757349499 + m_cachefileWriteTS: 1757349499 + refreshStamp: 3 + UseGUIDsList: [] + - guid: e6fc8948257acee42b666d0bfe1d782c + type: 9 + m_fileInfoHash: 110636.unitypackage + m_assetbundle: + m_addressable: + m_atlas: + m_fileSize: 110636 + m_assetChangeTS: 0 + m_fileInfoReadTS: 1779792796 + m_fileWriteTS: 1756322563 + m_cachefileWriteTS: 1756322563 + refreshStamp: 3 + UseGUIDsList: [] + - guid: f6f268949ccf3f34fa4d18e92501ed82 + type: 9 + m_fileInfoHash: 83402.unitypackage + m_assetbundle: + m_addressable: + m_atlas: + m_fileSize: 83402 + m_assetChangeTS: 0 + m_fileInfoReadTS: 1779792796 + m_fileWriteTS: 1756322585 + m_cachefileWriteTS: 1756322585 + refreshStamp: 3 + UseGUIDsList: [] + - guid: 1782b72cd0e99a54fac09382c482e3db + type: 9 + m_fileInfoHash: 254618.unitypackage + m_assetbundle: + m_addressable: + m_atlas: + m_fileSize: 254618 + m_assetChangeTS: 0 + m_fileInfoReadTS: 1779792796 + m_fileWriteTS: 1757349467 + m_cachefileWriteTS: 1757349467 + refreshStamp: 3 + UseGUIDsList: [] + - guid: 37e6a9374416bc946a55779c58d0d984 + type: 9 + m_fileInfoHash: 269191.unitypackage + m_assetbundle: + m_addressable: + m_atlas: + m_fileSize: 269191 + m_assetChangeTS: 0 + m_fileInfoReadTS: 1779792796 + m_fileWriteTS: 1757349472 + m_cachefileWriteTS: 1757349472 + refreshStamp: 3 + UseGUIDsList: [] + - guid: 57fcea0ed8b5eb347923c4c21fa31b57 + type: 9 + m_fileInfoHash: 38182.unitypackage + m_assetbundle: + m_addressable: + m_atlas: + m_fileSize: 38182 + m_assetChangeTS: 0 + m_fileInfoReadTS: 1779792796 + m_fileWriteTS: 1756322361 + m_cachefileWriteTS: 1756322361 + refreshStamp: 3 + UseGUIDsList: [] - guid: 5854089025145e3489d4983a422ca534 type: 9 m_fileInfoHash: 4673.json @@ -259825,6 +260138,71 @@ MonoBehaviour: m_cachefileWriteTS: 1779349766 refreshStamp: 3 UseGUIDsList: [] + - guid: 0904cdf24ddcd5042b024326476220d5 + type: 9 + m_fileInfoHash: 40611.unitypackage + m_assetbundle: + m_addressable: + m_atlas: + m_fileSize: 40611 + m_assetChangeTS: 0 + m_fileInfoReadTS: 1779792796 + m_fileWriteTS: 1756322254 + m_cachefileWriteTS: 1756322254 + refreshStamp: 3 + UseGUIDsList: [] + - guid: 19939ee2cdb76e0489b1b8cd4bed7f3d + type: 9 + m_fileInfoHash: 108414.unitypackage + m_assetbundle: + m_addressable: + m_atlas: + m_fileSize: 108414 + m_assetChangeTS: 0 + m_fileInfoReadTS: 1779792796 + m_fileWriteTS: 1756322272 + m_cachefileWriteTS: 1756322272 + refreshStamp: 3 + UseGUIDsList: [] + - guid: 49d5bcbbd4cbd754b98cf3200197b0f1 + type: 9 + m_fileInfoHash: 267725.unitypackage + m_assetbundle: + m_addressable: + m_atlas: + m_fileSize: 267725 + m_assetChangeTS: 0 + m_fileInfoReadTS: 1779792796 + m_fileWriteTS: 1757349474 + m_cachefileWriteTS: 1757349474 + refreshStamp: 3 + UseGUIDsList: [] + - guid: 69bc3229216b1504ea3e28b5820bbb0d + type: 9 + m_fileInfoHash: 83642.unitypackage + m_assetbundle: + m_addressable: + m_atlas: + m_fileSize: 83642 + m_assetChangeTS: 0 + m_fileInfoReadTS: 1779792796 + m_fileWriteTS: 1756322387 + m_cachefileWriteTS: 1756322387 + refreshStamp: 3 + UseGUIDsList: [] + - guid: 89f0b84148d149d4d96b838d7ef60e92 + type: 9 + m_fileInfoHash: 106917.unitypackage + m_assetbundle: + m_addressable: + m_atlas: + m_fileSize: 106917 + m_assetChangeTS: 0 + m_fileInfoReadTS: 1779792796 + m_fileWriteTS: 1756322438 + m_cachefileWriteTS: 1756322438 + refreshStamp: 3 + UseGUIDsList: [] - guid: 89a6c0913bafbd08640ed5e5dc7f0e04 type: 1 m_fileInfoHash: @@ -259838,6 +260216,84 @@ MonoBehaviour: m_cachefileWriteTS: 0 refreshStamp: 3 UseGUIDsList: [] + - guid: a9d68dd8913f05d4d9ce75e7b40c6044 + type: 9 + m_fileInfoHash: 172686.unitypackage + m_assetbundle: + m_addressable: + m_atlas: + m_fileSize: 172686 + m_assetChangeTS: 0 + m_fileInfoReadTS: 1779792796 + m_fileWriteTS: 1756322476 + m_cachefileWriteTS: 1756322476 + refreshStamp: 3 + UseGUIDsList: [] + - guid: 7a0bb33169d95ec499136d59cb25918b + type: 9 + m_fileInfoHash: 356286.unitypackage + m_assetbundle: + m_addressable: + m_atlas: + m_fileSize: 356286 + m_assetChangeTS: 0 + m_fileInfoReadTS: 1779792796 + m_fileWriteTS: 1756322413 + m_cachefileWriteTS: 1756322413 + refreshStamp: 3 + UseGUIDsList: [] + - guid: 8a87ed432fe2d97498c0de5fae312e35 + type: 9 + m_fileInfoHash: 90924.unitypackage + m_assetbundle: + m_addressable: + m_atlas: + m_fileSize: 90924 + m_assetChangeTS: 0 + m_fileInfoReadTS: 1779792796 + m_fileWriteTS: 1756322439 + m_cachefileWriteTS: 1756322439 + refreshStamp: 3 + UseGUIDsList: [] + - guid: 9a5e61a8b3421b944863d0946e32da0a + type: 9 + m_fileInfoHash: 104671.unitypackage + m_assetbundle: + m_addressable: + m_atlas: + m_fileSize: 104671 + m_assetChangeTS: 0 + m_fileInfoReadTS: 1779792796 + m_fileWriteTS: 1756322459 + m_cachefileWriteTS: 1756322459 + refreshStamp: 3 + UseGUIDsList: [] + - guid: aa102d640b98b5d4781710a3a3dd6983 + type: 9 + m_fileInfoHash: 325098.unitypackage + m_assetbundle: + m_addressable: + m_atlas: + m_fileSize: 325098 + m_assetChangeTS: 0 + m_fileInfoReadTS: 1779792796 + m_fileWriteTS: 1756322476 + m_cachefileWriteTS: 1756322476 + refreshStamp: 3 + UseGUIDsList: [] + - guid: ba281a1a00c8ac54c914e0763299f637 + type: 9 + m_fileInfoHash: 110423.unitypackage + m_assetbundle: + m_addressable: + m_atlas: + m_fileSize: 110423 + m_assetChangeTS: 0 + m_fileInfoReadTS: 1779792796 + m_fileWriteTS: 1756322497 + m_cachefileWriteTS: 1756322497 + refreshStamp: 3 + UseGUIDsList: [] - guid: ea32354625d7d4dc98bd0cc16db7fb3b type: 4 m_fileInfoHash: 1016320.dll @@ -259877,6 +260333,19 @@ MonoBehaviour: m_cachefileWriteTS: 1779125020 refreshStamp: 3 UseGUIDsList: [] + - guid: 4b5cb8698f2d9c14fadf8e2383441d37 + type: 9 + m_fileInfoHash: 110653.unitypackage + m_assetbundle: + m_addressable: + m_atlas: + m_fileSize: 110653 + m_assetChangeTS: 0 + m_fileInfoReadTS: 1779792796 + m_fileWriteTS: 1756322337 + m_cachefileWriteTS: 1756322337 + refreshStamp: 3 + UseGUIDsList: [] - guid: ab57709f3b0694ca7aea75bbab90de0e type: 1 m_fileInfoHash: @@ -259890,6 +260359,19 @@ MonoBehaviour: m_cachefileWriteTS: 0 refreshStamp: 3 UseGUIDsList: [] + - guid: fbd1fd9b3a70fad429d1eaaa5799c2a5 + type: 9 + m_fileInfoHash: 368597.unitypackage + m_assetbundle: + m_addressable: + m_atlas: + m_fileSize: 368597 + m_assetChangeTS: 0 + m_fileInfoReadTS: 1779792796 + m_fileWriteTS: 1756322592 + m_cachefileWriteTS: 1756322592 + refreshStamp: 3 + UseGUIDsList: [] - guid: 0c04e4088b00a445689e21769a00bf2f type: 1 m_fileInfoHash: @@ -259929,6 +260411,19 @@ MonoBehaviour: m_cachefileWriteTS: 1682613715 refreshStamp: 3 UseGUIDsList: [] + - guid: 7c3bfbbeb9427b94099254e2e2768ad4 + type: 9 + m_fileInfoHash: 91311.unitypackage + m_assetbundle: + m_addressable: + m_atlas: + m_fileSize: 91311 + m_assetChangeTS: 0 + m_fileInfoReadTS: 1779792796 + m_fileWriteTS: 1756322416 + m_cachefileWriteTS: 1756322416 + refreshStamp: 3 + UseGUIDsList: [] - guid: 8c4bfcb5b17948478ccb955bccff9652 type: 4 m_fileInfoHash: 696320.dll @@ -259942,6 +260437,32 @@ MonoBehaviour: m_cachefileWriteTS: 1682613715 refreshStamp: 3 UseGUIDsList: [] + - guid: ec984c51d4ae2504184eeb292734c672 + type: 9 + m_fileInfoHash: 277492.unitypackage + m_assetbundle: + m_addressable: + m_atlas: + m_fileSize: 277492 + m_assetChangeTS: 0 + m_fileInfoReadTS: 1779792796 + m_fileWriteTS: 1757349506 + m_cachefileWriteTS: 1757349506 + refreshStamp: 3 + UseGUIDsList: [] + - guid: fcc4d2eb0af82e546ae75506872cf092 + type: 9 + m_fileInfoHash: 45140.unitypackage + m_assetbundle: + m_addressable: + m_atlas: + m_fileSize: 45140 + m_assetChangeTS: 0 + m_fileInfoReadTS: 1779792796 + m_fileWriteTS: 1756322593 + m_cachefileWriteTS: 1756322593 + refreshStamp: 3 + UseGUIDsList: [] - guid: 7d34f3cc1c0185b4990cf748e55a8688 type: 9 m_fileInfoHash: 2186752.pdb @@ -259955,6 +260476,19 @@ MonoBehaviour: m_cachefileWriteTS: 1682613715 refreshStamp: 3 UseGUIDsList: [] + - guid: 9da5530d5ebfab24c8ecad68795e720f + type: 9 + m_fileInfoHash: 304772.unitypackage + m_assetbundle: + m_addressable: + m_atlas: + m_fileSize: 304772 + m_assetChangeTS: 0 + m_fileInfoReadTS: 1779792796 + m_fileWriteTS: 1756322462 + m_cachefileWriteTS: 1756322462 + refreshStamp: 3 + UseGUIDsList: [] - guid: bd000203fd777c54e927ed0ff4122fa6 type: 1 m_fileInfoHash: @@ -259968,6 +260502,19 @@ MonoBehaviour: m_cachefileWriteTS: 0 refreshStamp: 3 UseGUIDsList: [] + - guid: cd0a0171c5157b748afe763b89f71211 + type: 9 + m_fileInfoHash: 45572.unitypackage + m_assetbundle: + m_addressable: + m_atlas: + m_fileSize: 45572 + m_assetChangeTS: 0 + m_fileInfoReadTS: 1779792796 + m_fileWriteTS: 1756322529 + m_cachefileWriteTS: 1756322529 + refreshStamp: 3 + UseGUIDsList: [] - guid: fd88b63fd25064da68bd40422e6be7b4 type: 9 m_fileInfoHash: 1084.png @@ -259994,6 +260541,45 @@ MonoBehaviour: m_cachefileWriteTS: 1779355313 refreshStamp: 3 UseGUIDsList: [] + - guid: 2e995dfe11e22d34d92432383d15c067 + type: 9 + m_fileInfoHash: 277670.unitypackage + m_assetbundle: + m_addressable: + m_atlas: + m_fileSize: 277670 + m_assetChangeTS: 0 + m_fileInfoReadTS: 1779792795 + m_fileWriteTS: 1757349470 + m_cachefileWriteTS: 1757349470 + refreshStamp: 3 + UseGUIDsList: [] + - guid: 2edbf4a9b9544774bbef617e92429664 + type: 9 + m_fileInfoHash: 68647.unitypackage + m_assetbundle: + m_addressable: + m_atlas: + m_fileSize: 68647 + m_assetChangeTS: 0 + m_fileInfoReadTS: 1779792795 + m_fileWriteTS: 1756322300 + m_cachefileWriteTS: 1756322300 + refreshStamp: 3 + UseGUIDsList: [] + - guid: 2e9da72e7e3196146bf7d27450013734 + type: 9 + m_fileInfoHash: 41701.unitypackage + m_assetbundle: + m_addressable: + m_atlas: + m_fileSize: 41701 + m_assetChangeTS: 0 + m_fileInfoReadTS: 1779792795 + m_fileWriteTS: 1756322300 + m_cachefileWriteTS: 1756322300 + refreshStamp: 3 + UseGUIDsList: [] - guid: aee2530ed8477491b9b9ead3f0cda410 type: 1 m_fileInfoHash: @@ -260007,6 +260593,19 @@ MonoBehaviour: m_cachefileWriteTS: 0 refreshStamp: 3 UseGUIDsList: [] + - guid: ae2ce8ad295486349839288636aed1ed + type: 9 + m_fileInfoHash: 269169.unitypackage + m_assetbundle: + m_addressable: + m_atlas: + m_fileSize: 269169 + m_assetChangeTS: 0 + m_fileInfoReadTS: 1779792795 + m_fileWriteTS: 1757349491 + m_cachefileWriteTS: 1757349491 + refreshStamp: 3 + UseGUIDsList: [] - guid: de1c7164adaf49d47b5de31c140713c9 type: 1 m_fileInfoHash: @@ -260020,6 +260619,19 @@ MonoBehaviour: m_cachefileWriteTS: 0 refreshStamp: 3 UseGUIDsList: [] + - guid: eefe45a405f061045be947217e30ed10 + type: 9 + m_fileInfoHash: 267843.unitypackage + m_assetbundle: + m_addressable: + m_atlas: + m_fileSize: 267843 + m_assetChangeTS: 0 + m_fileInfoReadTS: 1779792795 + m_fileWriteTS: 1757349506 + m_cachefileWriteTS: 1757349506 + refreshStamp: 3 + UseGUIDsList: [] - guid: fed01095b990a354289891ead909238f type: 9 m_fileInfoHash: 702415.xml @@ -260033,6 +260645,19 @@ MonoBehaviour: m_cachefileWriteTS: 1682613715 refreshStamp: 3 UseGUIDsList: [] + - guid: 4f665a06c5a2aa5499fa1c79ac058999 + type: 9 + m_fileInfoHash: 83956.unitypackage + m_assetbundle: + m_addressable: + m_atlas: + m_fileSize: 83956 + m_assetChangeTS: 0 + m_fileInfoReadTS: 1779792795 + m_fileWriteTS: 1756322344 + m_cachefileWriteTS: 1756322344 + refreshStamp: 3 + UseGUIDsList: [] - guid: cf481b2e8f4fb614d92616c21a249d4c type: 1 m_fileInfoHash: @@ -260622,32 +261247,6 @@ MonoBehaviour: m_cachefileWriteTS: 0 refreshStamp: 3 UseGUIDsList: [] - - guid: 28802a2f6f0ff2942bd2a248b9b68960 - type: 9 - m_fileInfoHash: 1113.sln - m_assetbundle: - m_addressable: - m_atlas: - m_fileSize: 1113 - m_assetChangeTS: 0 - m_fileInfoReadTS: 1781432791 - m_fileWriteTS: 1781432742 - m_cachefileWriteTS: 1781432742 - refreshStamp: 3 - UseGUIDsList: [] - - guid: 88f0993afef43b34eb23a79fbdd94e9b - type: 9 - m_fileInfoHash: 722.csproj - m_assetbundle: - m_addressable: - m_atlas: - m_fileSize: 722 - m_assetChangeTS: 0 - m_fileInfoReadTS: 1781432791 - m_fileWriteTS: 1781432742 - m_cachefileWriteTS: 1781432742 - refreshStamp: 3 - UseGUIDsList: [] setting: alternateColor: 1 excludeTypes: 0 diff --git a/Assets/StreamingAssets/ThemeBundles/Windows64/Windows64 b/Assets/StreamingAssets/ThemeBundles/Windows64/Windows64 index 9559fbac..c0387974 100644 Binary files a/Assets/StreamingAssets/ThemeBundles/Windows64/Windows64 and b/Assets/StreamingAssets/ThemeBundles/Windows64/Windows64 differ diff --git a/Assets/StreamingAssets/ThemeBundles/Windows64/Windows64.manifest b/Assets/StreamingAssets/ThemeBundles/Windows64/Windows64.manifest index 07bea995..60bf7a61 100644 --- a/Assets/StreamingAssets/ThemeBundles/Windows64/Windows64.manifest +++ b/Assets/StreamingAssets/ThemeBundles/Windows64/Windows64.manifest @@ -1,6 +1,6 @@ ManifestFileVersion: 0 UnityVersion: 6000.3.7f1 -CRC: 3622409616 +CRC: 2438471808 HashAppended: 0 AssetBundleManifest: AssetBundleInfos: diff --git a/Assets/StreamingAssets/ThemeBundles/Windows64/departure_to_multiverse b/Assets/StreamingAssets/ThemeBundles/Windows64/departure_to_multiverse index f2bfa804..79e60061 100644 Binary files a/Assets/StreamingAssets/ThemeBundles/Windows64/departure_to_multiverse and b/Assets/StreamingAssets/ThemeBundles/Windows64/departure_to_multiverse differ diff --git a/Assets/StreamingAssets/ThemeBundles/Windows64/departure_to_multiverse.manifest b/Assets/StreamingAssets/ThemeBundles/Windows64/departure_to_multiverse.manifest index a0373034..0b32f109 100644 --- a/Assets/StreamingAssets/ThemeBundles/Windows64/departure_to_multiverse.manifest +++ b/Assets/StreamingAssets/ThemeBundles/Windows64/departure_to_multiverse.manifest @@ -1,16 +1,16 @@ ManifestFileVersion: 0 UnityVersion: 6000.3.7f1 -CRC: 582696466 +CRC: 638149554 Hashes: AssetFileHash: serializedVersion: 2 - Hash: bf570dc2fdd32aa5271fd3ce50d49ba4 + Hash: 80c1888ee1bc27b52530951d8b4101d1 TypeTreeHash: serializedVersion: 2 Hash: 0c8f2af2122906b6fb7d5b5413f3c41f IncrementalBuildHash: serializedVersion: 2 - Hash: 3c1b6e5fafd24712daa0e9e5731f3684 + Hash: 89096bf86a967d160e9f7512ca3c952f HashAppended: 0 ClassTypes: - Class: 1 diff --git a/Assets/ThemeBundles/DepartureToMultiverse/Prefabs/DTM_Trail.prefab b/Assets/ThemeBundles/DepartureToMultiverse/Prefabs/DTM_Trail.prefab index fa9f9144..6224e8ea 100644 --- a/Assets/ThemeBundles/DepartureToMultiverse/Prefabs/DTM_Trail.prefab +++ b/Assets/ThemeBundles/DepartureToMultiverse/Prefabs/DTM_Trail.prefab @@ -17,7 +17,7 @@ GameObject: m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 - m_IsActive: 0 + m_IsActive: 1 --- !u!4 &448133524246398677 Transform: m_ObjectHideFlags: 0 @@ -4906,6 +4906,7 @@ GameObject: - component: {fileID: 2483012756023983200} - component: {fileID: 4549644783101619065} - component: {fileID: 2011543157634142961} + - component: {fileID: 5521744977626316896} m_Layer: 0 m_Name: DTM_Trail m_TagString: Untagged @@ -9845,6 +9846,28 @@ MonoBehaviour: isSwitchingReturnType: 0 lastReturnType: 0 returnType: 0 +--- !u!95 &5521744977626316896 +Animator: + serializedVersion: 7 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 642168045599276256} + m_Enabled: 1 + m_Avatar: {fileID: 0} + m_Controller: {fileID: 9100000, guid: 518b73ce1b7c250478e9e8283dfcbee6, type: 2} + m_CullingMode: 0 + m_UpdateMode: 0 + m_ApplyRootMotion: 0 + m_LinearVelocityBlending: 0 + m_StabilizeFeet: 0 + m_AnimatePhysics: 0 + m_WarningMessage: + m_HasTransformHierarchy: 1 + m_AllowConstantClipSamplingOptimization: 1 + m_KeepAnimatorStateOnDisable: 0 + m_WriteDefaultValuesOnDisable: 0 --- !u!1 &2699665565157051537 GameObject: m_ObjectHideFlags: 0 @@ -10004,7 +10027,7 @@ GameObject: m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 - m_IsActive: 1 + m_IsActive: 0 --- !u!4 &4577072593820393137 Transform: m_ObjectHideFlags: 0 @@ -19762,7 +19785,7 @@ GameObject: m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 - m_IsActive: 1 + m_IsActive: 0 --- !u!4 &4577072594143320191 Transform: m_ObjectHideFlags: 0 @@ -24668,7 +24691,7 @@ GameObject: m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 - m_IsActive: 1 + m_IsActive: 0 --- !u!4 &4577072594657777397 Transform: m_ObjectHideFlags: 0 @@ -29436,7 +29459,7 @@ ParticleSystemRenderer: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 4577072594657777396} - m_Enabled: 1 + m_Enabled: 0 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 diff --git a/Packages/manifest.json b/Packages/manifest.json index 94fa265e..d0d9fcca 100644 --- a/Packages/manifest.json +++ b/Packages/manifest.json @@ -1,6 +1,6 @@ { "dependencies": { - "com.unity.burst": "1.8.27", + "com.unity.burst": "1.8.29", "com.unity.collab-proxy": "2.11.3", "com.unity.collections": "2.6.2", "com.unity.device-simulator.devices": "1.0.1", diff --git a/Packages/packages-lock.json b/Packages/packages-lock.json index 90d63130..80ec39a1 100644 --- a/Packages/packages-lock.json +++ b/Packages/packages-lock.json @@ -118,7 +118,7 @@ "url": "https://packages.unity.com" }, "com.unity.burst": { - "version": "1.8.27", + "version": "1.8.29", "depth": 0, "source": "registry", "dependencies": {