%YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!114 &114023846229194376 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 73a13919d81fb7444849bae8b5c812a2, type: 3} m_Name: VFXBasicSpawner m_EditorClassIdentifier: m_Parent: {fileID: 114350483966674976} m_Children: - {fileID: 114873264888500148} m_UIPosition: {x: 709, y: -352} m_UICollapsed: 0 m_UISuperCollapsed: 0 m_InputSlots: [] m_OutputSlots: [] m_Label: m_Data: {fileID: 0} m_InputFlowSlot: - link: [] - link: [] m_OutputFlowSlot: - link: - context: {fileID: 114946465509916290} slotIndex: 0 loopDuration: 0 loopCount: 0 delayBeforeLoop: 0 delayAfterLoop: 0 --- !u!114 &114131763552434164 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: a971fa2e110a0ac42ac1d8dae408704b, type: 3} m_Name: SetAttribute m_EditorClassIdentifier: m_Parent: {fileID: 114946465509916290} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 0 m_UISuperCollapsed: 0 m_InputSlots: - {fileID: 8926484042661614864} - {fileID: 8926484042661614865} m_OutputSlots: [] m_Disabled: 0 attribute: lifetime Composition: 0 Source: 0 Random: 2 channels: 6 --- !u!114 &114206037049139666 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: a971fa2e110a0ac42ac1d8dae408704b, type: 3} m_Name: SetAttribute m_EditorClassIdentifier: m_Parent: {fileID: 114946465509916290} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 0 m_UISuperCollapsed: 0 m_InputSlots: - {fileID: 8926484042661614854} - {fileID: 8926484042661614859} m_OutputSlots: [] m_Disabled: 0 attribute: velocity Composition: 0 Source: 0 Random: 1 channels: 6 --- !u!114 &114307113894698210 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 1b605c022ee79394a8a776c0869b3f9a, type: 3} m_Name: VFXSlot m_EditorClassIdentifier: m_Parent: {fileID: 0} m_Children: - {fileID: 114986932069951040} - {fileID: 114963171269329408} m_UIPosition: {x: 0, y: 0} m_UICollapsed: 0 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 114307113894698210} m_MasterData: m_Owner: {fileID: 114946465509916290} m_Value: m_Type: m_SerializableType: UnityEditor.VFX.AABox, Unity.VisualEffectGraph.Editor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null m_SerializableObject: '{"center":{"x":0.0,"y":2.0,"z":0.0},"size":{"x":2.0,"y":5.0,"z":2.0}}' m_Space: 0 m_Property: name: bounds m_serializedType: m_SerializableType: UnityEditor.VFX.AABox, Unity.VisualEffectGraph.Editor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null attributes: - m_Type: 3 m_Min: -Infinity m_Max: Infinity m_Tooltip: The culling bounds of this system. The Visual Effect is only visible if the bounding box specified here is visible to the camera. m_Regex: m_RegexMaxLength: 0 m_Direction: 0 m_LinkedSlots: [] --- !u!114 &114340500867371532 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: d01270efd3285ea4a9d6c555cb0a8027, type: 3} m_Name: VFXUI m_EditorClassIdentifier: groupInfos: - title: Flipbook framerate Decelerates over life of the particle position: serializedVersion: 2 x: 170 y: 595 width: 597 height: 182 contents: - model: {fileID: 8926484042661614550} id: 0 isStickyNote: 0 - model: {fileID: 8926484042661614548} id: 0 isStickyNote: 0 stickyNoteInfos: [] systemInfos: - title: Slowing Steam Puffs position: serializedVersion: 2 x: 0 y: 0 width: 0 height: 0 contexts: - {fileID: 114946465509916290} - {fileID: 114780028408030698} - {fileID: 8926484042661614761} - title: Leaking Pressured Air position: serializedVersion: 2 x: 0 y: 0 width: 0 height: 0 contexts: - {fileID: 8926484042661614605} - {fileID: 8926484042661614631} - {fileID: 8926484042661614789} categories: [] uiBounds: serializedVersion: 2 x: 170 y: -352 width: 1985 height: 2523 --- !u!114 &114350483966674976 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 7d4c867f6b72b714dbb5fd1780afe208, type: 3} m_Name: SteamLeak01 m_EditorClassIdentifier: m_Parent: {fileID: 0} m_Children: - {fileID: 114023846229194376} - {fileID: 114946465509916290} - {fileID: 114780028408030698} - {fileID: 8926484042661614548} - {fileID: 8926484042661614550} - {fileID: 8926484042661614602} - {fileID: 8926484042661614605} - {fileID: 8926484042661614631} - {fileID: 8926484042661614687} - {fileID: 8926484042661614761} - {fileID: 8926484042661614789} m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_UIInfos: {fileID: 114340500867371532} m_ParameterInfo: - name: Opacity path: Opacity tooltip: sheetType: m_Float realType: Single defaultValue: m_Type: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 m_SerializableObject: 1 min: -Infinity max: Infinity descendantCount: 0 m_GraphVersion: 4 m_saved: 1 m_SubgraphDependencies: [] m_CategoryPath: --- !u!114 &114380859405582094 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: VFXSlotFloat m_EditorClassIdentifier: m_Parent: {fileID: 114963171269329408} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 114307113894698210} m_MasterData: m_Owner: {fileID: 0} m_Value: m_Type: m_SerializableType: m_SerializableObject: m_Space: 2147483647 m_Property: name: z m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: [] m_Direction: 0 m_LinkedSlots: [] --- !u!114 &114428730288789306 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: d78581a96eae8bf4398c282eb0b098bd, type: 3} m_Name: VFXDataParticle m_EditorClassIdentifier: m_Parent: {fileID: 114350483966674976} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 title: Slowing Steam Puffs m_Owners: - {fileID: 114946465509916290} - {fileID: 114780028408030698} - {fileID: 8926484042661614761} dataType: 0 capacity: 32 stripCapacity: 16 particlePerStripCount: 16 m_Space: 0 --- !u!114 &114512514798047786 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: VFXSlotFloat m_EditorClassIdentifier: m_Parent: {fileID: 114963171269329408} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 114307113894698210} m_MasterData: m_Owner: {fileID: 0} m_Value: m_Type: m_SerializableType: m_SerializableObject: m_Space: 2147483647 m_Property: name: x m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: [] m_Direction: 0 m_LinkedSlots: [] --- !u!114 &114538391275492396 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: VFXSlotFloat m_EditorClassIdentifier: m_Parent: {fileID: 114986932069951040} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 114307113894698210} m_MasterData: m_Owner: {fileID: 0} m_Value: m_Type: m_SerializableType: m_SerializableObject: m_Space: 2147483647 m_Property: name: z m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: [] m_Direction: 0 m_LinkedSlots: [] --- !u!114 &114571176826476282 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: VFXSlotFloat m_EditorClassIdentifier: m_Parent: {fileID: 0} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 114571176826476282} m_MasterData: m_Owner: {fileID: 114873264888500148} m_Value: m_Type: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 m_SerializableObject: 8 m_Space: 2147483647 m_Property: name: Rate m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: - m_Type: 1 m_Min: 0 m_Max: Infinity m_Tooltip: m_Regex: m_RegexMaxLength: 0 - m_Type: 3 m_Min: -Infinity m_Max: Infinity m_Tooltip: Sets the number of particles to be spawned per second. m_Regex: m_RegexMaxLength: 0 m_Direction: 0 m_LinkedSlots: [] --- !u!114 &114739294351936256 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: VFXSlotFloat m_EditorClassIdentifier: m_Parent: {fileID: 114986932069951040} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 114307113894698210} m_MasterData: m_Owner: {fileID: 0} m_Value: m_Type: m_SerializableType: m_SerializableObject: m_Space: 2147483647 m_Property: name: x m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: [] m_Direction: 0 m_LinkedSlots: [] --- !u!114 &114780028408030698 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 2dc095764ededfa4bb32fa602511ea4b, type: 3} m_Name: VFXBasicUpdate m_EditorClassIdentifier: m_Parent: {fileID: 114350483966674976} m_Children: - {fileID: 8926484042661614544} - {fileID: 8926484042661614560} m_UIPosition: {x: 824, y: 571} m_UICollapsed: 0 m_UISuperCollapsed: 0 m_InputSlots: [] m_OutputSlots: [] m_Label: m_Data: {fileID: 114428730288789306} m_InputFlowSlot: - link: - context: {fileID: 114946465509916290} slotIndex: 0 m_OutputFlowSlot: - link: - context: {fileID: 8926484042661614761} slotIndex: 0 integration: 0 angularIntegration: 0 ageParticles: 1 reapParticles: 1 --- !u!114 &114873264888500148 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f05c6884b705ce14d82ae720f0ec209f, type: 3} m_Name: VFXSpawnerConstantRate m_EditorClassIdentifier: m_Parent: {fileID: 114023846229194376} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 0 m_UISuperCollapsed: 0 m_InputSlots: - {fileID: 114571176826476282} m_OutputSlots: [] m_Disabled: 0 --- !u!114 &114920711487922656 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: VFXSlotFloat m_EditorClassIdentifier: m_Parent: {fileID: 114963171269329408} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 114307113894698210} m_MasterData: m_Owner: {fileID: 0} m_Value: m_Type: m_SerializableType: m_SerializableObject: m_Space: 2147483647 m_Property: name: y m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: [] m_Direction: 0 m_LinkedSlots: [] --- !u!114 &114935892456706286 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: VFXSlotFloat m_EditorClassIdentifier: m_Parent: {fileID: 114986932069951040} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 114307113894698210} m_MasterData: m_Owner: {fileID: 0} m_Value: m_Type: m_SerializableType: m_SerializableObject: m_Space: 2147483647 m_Property: name: y m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: [] m_Direction: 0 m_LinkedSlots: [] --- !u!114 &114946465509916290 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 9dfea48843f53fc438eabc12a3a30abc, type: 3} m_Name: VFXBasicInitialize m_EditorClassIdentifier: m_Parent: {fileID: 114350483966674976} m_Children: - {fileID: 114206037049139666} - {fileID: 114131763552434164} - {fileID: 8926484042661614588} m_UIPosition: {x: 719, y: -19} m_UICollapsed: 0 m_UISuperCollapsed: 0 m_InputSlots: - {fileID: 114307113894698210} m_OutputSlots: [] m_Label: m_Data: {fileID: 114428730288789306} m_InputFlowSlot: - link: - context: {fileID: 114023846229194376} slotIndex: 0 m_OutputFlowSlot: - link: - context: {fileID: 114780028408030698} slotIndex: 0 --- !u!114 &114963171269329408 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: ac39bd03fca81b849929b9c966f1836a, type: 3} m_Name: VFXSlotFloat3 m_EditorClassIdentifier: m_Parent: {fileID: 114307113894698210} m_Children: - {fileID: 114512514798047786} - {fileID: 114920711487922656} - {fileID: 114380859405582094} m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 114307113894698210} m_MasterData: m_Owner: {fileID: 0} m_Value: m_Type: m_SerializableType: m_SerializableObject: m_Space: 2147483647 m_Property: name: size m_serializedType: m_SerializableType: UnityEngine.Vector3, UnityEngine.CoreModule, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null attributes: - m_Type: 3 m_Min: -Infinity m_Max: Infinity m_Tooltip: Sets the size of the box along each axis. m_Regex: m_RegexMaxLength: 0 m_Direction: 0 m_LinkedSlots: [] --- !u!114 &114986932069951040 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: ac39bd03fca81b849929b9c966f1836a, type: 3} m_Name: VFXSlotFloat3 m_EditorClassIdentifier: m_Parent: {fileID: 114307113894698210} m_Children: - {fileID: 114739294351936256} - {fileID: 114935892456706286} - {fileID: 114538391275492396} m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 114307113894698210} m_MasterData: m_Owner: {fileID: 0} m_Value: m_Type: m_SerializableType: m_SerializableObject: m_Space: 2147483647 m_Property: name: center m_serializedType: m_SerializableType: UnityEngine.Vector3, UnityEngine.CoreModule, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null attributes: - m_Type: 3 m_Min: -Infinity m_Max: Infinity m_Tooltip: Sets the center of the box. m_Regex: m_RegexMaxLength: 0 m_Direction: 0 m_LinkedSlots: [] --- !u!2058629511 &8926484042661614527 VisualEffectResource: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_Name: SteamLeak01 m_Graph: {fileID: 114350483966674976} m_ShaderSources: - compute: 1 name: '[Slowing Steam Puffs]Initialize Particle' source: "#pragma kernel CSMain\r\n#define NB_THREADS_PER_GROUP 64\n#define HAS_ATTRIBUTES 1\n#define VFX_PASSDEPTH_ACTUAL (0)\n#define VFX_PASSDEPTH_MOTION_VECTOR (1)\n#define VFX_PASSDEPTH_SELECTION (2)\n#define VFX_USE_VELOCITY_CURRENT 1\n#define VFX_USE_SEED_CURRENT 1\n#define VFX_USE_LIFETIME_CURRENT 1\n#define VFX_USE_ANGLEZ_CURRENT 1\n#define VFX_USE_TEXINDEX_CURRENT 1\n#define VFX_USE_AGE_CURRENT 1\n#define VFX_USE_POSITION_CURRENT 1\n#define VFX_USE_ALIVE_CURRENT 1\n#define VFX_LOCAL_SPACE 1\n#include \"Packages/com.unity.render-pipelines.high-definition/Runtime/VFXGraph/Shaders/VFXDefines.hlsl\"\n\n\r\n\nstruct Attributes\n{\n float3 velocity;\n uint seed;\n float lifetime;\n float angleZ;\n float texIndex;\n float age;\n float3 position;\n bool alive;\n};\n\nstruct SourceAttributes\n{\n};\n\n\n\r\n\r\n#define USE_DEAD_LIST (VFX_USE_ALIVE_CURRENT && !HAS_STRIPS)\r\n\r\nRWByteAddressBuffer attributeBuffer;\r\nByteAddressBuffer sourceAttributeBuffer;\r\n\r\nCBUFFER_START(initParams)\r\n#if !VFX_USE_SPAWNER_FROM_GPU\r\n uint nbSpawned;\t\t\t\t\t// Numbers of particle spawned\r\n uint spawnIndex;\t\t\t\t// Index of the first particle spawned\r\n uint dispatchWidth;\r\n#else\r\n uint offsetInAdditionalOutput;\r\n\tuint nbMax;\r\n#endif\r\n\tuint systemSeed;\r\nCBUFFER_END\r\n\r\n#if USE_DEAD_LIST\r\nRWStructuredBuffer deadListIn;\r\nByteAddressBuffer deadListCount; // This is bad to use a SRV to fetch deadList count but Unity API currently prevent from copying to CB\r\n#endif\r\n\r\n#if VFX_USE_SPAWNER_FROM_GPU\r\nStructuredBuffer eventList;\r\nByteAddressBuffer inputAdditional;\r\n#endif\r\n\r\n#if HAS_STRIPS\r\nRWBuffer stripDataBuffer;\r\n#endif\r\n\r\n#include \"Packages/com.unity.visualeffectgraph/Shaders/Common/VFXCommonCompute.hlsl\"\n#include \"Packages/com.unity.visualeffectgraph/Shaders/VFXCommon.hlsl\"\n\n\r\n\r\nvoid SetAttribute_E6295C0(inout float3 velocity, inout uint seed, float3 A, float3 B) /*attribute:velocity Composition:Overwrite Source:Slot Random:PerComponent channels:XYZ */\n{\n velocity = lerp(A,B,RAND3);\n}\nvoid SetAttribute_F01429A3(inout float lifetime, inout uint seed, float A, float B) /*attribute:lifetime Composition:Overwrite Source:Slot Random:Uniform channels:XYZ */\n{\n lifetime = lerp(A,B,RAND);\n}\nvoid SetAttribute_48A7C211(inout float angleZ, inout uint seed, float A, float B) /*attribute:angle Composition:Overwrite Source:Slot Random:Uniform channels:Z */\n{\n angleZ = lerp(A.x,B.x,RAND);\n}\n\n\r\n\r\n#if HAS_STRIPS\r\nbool GetParticleIndex(inout uint particleIndex, uint stripIndex)\r\n{\r\n\tuint relativeIndex;\r\n\tInterlockedAdd(STRIP_DATA(STRIP_NEXT_INDEX, stripIndex), 1, relativeIndex);\r\n\tif (relativeIndex >= PARTICLE_PER_STRIP_COUNT) // strip is full\r\n\t{\r\n\t\tInterlockedAdd(STRIP_DATA(STRIP_NEXT_INDEX, stripIndex), -1); // Remove previous increment\r\n\t\treturn false;\r\n\t}\r\n\r\n\tparticleIndex = stripIndex * PARTICLE_PER_STRIP_COUNT + ((STRIP_DATA(STRIP_FIRST_INDEX, stripIndex) + relativeIndex) % PARTICLE_PER_STRIP_COUNT);\r\n return true;\r\n}\r\n#endif\r\n\r\n[numthreads(NB_THREADS_PER_GROUP,1,1)]\r\nvoid CSMain(uint3 groupId : SV_GroupID,\r\n uint3 groupThreadId : SV_GroupThreadID)\r\n{\r\n uint id = groupThreadId.x + groupId.x * NB_THREADS_PER_GROUP;\r\n#if !VFX_USE_SPAWNER_FROM_GPU\r\n id += groupId.y * dispatchWidth * NB_THREADS_PER_GROUP;\r\n#endif\r\n\r\n#if VFX_USE_SPAWNER_FROM_GPU\r\n uint maxThreadId = inputAdditional.Load((offsetInAdditionalOutput * 2 + 0) << 2);\r\n uint currentSpawnIndex = inputAdditional.Load((offsetInAdditionalOutput * 2 + 1) << 2) - maxThreadId;\r\n#else\r\n uint maxThreadId = nbSpawned;\r\n uint currentSpawnIndex = spawnIndex;\r\n#endif\r\n\r\n#if USE_DEAD_LIST\r\n maxThreadId = min(maxThreadId, deadListCount.Load(0x0));\r\n#elif VFX_USE_SPAWNER_FROM_GPU\r\n maxThreadId = min(maxThreadId, nbMax); //otherwise, nbSpawned already clamped on CPU\r\n#endif\r\n\r\n if (id < maxThreadId)\r\n {\r\n#if VFX_USE_SPAWNER_FROM_GPU\r\n int sourceIndex = eventList[id];\r\n#endif\r\n\t\tuint particleIndex = id + currentSpawnIndex;\r\n\t\t\r\n#if !VFX_USE_SPAWNER_FROM_GPU\r\n int sourceIndex = 0;\n /*//Loop with 1 iteration generate a wrong IL Assembly (and actually, useless code)\n uint currentSumSpawnCount = 0u;\n for (sourceIndex=0; sourceIndex<1; sourceIndex++)\n {\n currentSumSpawnCount += uint(asfloat(sourceAttributeBuffer.Load((sourceIndex * 0x1 + 0x0) << 2)));\n if (id < currentSumSpawnCount)\n {\n break;\n }\n }\n */\n \n\r\n#endif\r\n\r\n\t\tAttributes attributes = (Attributes)0;\r\n\t\tSourceAttributes sourceAttributes = (SourceAttributes)0;\r\n\t\t\r\n attributes.velocity = float3(0, 0, 0);\n attributes.seed = (uint)0;\n attributes.lifetime = (float)1;\n attributes.angleZ = (float)0;\n attributes.texIndex = (float)0;\n attributes.age = (float)0;\n attributes.position = float3(0, 0, 0);\n attributes.alive = (bool)true;\n \n\r\n#if VFX_USE_PARTICLEID_CURRENT\r\n attributes.particleId = particleIndex;\r\n#endif\r\n#if VFX_USE_SEED_CURRENT\r\n attributes.seed = WangHash(particleIndex ^ systemSeed);\r\n#endif\r\n#if VFX_USE_SPAWNINDEX_CURRENT\r\n attributes.spawnIndex = id;\r\n#endif\r\n#if HAS_STRIPS\r\n#if !VFX_USE_SPAWNER_FROM_GPU\r\n\t\t\r\n#else\r\n uint stripIndex = sourceIndex;\r\n#endif\r\n\t\tstripIndex = min(stripIndex, STRIP_COUNT);\r\n\r\n if (!GetParticleIndex(particleIndex, stripIndex))\r\n return;\r\n\r\n const StripData stripData = GetStripDataFromStripIndex(stripIndex, PARTICLE_PER_STRIP_COUNT);\r\n\t\tInitStripAttributes(particleIndex, attributes, stripData);\r\n\t\t// TODO Change seed to be sure we're deterministic on random with strip\r\n#endif\r\n \r\n {\n SetAttribute_E6295C0( /*inout */attributes.velocity, /*inout */attributes.seed, float3(-0.200000003, 1, -0.200000003), float3(0.200000003, 2, 0.200000003));\n }\n {\n SetAttribute_F01429A3( /*inout */attributes.lifetime, /*inout */attributes.seed, (float)2, (float)4);\n }\n {\n SetAttribute_48A7C211( /*inout */attributes.angleZ, /*inout */attributes.seed, (float)0, (float)360);\n }\n \n\r\n\t\t\r\n#if VFX_USE_ALIVE_CURRENT\r\n if (attributes.alive)\r\n#endif \r\n {\r\n#if USE_DEAD_LIST\r\n\t uint deadIndex = deadListIn.DecrementCounter();\r\n uint index = deadListIn[deadIndex];\r\n#else\r\n uint index = particleIndex;\r\n#endif\r\n attributeBuffer.Store3((index * 0x4 + 0x0) << 2,asuint(attributes.velocity));\n attributeBuffer.Store((index * 0x1 + 0x80) << 2,asuint(attributes.lifetime));\n attributeBuffer.Store((index * 0x1 + 0xA0) << 2,asuint(attributes.angleZ));\n attributeBuffer.Store((index * 0x3 + 0xC0) << 2,asuint(attributes.texIndex));\n attributeBuffer.Store((index * 0x3 + 0xC1) << 2,asuint(attributes.age));\n attributeBuffer.Store3((index * 0x4 + 0x120) << 2,asuint(attributes.position));\n attributeBuffer.Store((index * 0x3 + 0xC2) << 2,uint(attributes.alive));\n \n\r\n }\r\n }\r\n}\r\n" - compute: 1 name: '[Slowing Steam Puffs]Update Particle' source: "#pragma kernel CSMain\r\n#define NB_THREADS_PER_GROUP 64\n#define HAS_ATTRIBUTES 1\n#define VFX_PASSDEPTH_ACTUAL (0)\n#define VFX_PASSDEPTH_MOTION_VECTOR (1)\n#define VFX_PASSDEPTH_SELECTION (2)\n#define VFX_USE_VELOCITY_CURRENT 1\n#define VFX_USE_LIFETIME_CURRENT 1\n#define VFX_USE_TEXINDEX_CURRENT 1\n#define VFX_USE_MASS_CURRENT 1\n#define VFX_USE_AGE_CURRENT 1\n#define VFX_USE_POSITION_CURRENT 1\n#define VFX_USE_ALIVE_CURRENT 1\n#define VFX_HAS_INDIRECT_DRAW 1\n#define VFX_LOCAL_SPACE 1\n#include \"Packages/com.unity.render-pipelines.high-definition/Runtime/VFXGraph/Shaders/VFXDefines.hlsl\"\n\n\r\nCBUFFER_START(parameters)\n float4 uniform_b;\n float deltaTime_a;\n uint3 PADDING_0;\nCBUFFER_END\n\nstruct Attributes\n{\n float3 velocity;\n float lifetime;\n float texIndex;\n float mass;\n float age;\n float3 position;\n bool alive;\n};\n\nstruct SourceAttributes\n{\n};\n\n\n\r\n\r\n#define USE_DEAD_LIST (VFX_USE_ALIVE_CURRENT && !HAS_STRIPS)\r\n\r\nRWByteAddressBuffer attributeBuffer;\r\n\r\n#if USE_DEAD_LIST\r\nRWStructuredBuffer deadListOut;\r\n#endif\r\n\r\n#if VFX_HAS_INDIRECT_DRAW\r\nRWStructuredBuffer indirectBuffer;\r\n#endif\r\n\r\n#if HAS_STRIPS\r\nRWBuffer stripDataBuffer;\r\n#endif\r\n\r\n#if VFX_USE_STRIPALIVE_CURRENT\r\nBuffer attachedStripDataBuffer;\r\n#endif\r\n\r\nCBUFFER_START(updateParams)\r\n uint nbMax;\r\n\tuint dispatchWidth;\r\n\tuint systemSeed;\r\nCBUFFER_END\r\n\r\n#include \"Packages/com.unity.visualeffectgraph/Shaders/Common/VFXCommonCompute.hlsl\"\n#include \"Packages/com.unity.visualeffectgraph/Shaders/VFXCommon.hlsl\"\n\n\r\n\r\nvoid FlipbookPlay_0(inout float texIndex, float FrameRate, float deltaTime) /*mode:Constant */\n{\n texIndex += FrameRate * deltaTime;\n}\nvoid Drag_0(inout float3 velocity, float mass, float dragCoefficient, float deltaTime) /*UseParticleSize:False */\n{\n velocity *= max(0.0,(1.0 - (dragCoefficient * deltaTime) / mass));\n}\nvoid EulerIntegration(inout float3 position, float3 velocity, float deltaTime)\n{\n position += velocity * deltaTime;\n}\nvoid Age(inout float age, float deltaTime)\n{\n age += deltaTime;\n}\nvoid Reap(float age, float lifetime, inout bool alive)\n{\n if(age > lifetime) { alive = false; }\n}\n\n\r\n\r\n[numthreads(NB_THREADS_PER_GROUP,1,1)]\r\nvoid CSMain(uint3 groupId : SV_GroupID,\r\n uint3 groupThreadId : SV_GroupThreadID)\r\n{\r\n\tuint id = groupThreadId.x + groupId.x * NB_THREADS_PER_GROUP + groupId.y * dispatchWidth * NB_THREADS_PER_GROUP;\r\n\tuint index = id;\r\n\tif (id < nbMax)\r\n\t{\r\n Attributes attributes = (Attributes)0;\r\n\t\tSourceAttributes sourceAttributes = (SourceAttributes)0;\r\n\r\n#if VFX_USE_ALIVE_CURRENT\r\n\t\tattributes.alive = (attributeBuffer.Load((index * 0x3 + 0xC2) << 2));\n\t\t\n\r\n\t\tif (attributes.alive)\r\n\t\t{\r\n\t\t\tattributes.velocity = asfloat(attributeBuffer.Load3((index * 0x4 + 0x0) << 2));\n\t\t\tattributes.lifetime = asfloat(attributeBuffer.Load((index * 0x1 + 0x80) << 2));\n\t\t\tattributes.texIndex = asfloat(attributeBuffer.Load((index * 0x3 + 0xC0) << 2));\n\t\t\tattributes.mass = (float)1;\n\t\t\tattributes.age = asfloat(attributeBuffer.Load((index * 0x3 + 0xC1) << 2));\n\t\t\tattributes.position = asfloat(attributeBuffer.Load3((index * 0x4 + 0x120) << 2));\n\t\t\t\n\r\n\r\n// Initialize built-in needed attributes\r\n#if VFX_USE_OLDPOSITION_CURRENT\r\n\t\t\tattributes.oldPosition = attributes.position;\r\n#endif\r\n#if HAS_STRIPS\r\n const StripData stripData = GetStripDataFromParticleIndex(index, PARTICLE_PER_STRIP_COUNT);\r\n InitStripAttributes(index, attributes, stripData);\r\n#endif\r\n\t\t\t\r\n\t\t\t{\n\t\t\t float tmp_z = attributes.age / attributes.lifetime;\n\t\t\t float tmp_ba = SampleCurve(uniform_b,tmp_z);\n\t\t\t FlipbookPlay_0( /*inout */attributes.texIndex, tmp_ba, deltaTime_a);\n\t\t\t}\n\t\t\t{\n\t\t\t Drag_0( /*inout */attributes.velocity, attributes.mass, (float)0.730000019, deltaTime_a);\n\t\t\t}\n\t\t\tEulerIntegration( /*inout */attributes.position, attributes.velocity, deltaTime_a);\n\t\t\tAge( /*inout */attributes.age, deltaTime_a);\n\t\t\tReap(attributes.age, attributes.lifetime, /*inout */attributes.alive);\n\t\t\t\n\r\n\r\n\t\t\tif (attributes.alive)\r\n\t\t\t{\r\n\t\t\t\tattributeBuffer.Store3((index * 0x4 + 0x0) << 2,asuint(attributes.velocity));\n\t\t\t\tattributeBuffer.Store((index * 0x3 + 0xC0) << 2,asuint(attributes.texIndex));\n\t\t\t\tattributeBuffer.Store((index * 0x3 + 0xC1) << 2,asuint(attributes.age));\n\t\t\t\tattributeBuffer.Store3((index * 0x4 + 0x120) << 2,asuint(attributes.position));\n\t\t\t\t\n\r\n#if VFX_HAS_INDIRECT_DRAW\r\n uint indirectIndex = indirectBuffer.IncrementCounter();\r\n\t\t\t\tindirectBuffer[indirectIndex] = index;\r\n#endif\r\n\r\n#if HAS_STRIPS\t\t\t\r\n\t\t\t\tuint relativeIndexInStrip = GetRelativeIndex(index, stripData);\r\n\t\t\t\tInterlockedMin(STRIP_DATA(STRIP_MIN_ALIVE, stripData.stripIndex), relativeIndexInStrip);\r\n\t\t\t\tInterlockedMax(STRIP_DATA(STRIP_MAX_ALIVE, stripData.stripIndex), relativeIndexInStrip);\r\n#endif\r\n\t\t\t}\r\n\t\t\telse\r\n\t\t\t{\r\n\t\t\t\tattributeBuffer.Store((index * 0x3 + 0xC2) << 2,uint(attributes.alive));\n\t\t\t\t\n\r\n#if USE_DEAD_LIST && !VFX_USE_STRIPALIVE_CURRENT\r\n\t\t\t\tuint deadIndex = deadListOut.IncrementCounter();\r\n\t\t\t\tdeadListOut[deadIndex] = index;\r\n#endif\r\n\t\t\t}\r\n\t\t}\r\n#if USE_DEAD_LIST && VFX_USE_STRIPALIVE_CURRENT\r\n else if (attributes.stripAlive)\r\n {\r\n if (STRIP_DATA_X(attachedStripDataBuffer, STRIP_MIN_ALIVE, index) == ~1) // Attached strip is no longer alive, recycle the particle \r\n {\r\n uint deadIndex = deadListOut.IncrementCounter();\r\n\t\t\t\tdeadListOut[deadIndex] = index;\r\n attributes.stripAlive = false;\r\n \r\n } \r\n }\r\n#endif\r\n#else\r\n\t\tattributes.velocity = asfloat(attributeBuffer.Load3((index * 0x4 + 0x0) << 2));\n\t\tattributes.lifetime = asfloat(attributeBuffer.Load((index * 0x1 + 0x80) << 2));\n\t\tattributes.texIndex = asfloat(attributeBuffer.Load((index * 0x3 + 0xC0) << 2));\n\t\tattributes.mass = (float)1;\n\t\tattributes.age = asfloat(attributeBuffer.Load((index * 0x3 + 0xC1) << 2));\n\t\tattributes.position = asfloat(attributeBuffer.Load3((index * 0x4 + 0x120) << 2));\n\t\tattributes.alive = (attributeBuffer.Load((index * 0x3 + 0xC2) << 2));\n\t\t\n\r\n\t\t\r\n#if VFX_USE_OLDPOSITION_CURRENT\r\n\t\tattributes.oldPosition = attributes.position;\r\n#endif\r\n#if HAS_STRIPS\r\n const StripData stripData = GetStripDataFromParticleIndex(index, PARTICLE_PER_STRIP_COUNT);\r\n InitStripAttributes(index, attributes, stripData);\r\n#endif\r\n\t\t\r\n\t\t{\n\t\t float tmp_z = attributes.age / attributes.lifetime;\n\t\t float tmp_ba = SampleCurve(uniform_b,tmp_z);\n\t\t FlipbookPlay_0( /*inout */attributes.texIndex, tmp_ba, deltaTime_a);\n\t\t}\n\t\t{\n\t\t Drag_0( /*inout */attributes.velocity, attributes.mass, (float)0.730000019, deltaTime_a);\n\t\t}\n\t\tEulerIntegration( /*inout */attributes.position, attributes.velocity, deltaTime_a);\n\t\tAge( /*inout */attributes.age, deltaTime_a);\n\t\tReap(attributes.age, attributes.lifetime, /*inout */attributes.alive);\n\t\t\n\r\n\t\tattributeBuffer.Store3((index * 0x4 + 0x0) << 2,asuint(attributes.velocity));\n\t\tattributeBuffer.Store((index * 0x3 + 0xC0) << 2,asuint(attributes.texIndex));\n\t\tattributeBuffer.Store((index * 0x3 + 0xC1) << 2,asuint(attributes.age));\n\t\tattributeBuffer.Store3((index * 0x4 + 0x120) << 2,asuint(attributes.position));\n\t\tattributeBuffer.Store((index * 0x3 + 0xC2) << 2,uint(attributes.alive));\n\t\t\n\r\n#if VFX_HAS_INDIRECT_DRAW\r\n uint indirectIndex = indirectBuffer.IncrementCounter();\r\n\t\tindirectBuffer[indirectIndex] = index;\r\n#endif\r\n#endif\r\n\t}\r\n}\r\n" - compute: 1 name: '[Leaking Pressured Air]Initialize Particle' source: "#pragma kernel CSMain\r\n#define NB_THREADS_PER_GROUP 64\n#define HAS_ATTRIBUTES 1\n#define VFX_PASSDEPTH_ACTUAL (0)\n#define VFX_PASSDEPTH_MOTION_VECTOR (1)\n#define VFX_PASSDEPTH_SELECTION (2)\n#define VFX_USE_VELOCITY_CURRENT 1\n#define VFX_USE_SEED_CURRENT 1\n#define VFX_USE_LIFETIME_CURRENT 1\n#define VFX_USE_TEXINDEX_CURRENT 1\n#define VFX_USE_POSITION_CURRENT 1\n#define VFX_USE_ALIVE_CURRENT 1\n#define VFX_USE_AGE_CURRENT 1\n#define VFX_LOCAL_SPACE 1\n#include \"Packages/com.unity.render-pipelines.high-definition/Runtime/VFXGraph/Shaders/VFXDefines.hlsl\"\n\n\r\n\nstruct Attributes\n{\n float3 velocity;\n uint seed;\n float lifetime;\n float texIndex;\n float3 position;\n bool alive;\n float age;\n};\n\nstruct SourceAttributes\n{\n};\n\n\n\r\n\r\n#define USE_DEAD_LIST (VFX_USE_ALIVE_CURRENT && !HAS_STRIPS)\r\n\r\nRWByteAddressBuffer attributeBuffer;\r\nByteAddressBuffer sourceAttributeBuffer;\r\n\r\nCBUFFER_START(initParams)\r\n#if !VFX_USE_SPAWNER_FROM_GPU\r\n uint nbSpawned;\t\t\t\t\t// Numbers of particle spawned\r\n uint spawnIndex;\t\t\t\t// Index of the first particle spawned\r\n uint dispatchWidth;\r\n#else\r\n uint offsetInAdditionalOutput;\r\n\tuint nbMax;\r\n#endif\r\n\tuint systemSeed;\r\nCBUFFER_END\r\n\r\n#if USE_DEAD_LIST\r\nRWStructuredBuffer deadListIn;\r\nByteAddressBuffer deadListCount; // This is bad to use a SRV to fetch deadList count but Unity API currently prevent from copying to CB\r\n#endif\r\n\r\n#if VFX_USE_SPAWNER_FROM_GPU\r\nStructuredBuffer eventList;\r\nByteAddressBuffer inputAdditional;\r\n#endif\r\n\r\n#if HAS_STRIPS\r\nRWBuffer stripDataBuffer;\r\n#endif\r\n\r\n#include \"Packages/com.unity.visualeffectgraph/Shaders/Common/VFXCommonCompute.hlsl\"\n#include \"Packages/com.unity.visualeffectgraph/Shaders/VFXCommon.hlsl\"\n\n\r\n\r\nvoid SetAttribute_E6295C0(inout float3 velocity, inout uint seed, float3 A, float3 B) /*attribute:velocity Composition:Overwrite Source:Slot Random:PerComponent channels:XYZ */\n{\n velocity = lerp(A,B,RAND3);\n}\nvoid SetAttribute_F01429A3(inout float lifetime, inout uint seed, float A, float B) /*attribute:lifetime Composition:Overwrite Source:Slot Random:Uniform channels:XYZ */\n{\n lifetime = lerp(A,B,RAND);\n}\nvoid SetAttribute_CA100327(inout float texIndex, inout uint seed, float A, float B) /*attribute:texIndex Composition:Overwrite Source:Slot Random:Uniform channels:XYZ */\n{\n texIndex = lerp(A,B,RAND);\n}\n\n\r\n\r\n#if HAS_STRIPS\r\nbool GetParticleIndex(inout uint particleIndex, uint stripIndex)\r\n{\r\n\tuint relativeIndex;\r\n\tInterlockedAdd(STRIP_DATA(STRIP_NEXT_INDEX, stripIndex), 1, relativeIndex);\r\n\tif (relativeIndex >= PARTICLE_PER_STRIP_COUNT) // strip is full\r\n\t{\r\n\t\tInterlockedAdd(STRIP_DATA(STRIP_NEXT_INDEX, stripIndex), -1); // Remove previous increment\r\n\t\treturn false;\r\n\t}\r\n\r\n\tparticleIndex = stripIndex * PARTICLE_PER_STRIP_COUNT + ((STRIP_DATA(STRIP_FIRST_INDEX, stripIndex) + relativeIndex) % PARTICLE_PER_STRIP_COUNT);\r\n return true;\r\n}\r\n#endif\r\n\r\n[numthreads(NB_THREADS_PER_GROUP,1,1)]\r\nvoid CSMain(uint3 groupId : SV_GroupID,\r\n uint3 groupThreadId : SV_GroupThreadID)\r\n{\r\n uint id = groupThreadId.x + groupId.x * NB_THREADS_PER_GROUP;\r\n#if !VFX_USE_SPAWNER_FROM_GPU\r\n id += groupId.y * dispatchWidth * NB_THREADS_PER_GROUP;\r\n#endif\r\n\r\n#if VFX_USE_SPAWNER_FROM_GPU\r\n uint maxThreadId = inputAdditional.Load((offsetInAdditionalOutput * 2 + 0) << 2);\r\n uint currentSpawnIndex = inputAdditional.Load((offsetInAdditionalOutput * 2 + 1) << 2) - maxThreadId;\r\n#else\r\n uint maxThreadId = nbSpawned;\r\n uint currentSpawnIndex = spawnIndex;\r\n#endif\r\n\r\n#if USE_DEAD_LIST\r\n maxThreadId = min(maxThreadId, deadListCount.Load(0x0));\r\n#elif VFX_USE_SPAWNER_FROM_GPU\r\n maxThreadId = min(maxThreadId, nbMax); //otherwise, nbSpawned already clamped on CPU\r\n#endif\r\n\r\n if (id < maxThreadId)\r\n {\r\n#if VFX_USE_SPAWNER_FROM_GPU\r\n int sourceIndex = eventList[id];\r\n#endif\r\n\t\tuint particleIndex = id + currentSpawnIndex;\r\n\t\t\r\n#if !VFX_USE_SPAWNER_FROM_GPU\r\n int sourceIndex = 0;\n /*//Loop with 1 iteration generate a wrong IL Assembly (and actually, useless code)\n uint currentSumSpawnCount = 0u;\n for (sourceIndex=0; sourceIndex<1; sourceIndex++)\n {\n currentSumSpawnCount += uint(asfloat(sourceAttributeBuffer.Load((sourceIndex * 0x1 + 0x0) << 2)));\n if (id < currentSumSpawnCount)\n {\n break;\n }\n }\n */\n \n\r\n#endif\r\n\r\n\t\tAttributes attributes = (Attributes)0;\r\n\t\tSourceAttributes sourceAttributes = (SourceAttributes)0;\r\n\t\t\r\n attributes.velocity = float3(0, 0, 0);\n attributes.seed = (uint)0;\n attributes.lifetime = (float)1;\n attributes.texIndex = (float)0;\n attributes.position = float3(0, 0, 0);\n attributes.alive = (bool)true;\n attributes.age = (float)0;\n \n\r\n#if VFX_USE_PARTICLEID_CURRENT\r\n attributes.particleId = particleIndex;\r\n#endif\r\n#if VFX_USE_SEED_CURRENT\r\n attributes.seed = WangHash(particleIndex ^ systemSeed);\r\n#endif\r\n#if VFX_USE_SPAWNINDEX_CURRENT\r\n attributes.spawnIndex = id;\r\n#endif\r\n#if HAS_STRIPS\r\n#if !VFX_USE_SPAWNER_FROM_GPU\r\n\t\t\r\n#else\r\n uint stripIndex = sourceIndex;\r\n#endif\r\n\t\tstripIndex = min(stripIndex, STRIP_COUNT);\r\n\r\n if (!GetParticleIndex(particleIndex, stripIndex))\r\n return;\r\n\r\n const StripData stripData = GetStripDataFromStripIndex(stripIndex, PARTICLE_PER_STRIP_COUNT);\r\n\t\tInitStripAttributes(particleIndex, attributes, stripData);\r\n\t\t// TODO Change seed to be sure we're deterministic on random with strip\r\n#endif\r\n \r\n {\n SetAttribute_E6295C0( /*inout */attributes.velocity, /*inout */attributes.seed, float3(-0.200000003, 2, -0.200000003), float3(0.200000003, 2, 0.200000003));\n }\n {\n SetAttribute_F01429A3( /*inout */attributes.lifetime, /*inout */attributes.seed, (float)0.5, (float)0.819999993);\n }\n {\n SetAttribute_CA100327( /*inout */attributes.texIndex, /*inout */attributes.seed, (float)0, (float)32);\n }\n \n\r\n\t\t\r\n#if VFX_USE_ALIVE_CURRENT\r\n if (attributes.alive)\r\n#endif \r\n {\r\n#if USE_DEAD_LIST\r\n\t uint deadIndex = deadListIn.DecrementCounter();\r\n uint index = deadListIn[deadIndex];\r\n#else\r\n uint index = particleIndex;\r\n#endif\r\n attributeBuffer.Store3((index * 0x8 + 0x0) << 2,asuint(attributes.velocity));\n attributeBuffer.Store((index * 0x1 + 0x100) << 2,asuint(attributes.lifetime));\n attributeBuffer.Store((index * 0x8 + 0x3) << 2,asuint(attributes.texIndex));\n attributeBuffer.Store3((index * 0x4 + 0x120) << 2,asuint(attributes.position));\n attributeBuffer.Store((index * 0x8 + 0x4) << 2,uint(attributes.alive));\n attributeBuffer.Store((index * 0x8 + 0x5) << 2,asuint(attributes.age));\n \n\r\n }\r\n }\r\n}\r\n" - compute: 1 name: '[Leaking Pressured Air]Update Particle' source: "#pragma kernel CSMain\r\n#define NB_THREADS_PER_GROUP 64\n#define HAS_ATTRIBUTES 1\n#define VFX_PASSDEPTH_ACTUAL (0)\n#define VFX_PASSDEPTH_MOTION_VECTOR (1)\n#define VFX_PASSDEPTH_SELECTION (2)\n#define VFX_USE_VELOCITY_CURRENT 1\n#define VFX_USE_LIFETIME_CURRENT 1\n#define VFX_USE_TEXINDEX_CURRENT 1\n#define VFX_USE_MASS_CURRENT 1\n#define VFX_USE_POSITION_CURRENT 1\n#define VFX_USE_ALIVE_CURRENT 1\n#define VFX_USE_AGE_CURRENT 1\n#define VFX_HAS_INDIRECT_DRAW 1\n#define VFX_LOCAL_SPACE 1\n#include \"Packages/com.unity.render-pipelines.high-definition/Runtime/VFXGraph/Shaders/VFXDefines.hlsl\"\n\n\r\nCBUFFER_START(parameters)\n float deltaTime_a;\n uint3 PADDING_0;\nCBUFFER_END\n\nstruct Attributes\n{\n float3 velocity;\n float lifetime;\n float texIndex;\n float mass;\n float3 position;\n bool alive;\n float age;\n};\n\nstruct SourceAttributes\n{\n};\n\n\n\r\n\r\n#define USE_DEAD_LIST (VFX_USE_ALIVE_CURRENT && !HAS_STRIPS)\r\n\r\nRWByteAddressBuffer attributeBuffer;\r\n\r\n#if USE_DEAD_LIST\r\nRWStructuredBuffer deadListOut;\r\n#endif\r\n\r\n#if VFX_HAS_INDIRECT_DRAW\r\nRWStructuredBuffer indirectBuffer;\r\n#endif\r\n\r\n#if HAS_STRIPS\r\nRWBuffer stripDataBuffer;\r\n#endif\r\n\r\n#if VFX_USE_STRIPALIVE_CURRENT\r\nBuffer attachedStripDataBuffer;\r\n#endif\r\n\r\nCBUFFER_START(updateParams)\r\n uint nbMax;\r\n\tuint dispatchWidth;\r\n\tuint systemSeed;\r\nCBUFFER_END\r\n\r\n#include \"Packages/com.unity.visualeffectgraph/Shaders/Common/VFXCommonCompute.hlsl\"\n#include \"Packages/com.unity.visualeffectgraph/Shaders/VFXCommon.hlsl\"\n\n\r\n\r\nvoid FlipbookPlay_0(inout float texIndex, float FrameRate, float deltaTime) /*mode:Constant */\n{\n texIndex += FrameRate * deltaTime;\n}\nvoid Drag_0(inout float3 velocity, float mass, float dragCoefficient, float deltaTime) /*UseParticleSize:False */\n{\n velocity *= max(0.0,(1.0 - (dragCoefficient * deltaTime) / mass));\n}\nvoid EulerIntegration(inout float3 position, float3 velocity, float deltaTime)\n{\n position += velocity * deltaTime;\n}\nvoid Age(inout float age, float deltaTime)\n{\n age += deltaTime;\n}\nvoid Reap(float age, float lifetime, inout bool alive)\n{\n if(age > lifetime) { alive = false; }\n}\n\n\r\n\r\n[numthreads(NB_THREADS_PER_GROUP,1,1)]\r\nvoid CSMain(uint3 groupId : SV_GroupID,\r\n uint3 groupThreadId : SV_GroupThreadID)\r\n{\r\n\tuint id = groupThreadId.x + groupId.x * NB_THREADS_PER_GROUP + groupId.y * dispatchWidth * NB_THREADS_PER_GROUP;\r\n\tuint index = id;\r\n\tif (id < nbMax)\r\n\t{\r\n Attributes attributes = (Attributes)0;\r\n\t\tSourceAttributes sourceAttributes = (SourceAttributes)0;\r\n\r\n#if VFX_USE_ALIVE_CURRENT\r\n\t\tattributes.alive = (attributeBuffer.Load((index * 0x8 + 0x4) << 2));\n\t\t\n\r\n\t\tif (attributes.alive)\r\n\t\t{\r\n\t\t\tattributes.velocity = asfloat(attributeBuffer.Load3((index * 0x8 + 0x0) << 2));\n\t\t\tattributes.lifetime = asfloat(attributeBuffer.Load((index * 0x1 + 0x100) << 2));\n\t\t\tattributes.texIndex = asfloat(attributeBuffer.Load((index * 0x8 + 0x3) << 2));\n\t\t\tattributes.mass = (float)1;\n\t\t\tattributes.position = asfloat(attributeBuffer.Load3((index * 0x4 + 0x120) << 2));\n\t\t\tattributes.age = asfloat(attributeBuffer.Load((index * 0x8 + 0x5) << 2));\n\t\t\t\n\r\n\r\n// Initialize built-in needed attributes\r\n#if VFX_USE_OLDPOSITION_CURRENT\r\n\t\t\tattributes.oldPosition = attributes.position;\r\n#endif\r\n#if HAS_STRIPS\r\n const StripData stripData = GetStripDataFromParticleIndex(index, PARTICLE_PER_STRIP_COUNT);\r\n InitStripAttributes(index, attributes, stripData);\r\n#endif\r\n\t\t\t\r\n\t\t\t{\n\t\t\t FlipbookPlay_0( /*inout */attributes.texIndex, (float)25, deltaTime_a);\n\t\t\t}\n\t\t\t{\n\t\t\t Drag_0( /*inout */attributes.velocity, attributes.mass, (float)0.730000019, deltaTime_a);\n\t\t\t}\n\t\t\tEulerIntegration( /*inout */attributes.position, attributes.velocity, deltaTime_a);\n\t\t\tAge( /*inout */attributes.age, deltaTime_a);\n\t\t\tReap(attributes.age, attributes.lifetime, /*inout */attributes.alive);\n\t\t\t\n\r\n\r\n\t\t\tif (attributes.alive)\r\n\t\t\t{\r\n\t\t\t\tattributeBuffer.Store3((index * 0x8 + 0x0) << 2,asuint(attributes.velocity));\n\t\t\t\tattributeBuffer.Store((index * 0x8 + 0x3) << 2,asuint(attributes.texIndex));\n\t\t\t\tattributeBuffer.Store3((index * 0x4 + 0x120) << 2,asuint(attributes.position));\n\t\t\t\tattributeBuffer.Store((index * 0x8 + 0x5) << 2,asuint(attributes.age));\n\t\t\t\t\n\r\n#if VFX_HAS_INDIRECT_DRAW\r\n uint indirectIndex = indirectBuffer.IncrementCounter();\r\n\t\t\t\tindirectBuffer[indirectIndex] = index;\r\n#endif\r\n\r\n#if HAS_STRIPS\t\t\t\r\n\t\t\t\tuint relativeIndexInStrip = GetRelativeIndex(index, stripData);\r\n\t\t\t\tInterlockedMin(STRIP_DATA(STRIP_MIN_ALIVE, stripData.stripIndex), relativeIndexInStrip);\r\n\t\t\t\tInterlockedMax(STRIP_DATA(STRIP_MAX_ALIVE, stripData.stripIndex), relativeIndexInStrip);\r\n#endif\r\n\t\t\t}\r\n\t\t\telse\r\n\t\t\t{\r\n\t\t\t\tattributeBuffer.Store((index * 0x8 + 0x4) << 2,uint(attributes.alive));\n\t\t\t\t\n\r\n#if USE_DEAD_LIST && !VFX_USE_STRIPALIVE_CURRENT\r\n\t\t\t\tuint deadIndex = deadListOut.IncrementCounter();\r\n\t\t\t\tdeadListOut[deadIndex] = index;\r\n#endif\r\n\t\t\t}\r\n\t\t}\r\n#if USE_DEAD_LIST && VFX_USE_STRIPALIVE_CURRENT\r\n else if (attributes.stripAlive)\r\n {\r\n if (STRIP_DATA_X(attachedStripDataBuffer, STRIP_MIN_ALIVE, index) == ~1) // Attached strip is no longer alive, recycle the particle \r\n {\r\n uint deadIndex = deadListOut.IncrementCounter();\r\n\t\t\t\tdeadListOut[deadIndex] = index;\r\n attributes.stripAlive = false;\r\n \r\n } \r\n }\r\n#endif\r\n#else\r\n\t\tattributes.velocity = asfloat(attributeBuffer.Load3((index * 0x8 + 0x0) << 2));\n\t\tattributes.lifetime = asfloat(attributeBuffer.Load((index * 0x1 + 0x100) << 2));\n\t\tattributes.texIndex = asfloat(attributeBuffer.Load((index * 0x8 + 0x3) << 2));\n\t\tattributes.mass = (float)1;\n\t\tattributes.position = asfloat(attributeBuffer.Load3((index * 0x4 + 0x120) << 2));\n\t\tattributes.alive = (attributeBuffer.Load((index * 0x8 + 0x4) << 2));\n\t\tattributes.age = asfloat(attributeBuffer.Load((index * 0x8 + 0x5) << 2));\n\t\t\n\r\n\t\t\r\n#if VFX_USE_OLDPOSITION_CURRENT\r\n\t\tattributes.oldPosition = attributes.position;\r\n#endif\r\n#if HAS_STRIPS\r\n const StripData stripData = GetStripDataFromParticleIndex(index, PARTICLE_PER_STRIP_COUNT);\r\n InitStripAttributes(index, attributes, stripData);\r\n#endif\r\n\t\t\r\n\t\t{\n\t\t FlipbookPlay_0( /*inout */attributes.texIndex, (float)25, deltaTime_a);\n\t\t}\n\t\t{\n\t\t Drag_0( /*inout */attributes.velocity, attributes.mass, (float)0.730000019, deltaTime_a);\n\t\t}\n\t\tEulerIntegration( /*inout */attributes.position, attributes.velocity, deltaTime_a);\n\t\tAge( /*inout */attributes.age, deltaTime_a);\n\t\tReap(attributes.age, attributes.lifetime, /*inout */attributes.alive);\n\t\t\n\r\n\t\tattributeBuffer.Store3((index * 0x8 + 0x0) << 2,asuint(attributes.velocity));\n\t\tattributeBuffer.Store((index * 0x8 + 0x3) << 2,asuint(attributes.texIndex));\n\t\tattributeBuffer.Store3((index * 0x4 + 0x120) << 2,asuint(attributes.position));\n\t\tattributeBuffer.Store((index * 0x8 + 0x4) << 2,uint(attributes.alive));\n\t\tattributeBuffer.Store((index * 0x8 + 0x5) << 2,asuint(attributes.age));\n\t\t\n\r\n#if VFX_HAS_INDIRECT_DRAW\r\n uint indirectIndex = indirectBuffer.IncrementCounter();\r\n\t\tindirectBuffer[indirectIndex] = index;\r\n#endif\r\n#endif\r\n\t}\r\n}\r\n" - compute: 0 name: '[Slowing Steam Puffs]Output Particle Lit Octagon' source: "Shader \"Hidden/VFX/SteamLeak01/Slowing Steam Puffs/Output Particle Lit Octagon\"\n{\r\n\tSubShader\r\n\t{\t\r\n\t\tCull Off\r\n\t\t\r\n\t\tTags { \"Queue\"=\"Transparent+400\" \"IgnoreProjector\"=\"True\" \"RenderType\"=\"Transparent\" }\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\tBlend One OneMinusSrcAlpha , Zero OneMinusSrcAlpha\n\t\tZTest LEqual\n\t\tZWrite Off\n\t\tCull Off\n\t\t\n\t\n\t\t\t\n\t\tHLSLINCLUDE\n\t\t\n\t\t#define NB_THREADS_PER_GROUP 64\n\t\t#define HAS_ATTRIBUTES 1\n\t\t#define VFX_PASSDEPTH_ACTUAL (0)\n\t\t#define VFX_PASSDEPTH_MOTION_VECTOR (1)\n\t\t#define VFX_PASSDEPTH_SELECTION (2)\n\t\t#define VFX_USE_LIFETIME_CURRENT 1\n\t\t#define VFX_USE_ANGLEZ_CURRENT 1\n\t\t#define VFX_USE_TEXINDEX_CURRENT 1\n\t\t#define VFX_USE_AGE_CURRENT 1\n\t\t#define VFX_USE_POSITION_CURRENT 1\n\t\t#define VFX_USE_COLOR_CURRENT 1\n\t\t#define VFX_USE_ALPHA_CURRENT 1\n\t\t#define VFX_USE_ALIVE_CURRENT 1\n\t\t#define VFX_USE_AXISX_CURRENT 1\n\t\t#define VFX_USE_AXISY_CURRENT 1\n\t\t#define VFX_USE_AXISZ_CURRENT 1\n\t\t#define VFX_USE_ANGLEX_CURRENT 1\n\t\t#define VFX_USE_ANGLEY_CURRENT 1\n\t\t#define VFX_USE_PIVOTX_CURRENT 1\n\t\t#define VFX_USE_PIVOTY_CURRENT 1\n\t\t#define VFX_USE_PIVOTZ_CURRENT 1\n\t\t#define VFX_USE_SIZE_CURRENT 1\n\t\t#define VFX_USE_SCALEX_CURRENT 1\n\t\t#define VFX_USE_SCALEY_CURRENT 1\n\t\t#define VFX_USE_SCALEZ_CURRENT 1\n\t\t#define VFX_COLORMAPPING_DEFAULT 1\n\t\t#define IS_TRANSPARENT_PARTICLE 1\n\t\t#define USE_SOFT_PARTICLE 1\n\t\t#define VFX_BLENDMODE_ALPHA 1\n\t\t#define VFX_HAS_INDIRECT_DRAW 1\n\t\t#define USE_FLIPBOOK 1\n\t\t#define USE_FLIPBOOK_INTERPOLATION 1\n\t\t#define HDRP_LIT 1\n\t\t#define HDRP_MATERIAL_TYPE_TRANSLUCENT 1\n\t\t#define HDRP_USE_BASE_COLOR_MAP 1\n\t\t#define HDRP_USE_BASE_COLOR_MAP_ALPHA 1\n\t\t#define USE_NORMAL_MAP 1\n\t\t#define HDRP_USE_BASE_COLOR 1\n\t\t#define USE_ONLY_AMBIENT_LIGHTING 1\n\t\t#define USE_NORMAL_BENDING 1\n\t\t#define FORCE_NORMAL_VARYING 1\n\t\t#define VFX_PRIMITIVE_OCTAGON 1\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t#define VFX_LOCAL_SPACE 1\n\t\t#include \"Packages/com.unity.render-pipelines.high-definition/Runtime/VFXGraph/Shaders/VFXDefines.hlsl\"\n\t\t\n\n\t\tCBUFFER_START(parameters)\n\t\t float4 Size_c;\n\t\t float Alpha_e;\n\t\t float gradient_f;\n\t\t uint2 PADDING_0;\n\t\tCBUFFER_END\n\t\t\n\t\tstruct Attributes\n\t\t{\n\t\t float lifetime;\n\t\t float angleZ;\n\t\t float texIndex;\n\t\t float age;\n\t\t float3 position;\n\t\t float3 color;\n\t\t float alpha;\n\t\t bool alive;\n\t\t float3 axisX;\n\t\t float3 axisY;\n\t\t float3 axisZ;\n\t\t float angleX;\n\t\t float angleY;\n\t\t float pivotX;\n\t\t float pivotY;\n\t\t float pivotZ;\n\t\t float size;\n\t\t float scaleX;\n\t\t float scaleY;\n\t\t float scaleZ;\n\t\t};\n\t\t\n\t\tstruct SourceAttributes\n\t\t{\n\t\t};\n\t\t\n\t\tTexture2D baseColorMap;\n\t\tSamplerState samplerbaseColorMap;\n\t\tfloat4 baseColorMap_TexelSize;\n\t\tTexture2D normalMap;\n\t\tSamplerState samplernormalMap;\n\t\tfloat4 normalMap_TexelSize;\n\t\t\n\n\t\t\n\t\t#define VFX_NEEDS_COLOR_INTERPOLATOR (VFX_USE_COLOR_CURRENT || VFX_USE_ALPHA_CURRENT)\n\t\t#if HAS_STRIPS\n\t\t#define VFX_OPTIONAL_INTERPOLATION \n\t\t#else\n\t\t#define VFX_OPTIONAL_INTERPOLATION nointerpolation\n\t\t#endif\n\t\t\n\t\tByteAddressBuffer attributeBuffer;\t\n\t\t\n\t\t#if VFX_HAS_INDIRECT_DRAW\n\t\tStructuredBuffer indirectBuffer;\t\n\t\t#endif\t\n\t\t\n\t\t#if USE_DEAD_LIST_COUNT\n\t\tByteAddressBuffer deadListCount;\n\t\t#endif\n\t\t\n\t\t#if HAS_STRIPS\n\t\tBuffer stripDataBuffer;\n\t\t#endif\n\t\t\n\t\t#if WRITE_MOTION_VECTOR_IN_FORWARD || USE_MOTION_VECTORS_PASS\n\t\tByteAddressBuffer elementToVFXBufferPrevious;\n\t\t#endif\n\t\t\n\t\tCBUFFER_START(outputParams)\n\t\t\tfloat nbMax;\n\t\t\tfloat systemSeed;\n\t\tCBUFFER_END\n\t\t\n\t\t// Helper macros to always use a valid instanceID\n\t\t#if defined(UNITY_STEREO_INSTANCING_ENABLED)\n\t\t\t#define VFX_DECLARE_INSTANCE_ID UNITY_VERTEX_INPUT_INSTANCE_ID\n\t\t\t#define VFX_GET_INSTANCE_ID(i) unity_InstanceID\n\t\t#else\n\t\t\t#define VFX_DECLARE_INSTANCE_ID uint instanceID : SV_InstanceID;\n\t\t\t#define VFX_GET_INSTANCE_ID(i) i.instanceID\n\t\t#endif\n\t\t\n\t\tENDHLSL\n\t\t\n\r\n\t\tPass\n\t\t{\t\t\n\t\t\tTags { \"LightMode\"=\"SceneSelectionPass\" }\n\t\t\n\t\t\tZWrite On\n\t\t\tBlend Off\n\t\t\t\n\t\t\tHLSLPROGRAM\n\t\t\t#define VFX_PASSDEPTH VFX_PASSDEPTH_SELECTION\n\t\t\t#pragma target 4.5\n\t\t\t#define UNITY_MATERIAL_LIT\n\t\t\t#pragma multi_compile _ WRITE_NORMAL_BUFFER\n\t\t\t\n\t\t\t#define NEEDS_NORMAL\tdefined(WRITE_NORMAL_BUFFER) || FORCE_NORMAL_VARYING || SHADERGRAPH_NEEDS_NORMAL_DEPTHONLY\n\t\t\t#define NEEDS_TANGENT\tUSE_NORMAL_MAP || USE_NORMAL_BENDING || SHADERGRAPH_NEEDS_TANGENT_DEPTHONLY\n\t\t\t\n\t\t\tstruct ps_input\n\t\t\t{\n\t\t\t\tfloat4 pos : SV_POSITION;\n\t\t\t\t#if USE_FLIPBOOK_INTERPOLATION\n\t\t\t\tfloat4 uv : TEXCOORD0;\n\t\t\t\t#else\n\t\t\t\tfloat2 uv : TEXCOORD0;\t\n\t\t\t\t#endif\n\t\t\t\t#if USE_ALPHA_TEST || USE_FLIPBOOK_INTERPOLATION || VFX_USE_ALPHA_CURRENT\n\t\t\t\t// x: alpha threshold\n\t\t\t\t// y: frame blending factor\n\t\t\t\t// z: alpha\n\t\t\t\t// w: smoothness\n\t\t\t\tVFX_OPTIONAL_INTERPOLATION float4 builtInInterpolants : TEXCOORD1;\n\t\t\t\t#endif\n\t\t\t\t\n\t\t\t\t#if USE_FLIPBOOK_MOTIONVECTORS\n\t\t\t\t// x: motion vector scale u\n\t\t\t\t// y: motion vector scale v\n\t\t\t\tVFX_OPTIONAL_INTERPOLATION float2 builtInInterpolants2 : TEXCOORD2;\n\t\t\t\t#endif\n\t\t\t\t\n\t\t\t\t#if NEEDS_NORMAL\n\t\t\t\tfloat4 normal : TEXCOORD3; // normal scale is stored in w\n\t\t\t\t#endif\n\t\t\t\t#if NEEDS_TANGENT\n\t\t\t\tfloat3 tangent : TEXCOORD4;\n\t\t\t\t#endif\n\t\t\t\t#if USE_NORMAL_BENDING\n\t\t\t\tfloat2 bentFactors : TEXCOORD5;\n\t\t\t\t#endif\n\t\t\t\t\n\t\t\t\t#if VFX_PASSDEPTH == VFX_PASSDEPTH_MOTION_VECTOR\n\t\t\t\tfloat4 cPosPrevious : TEXCOORD6;\n\t\t\t\tfloat4 cPosNonJiterred : TEXCOORD7;\n\t\t\t\t#endif\n\t\t\t \n\t\t\t \n\t\t\t\n\t\t\t\tUNITY_VERTEX_OUTPUT_STEREO\n\t\t\t};\n\t\t\t\n\t\t\t#define VFX_VARYING_PS_INPUTS ps_input\n\t\t\t#define VFX_VARYING_POSCS pos\n\t\t\t#define VFX_VARYING_ALPHA builtInInterpolants.z\n\t\t\t#define VFX_VARYING_ALPHATHRESHOLD builtInInterpolants.x\n\t\t\t#define VFX_VARYING_FRAMEBLEND builtInInterpolants.y\n\t\t\t#define VFX_VARYING_MOTIONVECTORSCALE builtInInterpolants2.xy\n\t\t\t#define VFX_VARYING_UV uv\n\t\t\t\n\t\t\t#if NEEDS_NORMAL\n\t\t\t#define VFX_VARYING_NORMAL normal.xyz\n\t\t\t#endif\n\t\t\t#ifdef WRITE_NORMAL_BUFFER\n\t\t\t#define VFX_VARYING_SMOOTHNESS builtInInterpolants.w\n\t\t\t#endif\n\t\t\t#if NEEDS_TANGENT\n\t\t\t#define VFX_VARYING_TANGENT tangent\n\t\t\t#endif\n\t\t\t#if USE_NORMAL_MAP\n\t\t\t#define VFX_VARYING_NORMALSCALE normal.w\n\t\t\t#endif\n\t\t\t#if USE_NORMAL_BENDING\n\t\t\t#define VFX_VARYING_BENTFACTORS bentFactors\n\t\t\t#endif\n\t\t\t\n\t\t\t#if VFX_PASSDEPTH == VFX_PASSDEPTH_MOTION_VECTOR\n\t\t\t#define VFX_VARYING_VELOCITY_CPOS cPosNonJiterred\n\t\t\t#define VFX_VARYING_VELOCITY_CPOS_PREVIOUS cPosPrevious\n\t\t\t#endif\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t#if !(defined(VFX_VARYING_PS_INPUTS) && defined(VFX_VARYING_POSCS))\n\t\t\t#error VFX_VARYING_PS_INPUTS, VFX_VARYING_POSCS and VFX_VARYING_UV must be defined.\n\t\t\t#endif\n\t\t\t\n\t\t\t#include \"Packages/com.unity.render-pipelines.high-definition/Runtime/VFXGraph/Shaders/VFXCommon.hlsl\"\n\t\t\t#include \"Packages/com.unity.visualeffectgraph/Shaders/VFXCommon.hlsl\"\n\t\t\t\n\n\t\t\tvoid Orient_189(inout float3 axisX, inout float3 axisY, inout float3 axisZ, float3 position) /*mode:FaceCameraPosition axes:ZY */\n\t\t\t{\n\t\t\t \n\t\t\t if (unity_OrthoParams.w == 1.0f) // Face plane for ortho\n\t\t\t {\n\t\t\t float3x3 viewRot = GetVFXToViewRotMatrix();\n\t\t\t axisX = viewRot[0].xyz;\n\t\t\t axisY = viewRot[1].xyz;\n\t\t\t #if VFX_LOCAL_SPACE // Need to remove potential scale in local transform\n\t\t\t axisX = normalize(axisX);\n\t\t\t axisY = normalize(axisY);\n\t\t\t axisZ = cross(axisX,axisY);\n\t\t\t #else\n\t\t\t axisZ = -viewRot[2].xyz;\n\t\t\t #endif\n\t\t\t }\n\t\t\t else\n\t\t\t {\n\t\t\t axisZ = normalize(position - GetViewVFXPosition());\n\t\t\t axisX = normalize(cross(GetVFXToViewRotMatrix()[1].xyz,axisZ));\n\t\t\t axisY = cross(axisZ,axisX);\n\t\t\t }\n\t\t\t \n\t\t\t}\n\t\t\tvoid SetAttribute_65DEC940(inout float pivotX, inout float pivotY, inout float pivotZ, float3 Pivot) /*attribute:pivot Composition:Overwrite Source:Slot Random:Off channels:XYZ */\n\t\t\t{\n\t\t\t pivotX = Pivot.x;\n\t\t\t pivotY = Pivot.y;\n\t\t\t pivotZ = Pivot.z;\n\t\t\t}\n\t\t\tvoid AttributeFromCurve_45ABB90F(inout float size, float age, float lifetime, float4 Size) /*attribute:size Composition:Overwrite AlphaComposition:Overwrite SampleMode:OverLife Mode:PerComponent ColorMode:ColorAndAlpha channels:X */\n\t\t\t{\n\t\t\t float t = age / lifetime;\n\t\t\t float value = 0.0f;\n\t\t\t value = SampleCurve(Size, t);\n\t\t\t size = value;\n\t\t\t}\n\t\t\tvoid SetAttribute_39EE3453(inout float size, float Size) /*attribute:size Composition:Multiply Source:Slot Random:Off channels:X */\n\t\t\t{\n\t\t\t size *= Size;\n\t\t\t}\n\t\t\tvoid SetAttribute_CEEAF35C(inout float alpha, float Alpha) /*attribute:alpha Composition:Overwrite Source:Slot Random:Off channels:XYZ */\n\t\t\t{\n\t\t\t alpha = Alpha;\n\t\t\t}\n\t\t\tvoid ColorOverLife_733E3(float age, float lifetime, inout float3 color, inout float alpha, float gradient) /*mode:ColorAndAlpha ColorComposition:Multiply AlphaComposition:Multiply */\n\t\t\t{\n\t\t\t \n\t\t\t float4 sampledColor = SampleGradient(gradient, age/lifetime);\n\t\t\t color *= sampledColor.rgb;\n\t\t\t alpha *= sampledColor.a;\n\t\t\t \n\t\t\t}\n\t\t\tvoid CameraFade_18F(float3 position, inout float alpha, inout bool alive, float FadedDistance, float InvFadeDistance) /*cullWhenFaded:True fadeMode:Alpha */\n\t\t\t{\n\t\t\t \n\t\t\t float clipPosW = TransformPositionVFXToClip(position).w;\n\t\t\t float fade = saturate((clipPosW - FadedDistance) * InvFadeDistance);\n\t\t\t alpha *= fade;\n\t\t\t if(fade == 0.0) alive=false;\n\t\t\t}\n\t\t\t\n\n\t\t\t\n\t\t\t#if defined(HAS_STRIPS) && !defined(VFX_PRIMITIVE_QUAD)\n\t\t\t#error VFX_PRIMITIVE_QUAD must be defined when HAS_STRIPS is.\n\t\t\t#endif\n\t\t\t\n\t\t\tstruct vs_input\n\t\t\t{\n\t\t\t\tVFX_DECLARE_INSTANCE_ID\n\t\t\t};\n\t\t\t\n\t\t\t#if HAS_STRIPS\n\t\t\t#define PARTICLE_IN_EDGE (id & 1)\n\t\t\t\n\t\t\tfloat3 GetParticlePosition(uint index)\n\t\t\t{\n\t\t\t\tstruct Attributes attributes = (Attributes)0;\n\t\t\t\tattributes.position = asfloat(attributeBuffer.Load3((index * 0x4 + 0x120) << 2));\n\t\t\t\t\n\n\t\t\t\treturn attributes.position;\n\t\t\t}\n\t\t\t\n\t\t\tfloat3 GetStripTangent(float3 currentPos, uint relativeIndex, const StripData stripData)\n\t\t\t{\n\t\t\t\tfloat3 prevTangent = (float3)0.0f;\n\t\t\t\tif (relativeIndex > 0)\n\t\t\t\t{\n\t\t\t\t\tuint prevIndex = GetParticleIndex(relativeIndex - 1,stripData);\n\t\t\t\t\tprevTangent = normalize(currentPos - GetParticlePosition(prevIndex));\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tfloat3 nextTangent = (float3)0.0f;\n\t\t\t\tif (relativeIndex < stripData.nextIndex - 1)\n\t\t\t\t{\n\t\t\t\t\tuint nextIndex = GetParticleIndex(relativeIndex + 1,stripData);\n\t\t\t\t\tnextTangent = normalize(GetParticlePosition(nextIndex) - currentPos);\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\treturn normalize(prevTangent + nextTangent);\n\t\t\t}\n\t\t\t#endif\n\t\t\t\n\t\t\t#pragma vertex vert\n\t\t\tVFX_VARYING_PS_INPUTS vert(uint id : SV_VertexID, vs_input i)\n\t\t\t{\n\t\t\t\tVFX_VARYING_PS_INPUTS o = (VFX_VARYING_PS_INPUTS)0;\n\t\t\t\n\t\t\t\tUNITY_SETUP_INSTANCE_ID(i);\n\t\t\t\tUNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o);\n\t\t\t\n\t\t\t#if VFX_PRIMITIVE_TRIANGLE\n\t\t\t\tuint index = id / 3;\n\t\t\t#elif VFX_PRIMITIVE_QUAD\n\t\t\t#if HAS_STRIPS\n\t\t\t\tid += VFX_GET_INSTANCE_ID(i) * 8192;\n\t\t\t\tconst uint vertexPerStripCount = (PARTICLE_PER_STRIP_COUNT - 1) << 2;\n\t\t\t\tconst StripData stripData = GetStripDataFromStripIndex(id / vertexPerStripCount, PARTICLE_PER_STRIP_COUNT);\n\t\t\t\tuint currentIndex = ((id % vertexPerStripCount) >> 2) + (id & 1); // relative index of particle\n\t\t\t\t\n\t\t\t\tuint maxEdgeIndex = currentIndex - PARTICLE_IN_EDGE + 1;\n\t\t\t\tif (maxEdgeIndex >= stripData.nextIndex)\n\t\t\t\t\treturn o;\n\t\t\t\t\n\t\t\t\tuint index = GetParticleIndex(currentIndex, stripData);\n\t\t\t#else\n\t\t\t\tuint index = (id >> 2) + VFX_GET_INSTANCE_ID(i) * 2048;\n\t\t\t#endif\n\t\t\t#elif VFX_PRIMITIVE_OCTAGON\n\t\t\t\tuint index = (id >> 3) + VFX_GET_INSTANCE_ID(i) * 1024;\n\t\t\t#endif\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\tuint deadCount = 0;\n\t\t\t\t\t\t#if USE_DEAD_LIST_COUNT\n\t\t\t\t\t\tdeadCount = deadListCount.Load(0);\n\t\t\t\t\t\t#endif\t\n\t\t\t\t\t\tif (index >= asuint(nbMax) - deadCount)\n\t\t\t\t\t\t#if USE_GEOMETRY_SHADER\n\t\t\t\t\t\t\treturn; // cull\n\t\t\t\t\t\t#else\n\t\t\t\t\t\t\treturn o; // cull\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\n\t\t\t\t\t\tAttributes attributes = (Attributes)0;\n\t\t\t\t\t\tSourceAttributes sourceAttributes = (SourceAttributes)0;\n\t\t\t\t\t\t\n\t\t\t\t\t\t#if VFX_HAS_INDIRECT_DRAW\n\t\t\t\t\t\tindex = indirectBuffer[index];\n\t\t\t\t\t\tattributes.lifetime = asfloat(attributeBuffer.Load((index * 0x1 + 0x80) << 2));\n\t\t\t\t\t\tattributes.angleZ = asfloat(attributeBuffer.Load((index * 0x1 + 0xA0) << 2));\n\t\t\t\t\t\tattributes.texIndex = asfloat(attributeBuffer.Load((index * 0x3 + 0xC0) << 2));\n\t\t\t\t\t\tattributes.age = asfloat(attributeBuffer.Load((index * 0x3 + 0xC1) << 2));\n\t\t\t\t\t\tattributes.position = asfloat(attributeBuffer.Load3((index * 0x4 + 0x120) << 2));\n\t\t\t\t\t\tattributes.color = float3(1, 1, 1);\n\t\t\t\t\t\tattributes.alpha = (float)1;\n\t\t\t\t\t\tattributes.alive = (attributeBuffer.Load((index * 0x3 + 0xC2) << 2));\n\t\t\t\t\t\tattributes.axisX = float3(1, 0, 0);\n\t\t\t\t\t\tattributes.axisY = float3(0, 1, 0);\n\t\t\t\t\t\tattributes.axisZ = float3(0, 0, 1);\n\t\t\t\t\t\tattributes.angleX = (float)0;\n\t\t\t\t\t\tattributes.angleY = (float)0;\n\t\t\t\t\t\tattributes.pivotX = (float)0;\n\t\t\t\t\t\tattributes.pivotY = (float)0;\n\t\t\t\t\t\tattributes.pivotZ = (float)0;\n\t\t\t\t\t\tattributes.size = (float)0.100000001;\n\t\t\t\t\t\tattributes.scaleX = (float)1;\n\t\t\t\t\t\tattributes.scaleY = (float)1;\n\t\t\t\t\t\tattributes.scaleZ = (float)1;\n\t\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\t#else\n\t\t\t\t\t\tattributes.alive = (attributeBuffer.Load((index * 0x3 + 0xC2) << 2));\n\t\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\t#if !HAS_STRIPS\n\t\t\t\t\t\tif (!attributes.alive)\n\t\t\t\t\t\t\treturn o;\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t\n\t\t\t\t\t\tattributes.lifetime = asfloat(attributeBuffer.Load((index * 0x1 + 0x80) << 2));\n\t\t\t\t\t\tattributes.angleZ = asfloat(attributeBuffer.Load((index * 0x1 + 0xA0) << 2));\n\t\t\t\t\t\tattributes.texIndex = asfloat(attributeBuffer.Load((index * 0x3 + 0xC0) << 2));\n\t\t\t\t\t\tattributes.age = asfloat(attributeBuffer.Load((index * 0x3 + 0xC1) << 2));\n\t\t\t\t\t\tattributes.position = asfloat(attributeBuffer.Load3((index * 0x4 + 0x120) << 2));\n\t\t\t\t\t\tattributes.color = float3(1, 1, 1);\n\t\t\t\t\t\tattributes.alpha = (float)1;\n\t\t\t\t\t\tattributes.axisX = float3(1, 0, 0);\n\t\t\t\t\t\tattributes.axisY = float3(0, 1, 0);\n\t\t\t\t\t\tattributes.axisZ = float3(0, 0, 1);\n\t\t\t\t\t\tattributes.angleX = (float)0;\n\t\t\t\t\t\tattributes.angleY = (float)0;\n\t\t\t\t\t\tattributes.pivotX = (float)0;\n\t\t\t\t\t\tattributes.pivotY = (float)0;\n\t\t\t\t\t\tattributes.pivotZ = (float)0;\n\t\t\t\t\t\tattributes.size = (float)0.100000001;\n\t\t\t\t\t\tattributes.scaleX = (float)1;\n\t\t\t\t\t\tattributes.scaleY = (float)1;\n\t\t\t\t\t\tattributes.scaleZ = (float)1;\n\t\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\n\t\t\t\t\t\t// Initialize built-in needed attributes\n\t\t\t\t\t\t#if HAS_STRIPS\n\t\t\t\t\t\tInitStripAttributes(index, attributes, stripData);\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t\n\t\t\t\tOrient_189( /*inout */attributes.axisX, /*inout */attributes.axisY, /*inout */attributes.axisZ, attributes.position);\n\t\t\t\t{\n\t\t\t\t SetAttribute_65DEC940( /*inout */attributes.pivotX, /*inout */attributes.pivotY, /*inout */attributes.pivotZ, float3(0, 0, 0.564999998));\n\t\t\t\t}\n\t\t\t\tAttributeFromCurve_45ABB90F( /*inout */attributes.size, attributes.age, attributes.lifetime, Size_c);\n\t\t\t\t{\n\t\t\t\t SetAttribute_39EE3453( /*inout */attributes.size, (float)1);\n\t\t\t\t}\n\t\t\t\tSetAttribute_CEEAF35C( /*inout */attributes.alpha, Alpha_e);\n\t\t\t\tColorOverLife_733E3(attributes.age, attributes.lifetime, /*inout */attributes.color, /*inout */attributes.alpha, gradient_f);\n\t\t\t\t{\n\t\t\t\t CameraFade_18F(attributes.position, /*inout */attributes.alpha, /*inout */attributes.alive, (float)2, (float)0.25);\n\t\t\t\t}\n\t\t\t\t\n\n\t\t\t\t\n\t\t\t#if !HAS_STRIPS\n\t\t\t\tif (!attributes.alive)\n\t\t\t\t\treturn o;\n\t\t\t#endif\n\t\t\t\t\n\t\t\t#if VFX_PRIMITIVE_QUAD\n\t\t\t\n\t\t\t#if HAS_STRIPS\n\t\t\t#if VFX_STRIPS_UV_STRECHED\n\t\t\t\to.VFX_VARYING_UV.x = (float)(currentIndex) / (stripData.nextIndex - 1);\n\t\t\t#elif VFX_STRIPS_UV_PER_SEGMENT\n\t\t\t\to.VFX_VARYING_UV.x = PARTICLE_IN_EDGE;\n\t\t\t#else\n\t\t\t\t\n\t\t\t o.VFX_VARYING_UV.x = texCoord;\n\t\t\t#endif\n\t\t\t\n\t\t\t\to.VFX_VARYING_UV.y = float((id & 2) >> 1);\n\t\t\t\tconst float2 vOffsets = float2(0.0f,o.VFX_VARYING_UV.y - 0.5f);\n\t\t\t\t\n\t\t\t#if VFX_STRIPS_SWAP_UV\n\t\t\t\to.VFX_VARYING_UV.xy = float2(1.0f - o.VFX_VARYING_UV.y, o.VFX_VARYING_UV.x);\n\t\t\t#endif\n\t\t\t\t\n\t\t\t\t// Orient strips along their tangents\n\t\t\t\tattributes.axisX = GetStripTangent(attributes.position, currentIndex, stripData);\n\t\t\t#if !VFX_STRIPS_ORIENT_CUSTOM\n\t\t\t\tattributes.axisZ = attributes.position - GetViewVFXPosition();\n\t\t\t#endif\n\t\t\t\tattributes.axisY = normalize(cross(attributes.axisZ, attributes.axisX));\n\t\t\t\tattributes.axisZ = normalize(cross(attributes.axisX, attributes.axisY));\n\t\t\t\t\n\t\t\t#else\n\t\t\t\to.VFX_VARYING_UV.x = float(id & 1);\n\t\t\t\to.VFX_VARYING_UV.y = float((id & 2) >> 1);\n\t\t\t\tconst float2 vOffsets = o.VFX_VARYING_UV.xy - 0.5f;\n\t\t\t#endif\n\t\t\t\t\n\t\t\t#elif VFX_PRIMITIVE_TRIANGLE\n\t\t\t\n\t\t\t\tconst float2 kOffsets[] = {\n\t\t\t\t\tfloat2(-0.5f, \t-0.288675129413604736328125f),\n\t\t\t\t\tfloat2(0.0f, \t0.57735025882720947265625f),\n\t\t\t\t\tfloat2(0.5f,\t-0.288675129413604736328125f),\n\t\t\t\t};\n\t\t\t\t\n\t\t\t\tconst float kUVScale = 0.866025388240814208984375f;\n\t\t\t\t\n\t\t\t\tconst float2 vOffsets = kOffsets[id % 3];\n\t\t\t\to.VFX_VARYING_UV.xy = (vOffsets * kUVScale) + 0.5f;\n\t\t\t\t\n\t\t\t#elif VFX_PRIMITIVE_OCTAGON\t\n\t\t\t\t\n\t\t\t\tconst float2 kUvs[8] = \n\t\t\t\t{\n\t\t\t\t\tfloat2(-0.5f,\t0.0f),\n\t\t\t\t\tfloat2(-0.5f,\t0.5f),\n\t\t\t\t\tfloat2(0.0f,\t0.5f),\n\t\t\t\t\tfloat2(0.5f,\t0.5f),\n\t\t\t\t\tfloat2(0.5f,\t0.0f),\n\t\t\t\t\tfloat2(0.5f,\t-0.5f),\n\t\t\t\t\tfloat2(0.0f,\t-0.5f),\n\t\t\t\t\tfloat2(-0.5f,\t-0.5f),\n\t\t\t\t};\n\t\t\t\t\n\t\t\t\tfloat cropFactor = (float)0;\n\t\t\t\t{\n\t\t\t\t \n\t\t\t\t cropFactor = (float)0.292893201;\n\t\t\t\t}\n\t\t\t\t\n\n\t\t\t\tcropFactor = id & 1 ? 1.0f - cropFactor : 1.0f;\n\t\t\t\tconst float2 vOffsets = kUvs[id & 7] * cropFactor;\n\t\t\t\to.VFX_VARYING_UV.xy = vOffsets + 0.5f;\n\t\t\t\t\n\t\t\t#endif\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\tfloat3 size3 = float3(attributes.size,attributes.size,attributes.size);\n\t\t\t\t\t\t#if VFX_USE_SCALEX_CURRENT\n\t\t\t\t\t\tsize3.x *= attributes.scaleX;\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t#if VFX_USE_SCALEY_CURRENT\n\t\t\t\t\t\tsize3.y *= attributes.scaleY;\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t#if VFX_USE_SCALEZ_CURRENT\n\t\t\t\t\t\tsize3.z *= attributes.scaleZ;\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\n\t\t\t#if HAS_STRIPS\n\t\t\t\tsize3 += size3 < 0.0f ? -VFX_EPSILON : VFX_EPSILON; // Add an epsilon so that size is never 0 for strips\n\t\t\t#endif\n\t\t\t\t\n\t\t\t\tconst float4x4 elementToVFX = GetElementToVFXMatrix(\n\t\t\t\t\tattributes.axisX,\n\t\t\t\t\tattributes.axisY,\n\t\t\t\t\tattributes.axisZ,\n\t\t\t\t\tfloat3(attributes.angleX,attributes.angleY,attributes.angleZ),\n\t\t\t\t\tfloat3(attributes.pivotX,attributes.pivotY,attributes.pivotZ),\n\t\t\t\t\tsize3,\n\t\t\t\t\tattributes.position);\n\t\t\t\t\t\n\t\t\t\tfloat3 inputVertexPosition = float3(vOffsets, 0.0f);\n\t\t\t\tfloat3 vPos = mul(elementToVFX,float4(inputVertexPosition, 1.0f)).xyz;\n\t\t\t\n\t\t\t\to.VFX_VARYING_POSCS = TransformPositionVFXToClip(vPos);\n\t\t\t \n\t\t\t float3 vPosWS = TransformPositionVFXToWorld(vPos);\n\t\t\t\t\n\t\t\t #ifdef VFX_VARYING_POSWS\n\t\t\t o.VFX_VARYING_POSWS = vPosWS;\n\t\t\t #endif\n\t\t\t\n\t\t\t\tfloat3 normalWS = normalize(TransformDirectionVFXToWorld(normalize(-transpose(elementToVFX)[2].xyz)));\n\t\t\t\t#ifdef VFX_VARYING_NORMAL\n\t\t\t\tfloat normalFlip = (size3.x * size3.y * size3.z) < 0 ? -1 : 1;\n\t\t\t\to.VFX_VARYING_NORMAL = normalFlip * normalWS;\n\t\t\t\t#endif\n\t\t\t\t#ifdef VFX_VARYING_TANGENT\n\t\t\t\to.VFX_VARYING_TANGENT = normalize(TransformDirectionVFXToWorld(normalize(transpose(elementToVFX)[0].xyz)));\n\t\t\t\t#endif\n\t\t\t\t#ifdef VFX_VARYING_BENTFACTORS\n\t\t\t\tfloat normalBendingFactor = (float)0;\n\t\t\t\t{\n\t\t\t\t \n\t\t\t\t normalBendingFactor = (float)0.526415288;\n\t\t\t\t}\n\t\t\t\t\n\n\t\t\t\t#if HAS_STRIPS\n\t\t\t\t#define BENT_FACTOR_MULTIPLIER 2.0f\n\t\t\t\t#else\n\t\t\t\t#define BENT_FACTOR_MULTIPLIER 1.41421353816986083984375f\n\t\t\t\t#endif\n\t\t\t\to.VFX_VARYING_BENTFACTORS = vOffsets * normalBendingFactor * BENT_FACTOR_MULTIPLIER;\n\t\t\t\t#endif\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\t#if defined(VFX_VARYING_VELOCITY_CPOS) && defined(VFX_VARYING_VELOCITY_CPOS_PREVIOUS)\n\t\t\t\t\t\tfloat4x4 previousElementToVFX = (float4x4)0;\n\t\t\t\t\t\tpreviousElementToVFX[3] = float4(0,0,0,1);\n\t\t\t\t\t\t\n\t\t\t\t\t\tUNITY_UNROLL\n\t\t\t\t\t\tfor (int itIndexMatrixRow = 0; itIndexMatrixRow < 3; ++itIndexMatrixRow)\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tUNITY_UNROLL\n\t\t\t\t\t\t\tfor (int itIndexMatrixCol = 0; itIndexMatrixCol < 4; ++itIndexMatrixCol)\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tuint itIndexMatrix = itIndexMatrixCol * 4 + itIndexMatrixRow;\n\t\t\t\t\t\t\t\tuint read = elementToVFXBufferPrevious.Load((index * 16 + itIndexMatrix) << 2);\n\t\t\t\t\t\t\t\tpreviousElementToVFX[itIndexMatrixRow][itIndexMatrixCol] = asfloat(read);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\t\n\t\t\t\t\t\tuint previousFrameIndex = elementToVFXBufferPrevious.Load((index * 16 + 15) << 2);\n\t\t\t\t\t\to.VFX_VARYING_VELOCITY_CPOS = o.VFX_VARYING_VELOCITY_CPOS_PREVIOUS = float4(0.0f, 0.0f, 0.0f, 1.0f);\n\t\t\t\t\t\tif (asuint(currentFrameIndex) - previousFrameIndex == 1u)\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tfloat3 oldvPos = mul(previousElementToVFX,float4(inputVertexPosition, 1.0f)).xyz;\n\t\t\t\t\t\t\to.VFX_VARYING_VELOCITY_CPOS_PREVIOUS = TransformPositionVFXToPreviousClip(oldvPos);\n\t\t\t\t\t\t\to.VFX_VARYING_VELOCITY_CPOS = TransformPositionVFXToNonJitteredClip(vPos);\n\t\t\t\t\t\t}\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\t#if VFX_USE_COLOR_CURRENT && defined(VFX_VARYING_COLOR)\n\t\t\t\t\t\to.VFX_VARYING_COLOR = attributes.color;\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t#if VFX_USE_ALPHA_CURRENT && defined(VFX_VARYING_ALPHA) \n\t\t\t\t\t\to.VFX_VARYING_ALPHA = attributes.alpha;\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\n\t\t\t\t\t\t#ifdef VFX_VARYING_EXPOSUREWEIGHT\n\t\t\t\t\t\t\n\t\t\t\t\t\to.VFX_VARYING_EXPOSUREWEIGHT = exposureWeight;\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\n\t\t\t\t\t\t#if USE_SOFT_PARTICLE && defined(VFX_VARYING_INVSOFTPARTICLEFADEDISTANCE)\n\t\t\t\t\t\tfloat invSoftParticlesFadeDistance = (float)0;\n\t\t\t\t\t\t{\n\t\t\t\t\t\t \n\t\t\t\t\t\t invSoftParticlesFadeDistance = (float)1;\n\t\t\t\t\t\t}\n\t\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\to.VFX_VARYING_INVSOFTPARTICLEFADEDISTANCE = invSoftParticlesFadeDistance;\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\n\t\t\t\t\t\t#if (USE_ALPHA_TEST || WRITE_MOTION_VECTOR_IN_FORWARD) && (!VFX_SHADERGRAPH || !HAS_SHADERGRAPH_PARAM_ALPHATHRESHOLD) && defined(VFX_VARYING_ALPHATHRESHOLD)\n\t\t\t\t\t\t\n\t\t\t\t\t\to.VFX_VARYING_ALPHATHRESHOLD = alphaThreshold;\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\n\t\t\t\t\t\t#if USE_UV_SCALE_BIAS\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t#if defined (VFX_VARYING_UV)\n\t\t\t\t\t\to.VFX_VARYING_UV.xy = o.VFX_VARYING_UV.xy * uvScale + uvBias;\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\n\t\t\t\t\t\t#if defined(VFX_VARYING_POSWS)\n\t\t\t\t\t\to.VFX_VARYING_POSWS = TransformPositionVFXToWorld(vPos);\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\t#if USE_FLIPBOOK && defined(VFX_VARYING_UV)\n\t\t\t\t\t\tfloat2 flipBookSize = (float2)0;\n\t\t\t\t\t\t{\n\t\t\t\t\t\t \n\t\t\t\t\t\t flipBookSize = float2(8, 8);\n\t\t\t\t\t\t}\n\t\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\tfloat2 invFlipBookSize = (float2)0;\n\t\t\t\t\t\t{\n\t\t\t\t\t\t \n\t\t\t\t\t\t invFlipBookSize = float2(0.125, 0.125);\n\t\t\t\t\t\t}\n\t\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\tVFXUVData uvData = GetUVData(flipBookSize, invFlipBookSize, o.VFX_VARYING_UV.xy, attributes.texIndex);\n\t\t\t\t\t\to.VFX_VARYING_UV.xy = uvData.uvs.xy;\n\t\t\t\t\t\t#if USE_FLIPBOOK_INTERPOLATION && defined(VFX_VARYING_UV) && defined (VFX_VARYING_FRAMEBLEND)\n\t\t\t\t\t\to.VFX_VARYING_UV.zw = uvData.uvs.zw;\n\t\t\t\t\t\to.VFX_VARYING_FRAMEBLEND = uvData.blend;\n\t\t\t\t\t\t#if USE_FLIPBOOK_MOTIONVECTORS && defined(VFX_VARYING_MOTIONVECTORSCALE)\n\t\t\t\t\t\t\n\t\t\t\t\t\to.VFX_VARYING_MOTIONVECTORSCALE = motionVectorScale * invFlipBookSize;\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t \n\t\t\t \n\t\t\t\n\t\t\t\treturn o;\n\t\t\t}\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t#include \"Packages/com.unity.visualeffectgraph/Shaders/VFXCommonOutput.hlsl\"\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t#if VFX_PASSDEPTH == VFX_PASSDEPTH_MOTION_VECTOR\n\t\t\t#define SHADERPASS SHADERPASS_MOTION_VECTORS\n\t\t\t#else\n\t\t\t#define SHADERPASS SHADERPASS_DEPTH_ONLY\n\t\t\t#endif\n\t\t\t#include \"Packages/com.unity.render-pipelines.high-definition/Runtime/VFXGraph/Shaders/VFXLit.hlsl\"\n\t\t\t\n\t\t\t#ifndef VFX_SHADERGRAPH\n\t\t\t\n\t\t\tvoid VFXGetHDRPLitData(out SurfaceData surfaceData, out BuiltinData builtinData, out BSDFData bsdfData, out PreLightData preLightData, VFX_VARYING_PS_INPUTS i, float3 normalWS, const VFXUVData uvData, uint2 tileIndex)\n\t\t\t{\t\n\t\t\t\t#if HDRP_MATERIAL_TYPE_TRANSLUCENT\n\t\t\t\tuint diffusionProfileHash = (uint)0;\n\t\t\t\t{\n\t\t\t\t \n\t\t\t\t diffusionProfileHash = (uint)1080043756;\n\t\t\t\t}\n\t\t\t\t\n // Loads diffusion profile\n\t\t\t\t#else\n\t\t\t\tconst uint diffusionProfileHash = 0;\n\t\t\t\t#endif\n\t\t\t\t\n\t\t\t\tfloat3 posRWS = VFXGetPositionRWS(i);\n\t\t\t\tfloat4 posSS = i.VFX_VARYING_POSCS;\n\t\t\t\tPositionInputs posInput = GetPositionInput(posSS.xy, _ScreenSize.zw, posSS.z, posSS.w, posRWS, tileIndex);\n\t\t\t\t\n\t\t\t\tfloat alpha;\n\t\t\t\tsurfaceData = VFXGetSurfaceData(i,normalWS,uvData,diffusionProfileHash,alpha);\t\n\t\t\t\tbsdfData = ConvertSurfaceDataToBSDFData(posSS.xy, surfaceData);\n\t\t\t\n\t\t\t\tpreLightData = GetPreLightData(GetWorldSpaceNormalizeViewDir(posRWS),posInput,bsdfData);\n\t\t\t\t\n\t\t\t\tpreLightData.diffuseFGD = 1.0f;\n\t\t\t //TODO: investigate why this is needed\n\t\t\t preLightData.coatPartLambdaV = 0;\n\t\t\t preLightData.coatIblR = 0;\n\t\t\t preLightData.coatIblF = 0;\n\t\t\t \n\t\t\t\tbuiltinData = VFXGetBuiltinData(i,posInput,surfaceData,uvData,alpha);\n\t\t\t}\n\t\t\t\n\t\t\tvoid VFXGetHDRPLitData(out SurfaceData surfaceData, out BuiltinData builtinData, VFX_VARYING_PS_INPUTS i, float3 normalWS, const VFXUVData uvData)\n\t\t\t{\n\t\t\t\tBSDFData bsdfData = (BSDFData)0;\n\t\t\t\tPreLightData preLightData = (PreLightData)0;\n\t\t\t\tpreLightData.diffuseFGD = 1.0f;\n\t\t\t\tVFXGetHDRPLitData(surfaceData,builtinData,bsdfData,preLightData,i,normalWS,uvData,uint2(0,0));\n\t\t\t}\n\t\t\t\n\t\t\t#endif\n\t\t\t\n\t\t\t\n\t\t\t#include \"Packages/com.unity.render-pipelines.high-definition/Runtime/VFXGraph/Shaders/VFXLitPixelOutput.hlsl\"\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t#if VFX_PASSDEPTH == VFX_PASSDEPTH_SELECTION\n\t\t\tint _ObjectId;\n\t\t\tint _PassValue;\n\t\t\t#endif\n\t\t\t \n\t\t\t#pragma fragment frag\n\t\t\tvoid frag(ps_input i\n\t\t\t#if USE_DOUBLE_SIDED\n\t\t\t\t, bool frontFace : SV_IsFrontFace\n\t\t\t#endif\n\t\t\t\n\t\t\t#if VFX_PASSDEPTH == VFX_PASSDEPTH_MOTION_VECTOR\n\t\t\t\t, out float4 outMotionVector : SV_Target0\n\t\t\t\t#ifdef WRITE_NORMAL_BUFFER\n\t\t\t\t\t, out float4 outNormalBuffer : SV_Target1\n\t\t\t\t#endif\n\t\t\t#else\n\t\t\t\t#ifdef WRITE_NORMAL_BUFFER\n\t\t\t\t\t, out float4 outNormalBuffer : SV_Target0\n\t\t\t\t#elif VFX_PASSDEPTH == VFX_PASSDEPTH_SELECTION\n\t\t\t\t\t, out float4 outColor : SV_Target0\n\t\t\t\t#endif\n\t\t\t#endif\n\t\t\t\t)\n\t\t\t{\n\t\t\t\tUNITY_SETUP_STEREO_EYE_INDEX_POST_VERTEX(i);\n\t\t\t\tVFXTransformPSInputs(i);\n\t\t\t\t\n\t\t\t\t\t\t\t#ifdef VFX_VARYING_NORMAL\n\t\t\t\t\t\t\t#if USE_DOUBLE_SIDED\n\t\t\t\t\t\t\tconst float faceMul = frontFace ? 1.0f : -1.0f;\n\t\t\t\t\t\t\t#else\n\t\t\t\t\t\t\tconst float faceMul = 1.0f;\n\t\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\tfloat3 normalWS = i.VFX_VARYING_NORMAL * faceMul;\n\t\t\t\t\t\t\tconst VFXUVData uvData = GetUVData(i);\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t#ifdef VFX_VARYING_TANGENT\n\t\t\t\t\t\t\tfloat3 tangentWS = i.VFX_VARYING_TANGENT;\n\t\t\t\t\t\t\tfloat3 bitangentWS = cross(i.VFX_VARYING_TANGENT,i.VFX_VARYING_NORMAL);\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t#if defined(VFX_VARYING_BENTFACTORS) && USE_NORMAL_BENDING\t\n\t\t\t\t\t\t\tfloat3 bentFactors = float3(i.VFX_VARYING_BENTFACTORS.xy,sqrt(1.0f - dot(i.VFX_VARYING_BENTFACTORS,i.VFX_VARYING_BENTFACTORS)));\n\t\t\t\t\t\t\tnormalWS = tangentWS * bentFactors.x + bitangentWS * bentFactors.y + normalWS * bentFactors.z;\n\t\t\t\t\t\t\ttangentWS = normalize(cross(normalWS,bitangentWS));\n\t\t\t\t\t\t\tbitangentWS = cross(tangentWS,normalWS);\n\t\t\t\t\t\t\ttangentWS *= faceMul;\n\t\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\tfloat3x3 tbn = float3x3(tangentWS,bitangentWS,normalWS);\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t#if USE_NORMAL_MAP\n\t\t\t\t\t\t\tfloat3 n = SampleNormalMap(VFX_SAMPLER(normalMap),uvData);\n\t\t\t\t\t\t\tfloat normalScale = 1.0f;\n\t\t\t\t\t\t\t#ifdef VFX_VARYING_NORMALSCALE\n\t\t\t\t\t\t\tnormalScale = i.VFX_VARYING_NORMALSCALE;\n\t\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\tnormalWS = normalize(lerp(normalWS,mul(n,tbn),normalScale));\n\t\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t#ifdef VFX_SHADERGRAPH\n\t\t\t \n\t\t\t \n\t\t\t \n\t\t\t \n\t\t\t \n\t\t\t float alpha = OUTSG.;\n\t\t\t #else\n\t\t\t float alpha = VFXGetFragmentColor(i).a;\n\t\t\t #if HDRP_USE_BASE_COLOR_MAP_ALPHA\n\t\t\t alpha *= VFXGetTextureColor(VFX_SAMPLER(baseColorMap),i).a;\n\t\t\t #endif\n\t\t\t #endif\n\t\t\t VFXClipFragmentColor(alpha,i);\n\t\t\t\t\n\t\t\t\t#ifdef WRITE_NORMAL_BUFFER\n\t\t\t #ifndef VFX_SHADERGRAPH\n\t\t\t VFXComputePixelOutputToNormalBuffer(i,normalWS,uvData,outNormalBuffer);\n\t\t\t #else\n\t\t\t #if HAS_SHADERGRAPH_PARAM_NORMAL\n\t\t\t float3 n = OUTSG.Normal_8;\n\t\t\t normalWS = mul(n,tbn);\n\t\t\t #endif\n\t\t\t SurfaceData surface = (SurfaceData)0;\n\t\t\t \n\t\t\t surface.normalWS = normalWS;\n\t\t\t \n\t\t\t EncodeIntoNormalBuffer(ConvertSurfaceDataToNormalData(surface), i.VFX_VARYING_POSCS.xy, outNormalBuffer);\n\t\t\t #endif\n\t\t\t\t#endif\n\t\t\t\n\t\t\t\t#if VFX_PASSDEPTH == VFX_PASSDEPTH_MOTION_VECTOR\n\t\t\t\t\t\n\t\t\t\t\t\t\tfloat2 velocity = (i.VFX_VARYING_VELOCITY_CPOS.xy/i.VFX_VARYING_VELOCITY_CPOS.w) - (i.VFX_VARYING_VELOCITY_CPOS_PREVIOUS.xy/i.VFX_VARYING_VELOCITY_CPOS_PREVIOUS.w);\n\t\t\t\t\t\t\t#if UNITY_UV_STARTS_AT_TOP\n\t\t\t\t\t\t\t\tvelocity.y = -velocity.y;\n\t\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\tfloat4 encodedMotionVector = 0.0f;\n\t\t\t\t\t\t\tVFXEncodeMotionVector(velocity * 0.5f, encodedMotionVector);\n\t\t\t\t\t\t\t\n\t\t\t\t\toutMotionVector = encodedMotionVector;\n\t\t\t\t#elif VFX_PASSDEPTH == VFX_PASSDEPTH_SELECTION\n\t\t\t\t\t// We use depth prepass for scene selection in the editor, this code allow to output the outline correctly\n\t\t\t\t\toutColor = float4(_ObjectId, _PassValue, 1.0, 1.0);\n\t\t\t\t#elif VFX_PASSDEPTH == VFX_PASSDEPTH_ACTUAL\n\t\t\t\t\t//void\n\t\t\t\t#else\n\t\t\t\t\t#error VFX_PASSDEPTH undefined\n\t\t\t\t#endif\n\t\t\t}\n\t\t\t\n\t\t\n\t\t\tENDHLSL\n\t\t}\n\t\t\n\r\n\t\t\r\n\t\t\r\n\t\t\r\n\t\t// Forward pass\n\t\tPass\n\t\t{\t\t\n\t\t\tTags { \"LightMode\"=\"Forward\"}\n\t\t\t\t\t\n\t\t\tHLSLPROGRAM\n\t\t\t#pragma target 4.5\n\t\t\t\n\t\t\t#define UNITY_MATERIAL_LIT\n\t\t\t#define LIGHTLOOP_TILE_PASS\n\t\t\t#define _ENABLE_FOG_ON_TRANSPARENT\n\t\t\t#define _DISABLE_DECALS\n\t\t\t#define _BLENDMODE_ALPHA\n\t\t\t\n\n\t\t\t#pragma multi_compile USE_FPTL_LIGHTLIST USE_CLUSTERED_LIGHTLIST \n\t\t\t#pragma multi_compile SHADOW_LOW SHADOW_MEDIUM SHADOW_HIGH\n\t\t\t#pragma multi_compile _ DEBUG_DISPLAY\n\t\t\t//#pragma enable_d3d11_debug_symbols\n\t\t\t\t\t\n\t\t\t#define HDRP_NEEDS_UVS (HDRP_USE_BASE_COLOR_MAP || HDRP_USE_MASK_MAP || USE_NORMAL_MAP || HDRP_USE_EMISSIVE_MAP)\n\t\t\t#define HDRP_USE_EMISSIVE (HDRP_USE_EMISSIVE_MAP || HDRP_USE_EMISSIVE_COLOR || HDRP_USE_ADDITIONAL_EMISSIVE_COLOR)\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\tstruct ps_input\n\t\t\t{\n\t\t\t\tfloat4 pos : SV_POSITION;\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t#if (VFX_NEEDS_COLOR_INTERPOLATOR && HDRP_USE_BASE_COLOR) || HDRP_USE_ADDITIONAL_BASE_COLOR\n\t\t\t\t\t\t\tVFX_OPTIONAL_INTERPOLATION float4 color : COLOR0;\n\t\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t#if HDRP_MATERIAL_TYPE_SPECULAR\n\t\t\t\t\t\t\tVFX_OPTIONAL_INTERPOLATION float3 specularColor : COLOR1;\n\t\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t#if HDRP_USE_EMISSIVE\t\n\t\t\t\t\t\t\tVFX_OPTIONAL_INTERPOLATION float4 emissiveColor : COLOR2;\n\t\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t// x: smoothness\n\t\t\t\t\t\t\t// y: metallic/thickness\n\t\t\t\t\t\t\t// z: normal scale\n\t\t\t\t\t\t\t// w: emissive scale\n\t\t\t\t\t\t\tVFX_OPTIONAL_INTERPOLATION float4 materialProperties : TEXCOORD0;\n\t\t\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t#if USE_FLIPBOOK_INTERPOLATION\n\t\t\t\tfloat4 uv : TEXCOORD1;\n\t\t\t\t#else\n\t\t\t\tfloat2 uv : TEXCOORD1;\t\n\t\t\t\t#endif\n\t\t\t\t#if USE_SOFT_PARTICLE || USE_ALPHA_TEST || USE_FLIPBOOK_INTERPOLATION || WRITE_MOTION_VECTOR_IN_FORWARD\n\t\t\t\t// x: inverse soft particles fade distance\n\t\t\t\t// y: alpha threshold\n\t\t\t\t// z: frame blending factor\n\t\t\t\tVFX_OPTIONAL_INTERPOLATION float3 builtInInterpolants : TEXCOORD2;\n\t\t\t\t#endif\n\t\t\n\t\t\t\t#if USE_FLIPBOOK_MOTIONVECTORS\n\t\t\t\t// x: motion vector scale u\n\t\t\t\t// y: motion vector scale v\n\t\t\t\tVFX_OPTIONAL_INTERPOLATION float2 builtInInterpolants2 : TEXCOORD3;\n\t\t\t\t#endif\n\t\t\n\t\t\t\tVFX_OPTIONAL_INTERPOLATION float3 normal : TEXCOORD4;\n\t\t\t\t#if USE_NORMAL_MAP || USE_NORMAL_BENDING || SHADERGRAPH_NEEDS_TANGENT_FORWARD\n\t\t\t\tVFX_OPTIONAL_INTERPOLATION float3 tangent : TEXCOORD5;\n\t\t\t\t#endif\n\t\t\t\t#if USE_NORMAL_BENDING\n\t\t\t\tfloat2 bentFactors : TEXCOORD6;\n\t\t\t\t#endif\n\t\t\n\t\t\t\t#if WRITE_MOTION_VECTOR_IN_FORWARD\n\t\t\t\tfloat4 cPosPrevious : TEXCOORD7;\n\t\t\t\tfloat4 cPosNonJiterred : TEXCOORD8;\n\t\t\t\t#endif\n\t\t\t\t\n\t\t\t\tfloat3 posWS : TEXCOOR9; // Needed for fog\n\t\t \n\t\t \n\t\t\t\t\n\t\t\t\tUNITY_VERTEX_OUTPUT_STEREO\n\t\t\t};\n\t\t\t\n\t\t\n\t\t\t\t\t#if (VFX_NEEDS_COLOR_INTERPOLATOR && HDRP_USE_BASE_COLOR) || HDRP_USE_ADDITIONAL_BASE_COLOR\n\t\t\t\t\t#define VFX_VARYING_COLOR color.rgb\n\t\t\t\t\t#define VFX_VARYING_ALPHA color.a\n\t\t\t\t\t#endif\n\t\t\t\t\t\n\t\t\t\t\t#define VFX_VARYING_SMOOTHNESS materialProperties.x\n\t\t\t\t\t\n\t\t\t\t\t#if HDRP_MATERIAL_TYPE_STANDARD\n\t\t\t\t\t#define VFX_VARYING_METALLIC materialProperties.y\n\t\t\t\t\t#elif HDRP_MATERIAL_TYPE_SPECULAR\n\t\t\t\t\t#define VFX_VARYING_SPECULAR specularColor\n\t\t\t\t\t#elif HDRP_MATERIAL_TYPE_TRANSLUCENT\n\t\t\t\t\t#define VFX_VARYING_THICKNESS materialProperties.y\n\t\t\t\t\t#endif\n\t\t\t\t\t\n\t\t\t\t\t#if USE_NORMAL_MAP\n\t\t\t\t\t#define VFX_VARYING_NORMALSCALE materialProperties.z\n\t\t\t\t\t#endif\n\t\t\t\t\t\n\t\t\t\t\t#if HDRP_USE_EMISSIVE_MAP\n\t\t\t\t\t#define VFX_VARYING_EMISSIVESCALE materialProperties.w\n\t\t\t\t\t#endif\n\t\t\t\t\t\n\t\t\t\t\t#if HDRP_USE_EMISSIVE_COLOR || HDRP_USE_ADDITIONAL_EMISSIVE_COLOR\n\t\t\t\t\t#define VFX_VARYING_EMISSIVE emissiveColor.rgb\n\t\t\t\t\t#endif\n\t\t\t\t\t\n\t\t\t\t\t#if USE_EXPOSURE_WEIGHT\n\t\t\t\t\t#define VFX_VARYING_EXPOSUREWEIGHT emissiveColor.a\n\t\t\t\t\t#endif\n\t\t\t\t\t\t\n\t\t\t\n\t\t#define VFX_VARYING_PS_INPUTS ps_input\n\t\t#define VFX_VARYING_POSCS pos\n\t\t#define VFX_VARYING_INVSOFTPARTICLEFADEDISTANCE builtInInterpolants.x\n\t\t#define VFX_VARYING_ALPHATHRESHOLD builtInInterpolants.y\n\t\t#define VFX_VARYING_FRAMEBLEND builtInInterpolants.z\n\t\t#define VFX_VARYING_MOTIONVECTORSCALE builtInInterpolants2.xy\n\t\t#define VFX_VARYING_UV uv\n\t\t#define VFX_VARYING_NORMAL normal\n\t\t#if USE_NORMAL_MAP || USE_NORMAL_BENDING || SHADERGRAPH_NEEDS_TANGENT_FORWARD\n\t\t#define VFX_VARYING_TANGENT tangent\n\t\t#endif\n\t\t#if USE_NORMAL_BENDING\n\t\t#define VFX_VARYING_BENTFACTORS bentFactors\n\t\t#endif\n\t\t#define VFX_VARYING_POSWS posWS\n\t\t\n\t\t#if WRITE_MOTION_VECTOR_IN_FORWARD\n\t\t#define VFX_VARYING_VELOCITY_CPOS cPosNonJiterred\n\t\t#define VFX_VARYING_VELOCITY_CPOS_PREVIOUS cPosPrevious\n\t\t#endif\n\t\t\n\t\t\n\t\t\t\n\t\t\t#if !(defined(VFX_VARYING_PS_INPUTS) && defined(VFX_VARYING_POSCS))\n\t\t\t#error VFX_VARYING_PS_INPUTS, VFX_VARYING_POSCS and VFX_VARYING_UV must be defined.\n\t\t\t#endif\n\t\t\t\n\t\t\t#include \"Packages/com.unity.render-pipelines.high-definition/Runtime/VFXGraph/Shaders/VFXCommon.hlsl\"\n\t\t\t#include \"Packages/com.unity.visualeffectgraph/Shaders/VFXCommon.hlsl\"\n\t\t\t\n\n\t\t\tvoid Orient_189(inout float3 axisX, inout float3 axisY, inout float3 axisZ, float3 position) /*mode:FaceCameraPosition axes:ZY */\n\t\t\t{\n\t\t\t \n\t\t\t if (unity_OrthoParams.w == 1.0f) // Face plane for ortho\n\t\t\t {\n\t\t\t float3x3 viewRot = GetVFXToViewRotMatrix();\n\t\t\t axisX = viewRot[0].xyz;\n\t\t\t axisY = viewRot[1].xyz;\n\t\t\t #if VFX_LOCAL_SPACE // Need to remove potential scale in local transform\n\t\t\t axisX = normalize(axisX);\n\t\t\t axisY = normalize(axisY);\n\t\t\t axisZ = cross(axisX,axisY);\n\t\t\t #else\n\t\t\t axisZ = -viewRot[2].xyz;\n\t\t\t #endif\n\t\t\t }\n\t\t\t else\n\t\t\t {\n\t\t\t axisZ = normalize(position - GetViewVFXPosition());\n\t\t\t axisX = normalize(cross(GetVFXToViewRotMatrix()[1].xyz,axisZ));\n\t\t\t axisY = cross(axisZ,axisX);\n\t\t\t }\n\t\t\t \n\t\t\t}\n\t\t\tvoid SetAttribute_65DEC940(inout float pivotX, inout float pivotY, inout float pivotZ, float3 Pivot) /*attribute:pivot Composition:Overwrite Source:Slot Random:Off channels:XYZ */\n\t\t\t{\n\t\t\t pivotX = Pivot.x;\n\t\t\t pivotY = Pivot.y;\n\t\t\t pivotZ = Pivot.z;\n\t\t\t}\n\t\t\tvoid AttributeFromCurve_45ABB90F(inout float size, float age, float lifetime, float4 Size) /*attribute:size Composition:Overwrite AlphaComposition:Overwrite SampleMode:OverLife Mode:PerComponent ColorMode:ColorAndAlpha channels:X */\n\t\t\t{\n\t\t\t float t = age / lifetime;\n\t\t\t float value = 0.0f;\n\t\t\t value = SampleCurve(Size, t);\n\t\t\t size = value;\n\t\t\t}\n\t\t\tvoid SetAttribute_39EE3453(inout float size, float Size) /*attribute:size Composition:Multiply Source:Slot Random:Off channels:X */\n\t\t\t{\n\t\t\t size *= Size;\n\t\t\t}\n\t\t\tvoid SetAttribute_CEEAF35C(inout float alpha, float Alpha) /*attribute:alpha Composition:Overwrite Source:Slot Random:Off channels:XYZ */\n\t\t\t{\n\t\t\t alpha = Alpha;\n\t\t\t}\n\t\t\tvoid ColorOverLife_733E3(float age, float lifetime, inout float3 color, inout float alpha, float gradient) /*mode:ColorAndAlpha ColorComposition:Multiply AlphaComposition:Multiply */\n\t\t\t{\n\t\t\t \n\t\t\t float4 sampledColor = SampleGradient(gradient, age/lifetime);\n\t\t\t color *= sampledColor.rgb;\n\t\t\t alpha *= sampledColor.a;\n\t\t\t \n\t\t\t}\n\t\t\tvoid CameraFade_18F(float3 position, inout float alpha, inout bool alive, float FadedDistance, float InvFadeDistance) /*cullWhenFaded:True fadeMode:Alpha */\n\t\t\t{\n\t\t\t \n\t\t\t float clipPosW = TransformPositionVFXToClip(position).w;\n\t\t\t float fade = saturate((clipPosW - FadedDistance) * InvFadeDistance);\n\t\t\t alpha *= fade;\n\t\t\t if(fade == 0.0) alive=false;\n\t\t\t}\n\t\t\t\n\n\t\t\t\n\t\t\t#if defined(HAS_STRIPS) && !defined(VFX_PRIMITIVE_QUAD)\n\t\t\t#error VFX_PRIMITIVE_QUAD must be defined when HAS_STRIPS is.\n\t\t\t#endif\n\t\t\t\n\t\t\tstruct vs_input\n\t\t\t{\n\t\t\t\tVFX_DECLARE_INSTANCE_ID\n\t\t\t};\n\t\t\t\n\t\t\t#if HAS_STRIPS\n\t\t\t#define PARTICLE_IN_EDGE (id & 1)\n\t\t\t\n\t\t\tfloat3 GetParticlePosition(uint index)\n\t\t\t{\n\t\t\t\tstruct Attributes attributes = (Attributes)0;\n\t\t\t\tattributes.position = asfloat(attributeBuffer.Load3((index * 0x4 + 0x120) << 2));\n\t\t\t\t\n\n\t\t\t\treturn attributes.position;\n\t\t\t}\n\t\t\t\n\t\t\tfloat3 GetStripTangent(float3 currentPos, uint relativeIndex, const StripData stripData)\n\t\t\t{\n\t\t\t\tfloat3 prevTangent = (float3)0.0f;\n\t\t\t\tif (relativeIndex > 0)\n\t\t\t\t{\n\t\t\t\t\tuint prevIndex = GetParticleIndex(relativeIndex - 1,stripData);\n\t\t\t\t\tprevTangent = normalize(currentPos - GetParticlePosition(prevIndex));\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tfloat3 nextTangent = (float3)0.0f;\n\t\t\t\tif (relativeIndex < stripData.nextIndex - 1)\n\t\t\t\t{\n\t\t\t\t\tuint nextIndex = GetParticleIndex(relativeIndex + 1,stripData);\n\t\t\t\t\tnextTangent = normalize(GetParticlePosition(nextIndex) - currentPos);\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\treturn normalize(prevTangent + nextTangent);\n\t\t\t}\n\t\t\t#endif\n\t\t\t\n\t\t\t#pragma vertex vert\n\t\t\tVFX_VARYING_PS_INPUTS vert(uint id : SV_VertexID, vs_input i)\n\t\t\t{\n\t\t\t\tVFX_VARYING_PS_INPUTS o = (VFX_VARYING_PS_INPUTS)0;\n\t\t\t\n\t\t\t\tUNITY_SETUP_INSTANCE_ID(i);\n\t\t\t\tUNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o);\n\t\t\t\n\t\t\t#if VFX_PRIMITIVE_TRIANGLE\n\t\t\t\tuint index = id / 3;\n\t\t\t#elif VFX_PRIMITIVE_QUAD\n\t\t\t#if HAS_STRIPS\n\t\t\t\tid += VFX_GET_INSTANCE_ID(i) * 8192;\n\t\t\t\tconst uint vertexPerStripCount = (PARTICLE_PER_STRIP_COUNT - 1) << 2;\n\t\t\t\tconst StripData stripData = GetStripDataFromStripIndex(id / vertexPerStripCount, PARTICLE_PER_STRIP_COUNT);\n\t\t\t\tuint currentIndex = ((id % vertexPerStripCount) >> 2) + (id & 1); // relative index of particle\n\t\t\t\t\n\t\t\t\tuint maxEdgeIndex = currentIndex - PARTICLE_IN_EDGE + 1;\n\t\t\t\tif (maxEdgeIndex >= stripData.nextIndex)\n\t\t\t\t\treturn o;\n\t\t\t\t\n\t\t\t\tuint index = GetParticleIndex(currentIndex, stripData);\n\t\t\t#else\n\t\t\t\tuint index = (id >> 2) + VFX_GET_INSTANCE_ID(i) * 2048;\n\t\t\t#endif\n\t\t\t#elif VFX_PRIMITIVE_OCTAGON\n\t\t\t\tuint index = (id >> 3) + VFX_GET_INSTANCE_ID(i) * 1024;\n\t\t\t#endif\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\tuint deadCount = 0;\n\t\t\t\t\t\t#if USE_DEAD_LIST_COUNT\n\t\t\t\t\t\tdeadCount = deadListCount.Load(0);\n\t\t\t\t\t\t#endif\t\n\t\t\t\t\t\tif (index >= asuint(nbMax) - deadCount)\n\t\t\t\t\t\t#if USE_GEOMETRY_SHADER\n\t\t\t\t\t\t\treturn; // cull\n\t\t\t\t\t\t#else\n\t\t\t\t\t\t\treturn o; // cull\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\n\t\t\t\t\t\tAttributes attributes = (Attributes)0;\n\t\t\t\t\t\tSourceAttributes sourceAttributes = (SourceAttributes)0;\n\t\t\t\t\t\t\n\t\t\t\t\t\t#if VFX_HAS_INDIRECT_DRAW\n\t\t\t\t\t\tindex = indirectBuffer[index];\n\t\t\t\t\t\tattributes.lifetime = asfloat(attributeBuffer.Load((index * 0x1 + 0x80) << 2));\n\t\t\t\t\t\tattributes.angleZ = asfloat(attributeBuffer.Load((index * 0x1 + 0xA0) << 2));\n\t\t\t\t\t\tattributes.texIndex = asfloat(attributeBuffer.Load((index * 0x3 + 0xC0) << 2));\n\t\t\t\t\t\tattributes.age = asfloat(attributeBuffer.Load((index * 0x3 + 0xC1) << 2));\n\t\t\t\t\t\tattributes.position = asfloat(attributeBuffer.Load3((index * 0x4 + 0x120) << 2));\n\t\t\t\t\t\tattributes.color = float3(1, 1, 1);\n\t\t\t\t\t\tattributes.alpha = (float)1;\n\t\t\t\t\t\tattributes.alive = (attributeBuffer.Load((index * 0x3 + 0xC2) << 2));\n\t\t\t\t\t\tattributes.axisX = float3(1, 0, 0);\n\t\t\t\t\t\tattributes.axisY = float3(0, 1, 0);\n\t\t\t\t\t\tattributes.axisZ = float3(0, 0, 1);\n\t\t\t\t\t\tattributes.angleX = (float)0;\n\t\t\t\t\t\tattributes.angleY = (float)0;\n\t\t\t\t\t\tattributes.pivotX = (float)0;\n\t\t\t\t\t\tattributes.pivotY = (float)0;\n\t\t\t\t\t\tattributes.pivotZ = (float)0;\n\t\t\t\t\t\tattributes.size = (float)0.100000001;\n\t\t\t\t\t\tattributes.scaleX = (float)1;\n\t\t\t\t\t\tattributes.scaleY = (float)1;\n\t\t\t\t\t\tattributes.scaleZ = (float)1;\n\t\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\t#else\n\t\t\t\t\t\tattributes.alive = (attributeBuffer.Load((index * 0x3 + 0xC2) << 2));\n\t\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\t#if !HAS_STRIPS\n\t\t\t\t\t\tif (!attributes.alive)\n\t\t\t\t\t\t\treturn o;\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t\n\t\t\t\t\t\tattributes.lifetime = asfloat(attributeBuffer.Load((index * 0x1 + 0x80) << 2));\n\t\t\t\t\t\tattributes.angleZ = asfloat(attributeBuffer.Load((index * 0x1 + 0xA0) << 2));\n\t\t\t\t\t\tattributes.texIndex = asfloat(attributeBuffer.Load((index * 0x3 + 0xC0) << 2));\n\t\t\t\t\t\tattributes.age = asfloat(attributeBuffer.Load((index * 0x3 + 0xC1) << 2));\n\t\t\t\t\t\tattributes.position = asfloat(attributeBuffer.Load3((index * 0x4 + 0x120) << 2));\n\t\t\t\t\t\tattributes.color = float3(1, 1, 1);\n\t\t\t\t\t\tattributes.alpha = (float)1;\n\t\t\t\t\t\tattributes.axisX = float3(1, 0, 0);\n\t\t\t\t\t\tattributes.axisY = float3(0, 1, 0);\n\t\t\t\t\t\tattributes.axisZ = float3(0, 0, 1);\n\t\t\t\t\t\tattributes.angleX = (float)0;\n\t\t\t\t\t\tattributes.angleY = (float)0;\n\t\t\t\t\t\tattributes.pivotX = (float)0;\n\t\t\t\t\t\tattributes.pivotY = (float)0;\n\t\t\t\t\t\tattributes.pivotZ = (float)0;\n\t\t\t\t\t\tattributes.size = (float)0.100000001;\n\t\t\t\t\t\tattributes.scaleX = (float)1;\n\t\t\t\t\t\tattributes.scaleY = (float)1;\n\t\t\t\t\t\tattributes.scaleZ = (float)1;\n\t\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\n\t\t\t\t\t\t// Initialize built-in needed attributes\n\t\t\t\t\t\t#if HAS_STRIPS\n\t\t\t\t\t\tInitStripAttributes(index, attributes, stripData);\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t\n\t\t\t\tOrient_189( /*inout */attributes.axisX, /*inout */attributes.axisY, /*inout */attributes.axisZ, attributes.position);\n\t\t\t\t{\n\t\t\t\t SetAttribute_65DEC940( /*inout */attributes.pivotX, /*inout */attributes.pivotY, /*inout */attributes.pivotZ, float3(0, 0, 0.564999998));\n\t\t\t\t}\n\t\t\t\tAttributeFromCurve_45ABB90F( /*inout */attributes.size, attributes.age, attributes.lifetime, Size_c);\n\t\t\t\t{\n\t\t\t\t SetAttribute_39EE3453( /*inout */attributes.size, (float)1);\n\t\t\t\t}\n\t\t\t\tSetAttribute_CEEAF35C( /*inout */attributes.alpha, Alpha_e);\n\t\t\t\tColorOverLife_733E3(attributes.age, attributes.lifetime, /*inout */attributes.color, /*inout */attributes.alpha, gradient_f);\n\t\t\t\t{\n\t\t\t\t CameraFade_18F(attributes.position, /*inout */attributes.alpha, /*inout */attributes.alive, (float)2, (float)0.25);\n\t\t\t\t}\n\t\t\t\t\n\n\t\t\t\t\n\t\t\t#if !HAS_STRIPS\n\t\t\t\tif (!attributes.alive)\n\t\t\t\t\treturn o;\n\t\t\t#endif\n\t\t\t\t\n\t\t\t#if VFX_PRIMITIVE_QUAD\n\t\t\t\n\t\t\t#if HAS_STRIPS\n\t\t\t#if VFX_STRIPS_UV_STRECHED\n\t\t\t\to.VFX_VARYING_UV.x = (float)(currentIndex) / (stripData.nextIndex - 1);\n\t\t\t#elif VFX_STRIPS_UV_PER_SEGMENT\n\t\t\t\to.VFX_VARYING_UV.x = PARTICLE_IN_EDGE;\n\t\t\t#else\n\t\t\t\t\n\t\t\t o.VFX_VARYING_UV.x = texCoord;\n\t\t\t#endif\n\t\t\t\n\t\t\t\to.VFX_VARYING_UV.y = float((id & 2) >> 1);\n\t\t\t\tconst float2 vOffsets = float2(0.0f,o.VFX_VARYING_UV.y - 0.5f);\n\t\t\t\t\n\t\t\t#if VFX_STRIPS_SWAP_UV\n\t\t\t\to.VFX_VARYING_UV.xy = float2(1.0f - o.VFX_VARYING_UV.y, o.VFX_VARYING_UV.x);\n\t\t\t#endif\n\t\t\t\t\n\t\t\t\t// Orient strips along their tangents\n\t\t\t\tattributes.axisX = GetStripTangent(attributes.position, currentIndex, stripData);\n\t\t\t#if !VFX_STRIPS_ORIENT_CUSTOM\n\t\t\t\tattributes.axisZ = attributes.position - GetViewVFXPosition();\n\t\t\t#endif\n\t\t\t\tattributes.axisY = normalize(cross(attributes.axisZ, attributes.axisX));\n\t\t\t\tattributes.axisZ = normalize(cross(attributes.axisX, attributes.axisY));\n\t\t\t\t\n\t\t\t#else\n\t\t\t\to.VFX_VARYING_UV.x = float(id & 1);\n\t\t\t\to.VFX_VARYING_UV.y = float((id & 2) >> 1);\n\t\t\t\tconst float2 vOffsets = o.VFX_VARYING_UV.xy - 0.5f;\n\t\t\t#endif\n\t\t\t\t\n\t\t\t#elif VFX_PRIMITIVE_TRIANGLE\n\t\t\t\n\t\t\t\tconst float2 kOffsets[] = {\n\t\t\t\t\tfloat2(-0.5f, \t-0.288675129413604736328125f),\n\t\t\t\t\tfloat2(0.0f, \t0.57735025882720947265625f),\n\t\t\t\t\tfloat2(0.5f,\t-0.288675129413604736328125f),\n\t\t\t\t};\n\t\t\t\t\n\t\t\t\tconst float kUVScale = 0.866025388240814208984375f;\n\t\t\t\t\n\t\t\t\tconst float2 vOffsets = kOffsets[id % 3];\n\t\t\t\to.VFX_VARYING_UV.xy = (vOffsets * kUVScale) + 0.5f;\n\t\t\t\t\n\t\t\t#elif VFX_PRIMITIVE_OCTAGON\t\n\t\t\t\t\n\t\t\t\tconst float2 kUvs[8] = \n\t\t\t\t{\n\t\t\t\t\tfloat2(-0.5f,\t0.0f),\n\t\t\t\t\tfloat2(-0.5f,\t0.5f),\n\t\t\t\t\tfloat2(0.0f,\t0.5f),\n\t\t\t\t\tfloat2(0.5f,\t0.5f),\n\t\t\t\t\tfloat2(0.5f,\t0.0f),\n\t\t\t\t\tfloat2(0.5f,\t-0.5f),\n\t\t\t\t\tfloat2(0.0f,\t-0.5f),\n\t\t\t\t\tfloat2(-0.5f,\t-0.5f),\n\t\t\t\t};\n\t\t\t\t\n\t\t\t\tfloat cropFactor = (float)0;\n\t\t\t\t{\n\t\t\t\t \n\t\t\t\t cropFactor = (float)0.292893201;\n\t\t\t\t}\n\t\t\t\t\n\n\t\t\t\tcropFactor = id & 1 ? 1.0f - cropFactor : 1.0f;\n\t\t\t\tconst float2 vOffsets = kUvs[id & 7] * cropFactor;\n\t\t\t\to.VFX_VARYING_UV.xy = vOffsets + 0.5f;\n\t\t\t\t\n\t\t\t#endif\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\tfloat3 size3 = float3(attributes.size,attributes.size,attributes.size);\n\t\t\t\t\t\t#if VFX_USE_SCALEX_CURRENT\n\t\t\t\t\t\tsize3.x *= attributes.scaleX;\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t#if VFX_USE_SCALEY_CURRENT\n\t\t\t\t\t\tsize3.y *= attributes.scaleY;\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t#if VFX_USE_SCALEZ_CURRENT\n\t\t\t\t\t\tsize3.z *= attributes.scaleZ;\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\n\t\t\t#if HAS_STRIPS\n\t\t\t\tsize3 += size3 < 0.0f ? -VFX_EPSILON : VFX_EPSILON; // Add an epsilon so that size is never 0 for strips\n\t\t\t#endif\n\t\t\t\t\n\t\t\t\tconst float4x4 elementToVFX = GetElementToVFXMatrix(\n\t\t\t\t\tattributes.axisX,\n\t\t\t\t\tattributes.axisY,\n\t\t\t\t\tattributes.axisZ,\n\t\t\t\t\tfloat3(attributes.angleX,attributes.angleY,attributes.angleZ),\n\t\t\t\t\tfloat3(attributes.pivotX,attributes.pivotY,attributes.pivotZ),\n\t\t\t\t\tsize3,\n\t\t\t\t\tattributes.position);\n\t\t\t\t\t\n\t\t\t\tfloat3 inputVertexPosition = float3(vOffsets, 0.0f);\n\t\t\t\tfloat3 vPos = mul(elementToVFX,float4(inputVertexPosition, 1.0f)).xyz;\n\t\t\t\n\t\t\t\to.VFX_VARYING_POSCS = TransformPositionVFXToClip(vPos);\n\t\t\t \n\t\t\t float3 vPosWS = TransformPositionVFXToWorld(vPos);\n\t\t\t\t\n\t\t\t #ifdef VFX_VARYING_POSWS\n\t\t\t o.VFX_VARYING_POSWS = vPosWS;\n\t\t\t #endif\n\t\t\t\n\t\t\t\tfloat3 normalWS = normalize(TransformDirectionVFXToWorld(normalize(-transpose(elementToVFX)[2].xyz)));\n\t\t\t\t#ifdef VFX_VARYING_NORMAL\n\t\t\t\tfloat normalFlip = (size3.x * size3.y * size3.z) < 0 ? -1 : 1;\n\t\t\t\to.VFX_VARYING_NORMAL = normalFlip * normalWS;\n\t\t\t\t#endif\n\t\t\t\t#ifdef VFX_VARYING_TANGENT\n\t\t\t\to.VFX_VARYING_TANGENT = normalize(TransformDirectionVFXToWorld(normalize(transpose(elementToVFX)[0].xyz)));\n\t\t\t\t#endif\n\t\t\t\t#ifdef VFX_VARYING_BENTFACTORS\n\t\t\t\tfloat normalBendingFactor = (float)0;\n\t\t\t\t{\n\t\t\t\t \n\t\t\t\t normalBendingFactor = (float)0.526415288;\n\t\t\t\t}\n\t\t\t\t\n\n\t\t\t\t#if HAS_STRIPS\n\t\t\t\t#define BENT_FACTOR_MULTIPLIER 2.0f\n\t\t\t\t#else\n\t\t\t\t#define BENT_FACTOR_MULTIPLIER 1.41421353816986083984375f\n\t\t\t\t#endif\n\t\t\t\to.VFX_VARYING_BENTFACTORS = vOffsets * normalBendingFactor * BENT_FACTOR_MULTIPLIER;\n\t\t\t\t#endif\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\t#if defined(VFX_VARYING_VELOCITY_CPOS) && defined(VFX_VARYING_VELOCITY_CPOS_PREVIOUS)\n\t\t\t\t\t\tfloat4x4 previousElementToVFX = (float4x4)0;\n\t\t\t\t\t\tpreviousElementToVFX[3] = float4(0,0,0,1);\n\t\t\t\t\t\t\n\t\t\t\t\t\tUNITY_UNROLL\n\t\t\t\t\t\tfor (int itIndexMatrixRow = 0; itIndexMatrixRow < 3; ++itIndexMatrixRow)\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tUNITY_UNROLL\n\t\t\t\t\t\t\tfor (int itIndexMatrixCol = 0; itIndexMatrixCol < 4; ++itIndexMatrixCol)\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tuint itIndexMatrix = itIndexMatrixCol * 4 + itIndexMatrixRow;\n\t\t\t\t\t\t\t\tuint read = elementToVFXBufferPrevious.Load((index * 16 + itIndexMatrix) << 2);\n\t\t\t\t\t\t\t\tpreviousElementToVFX[itIndexMatrixRow][itIndexMatrixCol] = asfloat(read);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\t\n\t\t\t\t\t\tuint previousFrameIndex = elementToVFXBufferPrevious.Load((index * 16 + 15) << 2);\n\t\t\t\t\t\to.VFX_VARYING_VELOCITY_CPOS = o.VFX_VARYING_VELOCITY_CPOS_PREVIOUS = float4(0.0f, 0.0f, 0.0f, 1.0f);\n\t\t\t\t\t\tif (asuint(currentFrameIndex) - previousFrameIndex == 1u)\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tfloat3 oldvPos = mul(previousElementToVFX,float4(inputVertexPosition, 1.0f)).xyz;\n\t\t\t\t\t\t\to.VFX_VARYING_VELOCITY_CPOS_PREVIOUS = TransformPositionVFXToPreviousClip(oldvPos);\n\t\t\t\t\t\t\to.VFX_VARYING_VELOCITY_CPOS = TransformPositionVFXToNonJitteredClip(vPos);\n\t\t\t\t\t\t}\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\t#if VFX_USE_COLOR_CURRENT && defined(VFX_VARYING_COLOR)\n\t\t\t\t\t\to.VFX_VARYING_COLOR = attributes.color;\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t#if VFX_USE_ALPHA_CURRENT && defined(VFX_VARYING_ALPHA) \n\t\t\t\t\t\to.VFX_VARYING_ALPHA = attributes.alpha;\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\n\t\t\t\t\t\t#ifdef VFX_VARYING_EXPOSUREWEIGHT\n\t\t\t\t\t\t\n\t\t\t\t\t\to.VFX_VARYING_EXPOSUREWEIGHT = exposureWeight;\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\n\t\t\t\t\t\t#if USE_SOFT_PARTICLE && defined(VFX_VARYING_INVSOFTPARTICLEFADEDISTANCE)\n\t\t\t\t\t\tfloat invSoftParticlesFadeDistance = (float)0;\n\t\t\t\t\t\t{\n\t\t\t\t\t\t \n\t\t\t\t\t\t invSoftParticlesFadeDistance = (float)1;\n\t\t\t\t\t\t}\n\t\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\to.VFX_VARYING_INVSOFTPARTICLEFADEDISTANCE = invSoftParticlesFadeDistance;\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\n\t\t\t\t\t\t#if (USE_ALPHA_TEST || WRITE_MOTION_VECTOR_IN_FORWARD) && (!VFX_SHADERGRAPH || !HAS_SHADERGRAPH_PARAM_ALPHATHRESHOLD) && defined(VFX_VARYING_ALPHATHRESHOLD)\n\t\t\t\t\t\t\n\t\t\t\t\t\to.VFX_VARYING_ALPHATHRESHOLD = alphaThreshold;\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\n\t\t\t\t\t\t#if USE_UV_SCALE_BIAS\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t#if defined (VFX_VARYING_UV)\n\t\t\t\t\t\to.VFX_VARYING_UV.xy = o.VFX_VARYING_UV.xy * uvScale + uvBias;\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\n\t\t\t\t\t\t#if defined(VFX_VARYING_POSWS)\n\t\t\t\t\t\to.VFX_VARYING_POSWS = TransformPositionVFXToWorld(vPos);\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\t#if USE_FLIPBOOK && defined(VFX_VARYING_UV)\n\t\t\t\t\t\tfloat2 flipBookSize = (float2)0;\n\t\t\t\t\t\t{\n\t\t\t\t\t\t \n\t\t\t\t\t\t flipBookSize = float2(8, 8);\n\t\t\t\t\t\t}\n\t\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\tfloat2 invFlipBookSize = (float2)0;\n\t\t\t\t\t\t{\n\t\t\t\t\t\t \n\t\t\t\t\t\t invFlipBookSize = float2(0.125, 0.125);\n\t\t\t\t\t\t}\n\t\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\tVFXUVData uvData = GetUVData(flipBookSize, invFlipBookSize, o.VFX_VARYING_UV.xy, attributes.texIndex);\n\t\t\t\t\t\to.VFX_VARYING_UV.xy = uvData.uvs.xy;\n\t\t\t\t\t\t#if USE_FLIPBOOK_INTERPOLATION && defined(VFX_VARYING_UV) && defined (VFX_VARYING_FRAMEBLEND)\n\t\t\t\t\t\to.VFX_VARYING_UV.zw = uvData.uvs.zw;\n\t\t\t\t\t\to.VFX_VARYING_FRAMEBLEND = uvData.blend;\n\t\t\t\t\t\t#if USE_FLIPBOOK_MOTIONVECTORS && defined(VFX_VARYING_MOTIONVECTORSCALE)\n\t\t\t\t\t\t\n\t\t\t\t\t\to.VFX_VARYING_MOTIONVECTORSCALE = motionVectorScale * invFlipBookSize;\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t#ifndef VFX_SHADERGRAPH\n\t\t\t\t\t\t\t\t\t#ifdef VFX_VARYING_SMOOTHNESS\n\t\t\t\t\t\t\t\t\tfloat smoothness = (float)0;\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t\t smoothness = (float)0;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\to.VFX_VARYING_SMOOTHNESS = smoothness;\n\t\t\t\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t\t\t#if HDRP_MATERIAL_TYPE_STANDARD\n\t\t\t\t\t\t\t\t\t#ifdef VFX_VARYING_METALLIC\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\to.VFX_VARYING_METALLIC = metallic;\n\t\t\t\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t\t\t#elif HDRP_MATERIAL_TYPE_SPECULAR\n\t\t\t\t\t\t\t\t\t#ifdef VFX_VARYING_SPECULAR\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\to.VFX_VARYING_SPECULAR = specularColor;\n\t\t\t\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t\t\t#elif HDRP_MATERIAL_TYPE_TRANSLUCENT\n\t\t\t\t\t\t\t\t\t#ifdef VFX_VARYING_THICKNESS\n\t\t\t\t\t\t\t\t\tfloat thickness = (float)0;\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t\t thickness = (float)0;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\to.VFX_VARYING_THICKNESS = thickness;\n\t\t\t\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t\t\t#if USE_NORMAL_MAP\n\t\t\t\t\t\t\t\t\t#ifdef VFX_VARYING_NORMALSCALE\n\t\t\t\t\t\t\t\t\tfloat normalScale = (float)0;\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t\t normalScale = (float)1.11069202;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\to.VFX_VARYING_NORMALSCALE = normalScale;\n\t\t\t\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t\t\t#if HDRP_USE_EMISSIVE_MAP\n\t\t\t\t\t\t\t\t\t#ifdef VFX_VARYING_EMISSIVESCALE\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\to.VFX_VARYING_EMISSIVESCALE = emissiveScale;\n\t\t\t\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t\t\t#ifdef VFX_VARYING_EMISSIVE\n\t\t\t\t\t\t\t\t\t#if HDRP_USE_EMISSIVE_COLOR\n\t\t\t\t\t\t\t\t\to.VFX_VARYING_EMISSIVE = attributes.color;\n\t\t\t\t\t\t\t\t\t#elif HDRP_USE_ADDITIONAL_EMISSIVE_COLOR\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\to.VFX_VARYING_EMISSIVE = emissiveColor;\n\t\t\t\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t\t\t#if HDRP_USE_ADDITIONAL_BASE_COLOR\n\t\t\t\t\t\t\t\t\t#ifdef VFX_VARYING_COLOR\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\to.VFX_VARYING_COLOR = baseColor;\n\t\t\t\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t \n\t\t\t \n\t\t\t\n\t\t\t\treturn o;\n\t\t\t}\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t#include \"Packages/com.unity.visualeffectgraph/Shaders/VFXCommonOutput.hlsl\"\n\t\t\t\n\t\t\t\n\t\t\n\t\t\t#define SHADERPASS SHADERPASS_FORWARD\n\t\t\t#include \"Packages/com.unity.render-pipelines.high-definition/Runtime/VFXGraph/Shaders/VFXLit.hlsl\"\n\t\t\t\n\t\t\t#ifndef VFX_SHADERGRAPH\n\t\t\t\n\t\t\tvoid VFXGetHDRPLitData(out SurfaceData surfaceData, out BuiltinData builtinData, out BSDFData bsdfData, out PreLightData preLightData, VFX_VARYING_PS_INPUTS i, float3 normalWS, const VFXUVData uvData, uint2 tileIndex)\n\t\t\t{\t\n\t\t\t\t#if HDRP_MATERIAL_TYPE_TRANSLUCENT\n\t\t\t\tuint diffusionProfileHash = (uint)0;\n\t\t\t\t{\n\t\t\t\t \n\t\t\t\t diffusionProfileHash = (uint)1080043756;\n\t\t\t\t}\n\t\t\t\t\n // Loads diffusion profile\n\t\t\t\t#else\n\t\t\t\tconst uint diffusionProfileHash = 0;\n\t\t\t\t#endif\n\t\t\t\t\n\t\t\t\tfloat3 posRWS = VFXGetPositionRWS(i);\n\t\t\t\tfloat4 posSS = i.VFX_VARYING_POSCS;\n\t\t\t\tPositionInputs posInput = GetPositionInput(posSS.xy, _ScreenSize.zw, posSS.z, posSS.w, posRWS, tileIndex);\n\t\t\t\t\n\t\t\t\tfloat alpha;\n\t\t\t\tsurfaceData = VFXGetSurfaceData(i,normalWS,uvData,diffusionProfileHash,alpha);\t\n\t\t\t\tbsdfData = ConvertSurfaceDataToBSDFData(posSS.xy, surfaceData);\n\t\t\t\n\t\t\t\tpreLightData = GetPreLightData(GetWorldSpaceNormalizeViewDir(posRWS),posInput,bsdfData);\n\t\t\t\t\n\t\t\t\tpreLightData.diffuseFGD = 1.0f;\n\t\t\t //TODO: investigate why this is needed\n\t\t\t preLightData.coatPartLambdaV = 0;\n\t\t\t preLightData.coatIblR = 0;\n\t\t\t preLightData.coatIblF = 0;\n\t\t\t \n\t\t\t\tbuiltinData = VFXGetBuiltinData(i,posInput,surfaceData,uvData,alpha);\n\t\t\t}\n\t\t\t\n\t\t\tvoid VFXGetHDRPLitData(out SurfaceData surfaceData, out BuiltinData builtinData, VFX_VARYING_PS_INPUTS i, float3 normalWS, const VFXUVData uvData)\n\t\t\t{\n\t\t\t\tBSDFData bsdfData = (BSDFData)0;\n\t\t\t\tPreLightData preLightData = (PreLightData)0;\n\t\t\t\tpreLightData.diffuseFGD = 1.0f;\n\t\t\t\tVFXGetHDRPLitData(surfaceData,builtinData,bsdfData,preLightData,i,normalWS,uvData,uint2(0,0));\n\t\t\t}\n\t\t\t\n\t\t\t#endif\n\t\t\t\n\t\t\t\n\t\t\t#include \"Packages/com.unity.render-pipelines.high-definition/Runtime/VFXGraph/Shaders/VFXLitPixelOutput.hlsl\"\n\t\t\t\n\t\t\t\n\t\t\n\t\t\t\t\t\t\t\n\t\t \n\t\t\t\t\t\t\t\n\t\t\t#pragma fragment frag\n\t\t\tvoid frag(ps_input i\n\t\t\t, out float4 outColor : SV_Target0\n\t\t\t#if USE_DOUBLE_SIDED\n\t\t\t, bool frontFace : SV_IsFrontFace\n\t\t\t#endif\n\t\t\t#if WRITE_MOTION_VECTOR_IN_FORWARD\n\t\t\t, out float4 outMotionVector : SV_Target1\n\t\t\t#endif\n\t\t\t)\n\t\t\t{\n\t\t\t\tUNITY_SETUP_STEREO_EYE_INDEX_POST_VERTEX(i);\n\t\t\t\tVFXTransformPSInputs(i);\n\t\t\t\t\n\t\t\t\t\t\t\t#ifdef VFX_VARYING_NORMAL\n\t\t\t\t\t\t\t#if USE_DOUBLE_SIDED\n\t\t\t\t\t\t\tconst float faceMul = frontFace ? 1.0f : -1.0f;\n\t\t\t\t\t\t\t#else\n\t\t\t\t\t\t\tconst float faceMul = 1.0f;\n\t\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\tfloat3 normalWS = i.VFX_VARYING_NORMAL * faceMul;\n\t\t\t\t\t\t\tconst VFXUVData uvData = GetUVData(i);\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t#ifdef VFX_VARYING_TANGENT\n\t\t\t\t\t\t\tfloat3 tangentWS = i.VFX_VARYING_TANGENT;\n\t\t\t\t\t\t\tfloat3 bitangentWS = cross(i.VFX_VARYING_TANGENT,i.VFX_VARYING_NORMAL);\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t#if defined(VFX_VARYING_BENTFACTORS) && USE_NORMAL_BENDING\t\n\t\t\t\t\t\t\tfloat3 bentFactors = float3(i.VFX_VARYING_BENTFACTORS.xy,sqrt(1.0f - dot(i.VFX_VARYING_BENTFACTORS,i.VFX_VARYING_BENTFACTORS)));\n\t\t\t\t\t\t\tnormalWS = tangentWS * bentFactors.x + bitangentWS * bentFactors.y + normalWS * bentFactors.z;\n\t\t\t\t\t\t\ttangentWS = normalize(cross(normalWS,bitangentWS));\n\t\t\t\t\t\t\tbitangentWS = cross(tangentWS,normalWS);\n\t\t\t\t\t\t\ttangentWS *= faceMul;\n\t\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\tfloat3x3 tbn = float3x3(tangentWS,bitangentWS,normalWS);\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t#if USE_NORMAL_MAP\n\t\t\t\t\t\t\tfloat3 n = SampleNormalMap(VFX_SAMPLER(normalMap),uvData);\n\t\t\t\t\t\t\tfloat normalScale = 1.0f;\n\t\t\t\t\t\t\t#ifdef VFX_VARYING_NORMALSCALE\n\t\t\t\t\t\t\tnormalScale = i.VFX_VARYING_NORMALSCALE;\n\t\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\tnormalWS = normalize(lerp(normalWS,mul(n,tbn),normalScale));\n\t\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t\n\t\t \n\t\t #ifdef VFX_SHADERGRAPH\n\t\t \n\t\t \n\t\t \n\t\t SurfaceData surface;\n\t\t BuiltinData builtin;\n\t\t surface = (SurfaceData)0;\n\t\t builtin = (BuiltinData)0;\n\t\t \n\t\t surface.materialFeatures = MATERIALFEATUREFLAGS_LIT_STANDARD;\n\t\t surface.specularOcclusion = 1.0f;\n\t\t surface.ambientOcclusion = 1.0f;\n\t\t surface.subsurfaceMask = 1.0f;\n\t\t \n\t\t #if HAS_SHADERGRAPH_PARAM_ALPHA\n\t\t builtin.opacity = OUTSG.;\n\t\t VFXClipFragmentColor(builtin.opacity,i);\n\t\t #endif\n\t\t \n\t\t #if HAS_SHADERGRAPH_PARAM_SMOOTHNESS\n\t\t surface.perceptualSmoothness = OUTSG.;\n\t\t #endif\n\t\t #if HAS_SHADERGRAPH_PARAM_METALLIC\n\t\t surface.metallic = OUTSG.;\n\t\t #endif\n\t\t #if HAS_SHADERGRAPH_PARAM_BASECOLOR\n\t\t surface.baseColor = OUTSG.;\n\t\t #endif\n\t\t \n\t\t #if HAS_SHADERGRAPH_PARAM_NORMAL\n\t\t float3 n = OUTSG.;\n\t\t normalWS = mul(n,tbn);\n\t\t #endif\n\t\t \n\t\t surface.normalWS = normalWS;\n\t\t \n\t\t #if HAS_SHADERGRAPH_PARAM_EMISSIVE\n\t\t builtin.emissiveColor = OUTSG.;\n\t\t #endif\n\t\t\n\t\t \n\t\t outColor = VFXGetPixelOutputForwardShaderGraph(surface, builtin,i);\n\t\t #else\n\t\t outColor = VFXGetPixelOutputForward(i,normalWS,uvData);\n\t\t #endif\n\t\t\t\t\n\t\t#if WRITE_MOTION_VECTOR_IN_FORWARD\n\t\t\t\t\n\t\t\t\t\t\tfloat2 velocity = (i.VFX_VARYING_VELOCITY_CPOS.xy/i.VFX_VARYING_VELOCITY_CPOS.w) - (i.VFX_VARYING_VELOCITY_CPOS_PREVIOUS.xy/i.VFX_VARYING_VELOCITY_CPOS_PREVIOUS.w);\n\t\t\t\t\t\t#if UNITY_UV_STARTS_AT_TOP\n\t\t\t\t\t\t\tvelocity.y = -velocity.y;\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\tfloat4 encodedMotionVector = 0.0f;\n\t\t\t\t\t\tVFXEncodeMotionVector(velocity * 0.5f, encodedMotionVector);\n\t\t\t\t\t\t\n\t\t\t\toutMotionVector = encodedMotionVector;\n\t\t\t\toutMotionVector.a = outColor.a < i.VFX_VARYING_ALPHATHRESHOLD ? 0.0f : 1.0f; //Independant clipping for motion vector pass\n\t\t#endif\n\t\t\t}\n\t\t\tENDHLSL\n\t\t}\n\t\t\n\r\n\t\t\r\n\t}\r\n}\r\n" - compute: 0 name: '[Leaking Pressured Air]Output Particle Lit Octagon' source: "Shader \"Hidden/VFX/SteamLeak01/Leaking Pressured Air/Output Particle Lit Octagon\"\n{\r\n\tSubShader\r\n\t{\t\r\n\t\tCull Off\r\n\t\t\r\n\t\tTags { \"Queue\"=\"Transparent+400\" \"IgnoreProjector\"=\"True\" \"RenderType\"=\"Transparent\" }\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\tBlend One OneMinusSrcAlpha , Zero OneMinusSrcAlpha\n\t\tZTest LEqual\n\t\tZWrite Off\n\t\tCull Off\n\t\t\n\t\n\t\t\t\n\t\tHLSLINCLUDE\n\t\t\n\t\t#define NB_THREADS_PER_GROUP 64\n\t\t#define HAS_ATTRIBUTES 1\n\t\t#define VFX_PASSDEPTH_ACTUAL (0)\n\t\t#define VFX_PASSDEPTH_MOTION_VECTOR (1)\n\t\t#define VFX_PASSDEPTH_SELECTION (2)\n\t\t#define VFX_USE_VELOCITY_CURRENT 1\n\t\t#define VFX_USE_LIFETIME_CURRENT 1\n\t\t#define VFX_USE_TEXINDEX_CURRENT 1\n\t\t#define VFX_USE_POSITION_CURRENT 1\n\t\t#define VFX_USE_COLOR_CURRENT 1\n\t\t#define VFX_USE_ALPHA_CURRENT 1\n\t\t#define VFX_USE_ALIVE_CURRENT 1\n\t\t#define VFX_USE_AXISX_CURRENT 1\n\t\t#define VFX_USE_AXISY_CURRENT 1\n\t\t#define VFX_USE_AXISZ_CURRENT 1\n\t\t#define VFX_USE_ANGLEX_CURRENT 1\n\t\t#define VFX_USE_ANGLEY_CURRENT 1\n\t\t#define VFX_USE_ANGLEZ_CURRENT 1\n\t\t#define VFX_USE_PIVOTX_CURRENT 1\n\t\t#define VFX_USE_PIVOTY_CURRENT 1\n\t\t#define VFX_USE_PIVOTZ_CURRENT 1\n\t\t#define VFX_USE_SIZE_CURRENT 1\n\t\t#define VFX_USE_SCALEX_CURRENT 1\n\t\t#define VFX_USE_SCALEY_CURRENT 1\n\t\t#define VFX_USE_SCALEZ_CURRENT 1\n\t\t#define VFX_USE_AGE_CURRENT 1\n\t\t#define VFX_COLORMAPPING_DEFAULT 1\n\t\t#define IS_TRANSPARENT_PARTICLE 1\n\t\t#define USE_SOFT_PARTICLE 1\n\t\t#define VFX_BLENDMODE_ALPHA 1\n\t\t#define VFX_HAS_INDIRECT_DRAW 1\n\t\t#define USE_FLIPBOOK 1\n\t\t#define USE_FLIPBOOK_INTERPOLATION 1\n\t\t#define HDRP_LIT 1\n\t\t#define HDRP_MATERIAL_TYPE_TRANSLUCENT 1\n\t\t#define HDRP_USE_BASE_COLOR_MAP 1\n\t\t#define HDRP_USE_BASE_COLOR_MAP_ALPHA 1\n\t\t#define HDRP_USE_BASE_COLOR 1\n\t\t#define USE_ONLY_AMBIENT_LIGHTING 1\n\t\t#define USE_NORMAL_BENDING 1\n\t\t#define FORCE_NORMAL_VARYING 1\n\t\t#define VFX_PRIMITIVE_OCTAGON 1\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t#define VFX_LOCAL_SPACE 1\n\t\t#include \"Packages/com.unity.render-pipelines.high-definition/Runtime/VFXGraph/Shaders/VFXDefines.hlsl\"\n\t\t\n\n\t\tCBUFFER_START(parameters)\n\t\t float4 Scale_x_d;\n\t\t float4 Scale_y_d;\n\t\t float Alpha_e;\n\t\t float gradient_f;\n\t\t uint2 PADDING_0;\n\t\tCBUFFER_END\n\t\t\n\t\tstruct Attributes\n\t\t{\n\t\t float3 velocity;\n\t\t float lifetime;\n\t\t float texIndex;\n\t\t float3 position;\n\t\t float3 color;\n\t\t float alpha;\n\t\t bool alive;\n\t\t float3 axisX;\n\t\t float3 axisY;\n\t\t float3 axisZ;\n\t\t float angleX;\n\t\t float angleY;\n\t\t float angleZ;\n\t\t float pivotX;\n\t\t float pivotY;\n\t\t float pivotZ;\n\t\t float size;\n\t\t float scaleX;\n\t\t float scaleY;\n\t\t float scaleZ;\n\t\t float age;\n\t\t};\n\t\t\n\t\tstruct SourceAttributes\n\t\t{\n\t\t};\n\t\t\n\t\tTexture2D baseColorMap;\n\t\tSamplerState samplerbaseColorMap;\n\t\tfloat4 baseColorMap_TexelSize;\n\t\t\n\n\t\t\n\t\t#define VFX_NEEDS_COLOR_INTERPOLATOR (VFX_USE_COLOR_CURRENT || VFX_USE_ALPHA_CURRENT)\n\t\t#if HAS_STRIPS\n\t\t#define VFX_OPTIONAL_INTERPOLATION \n\t\t#else\n\t\t#define VFX_OPTIONAL_INTERPOLATION nointerpolation\n\t\t#endif\n\t\t\n\t\tByteAddressBuffer attributeBuffer;\t\n\t\t\n\t\t#if VFX_HAS_INDIRECT_DRAW\n\t\tStructuredBuffer indirectBuffer;\t\n\t\t#endif\t\n\t\t\n\t\t#if USE_DEAD_LIST_COUNT\n\t\tByteAddressBuffer deadListCount;\n\t\t#endif\n\t\t\n\t\t#if HAS_STRIPS\n\t\tBuffer stripDataBuffer;\n\t\t#endif\n\t\t\n\t\t#if WRITE_MOTION_VECTOR_IN_FORWARD || USE_MOTION_VECTORS_PASS\n\t\tByteAddressBuffer elementToVFXBufferPrevious;\n\t\t#endif\n\t\t\n\t\tCBUFFER_START(outputParams)\n\t\t\tfloat nbMax;\n\t\t\tfloat systemSeed;\n\t\tCBUFFER_END\n\t\t\n\t\t// Helper macros to always use a valid instanceID\n\t\t#if defined(UNITY_STEREO_INSTANCING_ENABLED)\n\t\t\t#define VFX_DECLARE_INSTANCE_ID UNITY_VERTEX_INPUT_INSTANCE_ID\n\t\t\t#define VFX_GET_INSTANCE_ID(i) unity_InstanceID\n\t\t#else\n\t\t\t#define VFX_DECLARE_INSTANCE_ID uint instanceID : SV_InstanceID;\n\t\t\t#define VFX_GET_INSTANCE_ID(i) i.instanceID\n\t\t#endif\n\t\t\n\t\tENDHLSL\n\t\t\n\r\n\t\tPass\n\t\t{\t\t\n\t\t\tTags { \"LightMode\"=\"SceneSelectionPass\" }\n\t\t\n\t\t\tZWrite On\n\t\t\tBlend Off\n\t\t\t\n\t\t\tHLSLPROGRAM\n\t\t\t#define VFX_PASSDEPTH VFX_PASSDEPTH_SELECTION\n\t\t\t#pragma target 4.5\n\t\t\t#define UNITY_MATERIAL_LIT\n\t\t\t#pragma multi_compile _ WRITE_NORMAL_BUFFER\n\t\t\t\n\t\t\t#define NEEDS_NORMAL\tdefined(WRITE_NORMAL_BUFFER) || FORCE_NORMAL_VARYING || SHADERGRAPH_NEEDS_NORMAL_DEPTHONLY\n\t\t\t#define NEEDS_TANGENT\tUSE_NORMAL_MAP || USE_NORMAL_BENDING || SHADERGRAPH_NEEDS_TANGENT_DEPTHONLY\n\t\t\t\n\t\t\tstruct ps_input\n\t\t\t{\n\t\t\t\tfloat4 pos : SV_POSITION;\n\t\t\t\t#if USE_FLIPBOOK_INTERPOLATION\n\t\t\t\tfloat4 uv : TEXCOORD0;\n\t\t\t\t#else\n\t\t\t\tfloat2 uv : TEXCOORD0;\t\n\t\t\t\t#endif\n\t\t\t\t#if USE_ALPHA_TEST || USE_FLIPBOOK_INTERPOLATION || VFX_USE_ALPHA_CURRENT\n\t\t\t\t// x: alpha threshold\n\t\t\t\t// y: frame blending factor\n\t\t\t\t// z: alpha\n\t\t\t\t// w: smoothness\n\t\t\t\tVFX_OPTIONAL_INTERPOLATION float4 builtInInterpolants : TEXCOORD1;\n\t\t\t\t#endif\n\t\t\t\t\n\t\t\t\t#if USE_FLIPBOOK_MOTIONVECTORS\n\t\t\t\t// x: motion vector scale u\n\t\t\t\t// y: motion vector scale v\n\t\t\t\tVFX_OPTIONAL_INTERPOLATION float2 builtInInterpolants2 : TEXCOORD2;\n\t\t\t\t#endif\n\t\t\t\t\n\t\t\t\t#if NEEDS_NORMAL\n\t\t\t\tfloat4 normal : TEXCOORD3; // normal scale is stored in w\n\t\t\t\t#endif\n\t\t\t\t#if NEEDS_TANGENT\n\t\t\t\tfloat3 tangent : TEXCOORD4;\n\t\t\t\t#endif\n\t\t\t\t#if USE_NORMAL_BENDING\n\t\t\t\tfloat2 bentFactors : TEXCOORD5;\n\t\t\t\t#endif\n\t\t\t\t\n\t\t\t\t#if VFX_PASSDEPTH == VFX_PASSDEPTH_MOTION_VECTOR\n\t\t\t\tfloat4 cPosPrevious : TEXCOORD6;\n\t\t\t\tfloat4 cPosNonJiterred : TEXCOORD7;\n\t\t\t\t#endif\n\t\t\t \n\t\t\t \n\t\t\t\n\t\t\t\tUNITY_VERTEX_OUTPUT_STEREO\n\t\t\t};\n\t\t\t\n\t\t\t#define VFX_VARYING_PS_INPUTS ps_input\n\t\t\t#define VFX_VARYING_POSCS pos\n\t\t\t#define VFX_VARYING_ALPHA builtInInterpolants.z\n\t\t\t#define VFX_VARYING_ALPHATHRESHOLD builtInInterpolants.x\n\t\t\t#define VFX_VARYING_FRAMEBLEND builtInInterpolants.y\n\t\t\t#define VFX_VARYING_MOTIONVECTORSCALE builtInInterpolants2.xy\n\t\t\t#define VFX_VARYING_UV uv\n\t\t\t\n\t\t\t#if NEEDS_NORMAL\n\t\t\t#define VFX_VARYING_NORMAL normal.xyz\n\t\t\t#endif\n\t\t\t#ifdef WRITE_NORMAL_BUFFER\n\t\t\t#define VFX_VARYING_SMOOTHNESS builtInInterpolants.w\n\t\t\t#endif\n\t\t\t#if NEEDS_TANGENT\n\t\t\t#define VFX_VARYING_TANGENT tangent\n\t\t\t#endif\n\t\t\t#if USE_NORMAL_MAP\n\t\t\t#define VFX_VARYING_NORMALSCALE normal.w\n\t\t\t#endif\n\t\t\t#if USE_NORMAL_BENDING\n\t\t\t#define VFX_VARYING_BENTFACTORS bentFactors\n\t\t\t#endif\n\t\t\t\n\t\t\t#if VFX_PASSDEPTH == VFX_PASSDEPTH_MOTION_VECTOR\n\t\t\t#define VFX_VARYING_VELOCITY_CPOS cPosNonJiterred\n\t\t\t#define VFX_VARYING_VELOCITY_CPOS_PREVIOUS cPosPrevious\n\t\t\t#endif\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t#if !(defined(VFX_VARYING_PS_INPUTS) && defined(VFX_VARYING_POSCS))\n\t\t\t#error VFX_VARYING_PS_INPUTS, VFX_VARYING_POSCS and VFX_VARYING_UV must be defined.\n\t\t\t#endif\n\t\t\t\n\t\t\t#include \"Packages/com.unity.render-pipelines.high-definition/Runtime/VFXGraph/Shaders/VFXCommon.hlsl\"\n\t\t\t#include \"Packages/com.unity.visualeffectgraph/Shaders/VFXCommon.hlsl\"\n\t\t\t\n\n\t\t\tvoid Orient_94A(inout float3 axisX, inout float3 axisY, inout float3 axisZ, float3 position, float3 velocity) /*mode:AlongVelocity axes:ZY */\n\t\t\t{\n\t\t\t \n\t\t\t axisY = normalize(velocity);\n\t\t\t axisZ = position - GetViewVFXPosition();\n\t\t\t axisX = normalize(cross(axisY,axisZ));\n\t\t\t axisZ = cross(axisX,axisY);\n\t\t\t \n\t\t\t}\n\t\t\tvoid SetAttribute_65DEC940(inout float pivotX, inout float pivotY, inout float pivotZ, float3 Pivot) /*attribute:pivot Composition:Overwrite Source:Slot Random:Off channels:XYZ */\n\t\t\t{\n\t\t\t pivotX = Pivot.x;\n\t\t\t pivotY = Pivot.y;\n\t\t\t pivotZ = Pivot.z;\n\t\t\t}\n\t\t\tvoid SetAttribute_3278B22F(inout float size, float Size) /*attribute:size Composition:Overwrite Source:Slot Random:Off channels:XYZ */\n\t\t\t{\n\t\t\t size = Size;\n\t\t\t}\n\t\t\tvoid AttributeFromCurve_536B7819(inout float scaleX, inout float scaleY, float age, float lifetime, float4 Scale_x, float4 Scale_y) /*attribute:scale Composition:Overwrite AlphaComposition:Overwrite SampleMode:OverLife Mode:PerComponent ColorMode:ColorAndAlpha channels:XY */\n\t\t\t{\n\t\t\t float t = age / lifetime;\n\t\t\t float2 value = 0.0f;\n\t\t\t value[0] = SampleCurve(Scale_x, t);\n\t\t\t value[1] = SampleCurve(Scale_y, t);\n\t\t\t scaleX = value.x;\n\t\t\t scaleY = value.y;\n\t\t\t}\n\t\t\tvoid SetAttribute_CEEAF35C(inout float alpha, float Alpha) /*attribute:alpha Composition:Overwrite Source:Slot Random:Off channels:XYZ */\n\t\t\t{\n\t\t\t alpha = Alpha;\n\t\t\t}\n\t\t\tvoid ColorOverLife_733E3(float age, float lifetime, inout float3 color, inout float alpha, float gradient) /*mode:ColorAndAlpha ColorComposition:Multiply AlphaComposition:Multiply */\n\t\t\t{\n\t\t\t \n\t\t\t float4 sampledColor = SampleGradient(gradient, age/lifetime);\n\t\t\t color *= sampledColor.rgb;\n\t\t\t alpha *= sampledColor.a;\n\t\t\t \n\t\t\t}\n\t\t\tvoid CameraFade_18F(float3 position, inout float alpha, inout bool alive, float FadedDistance, float InvFadeDistance) /*cullWhenFaded:True fadeMode:Alpha */\n\t\t\t{\n\t\t\t \n\t\t\t float clipPosW = TransformPositionVFXToClip(position).w;\n\t\t\t float fade = saturate((clipPosW - FadedDistance) * InvFadeDistance);\n\t\t\t alpha *= fade;\n\t\t\t if(fade == 0.0) alive=false;\n\t\t\t}\n\t\t\t\n\n\t\t\t\n\t\t\t#if defined(HAS_STRIPS) && !defined(VFX_PRIMITIVE_QUAD)\n\t\t\t#error VFX_PRIMITIVE_QUAD must be defined when HAS_STRIPS is.\n\t\t\t#endif\n\t\t\t\n\t\t\tstruct vs_input\n\t\t\t{\n\t\t\t\tVFX_DECLARE_INSTANCE_ID\n\t\t\t};\n\t\t\t\n\t\t\t#if HAS_STRIPS\n\t\t\t#define PARTICLE_IN_EDGE (id & 1)\n\t\t\t\n\t\t\tfloat3 GetParticlePosition(uint index)\n\t\t\t{\n\t\t\t\tstruct Attributes attributes = (Attributes)0;\n\t\t\t\tattributes.position = asfloat(attributeBuffer.Load3((index * 0x4 + 0x120) << 2));\n\t\t\t\t\n\n\t\t\t\treturn attributes.position;\n\t\t\t}\n\t\t\t\n\t\t\tfloat3 GetStripTangent(float3 currentPos, uint relativeIndex, const StripData stripData)\n\t\t\t{\n\t\t\t\tfloat3 prevTangent = (float3)0.0f;\n\t\t\t\tif (relativeIndex > 0)\n\t\t\t\t{\n\t\t\t\t\tuint prevIndex = GetParticleIndex(relativeIndex - 1,stripData);\n\t\t\t\t\tprevTangent = normalize(currentPos - GetParticlePosition(prevIndex));\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tfloat3 nextTangent = (float3)0.0f;\n\t\t\t\tif (relativeIndex < stripData.nextIndex - 1)\n\t\t\t\t{\n\t\t\t\t\tuint nextIndex = GetParticleIndex(relativeIndex + 1,stripData);\n\t\t\t\t\tnextTangent = normalize(GetParticlePosition(nextIndex) - currentPos);\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\treturn normalize(prevTangent + nextTangent);\n\t\t\t}\n\t\t\t#endif\n\t\t\t\n\t\t\t#pragma vertex vert\n\t\t\tVFX_VARYING_PS_INPUTS vert(uint id : SV_VertexID, vs_input i)\n\t\t\t{\n\t\t\t\tVFX_VARYING_PS_INPUTS o = (VFX_VARYING_PS_INPUTS)0;\n\t\t\t\n\t\t\t\tUNITY_SETUP_INSTANCE_ID(i);\n\t\t\t\tUNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o);\n\t\t\t\n\t\t\t#if VFX_PRIMITIVE_TRIANGLE\n\t\t\t\tuint index = id / 3;\n\t\t\t#elif VFX_PRIMITIVE_QUAD\n\t\t\t#if HAS_STRIPS\n\t\t\t\tid += VFX_GET_INSTANCE_ID(i) * 8192;\n\t\t\t\tconst uint vertexPerStripCount = (PARTICLE_PER_STRIP_COUNT - 1) << 2;\n\t\t\t\tconst StripData stripData = GetStripDataFromStripIndex(id / vertexPerStripCount, PARTICLE_PER_STRIP_COUNT);\n\t\t\t\tuint currentIndex = ((id % vertexPerStripCount) >> 2) + (id & 1); // relative index of particle\n\t\t\t\t\n\t\t\t\tuint maxEdgeIndex = currentIndex - PARTICLE_IN_EDGE + 1;\n\t\t\t\tif (maxEdgeIndex >= stripData.nextIndex)\n\t\t\t\t\treturn o;\n\t\t\t\t\n\t\t\t\tuint index = GetParticleIndex(currentIndex, stripData);\n\t\t\t#else\n\t\t\t\tuint index = (id >> 2) + VFX_GET_INSTANCE_ID(i) * 2048;\n\t\t\t#endif\n\t\t\t#elif VFX_PRIMITIVE_OCTAGON\n\t\t\t\tuint index = (id >> 3) + VFX_GET_INSTANCE_ID(i) * 1024;\n\t\t\t#endif\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\tuint deadCount = 0;\n\t\t\t\t\t\t#if USE_DEAD_LIST_COUNT\n\t\t\t\t\t\tdeadCount = deadListCount.Load(0);\n\t\t\t\t\t\t#endif\t\n\t\t\t\t\t\tif (index >= asuint(nbMax) - deadCount)\n\t\t\t\t\t\t#if USE_GEOMETRY_SHADER\n\t\t\t\t\t\t\treturn; // cull\n\t\t\t\t\t\t#else\n\t\t\t\t\t\t\treturn o; // cull\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\n\t\t\t\t\t\tAttributes attributes = (Attributes)0;\n\t\t\t\t\t\tSourceAttributes sourceAttributes = (SourceAttributes)0;\n\t\t\t\t\t\t\n\t\t\t\t\t\t#if VFX_HAS_INDIRECT_DRAW\n\t\t\t\t\t\tindex = indirectBuffer[index];\n\t\t\t\t\t\tattributes.velocity = asfloat(attributeBuffer.Load3((index * 0x8 + 0x0) << 2));\n\t\t\t\t\t\tattributes.lifetime = asfloat(attributeBuffer.Load((index * 0x1 + 0x100) << 2));\n\t\t\t\t\t\tattributes.texIndex = asfloat(attributeBuffer.Load((index * 0x8 + 0x3) << 2));\n\t\t\t\t\t\tattributes.position = asfloat(attributeBuffer.Load3((index * 0x4 + 0x120) << 2));\n\t\t\t\t\t\tattributes.color = float3(1, 1, 1);\n\t\t\t\t\t\tattributes.alpha = (float)1;\n\t\t\t\t\t\tattributes.alive = (attributeBuffer.Load((index * 0x8 + 0x4) << 2));\n\t\t\t\t\t\tattributes.axisX = float3(1, 0, 0);\n\t\t\t\t\t\tattributes.axisY = float3(0, 1, 0);\n\t\t\t\t\t\tattributes.axisZ = float3(0, 0, 1);\n\t\t\t\t\t\tattributes.angleX = (float)0;\n\t\t\t\t\t\tattributes.angleY = (float)0;\n\t\t\t\t\t\tattributes.angleZ = (float)0;\n\t\t\t\t\t\tattributes.pivotX = (float)0;\n\t\t\t\t\t\tattributes.pivotY = (float)0;\n\t\t\t\t\t\tattributes.pivotZ = (float)0;\n\t\t\t\t\t\tattributes.size = (float)0.100000001;\n\t\t\t\t\t\tattributes.scaleX = (float)1;\n\t\t\t\t\t\tattributes.scaleY = (float)1;\n\t\t\t\t\t\tattributes.scaleZ = (float)1;\n\t\t\t\t\t\tattributes.age = asfloat(attributeBuffer.Load((index * 0x8 + 0x5) << 2));\n\t\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\t#else\n\t\t\t\t\t\tattributes.alive = (attributeBuffer.Load((index * 0x8 + 0x4) << 2));\n\t\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\t#if !HAS_STRIPS\n\t\t\t\t\t\tif (!attributes.alive)\n\t\t\t\t\t\t\treturn o;\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t\n\t\t\t\t\t\tattributes.velocity = asfloat(attributeBuffer.Load3((index * 0x8 + 0x0) << 2));\n\t\t\t\t\t\tattributes.lifetime = asfloat(attributeBuffer.Load((index * 0x1 + 0x100) << 2));\n\t\t\t\t\t\tattributes.texIndex = asfloat(attributeBuffer.Load((index * 0x8 + 0x3) << 2));\n\t\t\t\t\t\tattributes.position = asfloat(attributeBuffer.Load3((index * 0x4 + 0x120) << 2));\n\t\t\t\t\t\tattributes.color = float3(1, 1, 1);\n\t\t\t\t\t\tattributes.alpha = (float)1;\n\t\t\t\t\t\tattributes.axisX = float3(1, 0, 0);\n\t\t\t\t\t\tattributes.axisY = float3(0, 1, 0);\n\t\t\t\t\t\tattributes.axisZ = float3(0, 0, 1);\n\t\t\t\t\t\tattributes.angleX = (float)0;\n\t\t\t\t\t\tattributes.angleY = (float)0;\n\t\t\t\t\t\tattributes.angleZ = (float)0;\n\t\t\t\t\t\tattributes.pivotX = (float)0;\n\t\t\t\t\t\tattributes.pivotY = (float)0;\n\t\t\t\t\t\tattributes.pivotZ = (float)0;\n\t\t\t\t\t\tattributes.size = (float)0.100000001;\n\t\t\t\t\t\tattributes.scaleX = (float)1;\n\t\t\t\t\t\tattributes.scaleY = (float)1;\n\t\t\t\t\t\tattributes.scaleZ = (float)1;\n\t\t\t\t\t\tattributes.age = asfloat(attributeBuffer.Load((index * 0x8 + 0x5) << 2));\n\t\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\n\t\t\t\t\t\t// Initialize built-in needed attributes\n\t\t\t\t\t\t#if HAS_STRIPS\n\t\t\t\t\t\tInitStripAttributes(index, attributes, stripData);\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t\n\t\t\t\tOrient_94A( /*inout */attributes.axisX, /*inout */attributes.axisY, /*inout */attributes.axisZ, attributes.position, attributes.velocity);\n\t\t\t\t{\n\t\t\t\t SetAttribute_65DEC940( /*inout */attributes.pivotX, /*inout */attributes.pivotY, /*inout */attributes.pivotZ, float3(0, -0.340000004, 0.109999999));\n\t\t\t\t}\n\t\t\t\t{\n\t\t\t\t SetAttribute_3278B22F( /*inout */attributes.size, (float)1.51999998);\n\t\t\t\t}\n\t\t\t\tAttributeFromCurve_536B7819( /*inout */attributes.scaleX, /*inout */attributes.scaleY, attributes.age, attributes.lifetime, Scale_x_d, Scale_y_d);\n\t\t\t\tSetAttribute_CEEAF35C( /*inout */attributes.alpha, Alpha_e);\n\t\t\t\tColorOverLife_733E3(attributes.age, attributes.lifetime, /*inout */attributes.color, /*inout */attributes.alpha, gradient_f);\n\t\t\t\t{\n\t\t\t\t CameraFade_18F(attributes.position, /*inout */attributes.alpha, /*inout */attributes.alive, (float)1, (float)0.5);\n\t\t\t\t}\n\t\t\t\t\n\n\t\t\t\t\n\t\t\t#if !HAS_STRIPS\n\t\t\t\tif (!attributes.alive)\n\t\t\t\t\treturn o;\n\t\t\t#endif\n\t\t\t\t\n\t\t\t#if VFX_PRIMITIVE_QUAD\n\t\t\t\n\t\t\t#if HAS_STRIPS\n\t\t\t#if VFX_STRIPS_UV_STRECHED\n\t\t\t\to.VFX_VARYING_UV.x = (float)(currentIndex) / (stripData.nextIndex - 1);\n\t\t\t#elif VFX_STRIPS_UV_PER_SEGMENT\n\t\t\t\to.VFX_VARYING_UV.x = PARTICLE_IN_EDGE;\n\t\t\t#else\n\t\t\t\t\n\t\t\t o.VFX_VARYING_UV.x = texCoord;\n\t\t\t#endif\n\t\t\t\n\t\t\t\to.VFX_VARYING_UV.y = float((id & 2) >> 1);\n\t\t\t\tconst float2 vOffsets = float2(0.0f,o.VFX_VARYING_UV.y - 0.5f);\n\t\t\t\t\n\t\t\t#if VFX_STRIPS_SWAP_UV\n\t\t\t\to.VFX_VARYING_UV.xy = float2(1.0f - o.VFX_VARYING_UV.y, o.VFX_VARYING_UV.x);\n\t\t\t#endif\n\t\t\t\t\n\t\t\t\t// Orient strips along their tangents\n\t\t\t\tattributes.axisX = GetStripTangent(attributes.position, currentIndex, stripData);\n\t\t\t#if !VFX_STRIPS_ORIENT_CUSTOM\n\t\t\t\tattributes.axisZ = attributes.position - GetViewVFXPosition();\n\t\t\t#endif\n\t\t\t\tattributes.axisY = normalize(cross(attributes.axisZ, attributes.axisX));\n\t\t\t\tattributes.axisZ = normalize(cross(attributes.axisX, attributes.axisY));\n\t\t\t\t\n\t\t\t#else\n\t\t\t\to.VFX_VARYING_UV.x = float(id & 1);\n\t\t\t\to.VFX_VARYING_UV.y = float((id & 2) >> 1);\n\t\t\t\tconst float2 vOffsets = o.VFX_VARYING_UV.xy - 0.5f;\n\t\t\t#endif\n\t\t\t\t\n\t\t\t#elif VFX_PRIMITIVE_TRIANGLE\n\t\t\t\n\t\t\t\tconst float2 kOffsets[] = {\n\t\t\t\t\tfloat2(-0.5f, \t-0.288675129413604736328125f),\n\t\t\t\t\tfloat2(0.0f, \t0.57735025882720947265625f),\n\t\t\t\t\tfloat2(0.5f,\t-0.288675129413604736328125f),\n\t\t\t\t};\n\t\t\t\t\n\t\t\t\tconst float kUVScale = 0.866025388240814208984375f;\n\t\t\t\t\n\t\t\t\tconst float2 vOffsets = kOffsets[id % 3];\n\t\t\t\to.VFX_VARYING_UV.xy = (vOffsets * kUVScale) + 0.5f;\n\t\t\t\t\n\t\t\t#elif VFX_PRIMITIVE_OCTAGON\t\n\t\t\t\t\n\t\t\t\tconst float2 kUvs[8] = \n\t\t\t\t{\n\t\t\t\t\tfloat2(-0.5f,\t0.0f),\n\t\t\t\t\tfloat2(-0.5f,\t0.5f),\n\t\t\t\t\tfloat2(0.0f,\t0.5f),\n\t\t\t\t\tfloat2(0.5f,\t0.5f),\n\t\t\t\t\tfloat2(0.5f,\t0.0f),\n\t\t\t\t\tfloat2(0.5f,\t-0.5f),\n\t\t\t\t\tfloat2(0.0f,\t-0.5f),\n\t\t\t\t\tfloat2(-0.5f,\t-0.5f),\n\t\t\t\t};\n\t\t\t\t\n\t\t\t\tfloat cropFactor = (float)0;\n\t\t\t\t{\n\t\t\t\t \n\t\t\t\t cropFactor = (float)0.292893201;\n\t\t\t\t}\n\t\t\t\t\n\n\t\t\t\tcropFactor = id & 1 ? 1.0f - cropFactor : 1.0f;\n\t\t\t\tconst float2 vOffsets = kUvs[id & 7] * cropFactor;\n\t\t\t\to.VFX_VARYING_UV.xy = vOffsets + 0.5f;\n\t\t\t\t\n\t\t\t#endif\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\tfloat3 size3 = float3(attributes.size,attributes.size,attributes.size);\n\t\t\t\t\t\t#if VFX_USE_SCALEX_CURRENT\n\t\t\t\t\t\tsize3.x *= attributes.scaleX;\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t#if VFX_USE_SCALEY_CURRENT\n\t\t\t\t\t\tsize3.y *= attributes.scaleY;\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t#if VFX_USE_SCALEZ_CURRENT\n\t\t\t\t\t\tsize3.z *= attributes.scaleZ;\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\n\t\t\t#if HAS_STRIPS\n\t\t\t\tsize3 += size3 < 0.0f ? -VFX_EPSILON : VFX_EPSILON; // Add an epsilon so that size is never 0 for strips\n\t\t\t#endif\n\t\t\t\t\n\t\t\t\tconst float4x4 elementToVFX = GetElementToVFXMatrix(\n\t\t\t\t\tattributes.axisX,\n\t\t\t\t\tattributes.axisY,\n\t\t\t\t\tattributes.axisZ,\n\t\t\t\t\tfloat3(attributes.angleX,attributes.angleY,attributes.angleZ),\n\t\t\t\t\tfloat3(attributes.pivotX,attributes.pivotY,attributes.pivotZ),\n\t\t\t\t\tsize3,\n\t\t\t\t\tattributes.position);\n\t\t\t\t\t\n\t\t\t\tfloat3 inputVertexPosition = float3(vOffsets, 0.0f);\n\t\t\t\tfloat3 vPos = mul(elementToVFX,float4(inputVertexPosition, 1.0f)).xyz;\n\t\t\t\n\t\t\t\to.VFX_VARYING_POSCS = TransformPositionVFXToClip(vPos);\n\t\t\t \n\t\t\t float3 vPosWS = TransformPositionVFXToWorld(vPos);\n\t\t\t\t\n\t\t\t #ifdef VFX_VARYING_POSWS\n\t\t\t o.VFX_VARYING_POSWS = vPosWS;\n\t\t\t #endif\n\t\t\t\n\t\t\t\tfloat3 normalWS = normalize(TransformDirectionVFXToWorld(normalize(-transpose(elementToVFX)[2].xyz)));\n\t\t\t\t#ifdef VFX_VARYING_NORMAL\n\t\t\t\tfloat normalFlip = (size3.x * size3.y * size3.z) < 0 ? -1 : 1;\n\t\t\t\to.VFX_VARYING_NORMAL = normalFlip * normalWS;\n\t\t\t\t#endif\n\t\t\t\t#ifdef VFX_VARYING_TANGENT\n\t\t\t\to.VFX_VARYING_TANGENT = normalize(TransformDirectionVFXToWorld(normalize(transpose(elementToVFX)[0].xyz)));\n\t\t\t\t#endif\n\t\t\t\t#ifdef VFX_VARYING_BENTFACTORS\n\t\t\t\tfloat normalBendingFactor = (float)0;\n\t\t\t\t{\n\t\t\t\t \n\t\t\t\t normalBendingFactor = (float)1;\n\t\t\t\t}\n\t\t\t\t\n\n\t\t\t\t#if HAS_STRIPS\n\t\t\t\t#define BENT_FACTOR_MULTIPLIER 2.0f\n\t\t\t\t#else\n\t\t\t\t#define BENT_FACTOR_MULTIPLIER 1.41421353816986083984375f\n\t\t\t\t#endif\n\t\t\t\to.VFX_VARYING_BENTFACTORS = vOffsets * normalBendingFactor * BENT_FACTOR_MULTIPLIER;\n\t\t\t\t#endif\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\t#if defined(VFX_VARYING_VELOCITY_CPOS) && defined(VFX_VARYING_VELOCITY_CPOS_PREVIOUS)\n\t\t\t\t\t\tfloat4x4 previousElementToVFX = (float4x4)0;\n\t\t\t\t\t\tpreviousElementToVFX[3] = float4(0,0,0,1);\n\t\t\t\t\t\t\n\t\t\t\t\t\tUNITY_UNROLL\n\t\t\t\t\t\tfor (int itIndexMatrixRow = 0; itIndexMatrixRow < 3; ++itIndexMatrixRow)\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tUNITY_UNROLL\n\t\t\t\t\t\t\tfor (int itIndexMatrixCol = 0; itIndexMatrixCol < 4; ++itIndexMatrixCol)\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tuint itIndexMatrix = itIndexMatrixCol * 4 + itIndexMatrixRow;\n\t\t\t\t\t\t\t\tuint read = elementToVFXBufferPrevious.Load((index * 16 + itIndexMatrix) << 2);\n\t\t\t\t\t\t\t\tpreviousElementToVFX[itIndexMatrixRow][itIndexMatrixCol] = asfloat(read);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\t\n\t\t\t\t\t\tuint previousFrameIndex = elementToVFXBufferPrevious.Load((index * 16 + 15) << 2);\n\t\t\t\t\t\to.VFX_VARYING_VELOCITY_CPOS = o.VFX_VARYING_VELOCITY_CPOS_PREVIOUS = float4(0.0f, 0.0f, 0.0f, 1.0f);\n\t\t\t\t\t\tif (asuint(currentFrameIndex) - previousFrameIndex == 1u)\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tfloat3 oldvPos = mul(previousElementToVFX,float4(inputVertexPosition, 1.0f)).xyz;\n\t\t\t\t\t\t\to.VFX_VARYING_VELOCITY_CPOS_PREVIOUS = TransformPositionVFXToPreviousClip(oldvPos);\n\t\t\t\t\t\t\to.VFX_VARYING_VELOCITY_CPOS = TransformPositionVFXToNonJitteredClip(vPos);\n\t\t\t\t\t\t}\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\t#if VFX_USE_COLOR_CURRENT && defined(VFX_VARYING_COLOR)\n\t\t\t\t\t\to.VFX_VARYING_COLOR = attributes.color;\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t#if VFX_USE_ALPHA_CURRENT && defined(VFX_VARYING_ALPHA) \n\t\t\t\t\t\to.VFX_VARYING_ALPHA = attributes.alpha;\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\n\t\t\t\t\t\t#ifdef VFX_VARYING_EXPOSUREWEIGHT\n\t\t\t\t\t\t\n\t\t\t\t\t\to.VFX_VARYING_EXPOSUREWEIGHT = exposureWeight;\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\n\t\t\t\t\t\t#if USE_SOFT_PARTICLE && defined(VFX_VARYING_INVSOFTPARTICLEFADEDISTANCE)\n\t\t\t\t\t\tfloat invSoftParticlesFadeDistance = (float)0;\n\t\t\t\t\t\t{\n\t\t\t\t\t\t \n\t\t\t\t\t\t invSoftParticlesFadeDistance = (float)4.76190472;\n\t\t\t\t\t\t}\n\t\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\to.VFX_VARYING_INVSOFTPARTICLEFADEDISTANCE = invSoftParticlesFadeDistance;\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\n\t\t\t\t\t\t#if (USE_ALPHA_TEST || WRITE_MOTION_VECTOR_IN_FORWARD) && (!VFX_SHADERGRAPH || !HAS_SHADERGRAPH_PARAM_ALPHATHRESHOLD) && defined(VFX_VARYING_ALPHATHRESHOLD)\n\t\t\t\t\t\t\n\t\t\t\t\t\to.VFX_VARYING_ALPHATHRESHOLD = alphaThreshold;\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\n\t\t\t\t\t\t#if USE_UV_SCALE_BIAS\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t#if defined (VFX_VARYING_UV)\n\t\t\t\t\t\to.VFX_VARYING_UV.xy = o.VFX_VARYING_UV.xy * uvScale + uvBias;\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\n\t\t\t\t\t\t#if defined(VFX_VARYING_POSWS)\n\t\t\t\t\t\to.VFX_VARYING_POSWS = TransformPositionVFXToWorld(vPos);\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\t#if USE_FLIPBOOK && defined(VFX_VARYING_UV)\n\t\t\t\t\t\tfloat2 flipBookSize = (float2)0;\n\t\t\t\t\t\t{\n\t\t\t\t\t\t \n\t\t\t\t\t\t flipBookSize = float2(8, 8);\n\t\t\t\t\t\t}\n\t\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\tfloat2 invFlipBookSize = (float2)0;\n\t\t\t\t\t\t{\n\t\t\t\t\t\t \n\t\t\t\t\t\t invFlipBookSize = float2(0.125, 0.125);\n\t\t\t\t\t\t}\n\t\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\tVFXUVData uvData = GetUVData(flipBookSize, invFlipBookSize, o.VFX_VARYING_UV.xy, attributes.texIndex);\n\t\t\t\t\t\to.VFX_VARYING_UV.xy = uvData.uvs.xy;\n\t\t\t\t\t\t#if USE_FLIPBOOK_INTERPOLATION && defined(VFX_VARYING_UV) && defined (VFX_VARYING_FRAMEBLEND)\n\t\t\t\t\t\to.VFX_VARYING_UV.zw = uvData.uvs.zw;\n\t\t\t\t\t\to.VFX_VARYING_FRAMEBLEND = uvData.blend;\n\t\t\t\t\t\t#if USE_FLIPBOOK_MOTIONVECTORS && defined(VFX_VARYING_MOTIONVECTORSCALE)\n\t\t\t\t\t\t\n\t\t\t\t\t\to.VFX_VARYING_MOTIONVECTORSCALE = motionVectorScale * invFlipBookSize;\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t \n\t\t\t \n\t\t\t\n\t\t\t\treturn o;\n\t\t\t}\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t#include \"Packages/com.unity.visualeffectgraph/Shaders/VFXCommonOutput.hlsl\"\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t#if VFX_PASSDEPTH == VFX_PASSDEPTH_MOTION_VECTOR\n\t\t\t#define SHADERPASS SHADERPASS_MOTION_VECTORS\n\t\t\t#else\n\t\t\t#define SHADERPASS SHADERPASS_DEPTH_ONLY\n\t\t\t#endif\n\t\t\t#include \"Packages/com.unity.render-pipelines.high-definition/Runtime/VFXGraph/Shaders/VFXLit.hlsl\"\n\t\t\t\n\t\t\t#ifndef VFX_SHADERGRAPH\n\t\t\t\n\t\t\tvoid VFXGetHDRPLitData(out SurfaceData surfaceData, out BuiltinData builtinData, out BSDFData bsdfData, out PreLightData preLightData, VFX_VARYING_PS_INPUTS i, float3 normalWS, const VFXUVData uvData, uint2 tileIndex)\n\t\t\t{\t\n\t\t\t\t#if HDRP_MATERIAL_TYPE_TRANSLUCENT\n\t\t\t\tuint diffusionProfileHash = (uint)0;\n\t\t\t\t{\n\t\t\t\t \n\t\t\t\t diffusionProfileHash = (uint)1080043756;\n\t\t\t\t}\n\t\t\t\t\n // Loads diffusion profile\n\t\t\t\t#else\n\t\t\t\tconst uint diffusionProfileHash = 0;\n\t\t\t\t#endif\n\t\t\t\t\n\t\t\t\tfloat3 posRWS = VFXGetPositionRWS(i);\n\t\t\t\tfloat4 posSS = i.VFX_VARYING_POSCS;\n\t\t\t\tPositionInputs posInput = GetPositionInput(posSS.xy, _ScreenSize.zw, posSS.z, posSS.w, posRWS, tileIndex);\n\t\t\t\t\n\t\t\t\tfloat alpha;\n\t\t\t\tsurfaceData = VFXGetSurfaceData(i,normalWS,uvData,diffusionProfileHash,alpha);\t\n\t\t\t\tbsdfData = ConvertSurfaceDataToBSDFData(posSS.xy, surfaceData);\n\t\t\t\n\t\t\t\tpreLightData = GetPreLightData(GetWorldSpaceNormalizeViewDir(posRWS),posInput,bsdfData);\n\t\t\t\t\n\t\t\t\tpreLightData.diffuseFGD = 1.0f;\n\t\t\t //TODO: investigate why this is needed\n\t\t\t preLightData.coatPartLambdaV = 0;\n\t\t\t preLightData.coatIblR = 0;\n\t\t\t preLightData.coatIblF = 0;\n\t\t\t \n\t\t\t\tbuiltinData = VFXGetBuiltinData(i,posInput,surfaceData,uvData,alpha);\n\t\t\t}\n\t\t\t\n\t\t\tvoid VFXGetHDRPLitData(out SurfaceData surfaceData, out BuiltinData builtinData, VFX_VARYING_PS_INPUTS i, float3 normalWS, const VFXUVData uvData)\n\t\t\t{\n\t\t\t\tBSDFData bsdfData = (BSDFData)0;\n\t\t\t\tPreLightData preLightData = (PreLightData)0;\n\t\t\t\tpreLightData.diffuseFGD = 1.0f;\n\t\t\t\tVFXGetHDRPLitData(surfaceData,builtinData,bsdfData,preLightData,i,normalWS,uvData,uint2(0,0));\n\t\t\t}\n\t\t\t\n\t\t\t#endif\n\t\t\t\n\t\t\t\n\t\t\t#include \"Packages/com.unity.render-pipelines.high-definition/Runtime/VFXGraph/Shaders/VFXLitPixelOutput.hlsl\"\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t#if VFX_PASSDEPTH == VFX_PASSDEPTH_SELECTION\n\t\t\tint _ObjectId;\n\t\t\tint _PassValue;\n\t\t\t#endif\n\t\t\t \n\t\t\t#pragma fragment frag\n\t\t\tvoid frag(ps_input i\n\t\t\t#if USE_DOUBLE_SIDED\n\t\t\t\t, bool frontFace : SV_IsFrontFace\n\t\t\t#endif\n\t\t\t\n\t\t\t#if VFX_PASSDEPTH == VFX_PASSDEPTH_MOTION_VECTOR\n\t\t\t\t, out float4 outMotionVector : SV_Target0\n\t\t\t\t#ifdef WRITE_NORMAL_BUFFER\n\t\t\t\t\t, out float4 outNormalBuffer : SV_Target1\n\t\t\t\t#endif\n\t\t\t#else\n\t\t\t\t#ifdef WRITE_NORMAL_BUFFER\n\t\t\t\t\t, out float4 outNormalBuffer : SV_Target0\n\t\t\t\t#elif VFX_PASSDEPTH == VFX_PASSDEPTH_SELECTION\n\t\t\t\t\t, out float4 outColor : SV_Target0\n\t\t\t\t#endif\n\t\t\t#endif\n\t\t\t\t)\n\t\t\t{\n\t\t\t\tUNITY_SETUP_STEREO_EYE_INDEX_POST_VERTEX(i);\n\t\t\t\tVFXTransformPSInputs(i);\n\t\t\t\t\n\t\t\t\t\t\t\t#ifdef VFX_VARYING_NORMAL\n\t\t\t\t\t\t\t#if USE_DOUBLE_SIDED\n\t\t\t\t\t\t\tconst float faceMul = frontFace ? 1.0f : -1.0f;\n\t\t\t\t\t\t\t#else\n\t\t\t\t\t\t\tconst float faceMul = 1.0f;\n\t\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\tfloat3 normalWS = i.VFX_VARYING_NORMAL * faceMul;\n\t\t\t\t\t\t\tconst VFXUVData uvData = GetUVData(i);\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t#ifdef VFX_VARYING_TANGENT\n\t\t\t\t\t\t\tfloat3 tangentWS = i.VFX_VARYING_TANGENT;\n\t\t\t\t\t\t\tfloat3 bitangentWS = cross(i.VFX_VARYING_TANGENT,i.VFX_VARYING_NORMAL);\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t#if defined(VFX_VARYING_BENTFACTORS) && USE_NORMAL_BENDING\t\n\t\t\t\t\t\t\tfloat3 bentFactors = float3(i.VFX_VARYING_BENTFACTORS.xy,sqrt(1.0f - dot(i.VFX_VARYING_BENTFACTORS,i.VFX_VARYING_BENTFACTORS)));\n\t\t\t\t\t\t\tnormalWS = tangentWS * bentFactors.x + bitangentWS * bentFactors.y + normalWS * bentFactors.z;\n\t\t\t\t\t\t\ttangentWS = normalize(cross(normalWS,bitangentWS));\n\t\t\t\t\t\t\tbitangentWS = cross(tangentWS,normalWS);\n\t\t\t\t\t\t\ttangentWS *= faceMul;\n\t\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\tfloat3x3 tbn = float3x3(tangentWS,bitangentWS,normalWS);\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t#if USE_NORMAL_MAP\n\t\t\t\t\t\t\tfloat3 n = SampleNormalMap(VFX_SAMPLER(normalMap),uvData);\n\t\t\t\t\t\t\tfloat normalScale = 1.0f;\n\t\t\t\t\t\t\t#ifdef VFX_VARYING_NORMALSCALE\n\t\t\t\t\t\t\tnormalScale = i.VFX_VARYING_NORMALSCALE;\n\t\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\tnormalWS = normalize(lerp(normalWS,mul(n,tbn),normalScale));\n\t\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t#ifdef VFX_SHADERGRAPH\n\t\t\t \n\t\t\t \n\t\t\t \n\t\t\t \n\t\t\t \n\t\t\t float alpha = OUTSG.;\n\t\t\t #else\n\t\t\t float alpha = VFXGetFragmentColor(i).a;\n\t\t\t #if HDRP_USE_BASE_COLOR_MAP_ALPHA\n\t\t\t alpha *= VFXGetTextureColor(VFX_SAMPLER(baseColorMap),i).a;\n\t\t\t #endif\n\t\t\t #endif\n\t\t\t VFXClipFragmentColor(alpha,i);\n\t\t\t\t\n\t\t\t\t#ifdef WRITE_NORMAL_BUFFER\n\t\t\t #ifndef VFX_SHADERGRAPH\n\t\t\t VFXComputePixelOutputToNormalBuffer(i,normalWS,uvData,outNormalBuffer);\n\t\t\t #else\n\t\t\t #if HAS_SHADERGRAPH_PARAM_NORMAL\n\t\t\t float3 n = OUTSG.Normal_8;\n\t\t\t normalWS = mul(n,tbn);\n\t\t\t #endif\n\t\t\t SurfaceData surface = (SurfaceData)0;\n\t\t\t \n\t\t\t surface.normalWS = normalWS;\n\t\t\t \n\t\t\t EncodeIntoNormalBuffer(ConvertSurfaceDataToNormalData(surface), i.VFX_VARYING_POSCS.xy, outNormalBuffer);\n\t\t\t #endif\n\t\t\t\t#endif\n\t\t\t\n\t\t\t\t#if VFX_PASSDEPTH == VFX_PASSDEPTH_MOTION_VECTOR\n\t\t\t\t\t\n\t\t\t\t\t\t\tfloat2 velocity = (i.VFX_VARYING_VELOCITY_CPOS.xy/i.VFX_VARYING_VELOCITY_CPOS.w) - (i.VFX_VARYING_VELOCITY_CPOS_PREVIOUS.xy/i.VFX_VARYING_VELOCITY_CPOS_PREVIOUS.w);\n\t\t\t\t\t\t\t#if UNITY_UV_STARTS_AT_TOP\n\t\t\t\t\t\t\t\tvelocity.y = -velocity.y;\n\t\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\tfloat4 encodedMotionVector = 0.0f;\n\t\t\t\t\t\t\tVFXEncodeMotionVector(velocity * 0.5f, encodedMotionVector);\n\t\t\t\t\t\t\t\n\t\t\t\t\toutMotionVector = encodedMotionVector;\n\t\t\t\t#elif VFX_PASSDEPTH == VFX_PASSDEPTH_SELECTION\n\t\t\t\t\t// We use depth prepass for scene selection in the editor, this code allow to output the outline correctly\n\t\t\t\t\toutColor = float4(_ObjectId, _PassValue, 1.0, 1.0);\n\t\t\t\t#elif VFX_PASSDEPTH == VFX_PASSDEPTH_ACTUAL\n\t\t\t\t\t//void\n\t\t\t\t#else\n\t\t\t\t\t#error VFX_PASSDEPTH undefined\n\t\t\t\t#endif\n\t\t\t}\n\t\t\t\n\t\t\n\t\t\tENDHLSL\n\t\t}\n\t\t\n\r\n\t\t\r\n\t\t\r\n\t\t\r\n\t\t// Forward pass\n\t\tPass\n\t\t{\t\t\n\t\t\tTags { \"LightMode\"=\"Forward\"}\n\t\t\t\t\t\n\t\t\tHLSLPROGRAM\n\t\t\t#pragma target 4.5\n\t\t\t\n\t\t\t#define UNITY_MATERIAL_LIT\n\t\t\t#define LIGHTLOOP_TILE_PASS\n\t\t\t#define _ENABLE_FOG_ON_TRANSPARENT\n\t\t\t#define _DISABLE_DECALS\n\t\t\t#define _BLENDMODE_ALPHA\n\t\t\t\n\n\t\t\t#pragma multi_compile USE_FPTL_LIGHTLIST USE_CLUSTERED_LIGHTLIST \n\t\t\t#pragma multi_compile SHADOW_LOW SHADOW_MEDIUM SHADOW_HIGH\n\t\t\t#pragma multi_compile _ DEBUG_DISPLAY\n\t\t\t//#pragma enable_d3d11_debug_symbols\n\t\t\t\t\t\n\t\t\t#define HDRP_NEEDS_UVS (HDRP_USE_BASE_COLOR_MAP || HDRP_USE_MASK_MAP || USE_NORMAL_MAP || HDRP_USE_EMISSIVE_MAP)\n\t\t\t#define HDRP_USE_EMISSIVE (HDRP_USE_EMISSIVE_MAP || HDRP_USE_EMISSIVE_COLOR || HDRP_USE_ADDITIONAL_EMISSIVE_COLOR)\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\tstruct ps_input\n\t\t\t{\n\t\t\t\tfloat4 pos : SV_POSITION;\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t#if (VFX_NEEDS_COLOR_INTERPOLATOR && HDRP_USE_BASE_COLOR) || HDRP_USE_ADDITIONAL_BASE_COLOR\n\t\t\t\t\t\t\tVFX_OPTIONAL_INTERPOLATION float4 color : COLOR0;\n\t\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t#if HDRP_MATERIAL_TYPE_SPECULAR\n\t\t\t\t\t\t\tVFX_OPTIONAL_INTERPOLATION float3 specularColor : COLOR1;\n\t\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t#if HDRP_USE_EMISSIVE\t\n\t\t\t\t\t\t\tVFX_OPTIONAL_INTERPOLATION float4 emissiveColor : COLOR2;\n\t\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t// x: smoothness\n\t\t\t\t\t\t\t// y: metallic/thickness\n\t\t\t\t\t\t\t// z: normal scale\n\t\t\t\t\t\t\t// w: emissive scale\n\t\t\t\t\t\t\tVFX_OPTIONAL_INTERPOLATION float4 materialProperties : TEXCOORD0;\n\t\t\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t#if USE_FLIPBOOK_INTERPOLATION\n\t\t\t\tfloat4 uv : TEXCOORD1;\n\t\t\t\t#else\n\t\t\t\tfloat2 uv : TEXCOORD1;\t\n\t\t\t\t#endif\n\t\t\t\t#if USE_SOFT_PARTICLE || USE_ALPHA_TEST || USE_FLIPBOOK_INTERPOLATION || WRITE_MOTION_VECTOR_IN_FORWARD\n\t\t\t\t// x: inverse soft particles fade distance\n\t\t\t\t// y: alpha threshold\n\t\t\t\t// z: frame blending factor\n\t\t\t\tVFX_OPTIONAL_INTERPOLATION float3 builtInInterpolants : TEXCOORD2;\n\t\t\t\t#endif\n\t\t\n\t\t\t\t#if USE_FLIPBOOK_MOTIONVECTORS\n\t\t\t\t// x: motion vector scale u\n\t\t\t\t// y: motion vector scale v\n\t\t\t\tVFX_OPTIONAL_INTERPOLATION float2 builtInInterpolants2 : TEXCOORD3;\n\t\t\t\t#endif\n\t\t\n\t\t\t\tVFX_OPTIONAL_INTERPOLATION float3 normal : TEXCOORD4;\n\t\t\t\t#if USE_NORMAL_MAP || USE_NORMAL_BENDING || SHADERGRAPH_NEEDS_TANGENT_FORWARD\n\t\t\t\tVFX_OPTIONAL_INTERPOLATION float3 tangent : TEXCOORD5;\n\t\t\t\t#endif\n\t\t\t\t#if USE_NORMAL_BENDING\n\t\t\t\tfloat2 bentFactors : TEXCOORD6;\n\t\t\t\t#endif\n\t\t\n\t\t\t\t#if WRITE_MOTION_VECTOR_IN_FORWARD\n\t\t\t\tfloat4 cPosPrevious : TEXCOORD7;\n\t\t\t\tfloat4 cPosNonJiterred : TEXCOORD8;\n\t\t\t\t#endif\n\t\t\t\t\n\t\t\t\tfloat3 posWS : TEXCOOR9; // Needed for fog\n\t\t \n\t\t \n\t\t\t\t\n\t\t\t\tUNITY_VERTEX_OUTPUT_STEREO\n\t\t\t};\n\t\t\t\n\t\t\n\t\t\t\t\t#if (VFX_NEEDS_COLOR_INTERPOLATOR && HDRP_USE_BASE_COLOR) || HDRP_USE_ADDITIONAL_BASE_COLOR\n\t\t\t\t\t#define VFX_VARYING_COLOR color.rgb\n\t\t\t\t\t#define VFX_VARYING_ALPHA color.a\n\t\t\t\t\t#endif\n\t\t\t\t\t\n\t\t\t\t\t#define VFX_VARYING_SMOOTHNESS materialProperties.x\n\t\t\t\t\t\n\t\t\t\t\t#if HDRP_MATERIAL_TYPE_STANDARD\n\t\t\t\t\t#define VFX_VARYING_METALLIC materialProperties.y\n\t\t\t\t\t#elif HDRP_MATERIAL_TYPE_SPECULAR\n\t\t\t\t\t#define VFX_VARYING_SPECULAR specularColor\n\t\t\t\t\t#elif HDRP_MATERIAL_TYPE_TRANSLUCENT\n\t\t\t\t\t#define VFX_VARYING_THICKNESS materialProperties.y\n\t\t\t\t\t#endif\n\t\t\t\t\t\n\t\t\t\t\t#if USE_NORMAL_MAP\n\t\t\t\t\t#define VFX_VARYING_NORMALSCALE materialProperties.z\n\t\t\t\t\t#endif\n\t\t\t\t\t\n\t\t\t\t\t#if HDRP_USE_EMISSIVE_MAP\n\t\t\t\t\t#define VFX_VARYING_EMISSIVESCALE materialProperties.w\n\t\t\t\t\t#endif\n\t\t\t\t\t\n\t\t\t\t\t#if HDRP_USE_EMISSIVE_COLOR || HDRP_USE_ADDITIONAL_EMISSIVE_COLOR\n\t\t\t\t\t#define VFX_VARYING_EMISSIVE emissiveColor.rgb\n\t\t\t\t\t#endif\n\t\t\t\t\t\n\t\t\t\t\t#if USE_EXPOSURE_WEIGHT\n\t\t\t\t\t#define VFX_VARYING_EXPOSUREWEIGHT emissiveColor.a\n\t\t\t\t\t#endif\n\t\t\t\t\t\t\n\t\t\t\n\t\t#define VFX_VARYING_PS_INPUTS ps_input\n\t\t#define VFX_VARYING_POSCS pos\n\t\t#define VFX_VARYING_INVSOFTPARTICLEFADEDISTANCE builtInInterpolants.x\n\t\t#define VFX_VARYING_ALPHATHRESHOLD builtInInterpolants.y\n\t\t#define VFX_VARYING_FRAMEBLEND builtInInterpolants.z\n\t\t#define VFX_VARYING_MOTIONVECTORSCALE builtInInterpolants2.xy\n\t\t#define VFX_VARYING_UV uv\n\t\t#define VFX_VARYING_NORMAL normal\n\t\t#if USE_NORMAL_MAP || USE_NORMAL_BENDING || SHADERGRAPH_NEEDS_TANGENT_FORWARD\n\t\t#define VFX_VARYING_TANGENT tangent\n\t\t#endif\n\t\t#if USE_NORMAL_BENDING\n\t\t#define VFX_VARYING_BENTFACTORS bentFactors\n\t\t#endif\n\t\t#define VFX_VARYING_POSWS posWS\n\t\t\n\t\t#if WRITE_MOTION_VECTOR_IN_FORWARD\n\t\t#define VFX_VARYING_VELOCITY_CPOS cPosNonJiterred\n\t\t#define VFX_VARYING_VELOCITY_CPOS_PREVIOUS cPosPrevious\n\t\t#endif\n\t\t\n\t\t\n\t\t\t\n\t\t\t#if !(defined(VFX_VARYING_PS_INPUTS) && defined(VFX_VARYING_POSCS))\n\t\t\t#error VFX_VARYING_PS_INPUTS, VFX_VARYING_POSCS and VFX_VARYING_UV must be defined.\n\t\t\t#endif\n\t\t\t\n\t\t\t#include \"Packages/com.unity.render-pipelines.high-definition/Runtime/VFXGraph/Shaders/VFXCommon.hlsl\"\n\t\t\t#include \"Packages/com.unity.visualeffectgraph/Shaders/VFXCommon.hlsl\"\n\t\t\t\n\n\t\t\tvoid Orient_94A(inout float3 axisX, inout float3 axisY, inout float3 axisZ, float3 position, float3 velocity) /*mode:AlongVelocity axes:ZY */\n\t\t\t{\n\t\t\t \n\t\t\t axisY = normalize(velocity);\n\t\t\t axisZ = position - GetViewVFXPosition();\n\t\t\t axisX = normalize(cross(axisY,axisZ));\n\t\t\t axisZ = cross(axisX,axisY);\n\t\t\t \n\t\t\t}\n\t\t\tvoid SetAttribute_65DEC940(inout float pivotX, inout float pivotY, inout float pivotZ, float3 Pivot) /*attribute:pivot Composition:Overwrite Source:Slot Random:Off channels:XYZ */\n\t\t\t{\n\t\t\t pivotX = Pivot.x;\n\t\t\t pivotY = Pivot.y;\n\t\t\t pivotZ = Pivot.z;\n\t\t\t}\n\t\t\tvoid SetAttribute_3278B22F(inout float size, float Size) /*attribute:size Composition:Overwrite Source:Slot Random:Off channels:XYZ */\n\t\t\t{\n\t\t\t size = Size;\n\t\t\t}\n\t\t\tvoid AttributeFromCurve_536B7819(inout float scaleX, inout float scaleY, float age, float lifetime, float4 Scale_x, float4 Scale_y) /*attribute:scale Composition:Overwrite AlphaComposition:Overwrite SampleMode:OverLife Mode:PerComponent ColorMode:ColorAndAlpha channels:XY */\n\t\t\t{\n\t\t\t float t = age / lifetime;\n\t\t\t float2 value = 0.0f;\n\t\t\t value[0] = SampleCurve(Scale_x, t);\n\t\t\t value[1] = SampleCurve(Scale_y, t);\n\t\t\t scaleX = value.x;\n\t\t\t scaleY = value.y;\n\t\t\t}\n\t\t\tvoid SetAttribute_CEEAF35C(inout float alpha, float Alpha) /*attribute:alpha Composition:Overwrite Source:Slot Random:Off channels:XYZ */\n\t\t\t{\n\t\t\t alpha = Alpha;\n\t\t\t}\n\t\t\tvoid ColorOverLife_733E3(float age, float lifetime, inout float3 color, inout float alpha, float gradient) /*mode:ColorAndAlpha ColorComposition:Multiply AlphaComposition:Multiply */\n\t\t\t{\n\t\t\t \n\t\t\t float4 sampledColor = SampleGradient(gradient, age/lifetime);\n\t\t\t color *= sampledColor.rgb;\n\t\t\t alpha *= sampledColor.a;\n\t\t\t \n\t\t\t}\n\t\t\tvoid CameraFade_18F(float3 position, inout float alpha, inout bool alive, float FadedDistance, float InvFadeDistance) /*cullWhenFaded:True fadeMode:Alpha */\n\t\t\t{\n\t\t\t \n\t\t\t float clipPosW = TransformPositionVFXToClip(position).w;\n\t\t\t float fade = saturate((clipPosW - FadedDistance) * InvFadeDistance);\n\t\t\t alpha *= fade;\n\t\t\t if(fade == 0.0) alive=false;\n\t\t\t}\n\t\t\t\n\n\t\t\t\n\t\t\t#if defined(HAS_STRIPS) && !defined(VFX_PRIMITIVE_QUAD)\n\t\t\t#error VFX_PRIMITIVE_QUAD must be defined when HAS_STRIPS is.\n\t\t\t#endif\n\t\t\t\n\t\t\tstruct vs_input\n\t\t\t{\n\t\t\t\tVFX_DECLARE_INSTANCE_ID\n\t\t\t};\n\t\t\t\n\t\t\t#if HAS_STRIPS\n\t\t\t#define PARTICLE_IN_EDGE (id & 1)\n\t\t\t\n\t\t\tfloat3 GetParticlePosition(uint index)\n\t\t\t{\n\t\t\t\tstruct Attributes attributes = (Attributes)0;\n\t\t\t\tattributes.position = asfloat(attributeBuffer.Load3((index * 0x4 + 0x120) << 2));\n\t\t\t\t\n\n\t\t\t\treturn attributes.position;\n\t\t\t}\n\t\t\t\n\t\t\tfloat3 GetStripTangent(float3 currentPos, uint relativeIndex, const StripData stripData)\n\t\t\t{\n\t\t\t\tfloat3 prevTangent = (float3)0.0f;\n\t\t\t\tif (relativeIndex > 0)\n\t\t\t\t{\n\t\t\t\t\tuint prevIndex = GetParticleIndex(relativeIndex - 1,stripData);\n\t\t\t\t\tprevTangent = normalize(currentPos - GetParticlePosition(prevIndex));\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tfloat3 nextTangent = (float3)0.0f;\n\t\t\t\tif (relativeIndex < stripData.nextIndex - 1)\n\t\t\t\t{\n\t\t\t\t\tuint nextIndex = GetParticleIndex(relativeIndex + 1,stripData);\n\t\t\t\t\tnextTangent = normalize(GetParticlePosition(nextIndex) - currentPos);\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\treturn normalize(prevTangent + nextTangent);\n\t\t\t}\n\t\t\t#endif\n\t\t\t\n\t\t\t#pragma vertex vert\n\t\t\tVFX_VARYING_PS_INPUTS vert(uint id : SV_VertexID, vs_input i)\n\t\t\t{\n\t\t\t\tVFX_VARYING_PS_INPUTS o = (VFX_VARYING_PS_INPUTS)0;\n\t\t\t\n\t\t\t\tUNITY_SETUP_INSTANCE_ID(i);\n\t\t\t\tUNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o);\n\t\t\t\n\t\t\t#if VFX_PRIMITIVE_TRIANGLE\n\t\t\t\tuint index = id / 3;\n\t\t\t#elif VFX_PRIMITIVE_QUAD\n\t\t\t#if HAS_STRIPS\n\t\t\t\tid += VFX_GET_INSTANCE_ID(i) * 8192;\n\t\t\t\tconst uint vertexPerStripCount = (PARTICLE_PER_STRIP_COUNT - 1) << 2;\n\t\t\t\tconst StripData stripData = GetStripDataFromStripIndex(id / vertexPerStripCount, PARTICLE_PER_STRIP_COUNT);\n\t\t\t\tuint currentIndex = ((id % vertexPerStripCount) >> 2) + (id & 1); // relative index of particle\n\t\t\t\t\n\t\t\t\tuint maxEdgeIndex = currentIndex - PARTICLE_IN_EDGE + 1;\n\t\t\t\tif (maxEdgeIndex >= stripData.nextIndex)\n\t\t\t\t\treturn o;\n\t\t\t\t\n\t\t\t\tuint index = GetParticleIndex(currentIndex, stripData);\n\t\t\t#else\n\t\t\t\tuint index = (id >> 2) + VFX_GET_INSTANCE_ID(i) * 2048;\n\t\t\t#endif\n\t\t\t#elif VFX_PRIMITIVE_OCTAGON\n\t\t\t\tuint index = (id >> 3) + VFX_GET_INSTANCE_ID(i) * 1024;\n\t\t\t#endif\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\tuint deadCount = 0;\n\t\t\t\t\t\t#if USE_DEAD_LIST_COUNT\n\t\t\t\t\t\tdeadCount = deadListCount.Load(0);\n\t\t\t\t\t\t#endif\t\n\t\t\t\t\t\tif (index >= asuint(nbMax) - deadCount)\n\t\t\t\t\t\t#if USE_GEOMETRY_SHADER\n\t\t\t\t\t\t\treturn; // cull\n\t\t\t\t\t\t#else\n\t\t\t\t\t\t\treturn o; // cull\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\n\t\t\t\t\t\tAttributes attributes = (Attributes)0;\n\t\t\t\t\t\tSourceAttributes sourceAttributes = (SourceAttributes)0;\n\t\t\t\t\t\t\n\t\t\t\t\t\t#if VFX_HAS_INDIRECT_DRAW\n\t\t\t\t\t\tindex = indirectBuffer[index];\n\t\t\t\t\t\tattributes.velocity = asfloat(attributeBuffer.Load3((index * 0x8 + 0x0) << 2));\n\t\t\t\t\t\tattributes.lifetime = asfloat(attributeBuffer.Load((index * 0x1 + 0x100) << 2));\n\t\t\t\t\t\tattributes.texIndex = asfloat(attributeBuffer.Load((index * 0x8 + 0x3) << 2));\n\t\t\t\t\t\tattributes.position = asfloat(attributeBuffer.Load3((index * 0x4 + 0x120) << 2));\n\t\t\t\t\t\tattributes.color = float3(1, 1, 1);\n\t\t\t\t\t\tattributes.alpha = (float)1;\n\t\t\t\t\t\tattributes.alive = (attributeBuffer.Load((index * 0x8 + 0x4) << 2));\n\t\t\t\t\t\tattributes.axisX = float3(1, 0, 0);\n\t\t\t\t\t\tattributes.axisY = float3(0, 1, 0);\n\t\t\t\t\t\tattributes.axisZ = float3(0, 0, 1);\n\t\t\t\t\t\tattributes.angleX = (float)0;\n\t\t\t\t\t\tattributes.angleY = (float)0;\n\t\t\t\t\t\tattributes.angleZ = (float)0;\n\t\t\t\t\t\tattributes.pivotX = (float)0;\n\t\t\t\t\t\tattributes.pivotY = (float)0;\n\t\t\t\t\t\tattributes.pivotZ = (float)0;\n\t\t\t\t\t\tattributes.size = (float)0.100000001;\n\t\t\t\t\t\tattributes.scaleX = (float)1;\n\t\t\t\t\t\tattributes.scaleY = (float)1;\n\t\t\t\t\t\tattributes.scaleZ = (float)1;\n\t\t\t\t\t\tattributes.age = asfloat(attributeBuffer.Load((index * 0x8 + 0x5) << 2));\n\t\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\t#else\n\t\t\t\t\t\tattributes.alive = (attributeBuffer.Load((index * 0x8 + 0x4) << 2));\n\t\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\t#if !HAS_STRIPS\n\t\t\t\t\t\tif (!attributes.alive)\n\t\t\t\t\t\t\treturn o;\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t\n\t\t\t\t\t\tattributes.velocity = asfloat(attributeBuffer.Load3((index * 0x8 + 0x0) << 2));\n\t\t\t\t\t\tattributes.lifetime = asfloat(attributeBuffer.Load((index * 0x1 + 0x100) << 2));\n\t\t\t\t\t\tattributes.texIndex = asfloat(attributeBuffer.Load((index * 0x8 + 0x3) << 2));\n\t\t\t\t\t\tattributes.position = asfloat(attributeBuffer.Load3((index * 0x4 + 0x120) << 2));\n\t\t\t\t\t\tattributes.color = float3(1, 1, 1);\n\t\t\t\t\t\tattributes.alpha = (float)1;\n\t\t\t\t\t\tattributes.axisX = float3(1, 0, 0);\n\t\t\t\t\t\tattributes.axisY = float3(0, 1, 0);\n\t\t\t\t\t\tattributes.axisZ = float3(0, 0, 1);\n\t\t\t\t\t\tattributes.angleX = (float)0;\n\t\t\t\t\t\tattributes.angleY = (float)0;\n\t\t\t\t\t\tattributes.angleZ = (float)0;\n\t\t\t\t\t\tattributes.pivotX = (float)0;\n\t\t\t\t\t\tattributes.pivotY = (float)0;\n\t\t\t\t\t\tattributes.pivotZ = (float)0;\n\t\t\t\t\t\tattributes.size = (float)0.100000001;\n\t\t\t\t\t\tattributes.scaleX = (float)1;\n\t\t\t\t\t\tattributes.scaleY = (float)1;\n\t\t\t\t\t\tattributes.scaleZ = (float)1;\n\t\t\t\t\t\tattributes.age = asfloat(attributeBuffer.Load((index * 0x8 + 0x5) << 2));\n\t\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\n\t\t\t\t\t\t// Initialize built-in needed attributes\n\t\t\t\t\t\t#if HAS_STRIPS\n\t\t\t\t\t\tInitStripAttributes(index, attributes, stripData);\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t\n\t\t\t\tOrient_94A( /*inout */attributes.axisX, /*inout */attributes.axisY, /*inout */attributes.axisZ, attributes.position, attributes.velocity);\n\t\t\t\t{\n\t\t\t\t SetAttribute_65DEC940( /*inout */attributes.pivotX, /*inout */attributes.pivotY, /*inout */attributes.pivotZ, float3(0, -0.340000004, 0.109999999));\n\t\t\t\t}\n\t\t\t\t{\n\t\t\t\t SetAttribute_3278B22F( /*inout */attributes.size, (float)1.51999998);\n\t\t\t\t}\n\t\t\t\tAttributeFromCurve_536B7819( /*inout */attributes.scaleX, /*inout */attributes.scaleY, attributes.age, attributes.lifetime, Scale_x_d, Scale_y_d);\n\t\t\t\tSetAttribute_CEEAF35C( /*inout */attributes.alpha, Alpha_e);\n\t\t\t\tColorOverLife_733E3(attributes.age, attributes.lifetime, /*inout */attributes.color, /*inout */attributes.alpha, gradient_f);\n\t\t\t\t{\n\t\t\t\t CameraFade_18F(attributes.position, /*inout */attributes.alpha, /*inout */attributes.alive, (float)1, (float)0.5);\n\t\t\t\t}\n\t\t\t\t\n\n\t\t\t\t\n\t\t\t#if !HAS_STRIPS\n\t\t\t\tif (!attributes.alive)\n\t\t\t\t\treturn o;\n\t\t\t#endif\n\t\t\t\t\n\t\t\t#if VFX_PRIMITIVE_QUAD\n\t\t\t\n\t\t\t#if HAS_STRIPS\n\t\t\t#if VFX_STRIPS_UV_STRECHED\n\t\t\t\to.VFX_VARYING_UV.x = (float)(currentIndex) / (stripData.nextIndex - 1);\n\t\t\t#elif VFX_STRIPS_UV_PER_SEGMENT\n\t\t\t\to.VFX_VARYING_UV.x = PARTICLE_IN_EDGE;\n\t\t\t#else\n\t\t\t\t\n\t\t\t o.VFX_VARYING_UV.x = texCoord;\n\t\t\t#endif\n\t\t\t\n\t\t\t\to.VFX_VARYING_UV.y = float((id & 2) >> 1);\n\t\t\t\tconst float2 vOffsets = float2(0.0f,o.VFX_VARYING_UV.y - 0.5f);\n\t\t\t\t\n\t\t\t#if VFX_STRIPS_SWAP_UV\n\t\t\t\to.VFX_VARYING_UV.xy = float2(1.0f - o.VFX_VARYING_UV.y, o.VFX_VARYING_UV.x);\n\t\t\t#endif\n\t\t\t\t\n\t\t\t\t// Orient strips along their tangents\n\t\t\t\tattributes.axisX = GetStripTangent(attributes.position, currentIndex, stripData);\n\t\t\t#if !VFX_STRIPS_ORIENT_CUSTOM\n\t\t\t\tattributes.axisZ = attributes.position - GetViewVFXPosition();\n\t\t\t#endif\n\t\t\t\tattributes.axisY = normalize(cross(attributes.axisZ, attributes.axisX));\n\t\t\t\tattributes.axisZ = normalize(cross(attributes.axisX, attributes.axisY));\n\t\t\t\t\n\t\t\t#else\n\t\t\t\to.VFX_VARYING_UV.x = float(id & 1);\n\t\t\t\to.VFX_VARYING_UV.y = float((id & 2) >> 1);\n\t\t\t\tconst float2 vOffsets = o.VFX_VARYING_UV.xy - 0.5f;\n\t\t\t#endif\n\t\t\t\t\n\t\t\t#elif VFX_PRIMITIVE_TRIANGLE\n\t\t\t\n\t\t\t\tconst float2 kOffsets[] = {\n\t\t\t\t\tfloat2(-0.5f, \t-0.288675129413604736328125f),\n\t\t\t\t\tfloat2(0.0f, \t0.57735025882720947265625f),\n\t\t\t\t\tfloat2(0.5f,\t-0.288675129413604736328125f),\n\t\t\t\t};\n\t\t\t\t\n\t\t\t\tconst float kUVScale = 0.866025388240814208984375f;\n\t\t\t\t\n\t\t\t\tconst float2 vOffsets = kOffsets[id % 3];\n\t\t\t\to.VFX_VARYING_UV.xy = (vOffsets * kUVScale) + 0.5f;\n\t\t\t\t\n\t\t\t#elif VFX_PRIMITIVE_OCTAGON\t\n\t\t\t\t\n\t\t\t\tconst float2 kUvs[8] = \n\t\t\t\t{\n\t\t\t\t\tfloat2(-0.5f,\t0.0f),\n\t\t\t\t\tfloat2(-0.5f,\t0.5f),\n\t\t\t\t\tfloat2(0.0f,\t0.5f),\n\t\t\t\t\tfloat2(0.5f,\t0.5f),\n\t\t\t\t\tfloat2(0.5f,\t0.0f),\n\t\t\t\t\tfloat2(0.5f,\t-0.5f),\n\t\t\t\t\tfloat2(0.0f,\t-0.5f),\n\t\t\t\t\tfloat2(-0.5f,\t-0.5f),\n\t\t\t\t};\n\t\t\t\t\n\t\t\t\tfloat cropFactor = (float)0;\n\t\t\t\t{\n\t\t\t\t \n\t\t\t\t cropFactor = (float)0.292893201;\n\t\t\t\t}\n\t\t\t\t\n\n\t\t\t\tcropFactor = id & 1 ? 1.0f - cropFactor : 1.0f;\n\t\t\t\tconst float2 vOffsets = kUvs[id & 7] * cropFactor;\n\t\t\t\to.VFX_VARYING_UV.xy = vOffsets + 0.5f;\n\t\t\t\t\n\t\t\t#endif\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\tfloat3 size3 = float3(attributes.size,attributes.size,attributes.size);\n\t\t\t\t\t\t#if VFX_USE_SCALEX_CURRENT\n\t\t\t\t\t\tsize3.x *= attributes.scaleX;\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t#if VFX_USE_SCALEY_CURRENT\n\t\t\t\t\t\tsize3.y *= attributes.scaleY;\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t#if VFX_USE_SCALEZ_CURRENT\n\t\t\t\t\t\tsize3.z *= attributes.scaleZ;\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\n\t\t\t#if HAS_STRIPS\n\t\t\t\tsize3 += size3 < 0.0f ? -VFX_EPSILON : VFX_EPSILON; // Add an epsilon so that size is never 0 for strips\n\t\t\t#endif\n\t\t\t\t\n\t\t\t\tconst float4x4 elementToVFX = GetElementToVFXMatrix(\n\t\t\t\t\tattributes.axisX,\n\t\t\t\t\tattributes.axisY,\n\t\t\t\t\tattributes.axisZ,\n\t\t\t\t\tfloat3(attributes.angleX,attributes.angleY,attributes.angleZ),\n\t\t\t\t\tfloat3(attributes.pivotX,attributes.pivotY,attributes.pivotZ),\n\t\t\t\t\tsize3,\n\t\t\t\t\tattributes.position);\n\t\t\t\t\t\n\t\t\t\tfloat3 inputVertexPosition = float3(vOffsets, 0.0f);\n\t\t\t\tfloat3 vPos = mul(elementToVFX,float4(inputVertexPosition, 1.0f)).xyz;\n\t\t\t\n\t\t\t\to.VFX_VARYING_POSCS = TransformPositionVFXToClip(vPos);\n\t\t\t \n\t\t\t float3 vPosWS = TransformPositionVFXToWorld(vPos);\n\t\t\t\t\n\t\t\t #ifdef VFX_VARYING_POSWS\n\t\t\t o.VFX_VARYING_POSWS = vPosWS;\n\t\t\t #endif\n\t\t\t\n\t\t\t\tfloat3 normalWS = normalize(TransformDirectionVFXToWorld(normalize(-transpose(elementToVFX)[2].xyz)));\n\t\t\t\t#ifdef VFX_VARYING_NORMAL\n\t\t\t\tfloat normalFlip = (size3.x * size3.y * size3.z) < 0 ? -1 : 1;\n\t\t\t\to.VFX_VARYING_NORMAL = normalFlip * normalWS;\n\t\t\t\t#endif\n\t\t\t\t#ifdef VFX_VARYING_TANGENT\n\t\t\t\to.VFX_VARYING_TANGENT = normalize(TransformDirectionVFXToWorld(normalize(transpose(elementToVFX)[0].xyz)));\n\t\t\t\t#endif\n\t\t\t\t#ifdef VFX_VARYING_BENTFACTORS\n\t\t\t\tfloat normalBendingFactor = (float)0;\n\t\t\t\t{\n\t\t\t\t \n\t\t\t\t normalBendingFactor = (float)1;\n\t\t\t\t}\n\t\t\t\t\n\n\t\t\t\t#if HAS_STRIPS\n\t\t\t\t#define BENT_FACTOR_MULTIPLIER 2.0f\n\t\t\t\t#else\n\t\t\t\t#define BENT_FACTOR_MULTIPLIER 1.41421353816986083984375f\n\t\t\t\t#endif\n\t\t\t\to.VFX_VARYING_BENTFACTORS = vOffsets * normalBendingFactor * BENT_FACTOR_MULTIPLIER;\n\t\t\t\t#endif\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\t#if defined(VFX_VARYING_VELOCITY_CPOS) && defined(VFX_VARYING_VELOCITY_CPOS_PREVIOUS)\n\t\t\t\t\t\tfloat4x4 previousElementToVFX = (float4x4)0;\n\t\t\t\t\t\tpreviousElementToVFX[3] = float4(0,0,0,1);\n\t\t\t\t\t\t\n\t\t\t\t\t\tUNITY_UNROLL\n\t\t\t\t\t\tfor (int itIndexMatrixRow = 0; itIndexMatrixRow < 3; ++itIndexMatrixRow)\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tUNITY_UNROLL\n\t\t\t\t\t\t\tfor (int itIndexMatrixCol = 0; itIndexMatrixCol < 4; ++itIndexMatrixCol)\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tuint itIndexMatrix = itIndexMatrixCol * 4 + itIndexMatrixRow;\n\t\t\t\t\t\t\t\tuint read = elementToVFXBufferPrevious.Load((index * 16 + itIndexMatrix) << 2);\n\t\t\t\t\t\t\t\tpreviousElementToVFX[itIndexMatrixRow][itIndexMatrixCol] = asfloat(read);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\t\n\t\t\t\t\t\tuint previousFrameIndex = elementToVFXBufferPrevious.Load((index * 16 + 15) << 2);\n\t\t\t\t\t\to.VFX_VARYING_VELOCITY_CPOS = o.VFX_VARYING_VELOCITY_CPOS_PREVIOUS = float4(0.0f, 0.0f, 0.0f, 1.0f);\n\t\t\t\t\t\tif (asuint(currentFrameIndex) - previousFrameIndex == 1u)\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tfloat3 oldvPos = mul(previousElementToVFX,float4(inputVertexPosition, 1.0f)).xyz;\n\t\t\t\t\t\t\to.VFX_VARYING_VELOCITY_CPOS_PREVIOUS = TransformPositionVFXToPreviousClip(oldvPos);\n\t\t\t\t\t\t\to.VFX_VARYING_VELOCITY_CPOS = TransformPositionVFXToNonJitteredClip(vPos);\n\t\t\t\t\t\t}\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\t#if VFX_USE_COLOR_CURRENT && defined(VFX_VARYING_COLOR)\n\t\t\t\t\t\to.VFX_VARYING_COLOR = attributes.color;\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t#if VFX_USE_ALPHA_CURRENT && defined(VFX_VARYING_ALPHA) \n\t\t\t\t\t\to.VFX_VARYING_ALPHA = attributes.alpha;\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\n\t\t\t\t\t\t#ifdef VFX_VARYING_EXPOSUREWEIGHT\n\t\t\t\t\t\t\n\t\t\t\t\t\to.VFX_VARYING_EXPOSUREWEIGHT = exposureWeight;\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\n\t\t\t\t\t\t#if USE_SOFT_PARTICLE && defined(VFX_VARYING_INVSOFTPARTICLEFADEDISTANCE)\n\t\t\t\t\t\tfloat invSoftParticlesFadeDistance = (float)0;\n\t\t\t\t\t\t{\n\t\t\t\t\t\t \n\t\t\t\t\t\t invSoftParticlesFadeDistance = (float)4.76190472;\n\t\t\t\t\t\t}\n\t\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\to.VFX_VARYING_INVSOFTPARTICLEFADEDISTANCE = invSoftParticlesFadeDistance;\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\n\t\t\t\t\t\t#if (USE_ALPHA_TEST || WRITE_MOTION_VECTOR_IN_FORWARD) && (!VFX_SHADERGRAPH || !HAS_SHADERGRAPH_PARAM_ALPHATHRESHOLD) && defined(VFX_VARYING_ALPHATHRESHOLD)\n\t\t\t\t\t\t\n\t\t\t\t\t\to.VFX_VARYING_ALPHATHRESHOLD = alphaThreshold;\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\n\t\t\t\t\t\t#if USE_UV_SCALE_BIAS\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t#if defined (VFX_VARYING_UV)\n\t\t\t\t\t\to.VFX_VARYING_UV.xy = o.VFX_VARYING_UV.xy * uvScale + uvBias;\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\n\t\t\t\t\t\t#if defined(VFX_VARYING_POSWS)\n\t\t\t\t\t\to.VFX_VARYING_POSWS = TransformPositionVFXToWorld(vPos);\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\t#if USE_FLIPBOOK && defined(VFX_VARYING_UV)\n\t\t\t\t\t\tfloat2 flipBookSize = (float2)0;\n\t\t\t\t\t\t{\n\t\t\t\t\t\t \n\t\t\t\t\t\t flipBookSize = float2(8, 8);\n\t\t\t\t\t\t}\n\t\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\tfloat2 invFlipBookSize = (float2)0;\n\t\t\t\t\t\t{\n\t\t\t\t\t\t \n\t\t\t\t\t\t invFlipBookSize = float2(0.125, 0.125);\n\t\t\t\t\t\t}\n\t\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\tVFXUVData uvData = GetUVData(flipBookSize, invFlipBookSize, o.VFX_VARYING_UV.xy, attributes.texIndex);\n\t\t\t\t\t\to.VFX_VARYING_UV.xy = uvData.uvs.xy;\n\t\t\t\t\t\t#if USE_FLIPBOOK_INTERPOLATION && defined(VFX_VARYING_UV) && defined (VFX_VARYING_FRAMEBLEND)\n\t\t\t\t\t\to.VFX_VARYING_UV.zw = uvData.uvs.zw;\n\t\t\t\t\t\to.VFX_VARYING_FRAMEBLEND = uvData.blend;\n\t\t\t\t\t\t#if USE_FLIPBOOK_MOTIONVECTORS && defined(VFX_VARYING_MOTIONVECTORSCALE)\n\t\t\t\t\t\t\n\t\t\t\t\t\to.VFX_VARYING_MOTIONVECTORSCALE = motionVectorScale * invFlipBookSize;\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t#ifndef VFX_SHADERGRAPH\n\t\t\t\t\t\t\t\t\t#ifdef VFX_VARYING_SMOOTHNESS\n\t\t\t\t\t\t\t\t\tfloat smoothness = (float)0;\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t\t smoothness = (float)0;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\to.VFX_VARYING_SMOOTHNESS = smoothness;\n\t\t\t\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t\t\t#if HDRP_MATERIAL_TYPE_STANDARD\n\t\t\t\t\t\t\t\t\t#ifdef VFX_VARYING_METALLIC\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\to.VFX_VARYING_METALLIC = metallic;\n\t\t\t\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t\t\t#elif HDRP_MATERIAL_TYPE_SPECULAR\n\t\t\t\t\t\t\t\t\t#ifdef VFX_VARYING_SPECULAR\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\to.VFX_VARYING_SPECULAR = specularColor;\n\t\t\t\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t\t\t#elif HDRP_MATERIAL_TYPE_TRANSLUCENT\n\t\t\t\t\t\t\t\t\t#ifdef VFX_VARYING_THICKNESS\n\t\t\t\t\t\t\t\t\tfloat thickness = (float)0;\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t\t thickness = (float)0;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\to.VFX_VARYING_THICKNESS = thickness;\n\t\t\t\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t\t\t#if USE_NORMAL_MAP\n\t\t\t\t\t\t\t\t\t#ifdef VFX_VARYING_NORMALSCALE\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\to.VFX_VARYING_NORMALSCALE = normalScale;\n\t\t\t\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t\t\t#if HDRP_USE_EMISSIVE_MAP\n\t\t\t\t\t\t\t\t\t#ifdef VFX_VARYING_EMISSIVESCALE\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\to.VFX_VARYING_EMISSIVESCALE = emissiveScale;\n\t\t\t\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t\t\t#ifdef VFX_VARYING_EMISSIVE\n\t\t\t\t\t\t\t\t\t#if HDRP_USE_EMISSIVE_COLOR\n\t\t\t\t\t\t\t\t\to.VFX_VARYING_EMISSIVE = attributes.color;\n\t\t\t\t\t\t\t\t\t#elif HDRP_USE_ADDITIONAL_EMISSIVE_COLOR\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\to.VFX_VARYING_EMISSIVE = emissiveColor;\n\t\t\t\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t\t\t#if HDRP_USE_ADDITIONAL_BASE_COLOR\n\t\t\t\t\t\t\t\t\t#ifdef VFX_VARYING_COLOR\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\to.VFX_VARYING_COLOR = baseColor;\n\t\t\t\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t \n\t\t\t \n\t\t\t\n\t\t\t\treturn o;\n\t\t\t}\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t#include \"Packages/com.unity.visualeffectgraph/Shaders/VFXCommonOutput.hlsl\"\n\t\t\t\n\t\t\t\n\t\t\n\t\t\t#define SHADERPASS SHADERPASS_FORWARD\n\t\t\t#include \"Packages/com.unity.render-pipelines.high-definition/Runtime/VFXGraph/Shaders/VFXLit.hlsl\"\n\t\t\t\n\t\t\t#ifndef VFX_SHADERGRAPH\n\t\t\t\n\t\t\tvoid VFXGetHDRPLitData(out SurfaceData surfaceData, out BuiltinData builtinData, out BSDFData bsdfData, out PreLightData preLightData, VFX_VARYING_PS_INPUTS i, float3 normalWS, const VFXUVData uvData, uint2 tileIndex)\n\t\t\t{\t\n\t\t\t\t#if HDRP_MATERIAL_TYPE_TRANSLUCENT\n\t\t\t\tuint diffusionProfileHash = (uint)0;\n\t\t\t\t{\n\t\t\t\t \n\t\t\t\t diffusionProfileHash = (uint)1080043756;\n\t\t\t\t}\n\t\t\t\t\n // Loads diffusion profile\n\t\t\t\t#else\n\t\t\t\tconst uint diffusionProfileHash = 0;\n\t\t\t\t#endif\n\t\t\t\t\n\t\t\t\tfloat3 posRWS = VFXGetPositionRWS(i);\n\t\t\t\tfloat4 posSS = i.VFX_VARYING_POSCS;\n\t\t\t\tPositionInputs posInput = GetPositionInput(posSS.xy, _ScreenSize.zw, posSS.z, posSS.w, posRWS, tileIndex);\n\t\t\t\t\n\t\t\t\tfloat alpha;\n\t\t\t\tsurfaceData = VFXGetSurfaceData(i,normalWS,uvData,diffusionProfileHash,alpha);\t\n\t\t\t\tbsdfData = ConvertSurfaceDataToBSDFData(posSS.xy, surfaceData);\n\t\t\t\n\t\t\t\tpreLightData = GetPreLightData(GetWorldSpaceNormalizeViewDir(posRWS),posInput,bsdfData);\n\t\t\t\t\n\t\t\t\tpreLightData.diffuseFGD = 1.0f;\n\t\t\t //TODO: investigate why this is needed\n\t\t\t preLightData.coatPartLambdaV = 0;\n\t\t\t preLightData.coatIblR = 0;\n\t\t\t preLightData.coatIblF = 0;\n\t\t\t \n\t\t\t\tbuiltinData = VFXGetBuiltinData(i,posInput,surfaceData,uvData,alpha);\n\t\t\t}\n\t\t\t\n\t\t\tvoid VFXGetHDRPLitData(out SurfaceData surfaceData, out BuiltinData builtinData, VFX_VARYING_PS_INPUTS i, float3 normalWS, const VFXUVData uvData)\n\t\t\t{\n\t\t\t\tBSDFData bsdfData = (BSDFData)0;\n\t\t\t\tPreLightData preLightData = (PreLightData)0;\n\t\t\t\tpreLightData.diffuseFGD = 1.0f;\n\t\t\t\tVFXGetHDRPLitData(surfaceData,builtinData,bsdfData,preLightData,i,normalWS,uvData,uint2(0,0));\n\t\t\t}\n\t\t\t\n\t\t\t#endif\n\t\t\t\n\t\t\t\n\t\t\t#include \"Packages/com.unity.render-pipelines.high-definition/Runtime/VFXGraph/Shaders/VFXLitPixelOutput.hlsl\"\n\t\t\t\n\t\t\t\n\t\t\n\t\t\t\t\t\t\t\n\t\t \n\t\t\t\t\t\t\t\n\t\t\t#pragma fragment frag\n\t\t\tvoid frag(ps_input i\n\t\t\t, out float4 outColor : SV_Target0\n\t\t\t#if USE_DOUBLE_SIDED\n\t\t\t, bool frontFace : SV_IsFrontFace\n\t\t\t#endif\n\t\t\t#if WRITE_MOTION_VECTOR_IN_FORWARD\n\t\t\t, out float4 outMotionVector : SV_Target1\n\t\t\t#endif\n\t\t\t)\n\t\t\t{\n\t\t\t\tUNITY_SETUP_STEREO_EYE_INDEX_POST_VERTEX(i);\n\t\t\t\tVFXTransformPSInputs(i);\n\t\t\t\t\n\t\t\t\t\t\t\t#ifdef VFX_VARYING_NORMAL\n\t\t\t\t\t\t\t#if USE_DOUBLE_SIDED\n\t\t\t\t\t\t\tconst float faceMul = frontFace ? 1.0f : -1.0f;\n\t\t\t\t\t\t\t#else\n\t\t\t\t\t\t\tconst float faceMul = 1.0f;\n\t\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\tfloat3 normalWS = i.VFX_VARYING_NORMAL * faceMul;\n\t\t\t\t\t\t\tconst VFXUVData uvData = GetUVData(i);\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t#ifdef VFX_VARYING_TANGENT\n\t\t\t\t\t\t\tfloat3 tangentWS = i.VFX_VARYING_TANGENT;\n\t\t\t\t\t\t\tfloat3 bitangentWS = cross(i.VFX_VARYING_TANGENT,i.VFX_VARYING_NORMAL);\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t#if defined(VFX_VARYING_BENTFACTORS) && USE_NORMAL_BENDING\t\n\t\t\t\t\t\t\tfloat3 bentFactors = float3(i.VFX_VARYING_BENTFACTORS.xy,sqrt(1.0f - dot(i.VFX_VARYING_BENTFACTORS,i.VFX_VARYING_BENTFACTORS)));\n\t\t\t\t\t\t\tnormalWS = tangentWS * bentFactors.x + bitangentWS * bentFactors.y + normalWS * bentFactors.z;\n\t\t\t\t\t\t\ttangentWS = normalize(cross(normalWS,bitangentWS));\n\t\t\t\t\t\t\tbitangentWS = cross(tangentWS,normalWS);\n\t\t\t\t\t\t\ttangentWS *= faceMul;\n\t\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\tfloat3x3 tbn = float3x3(tangentWS,bitangentWS,normalWS);\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t#if USE_NORMAL_MAP\n\t\t\t\t\t\t\tfloat3 n = SampleNormalMap(VFX_SAMPLER(normalMap),uvData);\n\t\t\t\t\t\t\tfloat normalScale = 1.0f;\n\t\t\t\t\t\t\t#ifdef VFX_VARYING_NORMALSCALE\n\t\t\t\t\t\t\tnormalScale = i.VFX_VARYING_NORMALSCALE;\n\t\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\tnormalWS = normalize(lerp(normalWS,mul(n,tbn),normalScale));\n\t\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t#endif\n\t\t\t\t\t\t\t\n\t\t \n\t\t #ifdef VFX_SHADERGRAPH\n\t\t \n\t\t \n\t\t \n\t\t SurfaceData surface;\n\t\t BuiltinData builtin;\n\t\t surface = (SurfaceData)0;\n\t\t builtin = (BuiltinData)0;\n\t\t \n\t\t surface.materialFeatures = MATERIALFEATUREFLAGS_LIT_STANDARD;\n\t\t surface.specularOcclusion = 1.0f;\n\t\t surface.ambientOcclusion = 1.0f;\n\t\t surface.subsurfaceMask = 1.0f;\n\t\t \n\t\t #if HAS_SHADERGRAPH_PARAM_ALPHA\n\t\t builtin.opacity = OUTSG.;\n\t\t VFXClipFragmentColor(builtin.opacity,i);\n\t\t #endif\n\t\t \n\t\t #if HAS_SHADERGRAPH_PARAM_SMOOTHNESS\n\t\t surface.perceptualSmoothness = OUTSG.;\n\t\t #endif\n\t\t #if HAS_SHADERGRAPH_PARAM_METALLIC\n\t\t surface.metallic = OUTSG.;\n\t\t #endif\n\t\t #if HAS_SHADERGRAPH_PARAM_BASECOLOR\n\t\t surface.baseColor = OUTSG.;\n\t\t #endif\n\t\t \n\t\t #if HAS_SHADERGRAPH_PARAM_NORMAL\n\t\t float3 n = OUTSG.;\n\t\t normalWS = mul(n,tbn);\n\t\t #endif\n\t\t \n\t\t surface.normalWS = normalWS;\n\t\t \n\t\t #if HAS_SHADERGRAPH_PARAM_EMISSIVE\n\t\t builtin.emissiveColor = OUTSG.;\n\t\t #endif\n\t\t\n\t\t \n\t\t outColor = VFXGetPixelOutputForwardShaderGraph(surface, builtin,i);\n\t\t #else\n\t\t outColor = VFXGetPixelOutputForward(i,normalWS,uvData);\n\t\t #endif\n\t\t\t\t\n\t\t#if WRITE_MOTION_VECTOR_IN_FORWARD\n\t\t\t\t\n\t\t\t\t\t\tfloat2 velocity = (i.VFX_VARYING_VELOCITY_CPOS.xy/i.VFX_VARYING_VELOCITY_CPOS.w) - (i.VFX_VARYING_VELOCITY_CPOS_PREVIOUS.xy/i.VFX_VARYING_VELOCITY_CPOS_PREVIOUS.w);\n\t\t\t\t\t\t#if UNITY_UV_STARTS_AT_TOP\n\t\t\t\t\t\t\tvelocity.y = -velocity.y;\n\t\t\t\t\t\t#endif\n\t\t\t\t\t\tfloat4 encodedMotionVector = 0.0f;\n\t\t\t\t\t\tVFXEncodeMotionVector(velocity * 0.5f, encodedMotionVector);\n\t\t\t\t\t\t\n\t\t\t\toutMotionVector = encodedMotionVector;\n\t\t\t\toutMotionVector.a = outColor.a < i.VFX_VARYING_ALPHATHRESHOLD ? 0.0f : 1.0f; //Independant clipping for motion vector pass\n\t\t#endif\n\t\t\t}\n\t\t\tENDHLSL\n\t\t}\n\t\t\n\r\n\t\t\r\n\t}\r\n}\r\n" - compute: 1 name: '[Slowing Steam Puffs]CameraSort' source: "#pragma kernel CSMain\r\n#define NB_THREADS_PER_GROUP 64\n#define HAS_ATTRIBUTES 1\n#define VFX_PASSDEPTH_ACTUAL (0)\n#define VFX_PASSDEPTH_MOTION_VECTOR (1)\n#define VFX_PASSDEPTH_SELECTION (2)\n#define VFX_USE_POSITION_CURRENT 1\n#define USE_DEAD_LIST_COUNT 1\n#define VFX_LOCAL_SPACE 1\n#include \"Packages/com.unity.render-pipelines.high-definition/Runtime/VFXGraph/Shaders/VFXDefines.hlsl\"\n\n\r\nCBUFFER_START(parameters)\n float4x4 localToWorld;\nCBUFFER_END\n\nstruct Attributes\n{\n float3 position;\n};\n\nstruct SourceAttributes\n{\n};\n\n\n\r\n#include \"Packages/com.unity.visualeffectgraph/Shaders/Common/VFXCommonCompute.hlsl\"\n#include \"Packages/com.unity.visualeffectgraph/Shaders/VFXCommon.hlsl\"\n\n\r\n\r\nCBUFFER_START(params)\r\n uint nbMax;\r\n uint dispatchWidth;\r\nCBUFFER_END\r\n\r\nCBUFFER_START(cameraParams)\r\n float3 cameraPosition;\r\nCBUFFER_END\r\n\r\nByteAddressBuffer attributeBuffer;\r\nStructuredBuffer inputBuffer;\r\n\r\n#if USE_DEAD_LIST_COUNT\r\nByteAddressBuffer deadListCount;\r\n#endif\r\n\r\nstruct Kvp\r\n{\r\n\tfloat sortKey;\r\n\tuint index;\r\n};\r\n\r\nRWStructuredBuffer outputBuffer;\r\n\r\n[numthreads(NB_THREADS_PER_GROUP,1,1)]\r\nvoid CSMain(uint3 groupId : SV_GroupID,\r\n uint3 groupThreadId : SV_GroupThreadID)\r\n{\r\n\tuint threshold = nbMax;\r\n#if USE_DEAD_LIST_COUNT\r\n\tthreshold -= deadListCount.Load(0);\r\n#endif\r\n\tuint id = groupThreadId.x + groupId.x * NB_THREADS_PER_GROUP + groupId.y * dispatchWidth * NB_THREADS_PER_GROUP;\r\n\tif (id < threshold)\r\n\t{\r\n\t\tuint index = inputBuffer[id];\r\n\t\t\r\n\t\tAttributes attributes = (Attributes)0;\r\n\t\tattributes.position = asfloat(attributeBuffer.Load3((index * 0x4 + 0x120) << 2));\n\t\t\n\r\n\t\t\r\n#if VFX_LOCAL_SPACE\r\n\t\tfloat3 wPos = mul(localToWorld,float4(attributes.position,1.0f)).xyz;\r\n#else\r\n\t\tfloat3 wPos = attributes.position;\r\n#endif\r\n\t\tfloat3 camToPos = wPos - cameraPosition;\r\n\t\t\r\n\t\tKvp kvp;\r\n\t\tkvp.sortKey = dot(camToPos,camToPos); // sqr distance to the camera\r\n\t\tkvp.index = index;\r\n\r\n\t\toutputBuffer[id] = kvp;\r\n\t}\r\n}\r\n" - compute: 1 name: '[Leaking Pressured Air]CameraSort' source: "#pragma kernel CSMain\r\n#define NB_THREADS_PER_GROUP 64\n#define HAS_ATTRIBUTES 1\n#define VFX_PASSDEPTH_ACTUAL (0)\n#define VFX_PASSDEPTH_MOTION_VECTOR (1)\n#define VFX_PASSDEPTH_SELECTION (2)\n#define VFX_USE_POSITION_CURRENT 1\n#define USE_DEAD_LIST_COUNT 1\n#define VFX_LOCAL_SPACE 1\n#include \"Packages/com.unity.render-pipelines.high-definition/Runtime/VFXGraph/Shaders/VFXDefines.hlsl\"\n\n\r\nCBUFFER_START(parameters)\n float4x4 localToWorld;\nCBUFFER_END\n\nstruct Attributes\n{\n float3 position;\n};\n\nstruct SourceAttributes\n{\n};\n\n\n\r\n#include \"Packages/com.unity.visualeffectgraph/Shaders/Common/VFXCommonCompute.hlsl\"\n#include \"Packages/com.unity.visualeffectgraph/Shaders/VFXCommon.hlsl\"\n\n\r\n\r\nCBUFFER_START(params)\r\n uint nbMax;\r\n uint dispatchWidth;\r\nCBUFFER_END\r\n\r\nCBUFFER_START(cameraParams)\r\n float3 cameraPosition;\r\nCBUFFER_END\r\n\r\nByteAddressBuffer attributeBuffer;\r\nStructuredBuffer inputBuffer;\r\n\r\n#if USE_DEAD_LIST_COUNT\r\nByteAddressBuffer deadListCount;\r\n#endif\r\n\r\nstruct Kvp\r\n{\r\n\tfloat sortKey;\r\n\tuint index;\r\n};\r\n\r\nRWStructuredBuffer outputBuffer;\r\n\r\n[numthreads(NB_THREADS_PER_GROUP,1,1)]\r\nvoid CSMain(uint3 groupId : SV_GroupID,\r\n uint3 groupThreadId : SV_GroupThreadID)\r\n{\r\n\tuint threshold = nbMax;\r\n#if USE_DEAD_LIST_COUNT\r\n\tthreshold -= deadListCount.Load(0);\r\n#endif\r\n\tuint id = groupThreadId.x + groupId.x * NB_THREADS_PER_GROUP + groupId.y * dispatchWidth * NB_THREADS_PER_GROUP;\r\n\tif (id < threshold)\r\n\t{\r\n\t\tuint index = inputBuffer[id];\r\n\t\t\r\n\t\tAttributes attributes = (Attributes)0;\r\n\t\tattributes.position = asfloat(attributeBuffer.Load3((index * 0x4 + 0x120) << 2));\n\t\t\n\r\n\t\t\r\n#if VFX_LOCAL_SPACE\r\n\t\tfloat3 wPos = mul(localToWorld,float4(attributes.position,1.0f)).xyz;\r\n#else\r\n\t\tfloat3 wPos = attributes.position;\r\n#endif\r\n\t\tfloat3 camToPos = wPos - cameraPosition;\r\n\t\t\r\n\t\tKvp kvp;\r\n\t\tkvp.sortKey = dot(camToPos,camToPos); // sqr distance to the camera\r\n\t\tkvp.index = index;\r\n\r\n\t\toutputBuffer[id] = kvp;\r\n\t}\r\n}\r\n" m_Infos: m_Expressions: m_Expressions: - op: 1 valueIndex: 0 data[0]: -1 data[1]: -1 data[2]: -1 data[3]: 13 - op: 1 valueIndex: 1 data[0]: -1 data[1]: -1 data[2]: -1 data[3]: 13 - op: 1 valueIndex: 2 data[0]: -1 data[1]: -1 data[2]: -1 data[3]: 14 - op: 1 valueIndex: 3 data[0]: -1 data[1]: -1 data[2]: -1 data[3]: 14 - op: 1 valueIndex: 4 data[0]: -1 data[1]: -1 data[2]: -1 data[3]: 13 - op: 1 valueIndex: 5 data[0]: -1 data[1]: -1 data[2]: -1 data[3]: 13 - op: 56 valueIndex: 6 data[0]: 0 data[1]: -1 data[2]: -1 data[3]: 0 - op: 57 valueIndex: 10 data[0]: 3 data[1]: -1 data[2]: -1 data[3]: 0 - op: 1 valueIndex: 11 data[0]: -1 data[1]: -1 data[2]: -1 data[3]: 1 - op: 1 valueIndex: 12 data[0]: -1 data[1]: -1 data[2]: -1 data[3]: 2 - op: 1 valueIndex: 14 data[0]: -1 data[1]: -1 data[2]: -1 data[3]: 2 - op: 1 valueIndex: 16 data[0]: -1 data[1]: -1 data[2]: -1 data[3]: 6 - op: 1 valueIndex: 17 data[0]: -1 data[1]: -1 data[2]: -1 data[3]: 7 - op: 1 valueIndex: 18 data[0]: -1 data[1]: -1 data[2]: -1 data[3]: 7 - op: 1 valueIndex: 19 data[0]: -1 data[1]: -1 data[2]: -1 data[3]: 1 - op: 1 valueIndex: 20 data[0]: -1 data[1]: -1 data[2]: -1 data[3]: 1 - op: 1 valueIndex: 21 data[0]: -1 data[1]: -1 data[2]: -1 data[3]: 1 - op: 1 valueIndex: 22 data[0]: -1 data[1]: -1 data[2]: -1 data[3]: 3 - op: 1 valueIndex: 25 data[0]: -1 data[1]: -1 data[2]: -1 data[3]: 1 - op: 56 valueIndex: 26 data[0]: 5 data[1]: -1 data[2]: -1 data[3]: 1 - op: 56 valueIndex: 30 data[0]: 4 data[1]: -1 data[2]: -1 data[3]: 2 - op: 57 valueIndex: 34 data[0]: 2 data[1]: -1 data[2]: -1 data[3]: 1 - op: 1 valueIndex: 35 data[0]: -1 data[1]: -1 data[2]: -1 data[3]: 1 - op: 1 valueIndex: 36 data[0]: -1 data[1]: -1 data[2]: -1 data[3]: 1 - op: 1 valueIndex: 37 data[0]: -1 data[1]: -1 data[2]: -1 data[3]: 1 - op: 56 valueIndex: 38 data[0]: 1 data[1]: -1 data[2]: -1 data[3]: 3 - op: 1 valueIndex: 42 data[0]: -1 data[1]: -1 data[2]: -1 data[3]: 3 - op: 1 valueIndex: 45 data[0]: -1 data[1]: -1 data[2]: -1 data[3]: 3 - op: 1 valueIndex: 48 data[0]: -1 data[1]: -1 data[2]: -1 data[3]: 3 - op: 1 valueIndex: 51 data[0]: -1 data[1]: -1 data[2]: -1 data[3]: 1 - op: 1 valueIndex: 52 data[0]: -1 data[1]: -1 data[2]: -1 data[3]: 3 - op: 1 valueIndex: 55 data[0]: -1 data[1]: -1 data[2]: -1 data[3]: 3 - op: 1 valueIndex: 58 data[0]: -1 data[1]: -1 data[2]: -1 data[3]: 1 - op: 1 valueIndex: 59 data[0]: -1 data[1]: -1 data[2]: -1 data[3]: 3 - op: 1 valueIndex: 62 data[0]: -1 data[1]: -1 data[2]: -1 data[3]: 3 - op: 1 valueIndex: 65 data[0]: -1 data[1]: -1 data[2]: -1 data[3]: 1 - op: 1 valueIndex: 66 data[0]: -1 data[1]: -1 data[2]: -1 data[3]: 1 - op: 1 valueIndex: 67 data[0]: -1 data[1]: -1 data[2]: -1 data[3]: 1 - op: 1 valueIndex: 68 data[0]: -1 data[1]: -1 data[2]: -1 data[3]: 1 - op: 6 valueIndex: 69 data[0]: -1 data[1]: -1 data[2]: -1 data[3]: -1 - op: 1 valueIndex: 70 data[0]: -1 data[1]: -1 data[2]: -1 data[3]: 1 - op: 1 valueIndex: 71 data[0]: -1 data[1]: -1 data[2]: -1 data[3]: 3 - op: 1 valueIndex: 74 data[0]: -1 data[1]: -1 data[2]: -1 data[3]: 1 - op: 1 valueIndex: 75 data[0]: -1 data[1]: -1 data[2]: -1 data[3]: 1 - op: 1 valueIndex: 76 data[0]: -1 data[1]: -1 data[2]: -1 data[3]: 1 - op: 1 valueIndex: 77 data[0]: -1 data[1]: -1 data[2]: -1 data[3]: 1 - op: 1 valueIndex: 78 data[0]: -1 data[1]: -1 data[2]: -1 data[3]: 7 - op: 9 valueIndex: 79 data[0]: -1 data[1]: -1 data[2]: -1 data[3]: -1 m_NeedsLocalToWorld: 1 m_NeedsWorldToLocal: 0 m_NeededMainCameraBuffers: 0 m_PropertySheet: m_Float: m_Array: - m_ExpressionIndex: 8 m_Value: 0.25 - m_ExpressionIndex: 14 m_Value: 1.110692 - m_ExpressionIndex: 15 m_Value: 0.5264153 - m_ExpressionIndex: 16 m_Value: 0.2928932 - m_ExpressionIndex: 18 m_Value: 1.52 - m_ExpressionIndex: 22 m_Value: 4.7619047 - m_ExpressionIndex: 23 m_Value: 1 - m_ExpressionIndex: 24 m_Value: 8 - m_ExpressionIndex: 29 m_Value: 12 - m_ExpressionIndex: 32 m_Value: 1 - m_ExpressionIndex: 35 m_Value: 2 - m_ExpressionIndex: 36 m_Value: 4 - m_ExpressionIndex: 37 m_Value: 0 - m_ExpressionIndex: 38 m_Value: 360 - m_ExpressionIndex: 40 m_Value: 0.73 - m_ExpressionIndex: 42 m_Value: 0.5 - m_ExpressionIndex: 43 m_Value: 0.82 - m_ExpressionIndex: 44 m_Value: 32 - m_ExpressionIndex: 45 m_Value: 25 m_Vector2f: m_Array: - m_ExpressionIndex: 9 m_Value: {x: 8, y: 8} - m_ExpressionIndex: 10 m_Value: {x: 0.125, y: 0.125} m_Vector3f: m_Array: - m_ExpressionIndex: 17 m_Value: {x: 0, y: -0.34, z: 0.11} - m_ExpressionIndex: 26 m_Value: {x: 0, y: 0, z: 0.565} - m_ExpressionIndex: 27 m_Value: {x: 0, y: 2, z: 0} - m_ExpressionIndex: 28 m_Value: {x: 2, y: 5, z: 2} - m_ExpressionIndex: 30 m_Value: {x: -0.067021444, y: 0.31900197, z: -0.008536994} - m_ExpressionIndex: 31 m_Value: {x: 0.83686453, y: 1.6380163, z: 0.7165221} - m_ExpressionIndex: 33 m_Value: {x: -0.2, y: 1, z: -0.2} - m_ExpressionIndex: 34 m_Value: {x: 0.2, y: 2, z: 0.2} - m_ExpressionIndex: 41 m_Value: {x: -0.2, y: 2, z: -0.2} m_Vector4f: m_Array: [] m_Uint: m_Array: - m_ExpressionIndex: 11 m_Value: 1080043756 m_Int: m_Array: [] m_Matrix4x4f: m_Array: [] m_AnimationCurve: m_Array: - m_ExpressionIndex: 0 m_Value: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 21.408016 inSlope: -20.408016 outSlope: -20.408016 tangentMode: 34 weightedMode: 0 inWeight: 0 outWeight: 0 - serializedVersion: 3 time: 1 value: 1 inSlope: -20.408016 outSlope: -20.408016 tangentMode: 34 weightedMode: 0 inWeight: 0 outWeight: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 - m_ExpressionIndex: 1 m_Value: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: -0.039756775 value: 0.2615614 inSlope: -0.059479285 outSlope: -0.059479285 tangentMode: 0 weightedMode: 0 inWeight: 0 outWeight: 0 - serializedVersion: 3 time: 1 value: 1.3342246 inSlope: 0.9414345 outSlope: 0.9414345 tangentMode: 0 weightedMode: 0 inWeight: 0 outWeight: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 - m_ExpressionIndex: 4 m_Value: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0.42684847 inSlope: 1.3365319 outSlope: 1.3365319 tangentMode: 0 weightedMode: 0 inWeight: 0 outWeight: 0 - serializedVersion: 3 time: 1 value: 0.79557484 inSlope: 0.016381497 outSlope: 0.016381497 tangentMode: 0 weightedMode: 0 inWeight: 0 outWeight: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 - m_ExpressionIndex: 5 m_Value: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0.10292333 inSlope: 0.034305286 outSlope: 0.034305286 tangentMode: 0 weightedMode: 0 inWeight: 0 outWeight: 0 - serializedVersion: 3 time: 1 value: 0.43233722 inSlope: 0.57933235 outSlope: 0.57933235 tangentMode: 0 weightedMode: 0 inWeight: 0 outWeight: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 m_Gradient: m_Array: - m_ExpressionIndex: 2 m_Value: serializedVersion: 2 key0: {r: 1, g: 1, b: 1, a: 0} key1: {r: 1, g: 1, b: 1, a: 0.35686275} key2: {r: 0, g: 0, b: 0, a: 0.18039216} key3: {r: 0, g: 0, b: 0, a: 0} key4: {r: 0, g: 0, b: 0, a: 0} key5: {r: 0, g: 0, b: 0, a: 0} key6: {r: 0, g: 0, b: 0, a: 0} key7: {r: 0, g: 0, b: 0, a: 0} ctime0: 0 ctime1: 65535 ctime2: 0 ctime3: 0 ctime4: 0 ctime5: 0 ctime6: 0 ctime7: 0 atime0: 0 atime1: 8967 atime2: 31678 atime3: 65535 atime4: 0 atime5: 0 atime6: 0 atime7: 0 m_Mode: 0 m_NumColorKeys: 2 m_NumAlphaKeys: 4 - m_ExpressionIndex: 3 m_Value: serializedVersion: 2 key0: {r: 0.745283, g: 0.745283, b: 0.745283, a: 0} key1: {r: 0.4528302, g: 0.4528302, b: 0.4528302, a: 1} key2: {r: 0, g: 0, b: 0, a: 0.60784316} key3: {r: 0, g: 0, b: 0, a: 0} key4: {r: 0, g: 0, b: 0, a: 0} key5: {r: 0, g: 0, b: 0, a: 0} key6: {r: 0, g: 0, b: 0, a: 0} key7: {r: 0, g: 0, b: 0, a: 0} ctime0: 0 ctime1: 65535 ctime2: 0 ctime3: 0 ctime4: 0 ctime5: 0 ctime6: 0 ctime7: 0 atime0: 0 atime1: 22292 atime2: 48942 atime3: 65535 atime4: 0 atime5: 0 atime6: 0 atime7: 0 m_Mode: 0 m_NumColorKeys: 2 m_NumAlphaKeys: 4 m_NamedObject: m_Array: - m_ExpressionIndex: 12 m_Value: {fileID: 2800000, guid: 3f0b27fa0a9267346b36465dc2808773, type: 3} - m_ExpressionIndex: 13 m_Value: {fileID: 2800000, guid: a184111ffd563d649847569fc38fd88a, type: 3} - m_ExpressionIndex: 46 m_Value: {fileID: 2800000, guid: 7076e9e9b57e77d47a88c9fd8b0dfe1b, type: 3} m_Bool: m_Array: [] m_ExposedExpressions: - nameId: Opacity index: 32 m_Buffers: - type: 1 size: 416 layout: - name: velocity type: 3 offset: bucket: 0 structure: 4 element: 0 - name: lifetime type: 1 offset: bucket: 128 structure: 1 element: 0 - name: angleZ type: 1 offset: bucket: 160 structure: 1 element: 0 - name: texIndex type: 1 offset: bucket: 192 structure: 3 element: 0 - name: age type: 1 offset: bucket: 192 structure: 3 element: 1 - name: alive type: 17 offset: bucket: 192 structure: 3 element: 2 - name: position type: 3 offset: bucket: 288 structure: 4 element: 0 capacity: 32 stride: 4 - type: 1 size: 416 layout: - name: velocity type: 3 offset: bucket: 0 structure: 8 element: 0 - name: texIndex type: 1 offset: bucket: 0 structure: 8 element: 3 - name: alive type: 17 offset: bucket: 0 structure: 8 element: 4 - name: age type: 1 offset: bucket: 0 structure: 8 element: 5 - name: lifetime type: 1 offset: bucket: 256 structure: 1 element: 0 - name: position type: 3 offset: bucket: 288 structure: 4 element: 0 capacity: 32 stride: 4 - type: 1 size: 1 layout: - name: spawnCount type: 1 offset: bucket: 0 structure: 1 element: 0 capacity: 1 stride: 4 - type: 4 size: 32 layout: [] capacity: 0 stride: 4 - type: 1 size: 1 layout: [] capacity: 0 stride: 4 - type: 4 size: 32 layout: [] capacity: 0 stride: 4 - type: 0 size: 32 layout: [] capacity: 0 stride: 8 - type: 0 size: 32 layout: [] capacity: 0 stride: 8 - type: 1 size: 1 layout: - name: spawnCount type: 1 offset: bucket: 0 structure: 1 element: 0 capacity: 1 stride: 4 - type: 4 size: 32 layout: [] capacity: 0 stride: 4 - type: 1 size: 1 layout: [] capacity: 0 stride: 4 - type: 4 size: 32 layout: [] capacity: 0 stride: 4 - type: 0 size: 32 layout: [] capacity: 0 stride: 8 - type: 0 size: 32 layout: [] capacity: 0 stride: 8 m_TemporaryBuffers: [] m_CPUBuffers: - capacity: 1 stride: 1 layout: - name: spawnCount type: 1 offset: bucket: 0 structure: 1 element: 0 initialData: data: 00000000 - capacity: 1 stride: 1 layout: - name: spawnCount type: 1 offset: bucket: 0 structure: 1 element: 0 initialData: data: 00000000 - capacity: 1 stride: 1 layout: - name: spawnCount type: 1 offset: bucket: 0 structure: 1 element: 0 initialData: data: 00000000 m_Events: - name: OnPlay playSystems: 0000000001000000 stopSystems: - name: OnStop playSystems: stopSystems: 0000000001000000 m_RuntimeVersion: 10 m_RendererSettings: motionVectorGenerationMode: 0 shadowCastingMode: 0 receiveShadows: 0 reflectionProbeUsage: 0 lightProbeUsage: 0 m_CullingFlags: 3 m_UpdateMode: 0 m_PreWarmDeltaTime: 0.05 m_PreWarmStepCount: 0 m_InitialEventName: OnPlay m_Systems: - type: 0 flags: 0 capacity: 0 layer: 4294967295 buffers: - nameId: spawner_output index: 1 values: [] tasks: - type: 268435456 buffers: [] temporaryBuffers: [] values: - nameId: Rate index: 29 params: [] processor: {fileID: 0} shaderSourceIndex: -1 - type: 0 flags: 0 capacity: 0 layer: 4294967295 buffers: - nameId: spawner_output index: 2 values: [] tasks: - type: 268435456 buffers: [] temporaryBuffers: [] values: - nameId: Rate index: 24 params: [] processor: {fileID: 0} shaderSourceIndex: -1 - type: 1 flags: 3 capacity: 32 layer: 4294967295 buffers: - nameId: attributeBuffer index: 0 - nameId: sourceAttributeBuffer index: 2 - nameId: deadList index: 3 - nameId: deadListCount index: 4 - nameId: spawner_input index: 2 - nameId: indirectBuffer index: 5 - nameId: sortBufferA index: 6 - nameId: sortBufferB index: 7 values: - nameId: bounds_center index: 27 - nameId: bounds_size index: 28 tasks: - type: 536870912 buffers: - nameId: attributeBuffer index: 0 - nameId: deadListIn index: 3 - nameId: deadListCount index: 4 - nameId: sourceAttributeBuffer index: 2 temporaryBuffers: [] values: [] params: - nameId: bounds_center index: 27 - nameId: bounds_size index: 28 processor: {fileID: 0} shaderSourceIndex: 0 - type: 805306368 buffers: - nameId: attributeBuffer index: 0 - nameId: deadListOut index: 3 - nameId: indirectBuffer index: 5 temporaryBuffers: [] values: - nameId: uniform_b index: 6 - nameId: deltaTime_a index: 39 params: [] processor: {fileID: 0} shaderSourceIndex: 1 - type: 805306369 buffers: - nameId: attributeBuffer index: 0 - nameId: inputBuffer index: 5 - nameId: outputBuffer index: 6 - nameId: deadListCount index: 4 temporaryBuffers: [] values: - nameId: localToWorld index: 47 params: [] processor: {fileID: 0} shaderSourceIndex: 6 - type: 1073741830 buffers: - nameId: attributeBuffer index: 0 - nameId: indirectBuffer index: 5 temporaryBuffers: [] values: - nameId: Size_c index: 25 - nameId: Alpha_e index: 32 - nameId: gradient_f index: 7 - nameId: baseColorMap index: 12 - nameId: normalMap index: 13 params: - nameId: sortPriority index: 0 - nameId: indirectDraw index: 1 processor: {fileID: 0} shaderSourceIndex: 4 - type: 1 flags: 3 capacity: 32 layer: 4294967295 buffers: - nameId: attributeBuffer index: 1 - nameId: sourceAttributeBuffer index: 8 - nameId: deadList index: 9 - nameId: deadListCount index: 10 - nameId: spawner_input index: 1 - nameId: indirectBuffer index: 11 - nameId: sortBufferA index: 12 - nameId: sortBufferB index: 13 values: - nameId: bounds_center index: 30 - nameId: bounds_size index: 31 tasks: - type: 536870912 buffers: - nameId: attributeBuffer index: 1 - nameId: deadListIn index: 9 - nameId: deadListCount index: 10 - nameId: sourceAttributeBuffer index: 8 temporaryBuffers: [] values: [] params: - nameId: bounds_center index: 30 - nameId: bounds_size index: 31 processor: {fileID: 0} shaderSourceIndex: 2 - type: 805306368 buffers: - nameId: attributeBuffer index: 1 - nameId: deadListOut index: 9 - nameId: indirectBuffer index: 11 temporaryBuffers: [] values: - nameId: deltaTime_a index: 39 params: [] processor: {fileID: 0} shaderSourceIndex: 3 - type: 805306369 buffers: - nameId: attributeBuffer index: 1 - nameId: inputBuffer index: 11 - nameId: outputBuffer index: 12 - nameId: deadListCount index: 10 temporaryBuffers: [] values: - nameId: localToWorld index: 47 params: [] processor: {fileID: 0} shaderSourceIndex: 7 - type: 1073741830 buffers: - nameId: attributeBuffer index: 1 - nameId: indirectBuffer index: 11 temporaryBuffers: [] values: - nameId: Scale_x_d index: 19 - nameId: Scale_y_d index: 20 - nameId: Alpha_e index: 32 - nameId: gradient_f index: 21 - nameId: baseColorMap index: 46 params: - nameId: sortPriority index: 0 - nameId: indirectDraw index: 1 processor: {fileID: 0} shaderSourceIndex: 5 --- !u!114 &8926484042661614544 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: e0048ae9203b6994ba8076d59457fd7a, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 114780028408030698} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 0 m_UISuperCollapsed: 0 m_InputSlots: - {fileID: 8926484042661614545} m_OutputSlots: [] m_Disabled: 0 mode: 0 --- !u!114 &8926484042661614545 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 0} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614545} m_MasterData: m_Owner: {fileID: 8926484042661614544} m_Value: m_Type: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 m_SerializableObject: 25 m_Space: 2147483647 m_Property: name: FrameRate m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: - m_Type: 3 m_Min: -Infinity m_Max: Infinity m_Tooltip: Sets the frame rate of the flipbook in frames per second. m_Regex: m_RegexMaxLength: 0 m_Direction: 0 m_LinkedSlots: - {fileID: 8926484042661614553} --- !u!114 &8926484042661614548 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: ba941214d319b454f90d5480e85886f2, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 114350483966674976} m_Children: [] m_UIPosition: {x: 195, y: 673} m_UICollapsed: 0 m_UISuperCollapsed: 0 m_InputSlots: [] m_OutputSlots: - {fileID: 8926484042661614549} --- !u!114 &8926484042661614549 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 0} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614549} m_MasterData: m_Owner: {fileID: 8926484042661614548} m_Value: m_Type: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 m_SerializableObject: 0 m_Space: 2147483647 m_Property: name: t m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: [] m_Direction: 1 m_LinkedSlots: - {fileID: 8926484042661614552} --- !u!114 &8926484042661614550 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f8bcc906a6d398c46b18826714448709, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 114350483966674976} m_Children: [] m_UIPosition: {x: 403, y: 658} m_UICollapsed: 0 m_UISuperCollapsed: 0 m_InputSlots: - {fileID: 8926484042661614551} - {fileID: 8926484042661614552} m_OutputSlots: - {fileID: 8926484042661614553} --- !u!114 &8926484042661614551 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: c117b74c5c58db542bffe25c78fe92db, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 0} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614551} m_MasterData: m_Owner: {fileID: 8926484042661614550} m_Value: m_Type: m_SerializableType: UnityEngine.AnimationCurve, UnityEngine.CoreModule, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null m_SerializableObject: '{"frames":[{"time":0.0,"value":21.408016204833986,"inTangent":-20.408016204833986,"outTangent":-20.408016204833986,"tangentMode":0,"leftTangentMode":1,"rightTangentMode":1,"broken":false},{"time":1.0,"value":1.0,"inTangent":-20.408016204833986,"outTangent":-20.408016204833986,"tangentMode":0,"leftTangentMode":1,"rightTangentMode":1,"broken":false}],"preWrapMode":8,"postWrapMode":8,"version":1}' m_Space: 2147483647 m_Property: name: curve m_serializedType: m_SerializableType: UnityEngine.AnimationCurve, UnityEngine.CoreModule, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null attributes: - m_Type: 3 m_Min: -Infinity m_Max: Infinity m_Tooltip: Sets the curve to sample from. m_Regex: m_RegexMaxLength: 0 m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614552 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 0} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614552} m_MasterData: m_Owner: {fileID: 8926484042661614550} m_Value: m_Type: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 m_SerializableObject: 0 m_Space: 2147483647 m_Property: name: time m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: - m_Type: 3 m_Min: -Infinity m_Max: Infinity m_Tooltip: Sets the time along the curve to take a sample from. m_Regex: m_RegexMaxLength: 0 m_Direction: 0 m_LinkedSlots: - {fileID: 8926484042661614549} --- !u!114 &8926484042661614553 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 0} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614553} m_MasterData: m_Owner: {fileID: 8926484042661614550} m_Value: m_Type: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 m_SerializableObject: 0 m_Space: 2147483647 m_Property: name: s m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: - m_Type: 3 m_Min: -Infinity m_Max: Infinity m_Tooltip: Outputs the sampled value from the curve at the specified time. m_Regex: m_RegexMaxLength: 0 m_Direction: 1 m_LinkedSlots: - {fileID: 8926484042661614545} --- !u!114 &8926484042661614560 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: b294673e879f9cf449cc9de536818ea9, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 114780028408030698} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 0 m_UISuperCollapsed: 0 m_InputSlots: - {fileID: 8926484042661614561} m_OutputSlots: [] m_Disabled: 0 UseParticleSize: 0 --- !u!114 &8926484042661614561 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 0} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614561} m_MasterData: m_Owner: {fileID: 8926484042661614560} m_Value: m_Type: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 m_SerializableObject: 0.73 m_Space: 2147483647 m_Property: name: dragCoefficient m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: - m_Type: 3 m_Min: -Infinity m_Max: Infinity m_Tooltip: Sets the drag coefficient. Higher drag forces particles to slow down more. m_Regex: m_RegexMaxLength: 0 m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614588 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: a971fa2e110a0ac42ac1d8dae408704b, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 114946465509916290} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 0 m_UISuperCollapsed: 0 m_InputSlots: - {fileID: 8926484042661614866} - {fileID: 8926484042661614867} m_OutputSlots: [] m_Disabled: 0 attribute: angle Composition: 0 Source: 0 Random: 2 channels: 2 --- !u!114 &8926484042661614602 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 73a13919d81fb7444849bae8b5c812a2, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 114350483966674976} m_Children: - {fileID: 8926484042661614603} m_UIPosition: {x: 1611, y: -234} m_UICollapsed: 0 m_UISuperCollapsed: 0 m_InputSlots: [] m_OutputSlots: [] m_Label: m_Data: {fileID: 0} m_InputFlowSlot: - link: [] - link: [] m_OutputFlowSlot: - link: - context: {fileID: 8926484042661614605} slotIndex: 0 loopDuration: 0 loopCount: 0 delayBeforeLoop: 0 delayAfterLoop: 0 --- !u!114 &8926484042661614603 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f05c6884b705ce14d82ae720f0ec209f, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 8926484042661614602} m_Children: [] m_UIPosition: {x: 0, y: 2} m_UICollapsed: 0 m_UISuperCollapsed: 0 m_InputSlots: - {fileID: 8926484042661614604} m_OutputSlots: [] m_Disabled: 0 --- !u!114 &8926484042661614604 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 0} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614604} m_MasterData: m_Owner: {fileID: 8926484042661614603} m_Value: m_Type: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 m_SerializableObject: 12 m_Space: 2147483647 m_Property: name: Rate m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: - m_Type: 1 m_Min: 0 m_Max: Infinity m_Tooltip: m_Regex: m_RegexMaxLength: 0 - m_Type: 3 m_Min: -Infinity m_Max: Infinity m_Tooltip: Sets the number of particles to be spawned per second. m_Regex: m_RegexMaxLength: 0 m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614605 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 9dfea48843f53fc438eabc12a3a30abc, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 114350483966674976} m_Children: - {fileID: 8926484042661614616} - {fileID: 8926484042661614625} - {fileID: 8926484042661614674} m_UIPosition: {x: 1617, y: 59} m_UICollapsed: 0 m_UISuperCollapsed: 0 m_InputSlots: - {fileID: 8926484042661614606} m_OutputSlots: [] m_Label: m_Data: {fileID: 8926484042661614615} m_InputFlowSlot: - link: - context: {fileID: 8926484042661614602} slotIndex: 0 m_OutputFlowSlot: - link: - context: {fileID: 8926484042661614631} slotIndex: 0 --- !u!114 &8926484042661614606 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 1b605c022ee79394a8a776c0869b3f9a, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 0} m_Children: - {fileID: 8926484042661614607} - {fileID: 8926484042661614611} m_UIPosition: {x: 0, y: 0} m_UICollapsed: 0 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614606} m_MasterData: m_Owner: {fileID: 8926484042661614605} m_Value: m_Type: m_SerializableType: UnityEditor.VFX.AABox, Unity.VisualEffectGraph.Editor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null m_SerializableObject: '{"center":{"x":-0.067021444439888,"y":0.3190019726753235,"z":-0.008536994457244873},"size":{"x":0.8368645310401917,"y":1.6380163431167603,"z":0.7165220975875855}}' m_Space: 0 m_Property: name: bounds m_serializedType: m_SerializableType: UnityEditor.VFX.AABox, Unity.VisualEffectGraph.Editor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null attributes: - m_Type: 3 m_Min: -Infinity m_Max: Infinity m_Tooltip: The culling bounds of this system. The Visual Effect is only visible if the bounding box specified here is visible to the camera. m_Regex: m_RegexMaxLength: 0 m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614607 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: ac39bd03fca81b849929b9c966f1836a, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 8926484042661614606} m_Children: - {fileID: 8926484042661614608} - {fileID: 8926484042661614609} - {fileID: 8926484042661614610} m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614606} m_MasterData: m_Owner: {fileID: 0} m_Value: m_Type: m_SerializableType: m_SerializableObject: m_Space: 2147483647 m_Property: name: center m_serializedType: m_SerializableType: UnityEngine.Vector3, UnityEngine.CoreModule, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null attributes: - m_Type: 3 m_Min: -Infinity m_Max: Infinity m_Tooltip: Sets the center of the box. m_Regex: m_RegexMaxLength: 0 m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614608 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 8926484042661614607} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614606} m_MasterData: m_Owner: {fileID: 0} m_Value: m_Type: m_SerializableType: m_SerializableObject: m_Space: 2147483647 m_Property: name: x m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: [] m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614609 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 8926484042661614607} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614606} m_MasterData: m_Owner: {fileID: 0} m_Value: m_Type: m_SerializableType: m_SerializableObject: m_Space: 2147483647 m_Property: name: y m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: [] m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614610 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 8926484042661614607} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614606} m_MasterData: m_Owner: {fileID: 0} m_Value: m_Type: m_SerializableType: m_SerializableObject: m_Space: 2147483647 m_Property: name: z m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: [] m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614611 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: ac39bd03fca81b849929b9c966f1836a, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 8926484042661614606} m_Children: - {fileID: 8926484042661614612} - {fileID: 8926484042661614613} - {fileID: 8926484042661614614} m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614606} m_MasterData: m_Owner: {fileID: 0} m_Value: m_Type: m_SerializableType: m_SerializableObject: m_Space: 2147483647 m_Property: name: size m_serializedType: m_SerializableType: UnityEngine.Vector3, UnityEngine.CoreModule, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null attributes: - m_Type: 3 m_Min: -Infinity m_Max: Infinity m_Tooltip: Sets the size of the box along each axis. m_Regex: m_RegexMaxLength: 0 m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614612 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 8926484042661614611} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614606} m_MasterData: m_Owner: {fileID: 0} m_Value: m_Type: m_SerializableType: m_SerializableObject: m_Space: 2147483647 m_Property: name: x m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: [] m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614613 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 8926484042661614611} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614606} m_MasterData: m_Owner: {fileID: 0} m_Value: m_Type: m_SerializableType: m_SerializableObject: m_Space: 2147483647 m_Property: name: y m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: [] m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614614 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 8926484042661614611} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614606} m_MasterData: m_Owner: {fileID: 0} m_Value: m_Type: m_SerializableType: m_SerializableObject: m_Space: 2147483647 m_Property: name: z m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: [] m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614615 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: d78581a96eae8bf4398c282eb0b098bd, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 114350483966674976} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 title: Leaking Pressured Air m_Owners: - {fileID: 8926484042661614605} - {fileID: 8926484042661614631} - {fileID: 8926484042661614789} dataType: 0 capacity: 32 stripCapacity: 16 particlePerStripCount: 16 m_Space: 0 --- !u!114 &8926484042661614616 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: a971fa2e110a0ac42ac1d8dae408704b, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 8926484042661614605} m_Children: [] m_UIPosition: {x: 0, y: 2} m_UICollapsed: 0 m_UISuperCollapsed: 0 m_InputSlots: - {fileID: 8926484042661614868} - {fileID: 8926484042661614873} m_OutputSlots: [] m_Disabled: 0 attribute: velocity Composition: 0 Source: 0 Random: 1 channels: 6 --- !u!114 &8926484042661614625 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: a971fa2e110a0ac42ac1d8dae408704b, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 8926484042661614605} m_Children: [] m_UIPosition: {x: 0, y: 97} m_UICollapsed: 0 m_UISuperCollapsed: 0 m_InputSlots: - {fileID: 8926484042661614878} - {fileID: 8926484042661614879} m_OutputSlots: [] m_Disabled: 0 attribute: lifetime Composition: 0 Source: 0 Random: 2 channels: 6 --- !u!114 &8926484042661614631 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 2dc095764ededfa4bb32fa602511ea4b, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 114350483966674976} m_Children: - {fileID: 8926484042661614633} - {fileID: 8926484042661614635} m_UIPosition: {x: 1763, y: 635} m_UICollapsed: 0 m_UISuperCollapsed: 0 m_InputSlots: [] m_OutputSlots: [] m_Label: m_Data: {fileID: 8926484042661614615} m_InputFlowSlot: - link: - context: {fileID: 8926484042661614605} slotIndex: 0 m_OutputFlowSlot: - link: - context: {fileID: 8926484042661614789} slotIndex: 0 integration: 0 angularIntegration: 0 ageParticles: 1 reapParticles: 1 --- !u!114 &8926484042661614633 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: e0048ae9203b6994ba8076d59457fd7a, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 8926484042661614631} m_Children: [] m_UIPosition: {x: 0, y: 2} m_UICollapsed: 0 m_UISuperCollapsed: 0 m_InputSlots: - {fileID: 8926484042661614634} m_OutputSlots: [] m_Disabled: 0 mode: 0 --- !u!114 &8926484042661614634 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 0} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614634} m_MasterData: m_Owner: {fileID: 8926484042661614633} m_Value: m_Type: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 m_SerializableObject: 25 m_Space: 2147483647 m_Property: name: FrameRate m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: - m_Type: 3 m_Min: -Infinity m_Max: Infinity m_Tooltip: Sets the frame rate of the flipbook in frames per second. m_Regex: m_RegexMaxLength: 0 m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614635 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: b294673e879f9cf449cc9de536818ea9, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 8926484042661614631} m_Children: [] m_UIPosition: {x: 0, y: 109} m_UICollapsed: 0 m_UISuperCollapsed: 0 m_InputSlots: - {fileID: 8926484042661614636} m_OutputSlots: [] m_Disabled: 0 UseParticleSize: 0 --- !u!114 &8926484042661614636 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 0} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614636} m_MasterData: m_Owner: {fileID: 8926484042661614635} m_Value: m_Type: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 m_SerializableObject: 0.73 m_Space: 2147483647 m_Property: name: dragCoefficient m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: - m_Type: 3 m_Min: -Infinity m_Max: Infinity m_Tooltip: Sets the drag coefficient. Higher drag forces particles to slow down more. m_Regex: m_RegexMaxLength: 0 m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614674 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: a971fa2e110a0ac42ac1d8dae408704b, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 8926484042661614605} m_Children: [] m_UIPosition: {x: 0, y: 194} m_UICollapsed: 0 m_UISuperCollapsed: 0 m_InputSlots: - {fileID: 8926484042661614880} - {fileID: 8926484042661614881} m_OutputSlots: [] m_Disabled: 0 attribute: texIndex Composition: 0 Source: 0 Random: 2 channels: 6 --- !u!114 &8926484042661614687 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 330e0fca1717dde4aaa144f48232aa64, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 114350483966674976} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 0 m_UISuperCollapsed: 0 m_InputSlots: [] m_OutputSlots: - {fileID: 8926484042661614688} m_ExposedName: Opacity m_Exposed: 1 m_Order: 0 m_Category: m_Min: m_Type: m_SerializableType: m_SerializableObject: m_Max: m_Type: m_SerializableType: m_SerializableObject: m_IsOutput: 0 m_Tooltip: m_Nodes: - m_Id: 0 linkedSlots: - outputSlot: {fileID: 8926484042661614688} inputSlot: {fileID: 8926484042661614806} - outputSlot: {fileID: 8926484042661614688} inputSlot: {fileID: 8926484042661614777} position: {x: 485, y: 1699} expandedSlots: [] expanded: 1 --- !u!114 &8926484042661614688 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 0} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614688} m_MasterData: m_Owner: {fileID: 8926484042661614687} m_Value: m_Type: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 m_SerializableObject: 1 m_Space: 2147483647 m_Property: name: o m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: [] m_Direction: 1 m_LinkedSlots: - {fileID: 8926484042661614806} - {fileID: 8926484042661614777} --- !u!114 &8926484042661614761 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: d1622f1b21236b9418846ede6cf6bd40, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 114350483966674976} m_Children: - {fileID: 8926484042661614766} - {fileID: 8926484042661614767} - {fileID: 8926484042661614772} - {fileID: 8926484042661614774} - {fileID: 8926484042661614776} - {fileID: 8926484042661614778} - {fileID: 8926484042661614780} m_UIPosition: {x: 724, y: 960} m_UICollapsed: 0 m_UISuperCollapsed: 0 m_InputSlots: - {fileID: 8926484042661614784} - {fileID: 8926484042661614831} - {fileID: 8926484042661614762} - {fileID: 8926484042661614783} - {fileID: 8926484042661614764} - {fileID: 8926484042661614823} - {fileID: 8926484042661614824} - {fileID: 8926484042661614882} - {fileID: 8926484042661614829} m_OutputSlots: [] m_Label: m_Data: {fileID: 114428730288789306} m_InputFlowSlot: - link: - context: {fileID: 114780028408030698} slotIndex: 0 m_OutputFlowSlot: - link: [] blendMode: 1 useAlphaClipping: 0 generateMotionVector: 0 m_SubOutputs: - {fileID: 8926484042661614852} cullMode: 0 zWriteMode: 0 zTestMode: 0 colorMapping: 0 uvMode: 2 useSoftParticle: 1 sortPriority: 0 sort: 0 indirectDraw: 0 castShadows: 0 useExposureWeight: 0 shaderGraph: {fileID: 0} shadergraphGUID: materialType: 2 onlyAmbientLighting: 1 diffusionProfileAsset: {fileID: 11400000, guid: 8b9abb3582322444397ea6b158f677c7, type: 2} multiplyThicknessWithAlpha: 0 useBaseColorMap: 2 useMaskMap: 0 useNormalMap: 1 useEmissiveMap: 0 colorMode: 1 useEmissive: 0 doubleSided: 0 preserveSpecularLighting: 0 enableShadows: 0 enableSpecular: 0 enableCookie: 0 enableEnvLight: 1 primitiveType: 2 normalBending: 1 --- !u!114 &8926484042661614762 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 0} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614762} m_MasterData: m_Owner: {fileID: 8926484042661614761} m_Value: m_Type: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 m_SerializableObject: 0 m_Space: 2147483647 m_Property: name: smoothness m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: - m_Type: 0 m_Min: 0 m_Max: 1 m_Tooltip: m_Regex: m_RegexMaxLength: 0 - m_Type: 3 m_Min: -Infinity m_Max: Infinity m_Tooltip: "Controls the scale factor for the particle\u2019s smoothness." m_Regex: m_RegexMaxLength: 0 m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614764 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 70a331b1d86cc8d4aa106ccbe0da5852, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 0} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614764} m_MasterData: m_Owner: {fileID: 8926484042661614761} m_Value: m_Type: m_SerializableType: UnityEngine.Texture2D, UnityEngine.CoreModule, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null m_SerializableObject: '{"obj":{"fileID":2800000,"guid":"3f0b27fa0a9267346b36465dc2808773","type":3}}' m_Space: 2147483647 m_Property: name: baseColorMap m_serializedType: m_SerializableType: UnityEngine.Texture2D, UnityEngine.CoreModule, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null attributes: - m_Type: 3 m_Min: -Infinity m_Max: Infinity m_Tooltip: Specifies the base color (RGB) and opacity (A) of the particle. m_Regex: m_RegexMaxLength: 0 m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614766 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: d16c6aeaef944094b9a1633041804207, type: 3} m_Name: Orient m_EditorClassIdentifier: m_Parent: {fileID: 8926484042661614761} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 0 m_UISuperCollapsed: 0 m_InputSlots: [] m_OutputSlots: [] m_Disabled: 0 mode: 1 axes: 4 --- !u!114 &8926484042661614767 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: a971fa2e110a0ac42ac1d8dae408704b, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 8926484042661614761} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 0 m_UISuperCollapsed: 0 m_InputSlots: - {fileID: 8926484042661614768} m_OutputSlots: [] m_Disabled: 0 attribute: pivot Composition: 0 Source: 0 Random: 0 channels: 6 --- !u!114 &8926484042661614768 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: ac39bd03fca81b849929b9c966f1836a, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 0} m_Children: - {fileID: 8926484042661614769} - {fileID: 8926484042661614770} - {fileID: 8926484042661614771} m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614768} m_MasterData: m_Owner: {fileID: 8926484042661614767} m_Value: m_Type: m_SerializableType: UnityEngine.Vector3, UnityEngine.CoreModule, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null m_SerializableObject: '{"x":0.0,"y":0.0,"z":0.5649999976158142}' m_Space: 2147483647 m_Property: name: Pivot m_serializedType: m_SerializableType: UnityEngine.Vector3, UnityEngine.CoreModule, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null attributes: [] m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614769 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 8926484042661614768} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614768} m_MasterData: m_Owner: {fileID: 0} m_Value: m_Type: m_SerializableType: m_SerializableObject: m_Space: 2147483647 m_Property: name: x m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: [] m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614770 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 8926484042661614768} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614768} m_MasterData: m_Owner: {fileID: 0} m_Value: m_Type: m_SerializableType: m_SerializableObject: m_Space: 2147483647 m_Property: name: y m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: [] m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614771 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 8926484042661614768} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614768} m_MasterData: m_Owner: {fileID: 0} m_Value: m_Type: m_SerializableType: m_SerializableObject: m_Space: 2147483647 m_Property: name: z m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: [] m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614772 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 01ec2c1930009b04ea08905b47262415, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 8926484042661614761} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 0 m_UISuperCollapsed: 0 m_InputSlots: - {fileID: 8926484042661614773} m_OutputSlots: [] m_Disabled: 0 attribute: size Composition: 0 AlphaComposition: 0 SampleMode: 0 Mode: 1 ColorMode: 3 channels: 0 --- !u!114 &8926484042661614773 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: c117b74c5c58db542bffe25c78fe92db, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 0} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614773} m_MasterData: m_Owner: {fileID: 8926484042661614772} m_Value: m_Type: m_SerializableType: UnityEngine.AnimationCurve, UnityEngine.CoreModule, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null m_SerializableObject: '{"frames":[{"time":-0.03975677490234375,"value":0.26156139373779299,"inTangent":-0.05947928503155708,"outTangent":-0.05947928503155708,"tangentMode":0,"leftTangentMode":0,"rightTangentMode":0,"broken":false},{"time":1.0,"value":1.3342245817184449,"inTangent":0.9414345026016235,"outTangent":0.9414345026016235,"tangentMode":0,"leftTangentMode":0,"rightTangentMode":0,"broken":false}],"preWrapMode":8,"postWrapMode":8,"version":1}' m_Space: 2147483647 m_Property: name: Size m_serializedType: m_SerializableType: UnityEngine.AnimationCurve, UnityEngine.CoreModule, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null attributes: [] m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614774 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: a971fa2e110a0ac42ac1d8dae408704b, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 8926484042661614761} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 0 m_UISuperCollapsed: 0 m_InputSlots: - {fileID: 8926484042661614775} m_OutputSlots: [] m_Disabled: 0 attribute: size Composition: 2 Source: 0 Random: 0 channels: 0 --- !u!114 &8926484042661614775 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 0} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614775} m_MasterData: m_Owner: {fileID: 8926484042661614774} m_Value: m_Type: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 m_SerializableObject: 1 m_Space: 2147483647 m_Property: name: Size m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: - m_Type: 3 m_Min: -Infinity m_Max: Infinity m_Tooltip: The uniform size of the particle. m_Regex: m_RegexMaxLength: 0 m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614776 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: a971fa2e110a0ac42ac1d8dae408704b, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 8926484042661614761} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 0 m_UISuperCollapsed: 0 m_InputSlots: - {fileID: 8926484042661614777} m_OutputSlots: [] m_Disabled: 0 attribute: alpha Composition: 0 Source: 0 Random: 0 channels: 6 --- !u!114 &8926484042661614777 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 0} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614777} m_MasterData: m_Owner: {fileID: 8926484042661614776} m_Value: m_Type: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 m_SerializableObject: 1 m_Space: 2147483647 m_Property: name: Alpha m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: - m_Type: 3 m_Min: -Infinity m_Max: Infinity m_Tooltip: The transparency value of the particle. Transparent particles with a value of 0 or less are invisible. m_Regex: m_RegexMaxLength: 0 m_Direction: 0 m_LinkedSlots: - {fileID: 8926484042661614688} --- !u!114 &8926484042661614778 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 956b68870e880b144bab17e5aa6e7e94, type: 3} m_Name: ColorOverLife m_EditorClassIdentifier: m_Parent: {fileID: 8926484042661614761} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 0 m_UISuperCollapsed: 0 m_InputSlots: - {fileID: 8926484042661614779} m_OutputSlots: [] m_Disabled: 0 mode: 3 ColorComposition: 2 AlphaComposition: 2 --- !u!114 &8926484042661614779 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 76f778ff57c4e8145b9681fe3268d8e9, type: 3} m_Name: VFXSlotGradient m_EditorClassIdentifier: m_Parent: {fileID: 0} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614779} m_MasterData: m_Owner: {fileID: 8926484042661614778} m_Value: m_Type: m_SerializableType: UnityEngine.Gradient, UnityEngine.CoreModule, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null m_SerializableObject: '{"colorKeys":[{"color":{"r":0.7452830076217651,"g":0.7452830076217651,"b":0.7452830076217651,"a":1.0},"time":0.0},{"color":{"r":0.4528301954269409,"g":0.4528301954269409,"b":0.4528301954269409,"a":1.0},"time":1.0}],"alphaKeys":[{"alpha":0.0,"time":0.0},{"alpha":1.0,"time":0.34015411138534548},{"alpha":0.6078431606292725,"time":0.7468070387840271},{"alpha":0.0,"time":1.0}],"gradientMode":0}' m_Space: 2147483647 m_Property: name: gradient m_serializedType: m_SerializableType: UnityEngine.Gradient, UnityEngine.CoreModule, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null attributes: - m_Type: 3 m_Min: -Infinity m_Max: Infinity m_Tooltip: The over-life Gradient m_Regex: m_RegexMaxLength: 0 m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614780 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 567e63db3cc5de64c970ebc31d3f3af1, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 8926484042661614761} m_Children: [] m_UIPosition: {x: 0, y: 589} m_UICollapsed: 0 m_UISuperCollapsed: 0 m_InputSlots: - {fileID: 8926484042661614781} - {fileID: 8926484042661614782} m_OutputSlots: [] m_Disabled: 0 cullWhenFaded: 1 fadeMode: 2 --- !u!114 &8926484042661614781 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 0} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614781} m_MasterData: m_Owner: {fileID: 8926484042661614780} m_Value: m_Type: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 m_SerializableObject: 2 m_Space: 2147483647 m_Property: name: FadedDistance m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: - m_Type: 3 m_Min: -Infinity m_Max: Infinity m_Tooltip: Sets the distance from the camera at which the particle is fully faded out. m_Regex: m_RegexMaxLength: 0 m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614782 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 0} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614782} m_MasterData: m_Owner: {fileID: 8926484042661614780} m_Value: m_Type: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 m_SerializableObject: 6 m_Space: 2147483647 m_Property: name: VisibleDistance m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: - m_Type: 3 m_Min: -Infinity m_Max: Infinity m_Tooltip: Sets the distance from the camera at which the particle is fully visible and not affected by the camera fade. m_Regex: m_RegexMaxLength: 0 m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614783 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 0} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614783} m_MasterData: m_Owner: {fileID: 8926484042661614761} m_Value: m_Type: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 m_SerializableObject: 0 m_Space: 2147483647 m_Property: name: thickness m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: - m_Type: 0 m_Min: 0 m_Max: 1 m_Tooltip: m_Regex: m_RegexMaxLength: 0 - m_Type: 3 m_Min: -Infinity m_Max: Infinity m_Tooltip: Sets the thickness of the translucent particle. This affects the influence of the diffusion profile. m_Regex: m_RegexMaxLength: 0 m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614784 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 1b2b751071c7fc14f9fa503163991826, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 0} m_Children: - {fileID: 8926484042661614785} - {fileID: 8926484042661614786} m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614784} m_MasterData: m_Owner: {fileID: 8926484042661614761} m_Value: m_Type: m_SerializableType: UnityEngine.Vector2, UnityEngine.CoreModule, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null m_SerializableObject: '{"x":8.0,"y":8.0}' m_Space: 2147483647 m_Property: name: flipBookSize m_serializedType: m_SerializableType: UnityEngine.Vector2, UnityEngine.CoreModule, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null attributes: [] m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614785 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 8926484042661614784} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614784} m_MasterData: m_Owner: {fileID: 0} m_Value: m_Type: m_SerializableType: m_SerializableObject: m_Space: 2147483647 m_Property: name: x m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: [] m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614786 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 8926484042661614784} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614784} m_MasterData: m_Owner: {fileID: 0} m_Value: m_Type: m_SerializableType: m_SerializableObject: m_Space: 2147483647 m_Property: name: y m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: [] m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614789 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: d1622f1b21236b9418846ede6cf6bd40, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 114350483966674976} m_Children: - {fileID: 8926484042661614794} - {fileID: 8926484042661614795} - {fileID: 8926484042661614800} - {fileID: 8926484042661614802} - {fileID: 8926484042661614805} - {fileID: 8926484042661614807} - {fileID: 8926484042661614809} m_UIPosition: {x: 1627, y: 1054} m_UICollapsed: 0 m_UISuperCollapsed: 0 m_InputSlots: - {fileID: 8926484042661614813} - {fileID: 8926484042661614816} - {fileID: 8926484042661614790} - {fileID: 8926484042661614812} - {fileID: 8926484042661614792} - {fileID: 8926484042661614883} - {fileID: 8926484042661614830} m_OutputSlots: [] m_Label: m_Data: {fileID: 8926484042661614615} m_InputFlowSlot: - link: - context: {fileID: 8926484042661614631} slotIndex: 0 m_OutputFlowSlot: - link: [] blendMode: 1 useAlphaClipping: 0 generateMotionVector: 0 m_SubOutputs: - {fileID: 8926484042661614853} cullMode: 0 zWriteMode: 0 zTestMode: 0 colorMapping: 0 uvMode: 2 useSoftParticle: 1 sortPriority: 0 sort: 0 indirectDraw: 0 castShadows: 0 useExposureWeight: 0 shaderGraph: {fileID: 0} shadergraphGUID: materialType: 2 onlyAmbientLighting: 1 diffusionProfileAsset: {fileID: 11400000, guid: 8b9abb3582322444397ea6b158f677c7, type: 2} multiplyThicknessWithAlpha: 0 useBaseColorMap: 2 useMaskMap: 0 useNormalMap: 0 useEmissiveMap: 0 colorMode: 1 useEmissive: 0 doubleSided: 0 preserveSpecularLighting: 0 enableShadows: 0 enableSpecular: 0 enableCookie: 0 enableEnvLight: 1 primitiveType: 2 normalBending: 1 --- !u!114 &8926484042661614790 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 0} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614790} m_MasterData: m_Owner: {fileID: 8926484042661614789} m_Value: m_Type: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 m_SerializableObject: 0 m_Space: 2147483647 m_Property: name: smoothness m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: - m_Type: 0 m_Min: 0 m_Max: 1 m_Tooltip: m_Regex: m_RegexMaxLength: 0 - m_Type: 3 m_Min: -Infinity m_Max: Infinity m_Tooltip: "Controls the scale factor for the particle\u2019s smoothness." m_Regex: m_RegexMaxLength: 0 m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614792 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 70a331b1d86cc8d4aa106ccbe0da5852, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 0} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614792} m_MasterData: m_Owner: {fileID: 8926484042661614789} m_Value: m_Type: m_SerializableType: UnityEngine.Texture2D, UnityEngine.CoreModule, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null m_SerializableObject: '{"obj":{"fileID":2800000,"guid":"7076e9e9b57e77d47a88c9fd8b0dfe1b","type":3}}' m_Space: 2147483647 m_Property: name: baseColorMap m_serializedType: m_SerializableType: UnityEngine.Texture2D, UnityEngine.CoreModule, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null attributes: - m_Type: 3 m_Min: -Infinity m_Max: Infinity m_Tooltip: Specifies the base color (RGB) and opacity (A) of the particle. m_Regex: m_RegexMaxLength: 0 m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614794 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: d16c6aeaef944094b9a1633041804207, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 8926484042661614789} m_Children: [] m_UIPosition: {x: 0, y: 2} m_UICollapsed: 0 m_UISuperCollapsed: 0 m_InputSlots: [] m_OutputSlots: [] m_Disabled: 0 mode: 6 axes: 4 --- !u!114 &8926484042661614795 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: a971fa2e110a0ac42ac1d8dae408704b, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 8926484042661614789} m_Children: [] m_UIPosition: {x: 0, y: 74} m_UICollapsed: 0 m_UISuperCollapsed: 0 m_InputSlots: - {fileID: 8926484042661614796} m_OutputSlots: [] m_Disabled: 0 attribute: pivot Composition: 0 Source: 0 Random: 0 channels: 6 --- !u!114 &8926484042661614796 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: ac39bd03fca81b849929b9c966f1836a, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 0} m_Children: - {fileID: 8926484042661614797} - {fileID: 8926484042661614798} - {fileID: 8926484042661614799} m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614796} m_MasterData: m_Owner: {fileID: 8926484042661614795} m_Value: m_Type: m_SerializableType: UnityEngine.Vector3, UnityEngine.CoreModule, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null m_SerializableObject: '{"x":0.0,"y":-0.3400000035762787,"z":0.10999999940395355}' m_Space: 2147483647 m_Property: name: Pivot m_serializedType: m_SerializableType: UnityEngine.Vector3, UnityEngine.CoreModule, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null attributes: [] m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614797 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 8926484042661614796} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614796} m_MasterData: m_Owner: {fileID: 0} m_Value: m_Type: m_SerializableType: m_SerializableObject: m_Space: 2147483647 m_Property: name: x m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: [] m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614798 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 8926484042661614796} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614796} m_MasterData: m_Owner: {fileID: 0} m_Value: m_Type: m_SerializableType: m_SerializableObject: m_Space: 2147483647 m_Property: name: y m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: [] m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614799 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 8926484042661614796} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614796} m_MasterData: m_Owner: {fileID: 0} m_Value: m_Type: m_SerializableType: m_SerializableObject: m_Space: 2147483647 m_Property: name: z m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: [] m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614800 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: a971fa2e110a0ac42ac1d8dae408704b, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 8926484042661614789} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 0 m_UISuperCollapsed: 0 m_InputSlots: - {fileID: 8926484042661614801} m_OutputSlots: [] m_Disabled: 0 attribute: size Composition: 0 Source: 0 Random: 0 channels: 6 --- !u!114 &8926484042661614801 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 0} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614801} m_MasterData: m_Owner: {fileID: 8926484042661614800} m_Value: m_Type: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 m_SerializableObject: 1.52 m_Space: 2147483647 m_Property: name: Size m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: - m_Type: 3 m_Min: -Infinity m_Max: Infinity m_Tooltip: The uniform size of the particle. m_Regex: m_RegexMaxLength: 0 m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614802 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 01ec2c1930009b04ea08905b47262415, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 8926484042661614789} m_Children: [] m_UIPosition: {x: 0, y: 151} m_UICollapsed: 0 m_UISuperCollapsed: 0 m_InputSlots: - {fileID: 8926484042661614803} - {fileID: 8926484042661614804} m_OutputSlots: [] m_Disabled: 0 attribute: scale Composition: 0 AlphaComposition: 0 SampleMode: 0 Mode: 1 ColorMode: 3 channels: 3 --- !u!114 &8926484042661614803 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: c117b74c5c58db542bffe25c78fe92db, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 0} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614803} m_MasterData: m_Owner: {fileID: 8926484042661614802} m_Value: m_Type: m_SerializableType: UnityEngine.AnimationCurve, UnityEngine.CoreModule, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null m_SerializableObject: '{"frames":[{"time":0.0,"value":0.10292333364486695,"inTangent":0.03430528566241264,"outTangent":0.03430528566241264,"tangentMode":0,"leftTangentMode":0,"rightTangentMode":0,"broken":false},{"time":1.0,"value":0.43233722448349,"inTangent":0.5793323516845703,"outTangent":0.5793323516845703,"tangentMode":0,"leftTangentMode":0,"rightTangentMode":0,"broken":false}],"preWrapMode":8,"postWrapMode":8,"version":1}' m_Space: 2147483647 m_Property: name: Scale_x m_serializedType: m_SerializableType: UnityEngine.AnimationCurve, UnityEngine.CoreModule, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null attributes: [] m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614804 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: c117b74c5c58db542bffe25c78fe92db, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 0} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614804} m_MasterData: m_Owner: {fileID: 8926484042661614802} m_Value: m_Type: m_SerializableType: UnityEngine.AnimationCurve, UnityEngine.CoreModule, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null m_SerializableObject: '{"frames":[{"time":0.0,"value":0.42684847116470339,"inTangent":1.3365318775177003,"outTangent":1.3365318775177003,"tangentMode":0,"leftTangentMode":0,"rightTangentMode":0,"broken":false},{"time":1.0,"value":0.7955748438835144,"inTangent":0.01638149656355381,"outTangent":0.01638149656355381,"tangentMode":0,"leftTangentMode":0,"rightTangentMode":0,"broken":false}],"preWrapMode":8,"postWrapMode":8,"version":1}' m_Space: 2147483647 m_Property: name: Scale_y m_serializedType: m_SerializableType: UnityEngine.AnimationCurve, UnityEngine.CoreModule, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null attributes: [] m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614805 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: a971fa2e110a0ac42ac1d8dae408704b, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 8926484042661614789} m_Children: [] m_UIPosition: {x: 0, y: 468} m_UICollapsed: 0 m_UISuperCollapsed: 0 m_InputSlots: - {fileID: 8926484042661614806} m_OutputSlots: [] m_Disabled: 0 attribute: alpha Composition: 0 Source: 0 Random: 0 channels: 6 --- !u!114 &8926484042661614806 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 0} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614806} m_MasterData: m_Owner: {fileID: 8926484042661614805} m_Value: m_Type: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 m_SerializableObject: 1 m_Space: 2147483647 m_Property: name: Alpha m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: - m_Type: 3 m_Min: -Infinity m_Max: Infinity m_Tooltip: The transparency value of the particle. Transparent particles with a value of 0 or less are invisible. m_Regex: m_RegexMaxLength: 0 m_Direction: 0 m_LinkedSlots: - {fileID: 8926484042661614688} --- !u!114 &8926484042661614807 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 956b68870e880b144bab17e5aa6e7e94, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 8926484042661614789} m_Children: [] m_UIPosition: {x: 0, y: 304} m_UICollapsed: 0 m_UISuperCollapsed: 0 m_InputSlots: - {fileID: 8926484042661614808} m_OutputSlots: [] m_Disabled: 0 mode: 3 ColorComposition: 2 AlphaComposition: 2 --- !u!114 &8926484042661614808 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 76f778ff57c4e8145b9681fe3268d8e9, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 0} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614808} m_MasterData: m_Owner: {fileID: 8926484042661614807} m_Value: m_Type: m_SerializableType: UnityEngine.Gradient, UnityEngine.CoreModule, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null m_SerializableObject: '{"colorKeys":[{"color":{"r":1.0,"g":1.0,"b":1.0,"a":1.0},"time":0.0},{"color":{"r":1.0,"g":1.0,"b":1.0,"a":1.0},"time":1.0}],"alphaKeys":[{"alpha":0.0,"time":0.0},{"alpha":0.35686275362968447,"time":0.13682764768600465},{"alpha":0.18039216101169587,"time":0.48337528109550478},{"alpha":0.0,"time":1.0}],"gradientMode":0}' m_Space: 2147483647 m_Property: name: gradient m_serializedType: m_SerializableType: UnityEngine.Gradient, UnityEngine.CoreModule, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null attributes: - m_Type: 3 m_Min: -Infinity m_Max: Infinity m_Tooltip: The over-life Gradient m_Regex: m_RegexMaxLength: 0 m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614809 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 567e63db3cc5de64c970ebc31d3f3af1, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 8926484042661614789} m_Children: [] m_UIPosition: {x: 0, y: 455} m_UICollapsed: 0 m_UISuperCollapsed: 0 m_InputSlots: - {fileID: 8926484042661614810} - {fileID: 8926484042661614811} m_OutputSlots: [] m_Disabled: 0 cullWhenFaded: 1 fadeMode: 2 --- !u!114 &8926484042661614810 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 0} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614810} m_MasterData: m_Owner: {fileID: 8926484042661614809} m_Value: m_Type: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 m_SerializableObject: 1 m_Space: 2147483647 m_Property: name: FadedDistance m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: - m_Type: 3 m_Min: -Infinity m_Max: Infinity m_Tooltip: Sets the distance from the camera at which the particle is fully faded out. m_Regex: m_RegexMaxLength: 0 m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614811 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 0} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614811} m_MasterData: m_Owner: {fileID: 8926484042661614809} m_Value: m_Type: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 m_SerializableObject: 3 m_Space: 2147483647 m_Property: name: VisibleDistance m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: - m_Type: 3 m_Min: -Infinity m_Max: Infinity m_Tooltip: Sets the distance from the camera at which the particle is fully visible and not affected by the camera fade. m_Regex: m_RegexMaxLength: 0 m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614812 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 0} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614812} m_MasterData: m_Owner: {fileID: 8926484042661614789} m_Value: m_Type: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 m_SerializableObject: 0 m_Space: 2147483647 m_Property: name: thickness m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: - m_Type: 0 m_Min: 0 m_Max: 1 m_Tooltip: m_Regex: m_RegexMaxLength: 0 - m_Type: 3 m_Min: -Infinity m_Max: Infinity m_Tooltip: Sets the thickness of the translucent particle. This affects the influence of the diffusion profile. m_Regex: m_RegexMaxLength: 0 m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614813 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 1b2b751071c7fc14f9fa503163991826, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 0} m_Children: - {fileID: 8926484042661614814} - {fileID: 8926484042661614815} m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614813} m_MasterData: m_Owner: {fileID: 8926484042661614789} m_Value: m_Type: m_SerializableType: UnityEngine.Vector2, UnityEngine.CoreModule, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null m_SerializableObject: '{"x":8.0,"y":8.0}' m_Space: 2147483647 m_Property: name: flipBookSize m_serializedType: m_SerializableType: UnityEngine.Vector2, UnityEngine.CoreModule, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null attributes: [] m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614814 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 8926484042661614813} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614813} m_MasterData: m_Owner: {fileID: 0} m_Value: m_Type: m_SerializableType: m_SerializableObject: m_Space: 2147483647 m_Property: name: x m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: [] m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614815 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 8926484042661614813} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614813} m_MasterData: m_Owner: {fileID: 0} m_Value: m_Type: m_SerializableType: m_SerializableObject: m_Space: 2147483647 m_Property: name: y m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: [] m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614816 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 0} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614816} m_MasterData: m_Owner: {fileID: 8926484042661614789} m_Value: m_Type: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 m_SerializableObject: 0.21 m_Space: 2147483647 m_Property: name: softParticlesFadeDistance m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: - m_Type: 1 m_Min: 0.001 m_Max: Infinity m_Tooltip: m_Regex: m_RegexMaxLength: 0 m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614823 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 70a331b1d86cc8d4aa106ccbe0da5852, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 0} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614823} m_MasterData: m_Owner: {fileID: 8926484042661614761} m_Value: m_Type: m_SerializableType: UnityEngine.Texture2D, UnityEngine.CoreModule, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null m_SerializableObject: '{"obj":{"fileID":2800000,"guid":"a184111ffd563d649847569fc38fd88a","type":3}}' m_Space: 2147483647 m_Property: name: normalMap m_serializedType: m_SerializableType: UnityEngine.Texture2D, UnityEngine.CoreModule, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null attributes: - m_Type: 3 m_Min: -Infinity m_Max: Infinity m_Tooltip: Specifies the Normal map to obtain normals in tangent space for the particle. m_Regex: m_RegexMaxLength: 0 m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614824 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 0} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614824} m_MasterData: m_Owner: {fileID: 8926484042661614761} m_Value: m_Type: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 m_SerializableObject: 1.110692 m_Space: 2147483647 m_Property: name: normalScale m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: - m_Type: 0 m_Min: 0 m_Max: 2 m_Tooltip: m_Regex: m_RegexMaxLength: 0 - m_Type: 3 m_Min: -Infinity m_Max: Infinity m_Tooltip: Sets the scale of the normals. Larger values increase the impact of the normals. m_Regex: m_RegexMaxLength: 0 m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614829 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 0} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614829} m_MasterData: m_Owner: {fileID: 8926484042661614761} m_Value: m_Type: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 m_SerializableObject: 0.2928932 m_Space: 2147483647 m_Property: name: cropFactor m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: - m_Type: 0 m_Min: 0 m_Max: 1 m_Tooltip: m_Regex: m_RegexMaxLength: 0 - m_Type: 3 m_Min: -Infinity m_Max: Infinity m_Tooltip: Sets the amount by which the octagonal particle shape is cropped, allowing for a tighter fit and reducing potential overdraw by eliminating transparent pixels. m_Regex: m_RegexMaxLength: 0 m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614830 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 0} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614830} m_MasterData: m_Owner: {fileID: 8926484042661614789} m_Value: m_Type: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 m_SerializableObject: 0.2928932 m_Space: 2147483647 m_Property: name: cropFactor m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: - m_Type: 0 m_Min: 0 m_Max: 1 m_Tooltip: m_Regex: m_RegexMaxLength: 0 - m_Type: 3 m_Min: -Infinity m_Max: Infinity m_Tooltip: Sets the amount by which the octagonal particle shape is cropped, allowing for a tighter fit and reducing potential overdraw by eliminating transparent pixels. m_Regex: m_RegexMaxLength: 0 m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614831 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 0} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614831} m_MasterData: m_Owner: {fileID: 8926484042661614761} m_Value: m_Type: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 m_SerializableObject: 1 m_Space: 2147483647 m_Property: name: softParticlesFadeDistance m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: - m_Type: 1 m_Min: 0.001 m_Max: Infinity m_Tooltip: m_Regex: m_RegexMaxLength: 0 m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614852 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 081ffb0090424ba4cb05370a42ead6b9, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 0} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 opaqueRenderQueue: 0 transparentRenderQueue: 2 --- !u!114 &8926484042661614853 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 081ffb0090424ba4cb05370a42ead6b9, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 0} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 opaqueRenderQueue: 0 transparentRenderQueue: 2 --- !u!114 &8926484042661614854 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: a9f9544b71b7dab44a4644b6807e8bf6, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 0} m_Children: - {fileID: 8926484042661614855} m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614854} m_MasterData: m_Owner: {fileID: 114206037049139666} m_Value: m_Type: m_SerializableType: UnityEditor.VFX.Vector, Unity.VisualEffectGraph.Editor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null m_SerializableObject: '{"vector":{"x":-0.20000000298023225,"y":1.0,"z":-0.20000000298023225}}' m_Space: 0 m_Property: name: A m_serializedType: m_SerializableType: UnityEditor.VFX.Vector, Unity.VisualEffectGraph.Editor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null attributes: - m_Type: 3 m_Min: -Infinity m_Max: Infinity m_Tooltip: The velocity of the particle. m_Regex: m_RegexMaxLength: 0 m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614855 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: ac39bd03fca81b849929b9c966f1836a, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 8926484042661614854} m_Children: - {fileID: 8926484042661614856} - {fileID: 8926484042661614857} - {fileID: 8926484042661614858} m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614854} m_MasterData: m_Owner: {fileID: 0} m_Value: m_Type: m_SerializableType: m_SerializableObject: m_Space: 2147483647 m_Property: name: vector m_serializedType: m_SerializableType: UnityEngine.Vector3, UnityEngine.CoreModule, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null attributes: - m_Type: 3 m_Min: -Infinity m_Max: Infinity m_Tooltip: The vector. m_Regex: m_RegexMaxLength: 0 m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614856 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 8926484042661614855} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614854} m_MasterData: m_Owner: {fileID: 0} m_Value: m_Type: m_SerializableType: m_SerializableObject: m_Space: 2147483647 m_Property: name: x m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: [] m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614857 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 8926484042661614855} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614854} m_MasterData: m_Owner: {fileID: 0} m_Value: m_Type: m_SerializableType: m_SerializableObject: m_Space: 2147483647 m_Property: name: y m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: [] m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614858 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 8926484042661614855} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614854} m_MasterData: m_Owner: {fileID: 0} m_Value: m_Type: m_SerializableType: m_SerializableObject: m_Space: 2147483647 m_Property: name: z m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: [] m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614859 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: a9f9544b71b7dab44a4644b6807e8bf6, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 0} m_Children: - {fileID: 8926484042661614860} m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614859} m_MasterData: m_Owner: {fileID: 114206037049139666} m_Value: m_Type: m_SerializableType: UnityEditor.VFX.Vector, Unity.VisualEffectGraph.Editor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null m_SerializableObject: '{"vector":{"x":0.20000000298023225,"y":2.0,"z":0.20000000298023225}}' m_Space: 0 m_Property: name: B m_serializedType: m_SerializableType: UnityEditor.VFX.Vector, Unity.VisualEffectGraph.Editor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null attributes: - m_Type: 3 m_Min: -Infinity m_Max: Infinity m_Tooltip: The velocity of the particle. m_Regex: m_RegexMaxLength: 0 m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614860 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: ac39bd03fca81b849929b9c966f1836a, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 8926484042661614859} m_Children: - {fileID: 8926484042661614861} - {fileID: 8926484042661614862} - {fileID: 8926484042661614863} m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614859} m_MasterData: m_Owner: {fileID: 0} m_Value: m_Type: m_SerializableType: m_SerializableObject: m_Space: 2147483647 m_Property: name: vector m_serializedType: m_SerializableType: UnityEngine.Vector3, UnityEngine.CoreModule, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null attributes: - m_Type: 3 m_Min: -Infinity m_Max: Infinity m_Tooltip: The vector. m_Regex: m_RegexMaxLength: 0 m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614861 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 8926484042661614860} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614859} m_MasterData: m_Owner: {fileID: 0} m_Value: m_Type: m_SerializableType: m_SerializableObject: m_Space: 2147483647 m_Property: name: x m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: [] m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614862 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 8926484042661614860} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614859} m_MasterData: m_Owner: {fileID: 0} m_Value: m_Type: m_SerializableType: m_SerializableObject: m_Space: 2147483647 m_Property: name: y m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: [] m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614863 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 8926484042661614860} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614859} m_MasterData: m_Owner: {fileID: 0} m_Value: m_Type: m_SerializableType: m_SerializableObject: m_Space: 2147483647 m_Property: name: z m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: [] m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614864 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 0} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614864} m_MasterData: m_Owner: {fileID: 114131763552434164} m_Value: m_Type: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 m_SerializableObject: 2 m_Space: 2147483647 m_Property: name: A m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: - m_Type: 3 m_Min: -Infinity m_Max: Infinity m_Tooltip: "Indicates how long the particle can stay alive. If the particle\u2019s age exceeds its lifetime, the particle is destroyed." m_Regex: m_RegexMaxLength: 0 m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614865 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 0} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614865} m_MasterData: m_Owner: {fileID: 114131763552434164} m_Value: m_Type: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 m_SerializableObject: 4 m_Space: 2147483647 m_Property: name: B m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: - m_Type: 3 m_Min: -Infinity m_Max: Infinity m_Tooltip: "Indicates how long the particle can stay alive. If the particle\u2019s age exceeds its lifetime, the particle is destroyed." m_Regex: m_RegexMaxLength: 0 m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614866 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 0} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614866} m_MasterData: m_Owner: {fileID: 8926484042661614588} m_Value: m_Type: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 m_SerializableObject: 0 m_Space: 2147483647 m_Property: name: A m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: [] m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614867 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 0} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614867} m_MasterData: m_Owner: {fileID: 8926484042661614588} m_Value: m_Type: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 m_SerializableObject: 360 m_Space: 2147483647 m_Property: name: B m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: [] m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614868 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: a9f9544b71b7dab44a4644b6807e8bf6, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 0} m_Children: - {fileID: 8926484042661614869} m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614868} m_MasterData: m_Owner: {fileID: 8926484042661614616} m_Value: m_Type: m_SerializableType: UnityEditor.VFX.Vector, Unity.VisualEffectGraph.Editor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null m_SerializableObject: '{"vector":{"x":-0.20000000298023225,"y":2.0,"z":-0.20000000298023225}}' m_Space: 0 m_Property: name: A m_serializedType: m_SerializableType: UnityEditor.VFX.Vector, Unity.VisualEffectGraph.Editor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null attributes: - m_Type: 3 m_Min: -Infinity m_Max: Infinity m_Tooltip: The velocity of the particle. m_Regex: m_RegexMaxLength: 0 m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614869 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: ac39bd03fca81b849929b9c966f1836a, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 8926484042661614868} m_Children: - {fileID: 8926484042661614870} - {fileID: 8926484042661614871} - {fileID: 8926484042661614872} m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614868} m_MasterData: m_Owner: {fileID: 0} m_Value: m_Type: m_SerializableType: m_SerializableObject: m_Space: 2147483647 m_Property: name: vector m_serializedType: m_SerializableType: UnityEngine.Vector3, UnityEngine.CoreModule, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null attributes: - m_Type: 3 m_Min: -Infinity m_Max: Infinity m_Tooltip: The vector. m_Regex: m_RegexMaxLength: 0 m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614870 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 8926484042661614869} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614868} m_MasterData: m_Owner: {fileID: 0} m_Value: m_Type: m_SerializableType: m_SerializableObject: m_Space: 2147483647 m_Property: name: x m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: [] m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614871 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 8926484042661614869} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614868} m_MasterData: m_Owner: {fileID: 0} m_Value: m_Type: m_SerializableType: m_SerializableObject: m_Space: 2147483647 m_Property: name: y m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: [] m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614872 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 8926484042661614869} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614868} m_MasterData: m_Owner: {fileID: 0} m_Value: m_Type: m_SerializableType: m_SerializableObject: m_Space: 2147483647 m_Property: name: z m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: [] m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614873 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: a9f9544b71b7dab44a4644b6807e8bf6, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 0} m_Children: - {fileID: 8926484042661614874} m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614873} m_MasterData: m_Owner: {fileID: 8926484042661614616} m_Value: m_Type: m_SerializableType: UnityEditor.VFX.Vector, Unity.VisualEffectGraph.Editor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null m_SerializableObject: '{"vector":{"x":0.20000000298023225,"y":2.0,"z":0.20000000298023225}}' m_Space: 0 m_Property: name: B m_serializedType: m_SerializableType: UnityEditor.VFX.Vector, Unity.VisualEffectGraph.Editor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null attributes: - m_Type: 3 m_Min: -Infinity m_Max: Infinity m_Tooltip: The velocity of the particle. m_Regex: m_RegexMaxLength: 0 m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614874 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: ac39bd03fca81b849929b9c966f1836a, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 8926484042661614873} m_Children: - {fileID: 8926484042661614875} - {fileID: 8926484042661614876} - {fileID: 8926484042661614877} m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614873} m_MasterData: m_Owner: {fileID: 0} m_Value: m_Type: m_SerializableType: m_SerializableObject: m_Space: 2147483647 m_Property: name: vector m_serializedType: m_SerializableType: UnityEngine.Vector3, UnityEngine.CoreModule, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null attributes: - m_Type: 3 m_Min: -Infinity m_Max: Infinity m_Tooltip: The vector. m_Regex: m_RegexMaxLength: 0 m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614875 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 8926484042661614874} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614873} m_MasterData: m_Owner: {fileID: 0} m_Value: m_Type: m_SerializableType: m_SerializableObject: m_Space: 2147483647 m_Property: name: x m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: [] m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614876 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 8926484042661614874} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614873} m_MasterData: m_Owner: {fileID: 0} m_Value: m_Type: m_SerializableType: m_SerializableObject: m_Space: 2147483647 m_Property: name: y m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: [] m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614877 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 8926484042661614874} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614873} m_MasterData: m_Owner: {fileID: 0} m_Value: m_Type: m_SerializableType: m_SerializableObject: m_Space: 2147483647 m_Property: name: z m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: [] m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614878 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 0} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614878} m_MasterData: m_Owner: {fileID: 8926484042661614625} m_Value: m_Type: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 m_SerializableObject: 0.5 m_Space: 2147483647 m_Property: name: A m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: - m_Type: 3 m_Min: -Infinity m_Max: Infinity m_Tooltip: "Indicates how long the particle can stay alive. If the particle\u2019s age exceeds its lifetime, the particle is destroyed." m_Regex: m_RegexMaxLength: 0 m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614879 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 0} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614879} m_MasterData: m_Owner: {fileID: 8926484042661614625} m_Value: m_Type: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 m_SerializableObject: 0.82 m_Space: 2147483647 m_Property: name: B m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: - m_Type: 3 m_Min: -Infinity m_Max: Infinity m_Tooltip: "Indicates how long the particle can stay alive. If the particle\u2019s age exceeds its lifetime, the particle is destroyed." m_Regex: m_RegexMaxLength: 0 m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614880 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 0} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614880} m_MasterData: m_Owner: {fileID: 8926484042661614674} m_Value: m_Type: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 m_SerializableObject: 0 m_Space: 2147483647 m_Property: name: A m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: - m_Type: 3 m_Min: -Infinity m_Max: Infinity m_Tooltip: "The current index of the flipbook. This attribute is used if \u2018UV Mode\u2019 in the output is set to use flipbooks." m_Regex: m_RegexMaxLength: 0 m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614881 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 0} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614881} m_MasterData: m_Owner: {fileID: 8926484042661614674} m_Value: m_Type: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 m_SerializableObject: 32 m_Space: 2147483647 m_Property: name: B m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: - m_Type: 3 m_Min: -Infinity m_Max: Infinity m_Tooltip: "The current index of the flipbook. This attribute is used if \u2018UV Mode\u2019 in the output is set to use flipbooks." m_Regex: m_RegexMaxLength: 0 m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614882 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 0} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614882} m_MasterData: m_Owner: {fileID: 8926484042661614761} m_Value: m_Type: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 m_SerializableObject: 0.5264153 m_Space: 2147483647 m_Property: name: normalBendingFactor m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: - m_Type: 0 m_Min: 0 m_Max: 1 m_Tooltip: m_Regex: m_RegexMaxLength: 0 - m_Type: 3 m_Min: -Infinity m_Max: Infinity m_Tooltip: Controls the amount by which the normals will be bent, creating a rounder look. m_Regex: m_RegexMaxLength: 0 m_Direction: 0 m_LinkedSlots: [] --- !u!114 &8926484042661614883 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f780aa281814f9842a7c076d436932e7, type: 3} m_Name: m_EditorClassIdentifier: m_Parent: {fileID: 0} m_Children: [] m_UIPosition: {x: 0, y: 0} m_UICollapsed: 1 m_UISuperCollapsed: 0 m_MasterSlot: {fileID: 8926484042661614883} m_MasterData: m_Owner: {fileID: 8926484042661614789} m_Value: m_Type: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 m_SerializableObject: 1 m_Space: 2147483647 m_Property: name: normalBendingFactor m_serializedType: m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 attributes: - m_Type: 0 m_Min: 0 m_Max: 1 m_Tooltip: m_Regex: m_RegexMaxLength: 0 - m_Type: 3 m_Min: -Infinity m_Max: Infinity m_Tooltip: Controls the amount by which the normals will be bent, creating a rounder look. m_Regex: m_RegexMaxLength: 0 m_Direction: 0 m_LinkedSlots: []