diff --git a/Assets/AddressableAssetsData/AddressableAssetSettings.asset b/Assets/AddressableAssetsData/AddressableAssetSettings.asset index 14b30a17..e6dddfc2 100644 --- a/Assets/AddressableAssetsData/AddressableAssetSettings.asset +++ b/Assets/AddressableAssetsData/AddressableAssetSettings.asset @@ -15,7 +15,7 @@ MonoBehaviour: m_DefaultGroup: 6f3207429a65b3e4b83935ac19791077 m_currentHash: serializedVersion: 2 - Hash: b784c72547c16021d9ba62425af8f54d + Hash: db7c325bc1c3b07b5df2a878bfe7afa8 m_OptimizeCatalogSize: 0 m_BuildRemoteCatalog: 0 m_CatalogRequestsTimeout: 0 diff --git a/Assets/Art/Animations/Characters/Butterfly/Butterfly_Trapped.anim b/Assets/Art/Animations/Characters/Butterfly/Butterfly_Trapped.anim index 2a48064d..d8555721 100644 --- a/Assets/Art/Animations/Characters/Butterfly/Butterfly_Trapped.anim +++ b/Assets/Art/Animations/Characters/Butterfly/Butterfly_Trapped.anim @@ -27,16 +27,16 @@ AnimationClip: inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} - serializedVersion: 3 - time: 0.1 + time: 0.2 value: {x: 0, y: 0, z: 21.435} - inSlope: {x: 0, y: 0, z: 131.092} - outSlope: {x: 0, y: 0, z: 131.092} + inSlope: {x: 0, y: 0, z: 65.546} + outSlope: {x: 0, y: 0, z: 65.546} tangentMode: 0 weightedMode: 0 inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} - serializedVersion: 3 - time: 0.25 + time: 0.5 value: {x: 0, y: 0, z: 32.773} inSlope: {x: 0, y: 0, z: 0} outSlope: {x: 0, y: 0, z: 0} @@ -45,16 +45,16 @@ AnimationClip: inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} - serializedVersion: 3 - time: 0.33333334 + time: 0.6666667 value: {x: 0, y: 0, z: 9.69} - inSlope: {x: 0, y: 0, z: -249.384} - outSlope: {x: 0, y: 0, z: -249.384} + inSlope: {x: 0, y: 0, z: -124.692} + outSlope: {x: 0, y: 0, z: -124.692} tangentMode: 0 weightedMode: 0 inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} - serializedVersion: 3 - time: 0.41666666 + time: 0.8333333 value: {x: 0, y: 0, z: -8.791} inSlope: {x: 0, y: 0, z: 0} outSlope: {x: 0, y: 0, z: 0} @@ -63,7 +63,7 @@ AnimationClip: inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} - serializedVersion: 3 - time: 0.53333336 + time: 1.0666667 value: {x: 0, y: 0, z: 16.805} inSlope: {x: 0, y: 0, z: 0} outSlope: {x: 0, y: 0, z: 0} @@ -72,7 +72,7 @@ AnimationClip: inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} - serializedVersion: 3 - time: 0.6666667 + time: 1.3333334 value: {x: 0, y: 0, z: 4.273} inSlope: {x: 0, y: 0, z: 0} outSlope: {x: 0, y: 0, z: 0} @@ -81,7 +81,7 @@ AnimationClip: inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} - serializedVersion: 3 - time: 0.76666665 + time: 1.5333333 value: {x: 0, y: 0, z: 23.489} inSlope: {x: 0, y: 0, z: 0} outSlope: {x: 0, y: 0, z: 0} @@ -90,7 +90,7 @@ AnimationClip: inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} - serializedVersion: 3 - time: 0.8833333 + time: 1.7666667 value: {x: 0, y: 0, z: 6.303} inSlope: {x: 0, y: 0, z: 0} outSlope: {x: 0, y: 0, z: 0} @@ -99,7 +99,7 @@ AnimationClip: inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} - serializedVersion: 3 - time: 0.98333335 + time: 1.9666667 value: {x: 0, y: 0, z: 28.23} inSlope: {x: 0, y: 0, z: 0} outSlope: {x: 0, y: 0, z: 0} @@ -108,16 +108,16 @@ AnimationClip: inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} - serializedVersion: 3 - time: 1.1333333 + time: 2.2666667 value: {x: 0, y: 0, z: 3.925} - inSlope: {x: 0, y: 0, z: -234.26765} - outSlope: {x: 0, y: 0, z: -234.26765} + inSlope: {x: 0, y: 0, z: -117.13383} + outSlope: {x: 0, y: 0, z: -117.13383} tangentMode: 0 weightedMode: 0 inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} - serializedVersion: 3 - time: 1.2 + time: 2.4 value: {x: 0, y: 0, z: -22.528} inSlope: {x: 0, y: 0, z: 0} outSlope: {x: 0, y: 0, z: 0} @@ -126,7 +126,7 @@ AnimationClip: inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} - serializedVersion: 3 - time: 1.3166667 + time: 2.6333334 value: {x: 0, y: 0, z: 32.362} inSlope: {x: 0, y: 0, z: 0} outSlope: {x: 0, y: 0, z: 0} @@ -138,176 +138,7 @@ AnimationClip: m_PostInfinity: 2 m_RotationOrder: 4 path: - m_PositionCurves: - - curve: - serializedVersion: 2 - m_Curve: - - serializedVersion: 3 - time: 0 - value: {x: 0, y: 0, z: 0} - inSlope: {x: 0, y: 0, z: 0} - outSlope: {x: 0, y: 0, z: 0} - tangentMode: 0 - weightedMode: 0 - inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} - outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} - - serializedVersion: 3 - time: 0.1 - value: {x: 0, y: 0.1, z: 0} - inSlope: {x: 0, y: 1.3846154, z: 0} - outSlope: {x: 0, y: 1.3846154, z: 0} - tangentMode: 0 - weightedMode: 0 - inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} - outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} - - serializedVersion: 3 - time: 0.21666667 - value: {x: 0, y: 0.3, z: 0} - inSlope: {x: 0, y: 3.3333333, z: 0} - outSlope: {x: 0, y: 3.3333333, z: 0} - tangentMode: 0 - weightedMode: 0 - inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} - outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} - - serializedVersion: 3 - time: 0.25 - value: {x: 0, y: 0.6, z: 0} - inSlope: {x: 0, y: 0, z: 0} - outSlope: {x: 0, y: 0, z: 0} - tangentMode: 0 - weightedMode: 0 - inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} - outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} - - serializedVersion: 3 - time: 0.31666666 - value: {x: 0, y: 0.3, z: 0} - inSlope: {x: 0, y: -3.6000004, z: 0} - outSlope: {x: 0, y: -3.6000004, z: 0} - tangentMode: 0 - weightedMode: 0 - inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} - outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} - - serializedVersion: 3 - time: 0.41666666 - value: {x: 0, y: 0, z: 0} - inSlope: {x: 0, y: 0, z: 0} - outSlope: {x: 0, y: 0, z: 0} - tangentMode: 0 - weightedMode: 0 - inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} - outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} - - serializedVersion: 3 - time: 0.43333334 - value: {x: 0, y: 0, z: 0} - inSlope: {x: 0, y: 0, z: 0} - outSlope: {x: 0, y: 0, z: 0} - tangentMode: 0 - weightedMode: 0 - inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} - outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} - - serializedVersion: 3 - time: 0.53333336 - value: {x: 0, y: 0.1, z: 0} - inSlope: {x: 0, y: 1.3846157, z: 0} - outSlope: {x: 0, y: 1.3846157, z: 0} - tangentMode: 0 - weightedMode: 0 - inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} - outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} - - serializedVersion: 3 - time: 0.65 - value: {x: 0, y: 0.3, z: 0} - inSlope: {x: 0, y: 3.333334, z: 0} - outSlope: {x: 0, y: 3.333334, z: 0} - tangentMode: 0 - weightedMode: 0 - inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} - outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} - - serializedVersion: 3 - time: 0.68333334 - value: {x: 0, y: 0.6, z: 0} - inSlope: {x: 0, y: 0, z: 0} - outSlope: {x: 0, y: 0, z: 0} - tangentMode: 0 - weightedMode: 0 - inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} - outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} - - serializedVersion: 3 - time: 0.75 - value: {x: 0, y: 0.3, z: 0} - inSlope: {x: 0, y: -3.5999997, z: 0} - outSlope: {x: 0, y: -3.5999997, z: 0} - tangentMode: 0 - weightedMode: 0 - inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} - outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} - - serializedVersion: 3 - time: 0.85 - value: {x: 0, y: 0, z: 0} - inSlope: {x: 0, y: 0, z: 0} - outSlope: {x: 0, y: 0, z: 0} - tangentMode: 0 - weightedMode: 0 - inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} - outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} - - serializedVersion: 3 - time: 0.8833333 - value: {x: 0, y: 0, z: 0} - inSlope: {x: 0, y: 0, z: 0} - outSlope: {x: 0, y: 0, z: 0} - tangentMode: 0 - weightedMode: 0 - inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} - outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} - - serializedVersion: 3 - time: 0.98333335 - value: {x: 0, y: 0.1, z: 0} - inSlope: {x: 0, y: 1.3846152, z: 0} - outSlope: {x: 0, y: 1.3846152, z: 0} - tangentMode: 0 - weightedMode: 0 - inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} - outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} - - serializedVersion: 3 - time: 1.1 - value: {x: 0, y: 0.3, z: 0} - inSlope: {x: 0, y: 3.333334, z: 0} - outSlope: {x: 0, y: 3.333334, z: 0} - tangentMode: 0 - weightedMode: 0 - inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} - outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} - - serializedVersion: 3 - time: 1.1333333 - value: {x: 0, y: 0.6, z: 0} - inSlope: {x: 0, y: 0, z: 0} - outSlope: {x: 0, y: 0, z: 0} - tangentMode: 0 - weightedMode: 0 - inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} - outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} - - serializedVersion: 3 - time: 1.2 - value: {x: 0, y: 0.3, z: 0} - inSlope: {x: 0, y: -3.600001, z: 0} - outSlope: {x: 0, y: -3.600001, z: 0} - tangentMode: 0 - weightedMode: 0 - inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} - outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} - - serializedVersion: 3 - time: 1.3 - value: {x: 0, y: 0, z: 0} - inSlope: {x: 0, y: 0, z: 0} - outSlope: {x: 0, y: 0, z: 0} - tangentMode: 0 - weightedMode: 0 - inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} - outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} - m_PreInfinity: 2 - m_PostInfinity: 2 - m_RotationOrder: 4 - path: + m_PositionCurves: [] m_ScaleCurves: [] m_FloatCurves: [] m_PPtrCurves: @@ -315,55 +146,46 @@ AnimationClip: curve: - time: 0 value: {fileID: 4530433918361379743, guid: d5bbe5b893ed9bc43b303a0e5c712a09, type: 3} - - time: 0.1 + - time: 0.2 value: {fileID: 4699623745766655208, guid: d5bbe5b893ed9bc43b303a0e5c712a09, type: 3} - - time: 0.21666667 - value: {fileID: -265841166610147798, guid: d5bbe5b893ed9bc43b303a0e5c712a09, type: 3} - - time: 0.31666666 - value: {fileID: 4699623745766655208, guid: d5bbe5b893ed9bc43b303a0e5c712a09, type: 3} - - time: 0.41666666 - value: {fileID: 4530433918361379743, guid: d5bbe5b893ed9bc43b303a0e5c712a09, type: 3} - time: 0.43333334 - value: {fileID: 4530433918361379743, guid: d5bbe5b893ed9bc43b303a0e5c712a09, type: 3} - - time: 0.53333336 - value: {fileID: 4699623745766655208, guid: d5bbe5b893ed9bc43b303a0e5c712a09, type: 3} - - time: 0.65 value: {fileID: -265841166610147798, guid: d5bbe5b893ed9bc43b303a0e5c712a09, type: 3} - - time: 0.75 + - time: 0.6333333 value: {fileID: 4699623745766655208, guid: d5bbe5b893ed9bc43b303a0e5c712a09, type: 3} - - time: 0.85 + - time: 0.8333333 value: {fileID: 4530433918361379743, guid: d5bbe5b893ed9bc43b303a0e5c712a09, type: 3} - - time: 0.8833333 + - time: 0.8666667 value: {fileID: 4530433918361379743, guid: d5bbe5b893ed9bc43b303a0e5c712a09, type: 3} - - time: 0.98333335 - value: {fileID: 4699623745766655208, guid: d5bbe5b893ed9bc43b303a0e5c712a09, type: 3} - - time: 1.1 - value: {fileID: -265841166610147798, guid: d5bbe5b893ed9bc43b303a0e5c712a09, type: 3} - - time: 1.2 + - time: 1.0666667 value: {fileID: 4699623745766655208, guid: d5bbe5b893ed9bc43b303a0e5c712a09, type: 3} - time: 1.3 + value: {fileID: -265841166610147798, guid: d5bbe5b893ed9bc43b303a0e5c712a09, type: 3} + - time: 1.5 + value: {fileID: 4699623745766655208, guid: d5bbe5b893ed9bc43b303a0e5c712a09, type: 3} + - time: 1.7 + value: {fileID: 4530433918361379743, guid: d5bbe5b893ed9bc43b303a0e5c712a09, type: 3} + - time: 1.7666667 + value: {fileID: 4530433918361379743, guid: d5bbe5b893ed9bc43b303a0e5c712a09, type: 3} + - time: 1.9666667 + value: {fileID: 4699623745766655208, guid: d5bbe5b893ed9bc43b303a0e5c712a09, type: 3} + - time: 2.2 + value: {fileID: -265841166610147798, guid: d5bbe5b893ed9bc43b303a0e5c712a09, type: 3} + - time: 2.4 + value: {fileID: 4699623745766655208, guid: d5bbe5b893ed9bc43b303a0e5c712a09, type: 3} + - time: 2.6 value: {fileID: 4530433918361379743, guid: d5bbe5b893ed9bc43b303a0e5c712a09, type: 3} attribute: m_Sprite path: classID: 212 script: {fileID: 0} flags: 2 - m_SampleRate: 60 + m_SampleRate: 30 m_WrapMode: 0 m_Bounds: m_Center: {x: 0, y: 0, z: 0} m_Extent: {x: 0, y: 0, z: 0} m_ClipBindingConstant: genericBindings: - - serializedVersion: 2 - path: 0 - attribute: 1 - script: {fileID: 0} - typeID: 4 - customType: 0 - isPPtrCurve: 0 - isIntCurve: 0 - isSerializeReferenceCurve: 0 - serializedVersion: 2 path: 0 attribute: 4 @@ -403,7 +225,7 @@ AnimationClip: m_AdditiveReferencePoseClip: {fileID: 0} m_AdditiveReferencePoseTime: 0 m_StartTime: 0 - m_StopTime: 1.3166667 + m_StopTime: 2.6333334 m_OrientationOffsetY: 0 m_Level: 0 m_CycleOffset: 0 @@ -433,7 +255,7 @@ AnimationClip: inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 - time: 0.1 + time: 0.2 value: 0 inSlope: 0 outSlope: 0 @@ -442,556 +264,7 @@ AnimationClip: inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 - time: 0.21666667 - value: 0 - inSlope: 0 - outSlope: 0 - tangentMode: 136 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - - serializedVersion: 3 - time: 0.25 - value: 0 - inSlope: 0 - outSlope: 0 - tangentMode: 136 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - - serializedVersion: 3 - time: 0.31666666 - value: 0 - inSlope: 0 - outSlope: 0 - tangentMode: 136 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - - serializedVersion: 3 - time: 0.41666666 - value: 0 - inSlope: 0 - outSlope: 0 - tangentMode: 136 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - - serializedVersion: 3 - time: 0.43333334 - value: 0 - inSlope: 0 - outSlope: 0 - tangentMode: 136 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - - serializedVersion: 3 - time: 0.53333336 - value: 0 - inSlope: 0 - outSlope: 0 - tangentMode: 136 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - - serializedVersion: 3 - time: 0.65 - value: 0 - inSlope: 0 - outSlope: 0 - tangentMode: 136 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - - serializedVersion: 3 - time: 0.68333334 - value: 0 - inSlope: 0 - outSlope: 0 - tangentMode: 136 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - - serializedVersion: 3 - time: 0.75 - value: 0 - inSlope: 0 - outSlope: 0 - tangentMode: 136 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - - serializedVersion: 3 - time: 0.85 - value: 0 - inSlope: 0 - outSlope: 0 - tangentMode: 136 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - - serializedVersion: 3 - time: 0.8833333 - value: 0 - inSlope: 0 - outSlope: 0 - tangentMode: 136 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - - serializedVersion: 3 - time: 0.98333335 - value: 0 - inSlope: 0 - outSlope: 0 - tangentMode: 136 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - - serializedVersion: 3 - time: 1.1 - value: 0 - inSlope: 0 - outSlope: 0 - tangentMode: 136 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - - serializedVersion: 3 - time: 1.1333333 - value: 0 - inSlope: 0 - outSlope: 0 - tangentMode: 136 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - - serializedVersion: 3 - time: 1.2 - value: 0 - inSlope: 0 - outSlope: 0 - tangentMode: 136 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - - serializedVersion: 3 - time: 1.3 - value: 0 - inSlope: 0 - outSlope: 0 - tangentMode: 136 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - m_PreInfinity: 2 - m_PostInfinity: 2 - m_RotationOrder: 4 - attribute: m_LocalPosition.x - path: - classID: 4 - script: {fileID: 0} - flags: 0 - - serializedVersion: 2 - curve: - serializedVersion: 2 - m_Curve: - - serializedVersion: 3 - time: 0 - value: 0 - inSlope: 0 - outSlope: 0 - tangentMode: 136 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - - serializedVersion: 3 - time: 0.1 - value: 0.1 - inSlope: 1.3846154 - outSlope: 1.3846154 - tangentMode: 136 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - - serializedVersion: 3 - time: 0.21666667 - value: 0.3 - inSlope: 3.3333333 - outSlope: 3.3333333 - tangentMode: 136 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - - serializedVersion: 3 - time: 0.25 - value: 0.6 - inSlope: 0 - outSlope: 0 - tangentMode: 136 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - - serializedVersion: 3 - time: 0.31666666 - value: 0.3 - inSlope: -3.6000004 - outSlope: -3.6000004 - tangentMode: 136 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - - serializedVersion: 3 - time: 0.41666666 - value: 0 - inSlope: 0 - outSlope: 0 - tangentMode: 136 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - - serializedVersion: 3 - time: 0.43333334 - value: 0 - inSlope: 0 - outSlope: 0 - tangentMode: 136 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - - serializedVersion: 3 - time: 0.53333336 - value: 0.1 - inSlope: 1.3846157 - outSlope: 1.3846157 - tangentMode: 136 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - - serializedVersion: 3 - time: 0.65 - value: 0.3 - inSlope: 3.333334 - outSlope: 3.333334 - tangentMode: 136 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - - serializedVersion: 3 - time: 0.68333334 - value: 0.6 - inSlope: 0 - outSlope: 0 - tangentMode: 136 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - - serializedVersion: 3 - time: 0.75 - value: 0.3 - inSlope: -3.5999997 - outSlope: -3.5999997 - tangentMode: 136 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - - serializedVersion: 3 - time: 0.85 - value: 0 - inSlope: 0 - outSlope: 0 - tangentMode: 136 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - - serializedVersion: 3 - time: 0.8833333 - value: 0 - inSlope: 0 - outSlope: 0 - tangentMode: 136 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - - serializedVersion: 3 - time: 0.98333335 - value: 0.1 - inSlope: 1.3846152 - outSlope: 1.3846152 - tangentMode: 136 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - - serializedVersion: 3 - time: 1.1 - value: 0.3 - inSlope: 3.333334 - outSlope: 3.333334 - tangentMode: 136 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - - serializedVersion: 3 - time: 1.1333333 - value: 0.6 - inSlope: 0 - outSlope: 0 - tangentMode: 136 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - - serializedVersion: 3 - time: 1.2 - value: 0.3 - inSlope: -3.600001 - outSlope: -3.600001 - tangentMode: 136 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - - serializedVersion: 3 - time: 1.3 - value: 0 - inSlope: 0 - outSlope: 0 - tangentMode: 136 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - m_PreInfinity: 2 - m_PostInfinity: 2 - m_RotationOrder: 4 - attribute: m_LocalPosition.y - path: - classID: 4 - script: {fileID: 0} - flags: 0 - - serializedVersion: 2 - curve: - serializedVersion: 2 - m_Curve: - - serializedVersion: 3 - time: 0 - value: 0 - inSlope: 0 - outSlope: 0 - tangentMode: 136 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - - serializedVersion: 3 - time: 0.1 - value: 0 - inSlope: 0 - outSlope: 0 - tangentMode: 136 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - - serializedVersion: 3 - time: 0.21666667 - value: 0 - inSlope: 0 - outSlope: 0 - tangentMode: 136 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - - serializedVersion: 3 - time: 0.25 - value: 0 - inSlope: 0 - outSlope: 0 - tangentMode: 136 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - - serializedVersion: 3 - time: 0.31666666 - value: 0 - inSlope: 0 - outSlope: 0 - tangentMode: 136 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - - serializedVersion: 3 - time: 0.41666666 - value: 0 - inSlope: 0 - outSlope: 0 - tangentMode: 136 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - - serializedVersion: 3 - time: 0.43333334 - value: 0 - inSlope: 0 - outSlope: 0 - tangentMode: 136 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - - serializedVersion: 3 - time: 0.53333336 - value: 0 - inSlope: 0 - outSlope: 0 - tangentMode: 136 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - - serializedVersion: 3 - time: 0.65 - value: 0 - inSlope: 0 - outSlope: 0 - tangentMode: 136 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - - serializedVersion: 3 - time: 0.68333334 - value: 0 - inSlope: 0 - outSlope: 0 - tangentMode: 136 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - - serializedVersion: 3 - time: 0.75 - value: 0 - inSlope: 0 - outSlope: 0 - tangentMode: 136 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - - serializedVersion: 3 - time: 0.85 - value: 0 - inSlope: 0 - outSlope: 0 - tangentMode: 136 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - - serializedVersion: 3 - time: 0.8833333 - value: 0 - inSlope: 0 - outSlope: 0 - tangentMode: 136 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - - serializedVersion: 3 - time: 0.98333335 - value: 0 - inSlope: 0 - outSlope: 0 - tangentMode: 136 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - - serializedVersion: 3 - time: 1.1 - value: 0 - inSlope: 0 - outSlope: 0 - tangentMode: 136 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - - serializedVersion: 3 - time: 1.1333333 - value: 0 - inSlope: 0 - outSlope: 0 - tangentMode: 136 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - - serializedVersion: 3 - time: 1.2 - value: 0 - inSlope: 0 - outSlope: 0 - tangentMode: 136 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - - serializedVersion: 3 - time: 1.3 - value: 0 - inSlope: 0 - outSlope: 0 - tangentMode: 136 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - m_PreInfinity: 2 - m_PostInfinity: 2 - m_RotationOrder: 4 - attribute: m_LocalPosition.z - path: - classID: 4 - script: {fileID: 0} - flags: 0 - - serializedVersion: 2 - curve: - serializedVersion: 2 - m_Curve: - - serializedVersion: 3 - time: 0 - value: 0 - inSlope: 0 - outSlope: 0 - tangentMode: 136 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - - serializedVersion: 3 - time: 0.1 - value: 0 - inSlope: 0 - outSlope: 0 - tangentMode: 136 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - - serializedVersion: 3 - time: 0.25 - value: 0 - inSlope: 0 - outSlope: 0 - tangentMode: 136 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - - serializedVersion: 3 - time: 0.33333334 - value: 0 - inSlope: 0 - outSlope: 0 - tangentMode: 136 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - - serializedVersion: 3 - time: 0.41666666 - value: 0 - inSlope: 0 - outSlope: 0 - tangentMode: 136 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - - serializedVersion: 3 - time: 0.53333336 + time: 0.5 value: 0 inSlope: 0 outSlope: 0 @@ -1009,7 +282,7 @@ AnimationClip: inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 - time: 0.76666665 + time: 0.8333333 value: 0 inSlope: 0 outSlope: 0 @@ -1018,7 +291,7 @@ AnimationClip: inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 - time: 0.8833333 + time: 1.0666667 value: 0 inSlope: 0 outSlope: 0 @@ -1027,7 +300,7 @@ AnimationClip: inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 - time: 0.98333335 + time: 1.3333334 value: 0 inSlope: 0 outSlope: 0 @@ -1036,7 +309,7 @@ AnimationClip: inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 - time: 1.1333333 + time: 1.5333333 value: 0 inSlope: 0 outSlope: 0 @@ -1045,7 +318,7 @@ AnimationClip: inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 - time: 1.2 + time: 1.7666667 value: 0 inSlope: 0 outSlope: 0 @@ -1054,7 +327,34 @@ AnimationClip: inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 - time: 1.3166667 + time: 1.9666667 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 2.2666667 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 2.4 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 2.6333334 value: 0 inSlope: 0 outSlope: 0 @@ -1084,7 +384,7 @@ AnimationClip: inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 - time: 0.1 + time: 0.2 value: 0 inSlope: 0 outSlope: 0 @@ -1093,34 +393,7 @@ AnimationClip: inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 - time: 0.25 - value: 0 - inSlope: 0 - outSlope: 0 - tangentMode: 136 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - - serializedVersion: 3 - time: 0.33333334 - value: 0 - inSlope: 0 - outSlope: 0 - tangentMode: 136 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - - serializedVersion: 3 - time: 0.41666666 - value: 0 - inSlope: 0 - outSlope: 0 - tangentMode: 136 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - - serializedVersion: 3 - time: 0.53333336 + time: 0.5 value: 0 inSlope: 0 outSlope: 0 @@ -1138,7 +411,7 @@ AnimationClip: inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 - time: 0.76666665 + time: 0.8333333 value: 0 inSlope: 0 outSlope: 0 @@ -1147,7 +420,7 @@ AnimationClip: inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 - time: 0.8833333 + time: 1.0666667 value: 0 inSlope: 0 outSlope: 0 @@ -1156,7 +429,7 @@ AnimationClip: inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 - time: 0.98333335 + time: 1.3333334 value: 0 inSlope: 0 outSlope: 0 @@ -1165,7 +438,7 @@ AnimationClip: inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 - time: 1.1333333 + time: 1.5333333 value: 0 inSlope: 0 outSlope: 0 @@ -1174,7 +447,7 @@ AnimationClip: inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 - time: 1.2 + time: 1.7666667 value: 0 inSlope: 0 outSlope: 0 @@ -1183,7 +456,34 @@ AnimationClip: inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 - time: 1.3166667 + time: 1.9666667 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 2.2666667 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 2.4 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 2.6333334 value: 0 inSlope: 0 outSlope: 0 @@ -1213,16 +513,16 @@ AnimationClip: inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 - time: 0.1 + time: 0.2 value: 21.435 - inSlope: 131.092 - outSlope: 131.092 + inSlope: 65.546 + outSlope: 65.546 tangentMode: 136 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 - time: 0.25 + time: 0.5 value: 32.773 inSlope: 0 outSlope: 0 @@ -1231,16 +531,16 @@ AnimationClip: inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 - time: 0.33333334 + time: 0.6666667 value: 9.69 - inSlope: -249.384 - outSlope: -249.384 + inSlope: -124.692 + outSlope: -124.692 tangentMode: 136 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 - time: 0.41666666 + time: 0.8333333 value: -8.791 inSlope: 0 outSlope: 0 @@ -1249,7 +549,7 @@ AnimationClip: inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 - time: 0.53333336 + time: 1.0666667 value: 16.805 inSlope: 0 outSlope: 0 @@ -1258,7 +558,7 @@ AnimationClip: inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 - time: 0.6666667 + time: 1.3333334 value: 4.273 inSlope: 0 outSlope: 0 @@ -1267,7 +567,7 @@ AnimationClip: inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 - time: 0.76666665 + time: 1.5333333 value: 23.489 inSlope: 0 outSlope: 0 @@ -1276,7 +576,7 @@ AnimationClip: inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 - time: 0.8833333 + time: 1.7666667 value: 6.303 inSlope: 0 outSlope: 0 @@ -1285,7 +585,7 @@ AnimationClip: inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 - time: 0.98333335 + time: 1.9666667 value: 28.23 inSlope: 0 outSlope: 0 @@ -1294,16 +594,16 @@ AnimationClip: inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 - time: 1.1333333 + time: 2.2666667 value: 3.925 - inSlope: -234.26765 - outSlope: -234.26765 + inSlope: -117.13383 + outSlope: -117.13383 tangentMode: 136 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 - time: 1.2 + time: 2.4 value: -22.528 inSlope: 0 outSlope: 0 @@ -1312,7 +612,7 @@ AnimationClip: inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 - time: 1.3166667 + time: 2.6333334 value: 32.362 inSlope: 0 outSlope: 0 diff --git a/Assets/Art/Cinematics/Factory.meta b/Assets/Art/Cinematics/Factory.meta new file mode 100644 index 00000000..a33a4552 --- /dev/null +++ b/Assets/Art/Cinematics/Factory.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 862a414e356d3ac46b3a88fe0c87ca4e +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Art/Cinematics/Factory/ExplodeMachine.signal b/Assets/Art/Cinematics/Factory/ExplodeMachine.signal new file mode 100644 index 00000000..94962023 --- /dev/null +++ b/Assets/Art/Cinematics/Factory/ExplodeMachine.signal @@ -0,0 +1,14 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d6fa2d92fc1b3f34da284357edf89c3b, type: 3} + m_Name: ExplodeMachine + m_EditorClassIdentifier: Unity.Timeline::UnityEngine.Timeline.SignalAsset diff --git a/Assets/Art/Cinematics/Factory/ExplodeMachine.signal.meta b/Assets/Art/Cinematics/Factory/ExplodeMachine.signal.meta new file mode 100644 index 00000000..b9f8e701 --- /dev/null +++ b/Assets/Art/Cinematics/Factory/ExplodeMachine.signal.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 624acdeeb1ef5d041945271eb29fb68f +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Art/Cinematics/Factory/ExplosionFinished.signal b/Assets/Art/Cinematics/Factory/ExplosionFinished.signal new file mode 100644 index 00000000..b1c209b9 --- /dev/null +++ b/Assets/Art/Cinematics/Factory/ExplosionFinished.signal @@ -0,0 +1,14 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d6fa2d92fc1b3f34da284357edf89c3b, type: 3} + m_Name: ExplosionFinished + m_EditorClassIdentifier: Unity.Timeline::UnityEngine.Timeline.SignalAsset diff --git a/Assets/Art/Cinematics/Factory/ExplosionFinished.signal.meta b/Assets/Art/Cinematics/Factory/ExplosionFinished.signal.meta new file mode 100644 index 00000000..25935ef9 --- /dev/null +++ b/Assets/Art/Cinematics/Factory/ExplosionFinished.signal.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 50cc58e8ee01bf841a920508fe336516 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Art/Cinematics/Factory/FactoryIntroTimeline.playable b/Assets/Art/Cinematics/Factory/FactoryIntroTimeline.playable new file mode 100644 index 00000000..341e770a --- /dev/null +++ b/Assets/Art/Cinematics/Factory/FactoryIntroTimeline.playable @@ -0,0 +1,1090 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &-9095928061061461561 +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: 15c38f6fa1940124db1ab7f6fe7268d1, type: 3} + m_Name: Signal Emitter + m_EditorClassIdentifier: Unity.Timeline::UnityEngine.Timeline.SignalEmitter + m_Time: 9.887465299991891 + m_Retroactive: 0 + m_EmitOnce: 0 + m_Asset: {fileID: 11400000, guid: 624acdeeb1ef5d041945271eb29fb68f, type: 2} +--- !u!114 &-6287170530102907080 +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: d21dcc2386d650c4597f3633c75a1f98, type: 3} + m_Name: Animation Track (3) + m_EditorClassIdentifier: Unity.Timeline::UnityEngine.Timeline.AnimationTrack + m_Version: 3 + m_AnimClip: {fileID: 0} + m_Locked: 0 + m_Muted: 0 + m_CustomPlayableFullTypename: + m_Curves: {fileID: 0} + m_Parent: {fileID: 11400000} + m_Children: [] + m_Clips: + - m_Version: 1 + m_Start: 9.887465299991891 + m_ClipIn: 0 + m_Asset: {fileID: -4849378385594947304} + m_Duration: 1.4333333333333333 + m_TimeScale: 1 + m_ParentTrack: {fileID: -6287170530102907080} + m_EaseInDuration: 0 + m_EaseOutDuration: 0 + m_BlendInDuration: -1 + m_BlendOutDuration: -1 + m_MixInCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_MixOutCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_BlendInCurveMode: 0 + m_BlendOutCurveMode: 0 + m_ExposedParameterNames: [] + m_AnimationCurves: {fileID: 0} + m_Recordable: 0 + m_PostExtrapolationMode: 1 + m_PreExtrapolationMode: 1 + m_PostExtrapolationTime: Infinity + m_PreExtrapolationTime: 9.887465299991891 + m_DisplayName: Machine_explode_VFX + m_Markers: + m_Objects: [] + m_InfiniteClipPreExtrapolation: 0 + m_InfiniteClipPostExtrapolation: 0 + m_InfiniteClipOffsetPosition: {x: 0, y: 0, z: 0} + m_InfiniteClipOffsetEulerAngles: {x: 0, y: 0, z: 0} + m_InfiniteClipTimeOffset: 0 + m_InfiniteClipRemoveOffset: 0 + m_InfiniteClipApplyFootIK: 1 + mInfiniteClipLoop: 0 + m_MatchTargetFields: 63 + m_Position: {x: 0, y: 0, z: 0} + m_EulerAngles: {x: 0, y: 0, z: 0} + m_AvatarMask: {fileID: 0} + m_ApplyAvatarMask: 1 + m_TrackOffset: 0 + m_InfiniteClip: {fileID: 0} + m_OpenClipOffsetRotation: {x: 0, y: 0, z: 0, w: 1} + m_Rotation: {x: 0, y: 0, z: 0, w: 1} + m_ApplyOffsets: 0 +--- !u!114 &-6272534478882868843 +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: 21bf7f712d84d26478ebe6a299f21738, type: 3} + m_Name: Activation Track (1) + m_EditorClassIdentifier: Unity.Timeline::UnityEngine.Timeline.ActivationTrack + m_Version: 3 + m_AnimClip: {fileID: 0} + m_Locked: 0 + m_Muted: 0 + m_CustomPlayableFullTypename: + m_Curves: {fileID: 0} + m_Parent: {fileID: 11400000} + m_Children: [] + m_Clips: + - m_Version: 1 + m_Start: 0 + m_ClipIn: 0 + m_Asset: {fileID: -1211865804559072499} + m_Duration: 13.833333333333334 + m_TimeScale: 1 + m_ParentTrack: {fileID: -6272534478882868843} + m_EaseInDuration: 0 + m_EaseOutDuration: 0 + m_BlendInDuration: 0 + m_BlendOutDuration: 0 + m_MixInCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_MixOutCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_BlendInCurveMode: 0 + m_BlendOutCurveMode: 0 + m_ExposedParameterNames: [] + m_AnimationCurves: {fileID: 0} + m_Recordable: 0 + m_PostExtrapolationMode: 0 + m_PreExtrapolationMode: 0 + m_PostExtrapolationTime: 0 + m_PreExtrapolationTime: 0 + m_DisplayName: Active + m_Markers: + m_Objects: [] + m_PostPlaybackState: 3 +--- !u!114 &-4849378385594947304 +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: 030f85c3f73729f4f976f66ffb23b875, type: 3} + m_Name: AnimationPlayableAsset + m_EditorClassIdentifier: Unity.Timeline::UnityEngine.Timeline.AnimationPlayableAsset + m_Clip: {fileID: 7400000, guid: 1615db2940cf8d245ba87f6aacdb59b2, type: 2} + m_Position: {x: 0, y: 0, z: 0} + m_EulerAngles: {x: 0, y: 0, z: 0} + m_UseTrackMatchFields: 1 + m_MatchTargetFields: 63 + m_RemoveStartOffset: 1 + m_ApplyFootIK: 1 + m_Loop: 0 + m_Version: 1 + m_Rotation: {x: 0, y: 0, z: 0, w: 1} +--- !u!114 &-3102460805540802631 +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: 90fb794a295e73545af71bcdb7375791, type: 3} + m_Name: CinemachineShot + m_EditorClassIdentifier: Unity.Cinemachine::Unity.Cinemachine.CinemachineShot + DisplayName: + VirtualCamera: + exposedName: 4c6ffb9566bdddb47b161ebd4dea9ce3 + defaultValue: {fileID: 0} +--- !u!114 &-3047534414781408496 +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: b46e36075dd1c124a8422c228e75e1fb, type: 3} + m_Name: Signal Track + m_EditorClassIdentifier: Unity.Timeline::UnityEngine.Timeline.SignalTrack + m_Version: 3 + m_AnimClip: {fileID: 0} + m_Locked: 0 + m_Muted: 0 + m_CustomPlayableFullTypename: + m_Curves: {fileID: 0} + m_Parent: {fileID: 11400000} + m_Children: [] + m_Clips: [] + m_Markers: + m_Objects: + - {fileID: -9095928061061461561} + - {fileID: 4551036728787644330} + - {fileID: 206593526081237957} +--- !u!114 &-2754957851706237243 +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: 030f85c3f73729f4f976f66ffb23b875, type: 3} + m_Name: AnimationPlayableAsset + m_EditorClassIdentifier: Unity.Timeline::UnityEngine.Timeline.AnimationPlayableAsset + m_Clip: {fileID: 7400000, guid: 6b220c077708d584289f59d3869d76bc, type: 2} + m_Position: {x: 0, y: 0, z: 0} + m_EulerAngles: {x: 0, y: 0, z: 0} + m_UseTrackMatchFields: 1 + m_MatchTargetFields: 63 + m_RemoveStartOffset: 1 + m_ApplyFootIK: 1 + m_Loop: 0 + m_Version: 1 + m_Rotation: {x: 0, y: 0, z: 0, w: 1} +--- !u!114 &-1886939274057701863 +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: 030f85c3f73729f4f976f66ffb23b875, type: 3} + m_Name: AnimationPlayableAsset + m_EditorClassIdentifier: Unity.Timeline::UnityEngine.Timeline.AnimationPlayableAsset + m_Clip: {fileID: 7400000, guid: c8f543cab5b293545a136e6321bcd98e, type: 2} + m_Position: {x: 0, y: 0, z: 0} + m_EulerAngles: {x: 0, y: 0, z: 0} + m_UseTrackMatchFields: 1 + m_MatchTargetFields: 63 + m_RemoveStartOffset: 1 + m_ApplyFootIK: 1 + m_Loop: 1 + m_Version: 1 + m_Rotation: {x: 0, y: 0, z: 0, w: 1} +--- !u!114 &-1211865804559072499 +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: fde0d25a170598d46a0b9dc16b4527a5, type: 3} + m_Name: ActivationPlayableAsset + m_EditorClassIdentifier: Unity.Timeline::UnityEngine.Timeline.ActivationPlayableAsset +--- !u!114 &-727781528643406096 +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: 05acc715f855ced458d76ee6f8ac6c61, type: 3} + m_Name: Cinemachine Track + m_EditorClassIdentifier: Unity.Cinemachine::Unity.Cinemachine.CinemachineTrack + m_Version: 3 + m_AnimClip: {fileID: 0} + m_Locked: 0 + m_Muted: 0 + m_CustomPlayableFullTypename: + m_Curves: {fileID: 0} + m_Parent: {fileID: 11400000} + m_Children: [] + m_Clips: + - m_Version: 1 + m_Start: 0 + m_ClipIn: 0 + m_Asset: {fileID: -3102460805540802631} + m_Duration: 9.566666666666666 + m_TimeScale: 1 + m_ParentTrack: {fileID: -727781528643406096} + m_EaseInDuration: 0 + m_EaseOutDuration: 0 + m_BlendInDuration: -1 + m_BlendOutDuration: 1.5666666666666664 + m_MixInCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_MixOutCurve: + serializedVersion: 2 + m_Curve: [] + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_BlendInCurveMode: 0 + m_BlendOutCurveMode: 0 + m_ExposedParameterNames: [] + m_AnimationCurves: {fileID: 0} + m_Recordable: 0 + m_PostExtrapolationMode: 0 + m_PreExtrapolationMode: 0 + m_PostExtrapolationTime: 0 + m_PreExtrapolationTime: 0 + m_DisplayName: DollyCamera + - m_Version: 1 + m_Start: 8 + m_ClipIn: 0 + m_Asset: {fileID: 3402378795820184593} + m_Duration: 5.833333333333334 + m_TimeScale: 1 + m_ParentTrack: {fileID: -727781528643406096} + m_EaseInDuration: 0 + m_EaseOutDuration: 0 + m_BlendInDuration: 1.5666666666666664 + m_BlendOutDuration: 1.8000000000000007 + m_MixInCurve: + serializedVersion: 2 + m_Curve: [] + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_MixOutCurve: + serializedVersion: 2 + m_Curve: [] + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_BlendInCurveMode: 0 + m_BlendOutCurveMode: 0 + m_ExposedParameterNames: [] + m_AnimationCurves: {fileID: 0} + m_Recordable: 0 + m_PostExtrapolationMode: 0 + m_PreExtrapolationMode: 0 + m_PostExtrapolationTime: 0 + m_PreExtrapolationTime: 0 + m_DisplayName: FocusCamera + - m_Version: 1 + m_Start: 12.033333333333333 + m_ClipIn: 0 + m_Asset: {fileID: 6519620860306194181} + m_Duration: 1.9666666666666668 + m_TimeScale: 1 + m_ParentTrack: {fileID: -727781528643406096} + m_EaseInDuration: 0 + m_EaseOutDuration: 0 + m_BlendInDuration: 1.8000000000000007 + m_BlendOutDuration: -1 + m_MixInCurve: + serializedVersion: 2 + m_Curve: [] + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_MixOutCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_BlendInCurveMode: 0 + m_BlendOutCurveMode: 0 + m_ExposedParameterNames: [] + m_AnimationCurves: {fileID: 0} + m_Recordable: 0 + m_PostExtrapolationMode: 0 + m_PreExtrapolationMode: 0 + m_PostExtrapolationTime: 0 + m_PreExtrapolationTime: 0 + m_DisplayName: GameplayCamera + m_Markers: + m_Objects: [] + TrackPriority: 0 +--- !u!114 &-482498204822702528 +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: d21dcc2386d650c4597f3633c75a1f98, type: 3} + m_Name: Animation Track (2) + m_EditorClassIdentifier: Unity.Timeline::UnityEngine.Timeline.AnimationTrack + m_Version: 3 + m_AnimClip: {fileID: 0} + m_Locked: 0 + m_Muted: 0 + m_CustomPlayableFullTypename: + m_Curves: {fileID: 0} + m_Parent: {fileID: 11400000} + m_Children: [] + m_Clips: + - m_Version: 1 + m_Start: 9.887465299991891 + m_ClipIn: 0 + m_Asset: {fileID: -2754957851706237243} + m_Duration: 1.4333333333333333 + m_TimeScale: 1 + m_ParentTrack: {fileID: -482498204822702528} + m_EaseInDuration: 0 + m_EaseOutDuration: 0 + m_BlendInDuration: -1 + m_BlendOutDuration: -1 + m_MixInCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_MixOutCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_BlendInCurveMode: 0 + m_BlendOutCurveMode: 0 + m_ExposedParameterNames: [] + m_AnimationCurves: {fileID: 0} + m_Recordable: 0 + m_PostExtrapolationMode: 1 + m_PreExtrapolationMode: 1 + m_PostExtrapolationTime: Infinity + m_PreExtrapolationTime: 9.887465299991891 + m_DisplayName: Machine_explode + m_Markers: + m_Objects: [] + m_InfiniteClipPreExtrapolation: 0 + m_InfiniteClipPostExtrapolation: 0 + m_InfiniteClipOffsetPosition: {x: 0, y: 0, z: 0} + m_InfiniteClipOffsetEulerAngles: {x: 0, y: 0, z: 0} + m_InfiniteClipTimeOffset: 0 + m_InfiniteClipRemoveOffset: 0 + m_InfiniteClipApplyFootIK: 1 + mInfiniteClipLoop: 0 + m_MatchTargetFields: 63 + m_Position: {x: 0, y: 0, z: 0} + m_EulerAngles: {x: 0, y: 0, z: 0} + m_AvatarMask: {fileID: 0} + m_ApplyAvatarMask: 1 + m_TrackOffset: 0 + m_InfiniteClip: {fileID: 0} + m_OpenClipOffsetRotation: {x: 0, y: 0, z: 0, w: 1} + m_Rotation: {x: 0, y: 0, z: 0, w: 1} + m_ApplyOffsets: 0 +--- !u!114 &-205668645521326121 +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: 030f85c3f73729f4f976f66ffb23b875, type: 3} + m_Name: AnimationPlayableAsset + m_EditorClassIdentifier: Unity.Timeline::UnityEngine.Timeline.AnimationPlayableAsset + m_Clip: {fileID: 7400000, guid: 6badee07711138a42949c8da798ddec4, type: 2} + m_Position: {x: 0, y: 0, z: 0} + m_EulerAngles: {x: 0, y: 0, z: 0} + m_UseTrackMatchFields: 1 + m_MatchTargetFields: 63 + m_RemoveStartOffset: 1 + m_ApplyFootIK: 1 + m_Loop: 0 + m_Version: 1 + m_Rotation: {x: 0, y: 0, z: 0, w: 1} +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: bfda56da833e2384a9677cd3c976a436, type: 3} + m_Name: FactoryIntroTimeline + m_EditorClassIdentifier: Unity.Timeline::UnityEngine.Timeline.TimelineAsset + m_Version: 0 + m_Tracks: + - {fileID: 4729252056977678481} + - {fileID: -6272534478882868843} + - {fileID: -727781528643406096} + - {fileID: 6171170372369797488} + - {fileID: 3174414979484781440} + - {fileID: -3047534414781408496} + - {fileID: -482498204822702528} + - {fileID: -6287170530102907080} + - {fileID: 4011586813017667051} + m_FixedDuration: 0 + m_EditorSettings: + m_Framerate: 30 + m_ScenePreview: 1 + m_DurationMode: 0 + m_MarkerTrack: {fileID: 0} +--- !u!114 &206593526081237957 +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: 15c38f6fa1940124db1ab7f6fe7268d1, type: 3} + m_Name: Signal Emitter + m_EditorClassIdentifier: Unity.Timeline::UnityEngine.Timeline.SignalEmitter + m_Time: 0 + m_Retroactive: 0 + m_EmitOnce: 0 + m_Asset: {fileID: 11400000, guid: fc40e2ad40f81aa4595bdf7a53dc58b3, type: 2} +--- !u!114 &3174414979484781440 +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: d21dcc2386d650c4597f3633c75a1f98, type: 3} + m_Name: Animation Track (1) + m_EditorClassIdentifier: Unity.Timeline::UnityEngine.Timeline.AnimationTrack + m_Version: 3 + m_AnimClip: {fileID: 0} + m_Locked: 0 + m_Muted: 0 + m_CustomPlayableFullTypename: + m_Curves: {fileID: 0} + m_Parent: {fileID: 11400000} + m_Children: [] + m_Clips: + - m_Version: 1 + m_Start: 0 + m_ClipIn: 0 + m_Asset: {fileID: -1886939274057701863} + m_Duration: 11.033333333333333 + m_TimeScale: 1 + m_ParentTrack: {fileID: 3174414979484781440} + m_EaseInDuration: 0 + m_EaseOutDuration: 0 + m_BlendInDuration: -1 + m_BlendOutDuration: -1 + m_MixInCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_MixOutCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_BlendInCurveMode: 0 + m_BlendOutCurveMode: 0 + m_ExposedParameterNames: [] + m_AnimationCurves: {fileID: 0} + m_Recordable: 0 + m_PostExtrapolationMode: 2 + m_PreExtrapolationMode: 1 + m_PostExtrapolationTime: Infinity + m_PreExtrapolationTime: 0 + m_DisplayName: CardPrintingMachine_Printing + m_Markers: + m_Objects: [] + m_InfiniteClipPreExtrapolation: 0 + m_InfiniteClipPostExtrapolation: 0 + m_InfiniteClipOffsetPosition: {x: 0, y: 0, z: 0} + m_InfiniteClipOffsetEulerAngles: {x: 0, y: 0, z: 0} + m_InfiniteClipTimeOffset: 0 + m_InfiniteClipRemoveOffset: 0 + m_InfiniteClipApplyFootIK: 1 + mInfiniteClipLoop: 0 + m_MatchTargetFields: 63 + m_Position: {x: 0, y: 0, z: 0} + m_EulerAngles: {x: 0, y: 0, z: 0} + m_AvatarMask: {fileID: 0} + m_ApplyAvatarMask: 1 + m_TrackOffset: 0 + m_InfiniteClip: {fileID: 0} + m_OpenClipOffsetRotation: {x: 0, y: 0, z: 0, w: 1} + m_Rotation: {x: 0, y: 0, z: 0, w: 1} + m_ApplyOffsets: 0 +--- !u!114 &3402378795820184593 +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: 90fb794a295e73545af71bcdb7375791, type: 3} + m_Name: CinemachineShot + m_EditorClassIdentifier: Unity.Cinemachine::Unity.Cinemachine.CinemachineShot + DisplayName: + VirtualCamera: + exposedName: 6283adbc9ff37874fb5f6c24d698acf5 + defaultValue: {fileID: 0} +--- !u!114 &4011586813017667051 +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: b46e36075dd1c124a8422c228e75e1fb, type: 3} + m_Name: Signal Track (1) + m_EditorClassIdentifier: Unity.Timeline::UnityEngine.Timeline.SignalTrack + m_Version: 3 + m_AnimClip: {fileID: 0} + m_Locked: 0 + m_Muted: 0 + m_CustomPlayableFullTypename: + m_Curves: {fileID: 0} + m_Parent: {fileID: 11400000} + m_Children: [] + m_Clips: [] + m_Markers: + m_Objects: + - {fileID: 5452827367277067926} +--- !u!114 &4551036728787644330 +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: 15c38f6fa1940124db1ab7f6fe7268d1, type: 3} + m_Name: Signal Emitter + m_EditorClassIdentifier: Unity.Timeline::UnityEngine.Timeline.SignalEmitter + m_Time: 11.3 + m_Retroactive: 0 + m_EmitOnce: 0 + m_Asset: {fileID: 11400000, guid: 50cc58e8ee01bf841a920508fe336516, type: 2} +--- !u!114 &4729252056977678481 +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: 21bf7f712d84d26478ebe6a299f21738, type: 3} + m_Name: Activation Track + m_EditorClassIdentifier: Unity.Timeline::UnityEngine.Timeline.ActivationTrack + m_Version: 3 + m_AnimClip: {fileID: 0} + m_Locked: 0 + m_Muted: 0 + m_CustomPlayableFullTypename: + m_Curves: {fileID: 0} + m_Parent: {fileID: 11400000} + m_Children: [] + m_Clips: + - m_Version: 1 + m_Start: 0 + m_ClipIn: 0 + m_Asset: {fileID: 8687914112232772499} + m_Duration: 13.833333333333334 + m_TimeScale: 1 + m_ParentTrack: {fileID: 4729252056977678481} + m_EaseInDuration: 0 + m_EaseOutDuration: 0 + m_BlendInDuration: 0 + m_BlendOutDuration: 0 + m_MixInCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_MixOutCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_BlendInCurveMode: 0 + m_BlendOutCurveMode: 0 + m_ExposedParameterNames: [] + m_AnimationCurves: {fileID: 0} + m_Recordable: 0 + m_PostExtrapolationMode: 0 + m_PreExtrapolationMode: 0 + m_PostExtrapolationTime: 0 + m_PreExtrapolationTime: 0 + m_DisplayName: Active + m_Markers: + m_Objects: [] + m_PostPlaybackState: 3 +--- !u!114 &5452827367277067926 +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: 15c38f6fa1940124db1ab7f6fe7268d1, type: 3} + m_Name: Signal Emitter + m_EditorClassIdentifier: Unity.Timeline::UnityEngine.Timeline.SignalEmitter + m_Time: 10.2 + m_Retroactive: 0 + m_EmitOnce: 0 + m_Asset: {fileID: 11400000, guid: f6e768cb2846e014897c467c13e9377a, type: 2} +--- !u!114 &6171170372369797488 +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: d21dcc2386d650c4597f3633c75a1f98, type: 3} + m_Name: Animation Track + m_EditorClassIdentifier: Unity.Timeline::UnityEngine.Timeline.AnimationTrack + m_Version: 3 + m_AnimClip: {fileID: 0} + m_Locked: 0 + m_Muted: 0 + m_CustomPlayableFullTypename: + m_Curves: {fileID: 0} + m_Parent: {fileID: 11400000} + m_Children: [] + m_Clips: + - m_Version: 1 + m_Start: 0 + m_ClipIn: 0 + m_Asset: {fileID: -205668645521326121} + m_Duration: 9 + m_TimeScale: 1 + m_ParentTrack: {fileID: 6171170372369797488} + m_EaseInDuration: 0 + m_EaseOutDuration: 0 + m_BlendInDuration: -1 + m_BlendOutDuration: -1 + m_MixInCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_MixOutCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_BlendInCurveMode: 0 + m_BlendOutCurveMode: 0 + m_ExposedParameterNames: [] + m_AnimationCurves: {fileID: 0} + m_Recordable: 0 + m_PostExtrapolationMode: 1 + m_PreExtrapolationMode: 1 + m_PostExtrapolationTime: Infinity + m_PreExtrapolationTime: 0 + m_DisplayName: IntroCameraDolly + m_Markers: + m_Objects: [] + m_InfiniteClipPreExtrapolation: 0 + m_InfiniteClipPostExtrapolation: 0 + m_InfiniteClipOffsetPosition: {x: 0, y: 0, z: 0} + m_InfiniteClipOffsetEulerAngles: {x: 0, y: 0, z: 0} + m_InfiniteClipTimeOffset: 0 + m_InfiniteClipRemoveOffset: 0 + m_InfiniteClipApplyFootIK: 1 + mInfiniteClipLoop: 0 + m_MatchTargetFields: 63 + m_Position: {x: 0, y: 0, z: 0} + m_EulerAngles: {x: 0, y: 0, z: 0} + m_AvatarMask: {fileID: 0} + m_ApplyAvatarMask: 1 + m_TrackOffset: 0 + m_InfiniteClip: {fileID: 0} + m_OpenClipOffsetRotation: {x: 0, y: 0, z: 0, w: 1} + m_Rotation: {x: 0, y: 0, z: 0, w: 1} + m_ApplyOffsets: 0 +--- !u!114 &6519620860306194181 +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: 90fb794a295e73545af71bcdb7375791, type: 3} + m_Name: CinemachineShot + m_EditorClassIdentifier: Unity.Cinemachine::Unity.Cinemachine.CinemachineShot + DisplayName: + VirtualCamera: + exposedName: d88b5310ac3f22a46a9c5f0ec05b2cc8 + defaultValue: {fileID: 0} +--- !u!114 &8687914112232772499 +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: fde0d25a170598d46a0b9dc16b4527a5, type: 3} + m_Name: ActivationPlayableAsset + m_EditorClassIdentifier: Unity.Timeline::UnityEngine.Timeline.ActivationPlayableAsset diff --git a/Assets/Art/Cinematics/Factory/FactoryIntroTimeline.playable.meta b/Assets/Art/Cinematics/Factory/FactoryIntroTimeline.playable.meta new file mode 100644 index 00000000..bc07c35d --- /dev/null +++ b/Assets/Art/Cinematics/Factory/FactoryIntroTimeline.playable.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 04513080f1b7ba446b8584d74f2a962c +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Art/Cinematics/Factory/IntroCamera.controller b/Assets/Art/Cinematics/Factory/IntroCamera.controller new file mode 100644 index 00000000..23c535c6 --- /dev/null +++ b/Assets/Art/Cinematics/Factory/IntroCamera.controller @@ -0,0 +1,101 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1107 &-6484590902691764050 +AnimatorStateMachine: + serializedVersion: 6 + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Base Layer + m_ChildStates: + - serializedVersion: 1 + m_State: {fileID: -688496058071959580} + m_Position: {x: 200, y: 0, z: 0} + - serializedVersion: 1 + m_State: {fileID: 7748524414974568688} + m_Position: {x: 235, y: 65, z: 0} + m_ChildStateMachines: [] + m_AnyStateTransitions: [] + m_EntryTransitions: [] + m_StateMachineTransitions: {} + m_StateMachineBehaviours: [] + m_AnyStatePosition: {x: 50, y: 20, z: 0} + m_EntryPosition: {x: 50, y: 120, z: 0} + m_ExitPosition: {x: 800, y: 120, z: 0} + m_ParentStateMachinePosition: {x: 800, y: 20, z: 0} + m_DefaultState: {fileID: -688496058071959580} +--- !u!1102 &-688496058071959580 +AnimatorState: + serializedVersion: 6 + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: IntroCameraPan + m_Speed: 1 + m_CycleOffset: 0 + m_Transitions: [] + m_StateMachineBehaviours: [] + m_Position: {x: 50, y: 50, z: 0} + m_IKOnFeet: 0 + m_WriteDefaultValues: 1 + m_Mirror: 0 + m_SpeedParameterActive: 0 + m_MirrorParameterActive: 0 + m_CycleOffsetParameterActive: 0 + m_TimeParameterActive: 0 + m_Motion: {fileID: 7400000, guid: 0680383f2c43345488fb3bf4825b277e, type: 2} + m_Tag: + m_SpeedParameter: + m_MirrorParameter: + m_CycleOffsetParameter: + m_TimeParameter: +--- !u!91 &9100000 +AnimatorController: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: IntroCamera + serializedVersion: 5 + m_AnimatorParameters: [] + m_AnimatorLayers: + - serializedVersion: 5 + m_Name: Base Layer + m_StateMachine: {fileID: -6484590902691764050} + m_Mask: {fileID: 0} + m_Motions: [] + m_Behaviours: [] + m_BlendingMode: 0 + m_SyncedLayerIndex: -1 + m_DefaultWeight: 0 + m_IKPass: 0 + m_SyncedLayerAffectsTiming: 0 + m_Controller: {fileID: 9100000} +--- !u!1102 &7748524414974568688 +AnimatorState: + serializedVersion: 6 + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: IntroCameraDolly + m_Speed: 1 + m_CycleOffset: 0 + m_Transitions: [] + m_StateMachineBehaviours: [] + m_Position: {x: 50, y: 50, z: 0} + m_IKOnFeet: 0 + m_WriteDefaultValues: 1 + m_Mirror: 0 + m_SpeedParameterActive: 0 + m_MirrorParameterActive: 0 + m_CycleOffsetParameterActive: 0 + m_TimeParameterActive: 0 + m_Motion: {fileID: 7400000, guid: 6badee07711138a42949c8da798ddec4, type: 2} + m_Tag: + m_SpeedParameter: + m_MirrorParameter: + m_CycleOffsetParameter: + m_TimeParameter: diff --git a/Assets/Art/Cinematics/Factory/IntroCamera.controller.meta b/Assets/Art/Cinematics/Factory/IntroCamera.controller.meta new file mode 100644 index 00000000..921e912b --- /dev/null +++ b/Assets/Art/Cinematics/Factory/IntroCamera.controller.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: cb52439326f0dfd4081f11e37b78525e +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 9100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Art/Cinematics/Factory/IntroCameraDolly.anim b/Assets/Art/Cinematics/Factory/IntroCameraDolly.anim new file mode 100644 index 00000000..85973431 --- /dev/null +++ b/Assets/Art/Cinematics/Factory/IntroCameraDolly.anim @@ -0,0 +1,122 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!74 &7400000 +AnimationClip: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: IntroCameraDolly + serializedVersion: 7 + m_Legacy: 0 + m_Compressed: 0 + m_UseHighQualityCurve: 1 + m_RotationCurves: [] + m_CompressedRotationCurves: [] + m_EulerCurves: [] + m_PositionCurves: [] + m_ScaleCurves: [] + m_FloatCurves: + - serializedVersion: 2 + curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 9 + value: 0.9999 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_SplineSettings.Position + path: + classID: 114 + script: {fileID: 11500000, guid: 90eebaab98e4b44b0ba8c79821e554e1, type: 3} + flags: 0 + m_PPtrCurves: [] + m_SampleRate: 30 + m_WrapMode: 0 + m_Bounds: + m_Center: {x: 0, y: 0, z: 0} + m_Extent: {x: 0, y: 0, z: 0} + m_ClipBindingConstant: + genericBindings: + - serializedVersion: 2 + path: 0 + attribute: 1440463563 + script: {fileID: 11500000, guid: 90eebaab98e4b44b0ba8c79821e554e1, type: 3} + typeID: 114 + customType: 0 + isPPtrCurve: 0 + isIntCurve: 0 + isSerializeReferenceCurve: 0 + pptrCurveMapping: [] + m_AnimationClipSettings: + serializedVersion: 2 + m_AdditiveReferencePoseClip: {fileID: 0} + m_AdditiveReferencePoseTime: 0 + m_StartTime: 0 + m_StopTime: 9 + m_OrientationOffsetY: 0 + m_Level: 0 + m_CycleOffset: 0 + m_HasAdditiveReferencePose: 0 + m_LoopTime: 1 + m_LoopBlend: 0 + m_LoopBlendOrientation: 0 + m_LoopBlendPositionY: 0 + m_LoopBlendPositionXZ: 0 + m_KeepOriginalOrientation: 0 + m_KeepOriginalPositionY: 1 + m_KeepOriginalPositionXZ: 0 + m_HeightFromFeet: 0 + m_Mirror: 0 + m_EditorCurves: + - serializedVersion: 2 + curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 9 + value: 0.9999 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_SplineSettings.Position + path: + classID: 114 + script: {fileID: 11500000, guid: 90eebaab98e4b44b0ba8c79821e554e1, type: 3} + flags: 0 + m_EulerEditorCurves: [] + m_HasGenericRootTransform: 0 + m_HasMotionFloatCurves: 0 + m_Events: [] diff --git a/Assets/Art/Cinematics/Factory/IntroCameraDolly.anim.meta b/Assets/Art/Cinematics/Factory/IntroCameraDolly.anim.meta new file mode 100644 index 00000000..950ed342 --- /dev/null +++ b/Assets/Art/Cinematics/Factory/IntroCameraDolly.anim.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 6badee07711138a42949c8da798ddec4 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 7400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Art/Cinematics/Factory/IntroCameraPan.anim b/Assets/Art/Cinematics/Factory/IntroCameraPan.anim new file mode 100644 index 00000000..a690a9e5 --- /dev/null +++ b/Assets/Art/Cinematics/Factory/IntroCameraPan.anim @@ -0,0 +1,285 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!74 &7400000 +AnimationClip: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: IntroCameraPan + serializedVersion: 7 + m_Legacy: 0 + m_Compressed: 0 + m_UseHighQualityCurve: 1 + m_RotationCurves: [] + m_CompressedRotationCurves: [] + m_EulerCurves: [] + m_PositionCurves: + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: {x: 49.6, y: -24.3, z: -355.72003} + inSlope: {x: 0, y: 0, z: 0} + outSlope: {x: 0, y: 0, z: 0} + tangentMode: 0 + weightedMode: 0 + inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + - serializedVersion: 3 + time: 2.5 + value: {x: 49.6, y: -70.7, z: -355.72003} + inSlope: {x: 0, y: 0, z: 0} + outSlope: {x: 0, y: 0, z: 0} + tangentMode: 0 + weightedMode: 0 + inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + - serializedVersion: 3 + time: 5 + value: {x: -42.1, y: -70.7, z: -355.72003} + inSlope: {x: 0, y: 0, z: 0} + outSlope: {x: 0, y: 0, z: 0} + tangentMode: 0 + weightedMode: 0 + inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + - serializedVersion: 3 + time: 7.4666667 + value: {x: -42.1, y: -24.6, z: -355.72003} + inSlope: {x: 0, y: 0, z: 0} + outSlope: {x: 0, y: 0, z: 0} + tangentMode: 0 + weightedMode: 0 + inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + - serializedVersion: 3 + time: 9.966666 + value: {x: -9.2, y: -67.6, z: -355.72003} + inSlope: {x: 0, y: 0, z: 0} + outSlope: {x: 0, y: 0, z: 0} + tangentMode: 0 + weightedMode: 0 + inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + path: + m_ScaleCurves: [] + m_FloatCurves: [] + m_PPtrCurves: [] + m_SampleRate: 30 + m_WrapMode: 0 + m_Bounds: + m_Center: {x: 0, y: 0, z: 0} + m_Extent: {x: 0, y: 0, z: 0} + m_ClipBindingConstant: + genericBindings: + - serializedVersion: 2 + path: 0 + attribute: 1 + script: {fileID: 0} + typeID: 4 + customType: 0 + isPPtrCurve: 0 + isIntCurve: 0 + isSerializeReferenceCurve: 0 + pptrCurveMapping: [] + m_AnimationClipSettings: + serializedVersion: 2 + m_AdditiveReferencePoseClip: {fileID: 0} + m_AdditiveReferencePoseTime: 0 + m_StartTime: 0 + m_StopTime: 9.966666 + m_OrientationOffsetY: 0 + m_Level: 0 + m_CycleOffset: 0 + m_HasAdditiveReferencePose: 0 + m_LoopTime: 1 + m_LoopBlend: 0 + m_LoopBlendOrientation: 0 + m_LoopBlendPositionY: 0 + m_LoopBlendPositionXZ: 0 + m_KeepOriginalOrientation: 0 + m_KeepOriginalPositionY: 1 + m_KeepOriginalPositionXZ: 0 + m_HeightFromFeet: 0 + m_Mirror: 0 + m_EditorCurves: + - serializedVersion: 2 + curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 49.6 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 2.5 + value: 49.6 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 5 + value: -42.1 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 7.4666667 + value: -42.1 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 9.966666 + value: -9.2 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_LocalPosition.x + path: + classID: 4 + script: {fileID: 0} + flags: 0 + - serializedVersion: 2 + curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: -24.3 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 2.5 + value: -70.7 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 5 + value: -70.7 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 7.4666667 + value: -24.6 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 9.966666 + value: -67.6 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_LocalPosition.y + path: + classID: 4 + script: {fileID: 0} + flags: 0 + - serializedVersion: 2 + curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: -355.72003 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 2.5 + value: -355.72003 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 5 + value: -355.72003 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 7.4666667 + value: -355.72003 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 9.966666 + value: -355.72003 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_LocalPosition.z + path: + classID: 4 + script: {fileID: 0} + flags: 0 + m_EulerEditorCurves: [] + m_HasGenericRootTransform: 1 + m_HasMotionFloatCurves: 0 + m_Events: [] diff --git a/Assets/Art/Cinematics/Factory/IntroCameraPan.anim.meta b/Assets/Art/Cinematics/Factory/IntroCameraPan.anim.meta new file mode 100644 index 00000000..9407e968 --- /dev/null +++ b/Assets/Art/Cinematics/Factory/IntroCameraPan.anim.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 0680383f2c43345488fb3bf4825b277e +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 7400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Art/Cinematics/Factory/PrintMachineWorking.signal b/Assets/Art/Cinematics/Factory/PrintMachineWorking.signal new file mode 100644 index 00000000..db3570b8 --- /dev/null +++ b/Assets/Art/Cinematics/Factory/PrintMachineWorking.signal @@ -0,0 +1,14 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d6fa2d92fc1b3f34da284357edf89c3b, type: 3} + m_Name: PrintMachineWorking + m_EditorClassIdentifier: Unity.Timeline::UnityEngine.Timeline.SignalAsset diff --git a/Assets/Art/Cinematics/Factory/PrintMachineWorking.signal.meta b/Assets/Art/Cinematics/Factory/PrintMachineWorking.signal.meta new file mode 100644 index 00000000..8d43a511 --- /dev/null +++ b/Assets/Art/Cinematics/Factory/PrintMachineWorking.signal.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: fc40e2ad40f81aa4595bdf7a53dc58b3 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Art/Cinematics/Factory/ScreenShakeSignall.signal b/Assets/Art/Cinematics/Factory/ScreenShakeSignall.signal new file mode 100644 index 00000000..a48d6627 --- /dev/null +++ b/Assets/Art/Cinematics/Factory/ScreenShakeSignall.signal @@ -0,0 +1,14 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d6fa2d92fc1b3f34da284357edf89c3b, type: 3} + m_Name: ScreenShakeSignall + m_EditorClassIdentifier: Unity.Timeline::UnityEngine.Timeline.SignalAsset diff --git a/Assets/Art/Cinematics/Factory/ScreenShakeSignall.signal.meta b/Assets/Art/Cinematics/Factory/ScreenShakeSignall.signal.meta new file mode 100644 index 00000000..c6cf995d --- /dev/null +++ b/Assets/Art/Cinematics/Factory/ScreenShakeSignall.signal.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: f6e768cb2846e014897c467c13e9377a +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Art/Levels/CementFactory/Animation/Worker/worker_PantsFall_l.anim b/Assets/Art/Levels/CementFactory/Animation/Worker/worker_PantsFall_l.anim index 0d2cf0d0..9c347972 100644 --- a/Assets/Art/Levels/CementFactory/Animation/Worker/worker_PantsFall_l.anim +++ b/Assets/Art/Levels/CementFactory/Animation/Worker/worker_PantsFall_l.anim @@ -16,7 +16,28 @@ AnimationClip: m_EulerCurves: [] m_PositionCurves: [] m_ScaleCurves: [] - m_FloatCurves: [] + m_FloatCurves: + - serializedVersion: 2 + curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: Infinity + outSlope: Infinity + tangentMode: 103 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_FlipX + path: + classID: 212 + script: {fileID: 0} + flags: 0 m_PPtrCurves: - serializedVersion: 2 curve: @@ -138,6 +159,15 @@ AnimationClip: m_Extent: {x: 0, y: 0, z: 0} m_ClipBindingConstant: genericBindings: + - serializedVersion: 2 + path: 0 + attribute: 555744692 + script: {fileID: 0} + typeID: 212 + customType: 0 + isPPtrCurve: 0 + isIntCurve: 0 + isSerializeReferenceCurve: 0 - serializedVersion: 2 path: 0 attribute: 0 @@ -221,8 +251,43 @@ AnimationClip: m_KeepOriginalPositionXZ: 0 m_HeightFromFeet: 0 m_Mirror: 0 - m_EditorCurves: [] + m_EditorCurves: + - serializedVersion: 2 + curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: Infinity + outSlope: Infinity + tangentMode: 103 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_FlipX + path: + classID: 212 + script: {fileID: 0} + flags: 0 m_EulerEditorCurves: [] m_HasGenericRootTransform: 0 m_HasMotionFloatCurves: 0 - m_Events: [] + m_Events: + - time: 0.26666668 + functionName: PauseTween + data: + objectReferenceParameter: {fileID: 0} + floatParameter: 0 + intParameter: 0 + messageOptions: 0 + - time: 1.7333333 + functionName: WorkerGotUp + data: + objectReferenceParameter: {fileID: 0} + floatParameter: 0 + intParameter: 0 + messageOptions: 0 diff --git a/Assets/Art/Levels/CementFactory/Animation/Worker/worker_PantsFall_r.anim b/Assets/Art/Levels/CementFactory/Animation/Worker/worker_PantsFall_r.anim index 26015a36..df8b9727 100644 --- a/Assets/Art/Levels/CementFactory/Animation/Worker/worker_PantsFall_r.anim +++ b/Assets/Art/Levels/CementFactory/Animation/Worker/worker_PantsFall_r.anim @@ -276,4 +276,18 @@ AnimationClip: m_EulerEditorCurves: [] m_HasGenericRootTransform: 0 m_HasMotionFloatCurves: 0 - m_Events: [] + m_Events: + - time: 0.26666668 + functionName: PauseTween + data: + objectReferenceParameter: {fileID: 0} + floatParameter: 0 + intParameter: 0 + messageOptions: 0 + - time: 1.7333333 + functionName: WorkerGotUp + data: + objectReferenceParameter: {fileID: 0} + floatParameter: 0 + intParameter: 0 + messageOptions: 0 diff --git a/Assets/Art/Levels/CementFactory/Animation/Worker/worker_SnatchBelt.anim b/Assets/Art/Levels/CementFactory/Animation/Worker/worker_SnatchBelt.anim index 448bf44c..47dced82 100644 --- a/Assets/Art/Levels/CementFactory/Animation/Worker/worker_SnatchBelt.anim +++ b/Assets/Art/Levels/CementFactory/Animation/Worker/worker_SnatchBelt.anim @@ -217,8 +217,8 @@ AnimationClip: m_HasGenericRootTransform: 0 m_HasMotionFloatCurves: 0 m_Events: - - time: 0.1 - functionName: + - time: 1.6333333 + functionName: TransitionToReturnState data: objectReferenceParameter: {fileID: 0} floatParameter: 0 diff --git a/Assets/Art/Levels/CementFactory/Animation/Worker/worker_approachAndLiftSack.anim b/Assets/Art/Levels/CementFactory/Animation/Worker/worker_approachAndLiftSack.anim index 5f04ca75..9336ec02 100644 --- a/Assets/Art/Levels/CementFactory/Animation/Worker/worker_approachAndLiftSack.anim +++ b/Assets/Art/Levels/CementFactory/Animation/Worker/worker_approachAndLiftSack.anim @@ -126,4 +126,11 @@ AnimationClip: m_EulerEditorCurves: [] m_HasGenericRootTransform: 0 m_HasMotionFloatCurves: 0 - m_Events: [] + m_Events: + - time: 0.6333333 + functionName: EnableBeltInteraction + data: + objectReferenceParameter: {fileID: 0} + floatParameter: 0 + intParameter: 0 + messageOptions: 0 diff --git a/Assets/Art/Levels/CementFactory/Animation/Worker/worker_noPantsTurn_l.anim b/Assets/Art/Levels/CementFactory/Animation/Worker/worker_noPantsTurn_l.anim index 0290ce3d..77f734e3 100644 --- a/Assets/Art/Levels/CementFactory/Animation/Worker/worker_noPantsTurn_l.anim +++ b/Assets/Art/Levels/CementFactory/Animation/Worker/worker_noPantsTurn_l.anim @@ -16,7 +16,28 @@ AnimationClip: m_EulerCurves: [] m_PositionCurves: [] m_ScaleCurves: [] - m_FloatCurves: [] + m_FloatCurves: + - serializedVersion: 2 + curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: Infinity + outSlope: Infinity + tangentMode: 103 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_FlipX + path: + classID: 212 + script: {fileID: 0} + flags: 0 m_PPtrCurves: - serializedVersion: 2 curve: @@ -46,6 +67,15 @@ AnimationClip: m_Extent: {x: 0, y: 0, z: 0} m_ClipBindingConstant: genericBindings: + - serializedVersion: 2 + path: 0 + attribute: 555744692 + script: {fileID: 0} + typeID: 212 + customType: 0 + isPPtrCurve: 0 + isIntCurve: 0 + isSerializeReferenceCurve: 0 - serializedVersion: 2 path: 0 attribute: 0 @@ -83,7 +113,28 @@ AnimationClip: m_KeepOriginalPositionXZ: 0 m_HeightFromFeet: 0 m_Mirror: 0 - m_EditorCurves: [] + m_EditorCurves: + - serializedVersion: 2 + curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: Infinity + outSlope: Infinity + tangentMode: 103 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_FlipX + path: + classID: 212 + script: {fileID: 0} + flags: 0 m_EulerEditorCurves: [] m_HasGenericRootTransform: 0 m_HasMotionFloatCurves: 0 diff --git a/Assets/Art/Levels/CementFactory/Animation/Worker/worker_noPantsWalk_l.anim b/Assets/Art/Levels/CementFactory/Animation/Worker/worker_noPantsWalk_l.anim index 18bef58f..5d4fddd9 100644 --- a/Assets/Art/Levels/CementFactory/Animation/Worker/worker_noPantsWalk_l.anim +++ b/Assets/Art/Levels/CementFactory/Animation/Worker/worker_noPantsWalk_l.anim @@ -16,7 +16,28 @@ AnimationClip: m_EulerCurves: [] m_PositionCurves: [] m_ScaleCurves: [] - m_FloatCurves: [] + m_FloatCurves: + - serializedVersion: 2 + curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: Infinity + outSlope: Infinity + tangentMode: 103 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_FlipX + path: + classID: 212 + script: {fileID: 0} + flags: 0 m_PPtrCurves: - serializedVersion: 2 curve: @@ -74,6 +95,15 @@ AnimationClip: m_Extent: {x: 0, y: 0, z: 0} m_ClipBindingConstant: genericBindings: + - serializedVersion: 2 + path: 0 + attribute: 555744692 + script: {fileID: 0} + typeID: 212 + customType: 0 + isPPtrCurve: 0 + isIntCurve: 0 + isSerializeReferenceCurve: 0 - serializedVersion: 2 path: 0 attribute: 0 @@ -125,7 +155,28 @@ AnimationClip: m_KeepOriginalPositionXZ: 0 m_HeightFromFeet: 0 m_Mirror: 0 - m_EditorCurves: [] + m_EditorCurves: + - serializedVersion: 2 + curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: Infinity + outSlope: Infinity + tangentMode: 103 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_FlipX + path: + classID: 212 + script: {fileID: 0} + flags: 0 m_EulerEditorCurves: [] m_HasGenericRootTransform: 0 m_HasMotionFloatCurves: 0 diff --git a/Assets/Art/Levels/CementFactory/Animation/Worker/worker_walk_r.anim b/Assets/Art/Levels/CementFactory/Animation/Worker/worker_walk_r.anim index 37ed7422..b5711c58 100644 --- a/Assets/Art/Levels/CementFactory/Animation/Worker/worker_walk_r.anim +++ b/Assets/Art/Levels/CementFactory/Animation/Worker/worker_walk_r.anim @@ -16,7 +16,28 @@ AnimationClip: m_EulerCurves: [] m_PositionCurves: [] m_ScaleCurves: [] - m_FloatCurves: [] + m_FloatCurves: + - serializedVersion: 2 + curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: Infinity + outSlope: Infinity + tangentMode: 103 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_FlipX + path: + classID: 212 + script: {fileID: 0} + flags: 0 m_PPtrCurves: - serializedVersion: 2 curve: @@ -72,6 +93,15 @@ AnimationClip: m_Extent: {x: 0, y: 0, z: 0} m_ClipBindingConstant: genericBindings: + - serializedVersion: 2 + path: 0 + attribute: 555744692 + script: {fileID: 0} + typeID: 212 + customType: 0 + isPPtrCurve: 0 + isIntCurve: 0 + isSerializeReferenceCurve: 0 - serializedVersion: 2 path: 0 attribute: 0 @@ -122,7 +152,28 @@ AnimationClip: m_KeepOriginalPositionXZ: 0 m_HeightFromFeet: 0 m_Mirror: 0 - m_EditorCurves: [] + m_EditorCurves: + - serializedVersion: 2 + curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: Infinity + outSlope: Infinity + tangentMode: 103 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_FlipX + path: + classID: 212 + script: {fileID: 0} + flags: 0 m_EulerEditorCurves: [] m_HasGenericRootTransform: 0 m_HasMotionFloatCurves: 0 diff --git a/Assets/Art/Levels/CementFactory/Animation/Worker/worker_walk_turn_r.anim b/Assets/Art/Levels/CementFactory/Animation/Worker/worker_walk_turn_r.anim index d4a8f53f..b3070ccf 100644 --- a/Assets/Art/Levels/CementFactory/Animation/Worker/worker_walk_turn_r.anim +++ b/Assets/Art/Levels/CementFactory/Animation/Worker/worker_walk_turn_r.anim @@ -16,7 +16,28 @@ AnimationClip: m_EulerCurves: [] m_PositionCurves: [] m_ScaleCurves: [] - m_FloatCurves: [] + m_FloatCurves: + - serializedVersion: 2 + curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: Infinity + outSlope: Infinity + tangentMode: 103 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_FlipX + path: + classID: 212 + script: {fileID: 0} + flags: 0 m_PPtrCurves: - serializedVersion: 2 curve: @@ -42,6 +63,15 @@ AnimationClip: m_Extent: {x: 0, y: 0, z: 0} m_ClipBindingConstant: genericBindings: + - serializedVersion: 2 + path: 0 + attribute: 555744692 + script: {fileID: 0} + typeID: 212 + customType: 0 + isPPtrCurve: 0 + isIntCurve: 0 + isSerializeReferenceCurve: 0 - serializedVersion: 2 path: 0 attribute: 0 @@ -77,7 +107,28 @@ AnimationClip: m_KeepOriginalPositionXZ: 0 m_HeightFromFeet: 0 m_Mirror: 0 - m_EditorCurves: [] + m_EditorCurves: + - serializedVersion: 2 + curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: Infinity + outSlope: Infinity + tangentMode: 103 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_FlipX + path: + classID: 212 + script: {fileID: 0} + flags: 0 m_EulerEditorCurves: [] m_HasGenericRootTransform: 0 m_HasMotionFloatCurves: 0 diff --git a/Assets/Art/Levels/CementFactory/Sprites/Characters/Worker/WalkingWorker_NoPants.controller b/Assets/Art/Levels/CementFactory/Sprites/Characters/Worker/WalkingWorker_NoPants.controller new file mode 100644 index 00000000..01b3e019 --- /dev/null +++ b/Assets/Art/Levels/CementFactory/Sprites/Characters/Worker/WalkingWorker_NoPants.controller @@ -0,0 +1,517 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &-7559709786221121258 +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: 2ade37431c2ce3f498221263298558ff, type: 3} + m_Name: + m_EditorClassIdentifier: Assembly-CSharp::ResetTrigger + triggerToReset: shouldFall? +--- !u!114 &-7400305621533718299 +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: 2ade37431c2ce3f498221263298558ff, type: 3} + m_Name: + m_EditorClassIdentifier: Assembly-CSharp::ResetTrigger + triggerToReset: shouldFall? +--- !u!114 &-6778143586135497295 +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: 5a1c7afe0aaa3f94e87d17a0795a0aa2, type: 3} + m_Name: + m_EditorClassIdentifier: '::' +--- !u!1102 &-6567889547732147609 +AnimatorState: + serializedVersion: 6 + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: worker_noPantsWalk_r + m_Speed: 1 + m_CycleOffset: 0 + m_Transitions: + - {fileID: -2209893457913046377} + - {fileID: 6809965347497371432} + m_StateMachineBehaviours: [] + m_Position: {x: 50, y: 50, z: 0} + m_IKOnFeet: 0 + m_WriteDefaultValues: 1 + m_Mirror: 0 + m_SpeedParameterActive: 0 + m_MirrorParameterActive: 0 + m_CycleOffsetParameterActive: 0 + m_TimeParameterActive: 0 + m_Motion: {fileID: 7400000, guid: b516fcb66c5323b46afb777e0ad49be7, type: 2} + m_Tag: + m_SpeedParameter: + m_MirrorParameter: + m_CycleOffsetParameter: + m_TimeParameter: +--- !u!1101 &-5339321826386231782 +AnimatorStateTransition: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: + m_Conditions: [] + m_DstStateMachine: {fileID: 0} + m_DstState: {fileID: -2592505286661766779} + m_Solo: 0 + m_Mute: 0 + m_IsExit: 0 + serializedVersion: 3 + m_TransitionDuration: 0 + m_TransitionOffset: 0.34060892 + m_ExitTime: 0.9934487 + m_HasExitTime: 1 + m_HasFixedDuration: 1 + m_InterruptionSource: 0 + m_OrderedInterruption: 1 + m_CanTransitionToSelf: 1 +--- !u!1101 &-4911838176500225459 +AnimatorStateTransition: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: + m_Conditions: + - m_ConditionMode: 1 + m_ConditionEvent: shouldFall? + m_EventTreshold: 0 + m_DstStateMachine: {fileID: 0} + m_DstState: {fileID: -129613960355832961} + m_Solo: 0 + m_Mute: 0 + m_IsExit: 0 + serializedVersion: 3 + m_TransitionDuration: 0 + m_TransitionOffset: 0.14150952 + m_ExitTime: 1 + m_HasExitTime: 0 + m_HasFixedDuration: 1 + m_InterruptionSource: 0 + m_OrderedInterruption: 1 + m_CanTransitionToSelf: 1 +--- !u!1101 &-4623195881401911605 +AnimatorStateTransition: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: + m_Conditions: + - m_ConditionMode: 1 + m_ConditionEvent: walkingRight? + m_EventTreshold: 0 + m_DstStateMachine: {fileID: 0} + m_DstState: {fileID: 7979021593183280829} + m_Solo: 0 + m_Mute: 0 + m_IsExit: 0 + serializedVersion: 3 + m_TransitionDuration: 0 + m_TransitionOffset: 1.0738486 + m_ExitTime: 1.0008069 + m_HasExitTime: 0 + m_HasFixedDuration: 1 + m_InterruptionSource: 0 + m_OrderedInterruption: 1 + m_CanTransitionToSelf: 1 +--- !u!1101 &-4246026034738526664 +AnimatorStateTransition: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: + m_Conditions: [] + m_DstStateMachine: {fileID: 0} + m_DstState: {fileID: -6567889547732147609} + m_Solo: 0 + m_Mute: 0 + m_IsExit: 0 + serializedVersion: 3 + m_TransitionDuration: 0 + m_TransitionOffset: 0.3329118 + m_ExitTime: 0.99873567 + m_HasExitTime: 1 + m_HasFixedDuration: 1 + m_InterruptionSource: 0 + m_OrderedInterruption: 1 + m_CanTransitionToSelf: 1 +--- !u!1101 &-4140271114307507140 +AnimatorStateTransition: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: + m_Conditions: [] + m_DstStateMachine: {fileID: 0} + m_DstState: {fileID: -2592505286661766779} + m_Solo: 0 + m_Mute: 0 + m_IsExit: 0 + serializedVersion: 3 + m_TransitionDuration: 0 + m_TransitionOffset: 0.33330896 + m_ExitTime: 0.9999275 + m_HasExitTime: 1 + m_HasFixedDuration: 1 + m_InterruptionSource: 0 + m_OrderedInterruption: 1 + m_CanTransitionToSelf: 1 +--- !u!1107 &-4102663254947421282 +AnimatorStateMachine: + serializedVersion: 6 + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: NoPants + m_ChildStates: + - serializedVersion: 1 + m_State: {fileID: -2592505286661766779} + m_Position: {x: 140, y: 290, z: 0} + - serializedVersion: 1 + m_State: {fileID: 7979021593183280829} + m_Position: {x: 460, y: 230, z: 0} + - serializedVersion: 1 + m_State: {fileID: -129613960355832961} + m_Position: {x: 140, y: 460, z: 0} + - serializedVersion: 1 + m_State: {fileID: 7973066089414065652} + m_Position: {x: 750, y: 450, z: 0} + - serializedVersion: 1 + m_State: {fileID: 8593148252126181856} + m_Position: {x: 460, y: 400, z: 0} + - serializedVersion: 1 + m_State: {fileID: -6567889547732147609} + m_Position: {x: 750, y: 280, z: 0} + m_ChildStateMachines: [] + m_AnyStateTransitions: [] + m_EntryTransitions: [] + m_StateMachineTransitions: {} + m_StateMachineBehaviours: [] + m_AnyStatePosition: {x: 50, y: 20, z: 0} + m_EntryPosition: {x: 330, y: 60, z: 0} + m_ExitPosition: {x: 800, y: 120, z: 0} + m_ParentStateMachinePosition: {x: 800, y: 20, z: 0} + m_DefaultState: {fileID: -2592505286661766779} +--- !u!1102 &-2592505286661766779 +AnimatorState: + serializedVersion: 6 + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: worker_noPantsWalk_l + m_Speed: 1 + m_CycleOffset: 0 + m_Transitions: + - {fileID: -4623195881401911605} + - {fileID: -4911838176500225459} + m_StateMachineBehaviours: [] + m_Position: {x: 50, y: 50, z: 0} + m_IKOnFeet: 0 + m_WriteDefaultValues: 1 + m_Mirror: 0 + m_SpeedParameterActive: 0 + m_MirrorParameterActive: 0 + m_CycleOffsetParameterActive: 0 + m_TimeParameterActive: 0 + m_Motion: {fileID: 7400000, guid: bf1d4d93be0ea294d81bd746b2afb3ec, type: 2} + m_Tag: + m_SpeedParameter: + m_MirrorParameter: + m_CycleOffsetParameter: + m_TimeParameter: +--- !u!1101 &-2209893457913046377 +AnimatorStateTransition: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: + m_Conditions: + - m_ConditionMode: 2 + m_ConditionEvent: walkingRight? + m_EventTreshold: 0 + m_DstStateMachine: {fileID: 0} + m_DstState: {fileID: 8593148252126181856} + m_Solo: 0 + m_Mute: 0 + m_IsExit: 0 + serializedVersion: 3 + m_TransitionDuration: 0 + m_TransitionOffset: 1.0719782 + m_ExitTime: 1.0001835 + m_HasExitTime: 0 + m_HasFixedDuration: 1 + m_InterruptionSource: 0 + m_OrderedInterruption: 1 + m_CanTransitionToSelf: 1 +--- !u!1102 &-129613960355832961 +AnimatorState: + serializedVersion: 6 + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: worker_PantsFall_l + m_Speed: 1 + m_CycleOffset: 0 + m_Transitions: + - {fileID: -5339321826386231782} + m_StateMachineBehaviours: + - {fileID: -7559709786221121258} + m_Position: {x: 50, y: 50, z: 0} + m_IKOnFeet: 0 + m_WriteDefaultValues: 1 + m_Mirror: 0 + m_SpeedParameterActive: 0 + m_MirrorParameterActive: 0 + m_CycleOffsetParameterActive: 0 + m_TimeParameterActive: 0 + m_Motion: {fileID: 7400000, guid: bd79c81f4acaaa141a3390d8b2efb4e5, type: 2} + m_Tag: + m_SpeedParameter: + m_MirrorParameter: + m_CycleOffsetParameter: + m_TimeParameter: +--- !u!91 &9100000 +AnimatorController: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: WalkingWorker_NoPants + serializedVersion: 5 + m_AnimatorParameters: + - m_Name: isLifting? + m_Type: 4 + m_DefaultFloat: 0 + m_DefaultInt: 0 + m_DefaultBool: 0 + m_Controller: {fileID: 9100000} + - m_Name: walkingRight? + m_Type: 4 + m_DefaultFloat: 0 + m_DefaultInt: 0 + m_DefaultBool: 0 + m_Controller: {fileID: 9100000} + - m_Name: beltSnatched? + m_Type: 4 + m_DefaultFloat: 0 + m_DefaultInt: 0 + m_DefaultBool: 0 + m_Controller: {fileID: 9100000} + - m_Name: shouldFall? + m_Type: 9 + m_DefaultFloat: 0 + m_DefaultInt: 0 + m_DefaultBool: 0 + m_Controller: {fileID: 9100000} + - m_Name: pantsDown? + m_Type: 4 + m_DefaultFloat: 0 + m_DefaultInt: 0 + m_DefaultBool: 0 + m_Controller: {fileID: 9100000} + m_AnimatorLayers: + - serializedVersion: 5 + m_Name: Base Layer + m_StateMachine: {fileID: 4941208078434220659} + m_Mask: {fileID: 0} + m_Motions: [] + m_Behaviours: [] + m_BlendingMode: 0 + m_SyncedLayerIndex: -1 + m_DefaultWeight: 0 + m_IKPass: 0 + m_SyncedLayerAffectsTiming: 0 + m_Controller: {fileID: 9100000} +--- !u!1107 &4941208078434220659 +AnimatorStateMachine: + serializedVersion: 6 + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Base Layer + m_ChildStates: [] + m_ChildStateMachines: + - serializedVersion: 1 + m_StateMachine: {fileID: -4102663254947421282} + m_Position: {x: 120, y: 310, z: 0} + m_AnyStateTransitions: [] + m_EntryTransitions: [] + m_StateMachineTransitions: {} + m_StateMachineBehaviours: [] + m_AnyStatePosition: {x: 50, y: 20, z: 0} + m_EntryPosition: {x: 160, y: 140, z: 0} + m_ExitPosition: {x: 800, y: 120, z: 0} + m_ParentStateMachinePosition: {x: 800, y: 20, z: 0} + m_DefaultState: {fileID: -2592505286661766779} +--- !u!1101 &5772367669253040934 +AnimatorStateTransition: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: + m_Conditions: [] + m_DstStateMachine: {fileID: 0} + m_DstState: {fileID: -6567889547732147609} + m_Solo: 0 + m_Mute: 0 + m_IsExit: 0 + serializedVersion: 3 + m_TransitionDuration: 0 + m_TransitionOffset: 0.3474311 + m_ExitTime: 0.9961518 + m_HasExitTime: 1 + m_HasFixedDuration: 1 + m_InterruptionSource: 0 + m_OrderedInterruption: 1 + m_CanTransitionToSelf: 1 +--- !u!1101 &6809965347497371432 +AnimatorStateTransition: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: + m_Conditions: + - m_ConditionMode: 1 + m_ConditionEvent: shouldFall? + m_EventTreshold: 0 + m_DstStateMachine: {fileID: 0} + m_DstState: {fileID: 7973066089414065652} + m_Solo: 0 + m_Mute: 0 + m_IsExit: 0 + serializedVersion: 3 + m_TransitionDuration: 0 + m_TransitionOffset: 0.13495815 + m_ExitTime: 0.9834656 + m_HasExitTime: 1 + m_HasFixedDuration: 1 + m_InterruptionSource: 0 + m_OrderedInterruption: 1 + m_CanTransitionToSelf: 1 +--- !u!114 &6965343785813838728 +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: eee1f05978eee2e428f4683aa88b99e8, type: 3} + m_Name: + m_EditorClassIdentifier: '::' +--- !u!1102 &7973066089414065652 +AnimatorState: + serializedVersion: 6 + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: worker_PantsFall_r + m_Speed: 1 + m_CycleOffset: 0 + m_Transitions: + - {fileID: 5772367669253040934} + m_StateMachineBehaviours: + - {fileID: -7400305621533718299} + m_Position: {x: 50, y: 50, z: 0} + m_IKOnFeet: 0 + m_WriteDefaultValues: 1 + m_Mirror: 0 + m_SpeedParameterActive: 0 + m_MirrorParameterActive: 0 + m_CycleOffsetParameterActive: 0 + m_TimeParameterActive: 0 + m_Motion: {fileID: 7400000, guid: 04b1e8252c869a44482b51f2e1f9c79a, type: 2} + m_Tag: + m_SpeedParameter: + m_MirrorParameter: + m_CycleOffsetParameter: + m_TimeParameter: +--- !u!1102 &7979021593183280829 +AnimatorState: + serializedVersion: 6 + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: worker_noPantsTurn_l + m_Speed: 1 + m_CycleOffset: 0 + m_Transitions: + - {fileID: -4246026034738526664} + m_StateMachineBehaviours: [] + m_Position: {x: 50, y: 50, z: 0} + m_IKOnFeet: 0 + m_WriteDefaultValues: 1 + m_Mirror: 0 + m_SpeedParameterActive: 0 + m_MirrorParameterActive: 0 + m_CycleOffsetParameterActive: 0 + m_TimeParameterActive: 0 + m_Motion: {fileID: 7400000, guid: ac6142b208fb10b4aa6ac58cfa9dc13b, type: 2} + m_Tag: + m_SpeedParameter: + m_MirrorParameter: + m_CycleOffsetParameter: + m_TimeParameter: +--- !u!1102 &8593148252126181856 +AnimatorState: + serializedVersion: 6 + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: worker_noPantsTurn_r + m_Speed: 1 + m_CycleOffset: 0 + m_Transitions: + - {fileID: -4140271114307507140} + m_StateMachineBehaviours: [] + m_Position: {x: 50, y: 50, z: 0} + m_IKOnFeet: 0 + m_WriteDefaultValues: 1 + m_Mirror: 0 + m_SpeedParameterActive: 0 + m_MirrorParameterActive: 0 + m_CycleOffsetParameterActive: 0 + m_TimeParameterActive: 0 + m_Motion: {fileID: 7400000, guid: 5dd9b6b83a867d842881e651db6e3913, type: 2} + m_Tag: + m_SpeedParameter: + m_MirrorParameter: + m_CycleOffsetParameter: + m_TimeParameter: diff --git a/Assets/Art/Levels/CementFactory/Sprites/Characters/Worker/WalkingWorker_NoPants.controller.meta b/Assets/Art/Levels/CementFactory/Sprites/Characters/Worker/WalkingWorker_NoPants.controller.meta new file mode 100644 index 00000000..dadfb266 --- /dev/null +++ b/Assets/Art/Levels/CementFactory/Sprites/Characters/Worker/WalkingWorker_NoPants.controller.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: fc3d5896722098d488aa4a8d74401ef7 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 9100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Art/Levels/CementFactory/Sprites/Characters/Worker/WalkingWorker_Pants.controller b/Assets/Art/Levels/CementFactory/Sprites/Characters/Worker/WalkingWorker_Pants.controller index bb4d6842..9966ef61 100644 --- a/Assets/Art/Levels/CementFactory/Sprites/Characters/Worker/WalkingWorker_Pants.controller +++ b/Assets/Art/Levels/CementFactory/Sprites/Characters/Worker/WalkingWorker_Pants.controller @@ -85,7 +85,7 @@ AnimatorStateTransition: m_Name: m_Conditions: - m_ConditionMode: 1 - m_ConditionEvent: beltSnatched? + m_ConditionEvent: pantsDown? m_EventTreshold: 0 m_DstStateMachine: {fileID: 0} m_DstState: {fileID: -2592505286661766779} @@ -156,6 +156,18 @@ AnimatorState: m_MirrorParameter: m_CycleOffsetParameter: m_TimeParameter: +--- !u!114 &-6778143586135497295 +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: 5a1c7afe0aaa3f94e87d17a0795a0aa2, type: 3} + m_Name: + m_EditorClassIdentifier: '::' --- !u!1102 &-6595828197760105551 AnimatorState: serializedVersion: 6 @@ -528,9 +540,9 @@ AnimatorStateTransition: m_Mute: 0 m_IsExit: 0 serializedVersion: 3 - m_TransitionDuration: 0.25 - m_TransitionOffset: 0 - m_ExitTime: 0.85 + m_TransitionDuration: 0 + m_TransitionOffset: 0.3571433 + m_ExitTime: 1 m_HasExitTime: 1 m_HasFixedDuration: 1 m_InterruptionSource: 0 @@ -547,6 +559,9 @@ AnimatorStateTransition: - m_ConditionMode: 2 m_ConditionEvent: isLifting? m_EventTreshold: 0 + - m_ConditionMode: 2 + m_ConditionEvent: pantsDown? + m_EventTreshold: 0 m_DstStateMachine: {fileID: 0} m_DstState: {fileID: 7035337645352864553} m_Solo: 0 @@ -674,6 +689,12 @@ AnimatorController: m_DefaultInt: 0 m_DefaultBool: 0 m_Controller: {fileID: 9100000} + - m_Name: pantsDown? + m_Type: 4 + m_DefaultFloat: 0 + m_DefaultInt: 0 + m_DefaultBool: 0 + m_Controller: {fileID: 9100000} m_AnimatorLayers: - serializedVersion: 5 m_Name: Base Layer @@ -687,6 +708,23 @@ AnimatorController: m_IKPass: 0 m_SyncedLayerAffectsTiming: 0 m_Controller: {fileID: 9100000} +--- !u!1109 &927456190632279895 +AnimatorTransition: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: + m_Conditions: + - m_ConditionMode: 1 + m_ConditionEvent: pantsDown? + m_EventTreshold: 0 + m_DstStateMachine: {fileID: 0} + m_DstState: {fileID: -2592505286661766779} + m_Solo: 0 + m_Mute: 0 + m_IsExit: 0 + serializedVersion: 1 --- !u!1107 &1511038749384435185 AnimatorStateMachine: serializedVersion: 6 @@ -808,7 +846,7 @@ AnimatorStateMachine: m_Position: {x: 520, y: 380, z: 0} - serializedVersion: 1 m_State: {fileID: 7035337645352864553} - m_Position: {x: 490, y: 590, z: 0} + m_Position: {x: 470, y: 620, z: 0} - serializedVersion: 1 m_State: {fileID: -4614972993273545715} m_Position: {x: 60, y: 470, z: 0} @@ -821,9 +859,9 @@ AnimatorStateMachine: m_StateMachineTransitions: {} m_StateMachineBehaviours: [] m_AnyStatePosition: {x: 50, y: 20, z: 0} - m_EntryPosition: {x: 50, y: 120, z: 0} + m_EntryPosition: {x: 570, y: 200, z: 0} m_ExitPosition: {x: 940, y: 80, z: 0} - m_ParentStateMachinePosition: {x: 320, y: 450, z: 0} + m_ParentStateMachinePosition: {x: 330, y: 450, z: 0} m_DefaultState: {fileID: -6595828197760105551} --- !u!1101 &4350741523647240393 AnimatorStateTransition: @@ -865,16 +903,19 @@ AnimatorStateMachine: m_ChildStateMachines: - serializedVersion: 1 m_StateMachine: {fileID: 4060046627194947660} - m_Position: {x: -80, y: 370, z: 0} + m_Position: {x: -80, y: 450, z: 0} - serializedVersion: 1 m_StateMachine: {fileID: -4102663254947421282} - m_Position: {x: 410, y: 370, z: 0} + m_Position: {x: 440, y: 440, z: 0} - serializedVersion: 1 m_StateMachine: {fileID: 1511038749384435185} m_Position: {x: 170, y: 370, z: 0} m_AnyStateTransitions: [] m_EntryTransitions: [] - m_StateMachineTransitions: {} + m_StateMachineTransitions: + - first: {fileID: 4060046627194947660} + second: + - {fileID: 927456190632279895} m_StateMachineBehaviours: [] m_AnyStatePosition: {x: 50, y: 20, z: 0} m_EntryPosition: {x: 160, y: 140, z: 0} @@ -1059,6 +1100,9 @@ AnimatorStateTransition: - m_ConditionMode: 1 m_ConditionEvent: isLifting? m_EventTreshold: 0 + - m_ConditionMode: 2 + m_ConditionEvent: pantsDown? + m_EventTreshold: 0 m_DstStateMachine: {fileID: 0} m_DstState: {fileID: -1520664498156015716} m_Solo: 0 diff --git a/Assets/Art/Materials/OutlineGlowShader.shadergraph b/Assets/Art/Materials/OutlineGlowShader.shadergraph new file mode 100644 index 00000000..6bd0f14f --- /dev/null +++ b/Assets/Art/Materials/OutlineGlowShader.shadergraph @@ -0,0 +1,5191 @@ +{ + "m_SGVersion": 3, + "m_Type": "UnityEditor.ShaderGraph.GraphData", + "m_ObjectId": "7b2fc6341f804ae589ed59441bc4f5aa", + "m_Properties": [ + { + "m_Id": "a8c41c77f28146d998d1e4791cce19be" + }, + { + "m_Id": "eaca47c0266e40d882c9b99b803af89d" + }, + { + "m_Id": "1fdec4aaf36144518b784eb73b55e1cb" + } + ], + "m_Keywords": [], + "m_Dropdowns": [], + "m_CategoryData": [ + { + "m_Id": "b834ebe6456947499aaed0c982d08837" + } + ], + "m_Nodes": [ + { + "m_Id": "0ae87d908af64c8d895773e95fbb03cd" + }, + { + "m_Id": "53ad9a11605c46798f8fe666aa95d323" + }, + { + "m_Id": "289eb041bbb7454c8c244d8c1fc5257a" + }, + { + "m_Id": "dc6fd797e228463db48ef6688e5693c4" + }, + { + "m_Id": "5cebaa1ea1c44ef19bf4664c09eacdd2" + }, + { + "m_Id": "84c8a8babc2a42168c9380dd514f4be7" + }, + { + "m_Id": "ff7e7db7db87471d8322efd3d7857965" + }, + { + "m_Id": "429093771fb14068876b716bf02ede9e" + }, + { + "m_Id": "06d133b766cd48bdae0aff3c11f31ec7" + }, + { + "m_Id": "e3b4aa432177435d9d00fa6295146bd6" + }, + { + "m_Id": "3d10ed97dd574a939c8461789775096f" + }, + { + "m_Id": "e27f0f5a9e25469ab9e340a19176a065" + }, + { + "m_Id": "29eb48c2832048ca9318e3423b369f44" + }, + { + "m_Id": "236e5ce21f5047bf9e89c931c7a7a99e" + }, + { + "m_Id": "5648adc9661149278e082e24c9492b24" + }, + { + "m_Id": "3603d149d7b942f788a6cd26e67cf613" + }, + { + "m_Id": "e6efb5c1944e4390a277f66b8f87ed36" + }, + { + "m_Id": "71d9ca090eec44f2b6f012445400a99c" + }, + { + "m_Id": "9cc3c0388d8242d4bce014b0f06e7159" + }, + { + "m_Id": "54192823419740dea2fe01179860ca7c" + }, + { + "m_Id": "e55d04001897458b96e0de9df51caba1" + }, + { + "m_Id": "05ca8c2b7b9d4568bb7055dd4ac8ebf1" + }, + { + "m_Id": "8a41ba6ffe5a4f97aea1f78a39d3df00" + }, + { + "m_Id": "10cee73648a6453cb0e52ca64b8c19f0" + }, + { + "m_Id": "d967a2a80ea147aeb1313bf698ad1b38" + }, + { + "m_Id": "3a8542ed79184b70a4cbb5dc1b051e52" + }, + { + "m_Id": "8b2dd52084004486aa00cc8629210540" + }, + { + "m_Id": "2fd87e6debe24fb98346493793b07418" + }, + { + "m_Id": "48351fa0943745b79e57ed804f7ac13d" + }, + { + "m_Id": "b3b1f0c4eaf047deb010c0d9be462886" + }, + { + "m_Id": "890d8cd9fe2342088ecb14efddd90a9f" + }, + { + "m_Id": "49927dd0fdc94a339265abad17c28f9e" + }, + { + "m_Id": "7942c56fa5da4d709ca1665fcb428766" + }, + { + "m_Id": "dbf343eb52244114b4e0cd6ad6c37594" + }, + { + "m_Id": "e0899bc96cdd408d89e56d235ef86f31" + }, + { + "m_Id": "8c4a1aa2a99844a882972f7f264d9438" + }, + { + "m_Id": "4717a1e2c95e4dceab040a96df1e2d9d" + }, + { + "m_Id": "3f28ebd7aa804fd2aa9b6a3c212b2851" + } + ], + "m_GroupDatas": [], + "m_StickyNoteDatas": [], + "m_Edges": [ + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "05ca8c2b7b9d4568bb7055dd4ac8ebf1" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "dbf343eb52244114b4e0cd6ad6c37594" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "06d133b766cd48bdae0aff3c11f31ec7" + }, + "m_SlotId": 7 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "05ca8c2b7b9d4568bb7055dd4ac8ebf1" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "10cee73648a6453cb0e52ca64b8c19f0" + }, + "m_SlotId": 7 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "7942c56fa5da4d709ca1665fcb428766" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "236e5ce21f5047bf9e89c931c7a7a99e" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "3603d149d7b942f788a6cd26e67cf613" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "29eb48c2832048ca9318e3423b369f44" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "236e5ce21f5047bf9e89c931c7a7a99e" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "2fd87e6debe24fb98346493793b07418" + }, + "m_SlotId": 7 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "7942c56fa5da4d709ca1665fcb428766" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "3603d149d7b942f788a6cd26e67cf613" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "5cebaa1ea1c44ef19bf4664c09eacdd2" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "3603d149d7b942f788a6cd26e67cf613" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "dc6fd797e228463db48ef6688e5693c4" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "3a8542ed79184b70a4cbb5dc1b051e52" + }, + "m_SlotId": 3 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "10cee73648a6453cb0e52ca64b8c19f0" + }, + "m_SlotId": 2 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "3d10ed97dd574a939c8461789775096f" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "49927dd0fdc94a339265abad17c28f9e" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "3d10ed97dd574a939c8461789775096f" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "8b2dd52084004486aa00cc8629210540" + }, + "m_SlotId": 2 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "3d10ed97dd574a939c8461789775096f" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "e27f0f5a9e25469ab9e340a19176a065" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "3d10ed97dd574a939c8461789775096f" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "e55d04001897458b96e0de9df51caba1" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "3f28ebd7aa804fd2aa9b6a3c212b2851" + }, + "m_SlotId": 4 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "3603d149d7b942f788a6cd26e67cf613" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "429093771fb14068876b716bf02ede9e" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "06d133b766cd48bdae0aff3c11f31ec7" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "4717a1e2c95e4dceab040a96df1e2d9d" + }, + "m_SlotId": 1 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "3f28ebd7aa804fd2aa9b6a3c212b2851" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "4717a1e2c95e4dceab040a96df1e2d9d" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "3f28ebd7aa804fd2aa9b6a3c212b2851" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "4717a1e2c95e4dceab040a96df1e2d9d" + }, + "m_SlotId": 3 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "3f28ebd7aa804fd2aa9b6a3c212b2851" + }, + "m_SlotId": 2 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "48351fa0943745b79e57ed804f7ac13d" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "2fd87e6debe24fb98346493793b07418" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "49927dd0fdc94a339265abad17c28f9e" + }, + "m_SlotId": 1 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "890d8cd9fe2342088ecb14efddd90a9f" + }, + "m_SlotId": 2 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "54192823419740dea2fe01179860ca7c" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "9cc3c0388d8242d4bce014b0f06e7159" + }, + "m_SlotId": 2 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "5648adc9661149278e082e24c9492b24" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "236e5ce21f5047bf9e89c931c7a7a99e" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "71d9ca090eec44f2b6f012445400a99c" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "e6efb5c1944e4390a277f66b8f87ed36" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "7942c56fa5da4d709ca1665fcb428766" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "dbf343eb52244114b4e0cd6ad6c37594" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "84c8a8babc2a42168c9380dd514f4be7" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "ff7e7db7db87471d8322efd3d7857965" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "890d8cd9fe2342088ecb14efddd90a9f" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "b3b1f0c4eaf047deb010c0d9be462886" + }, + "m_SlotId": 2 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "8a41ba6ffe5a4f97aea1f78a39d3df00" + }, + "m_SlotId": 3 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "29eb48c2832048ca9318e3423b369f44" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "8b2dd52084004486aa00cc8629210540" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "3a8542ed79184b70a4cbb5dc1b051e52" + }, + "m_SlotId": 2 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "8c4a1aa2a99844a882972f7f264d9438" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "4717a1e2c95e4dceab040a96df1e2d9d" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "9cc3c0388d8242d4bce014b0f06e7159" + }, + "m_SlotId": 3 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "e6efb5c1944e4390a277f66b8f87ed36" + }, + "m_SlotId": 2 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "b3b1f0c4eaf047deb010c0d9be462886" + }, + "m_SlotId": 3 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "2fd87e6debe24fb98346493793b07418" + }, + "m_SlotId": 2 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "d967a2a80ea147aeb1313bf698ad1b38" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "10cee73648a6453cb0e52ca64b8c19f0" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "dbf343eb52244114b4e0cd6ad6c37594" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "8a41ba6ffe5a4f97aea1f78a39d3df00" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "e27f0f5a9e25469ab9e340a19176a065" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "e3b4aa432177435d9d00fa6295146bd6" + }, + "m_SlotId": 2 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "e3b4aa432177435d9d00fa6295146bd6" + }, + "m_SlotId": 3 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "06d133b766cd48bdae0aff3c11f31ec7" + }, + "m_SlotId": 2 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "e55d04001897458b96e0de9df51caba1" + }, + "m_SlotId": 1 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "54192823419740dea2fe01179860ca7c" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "e6efb5c1944e4390a277f66b8f87ed36" + }, + "m_SlotId": 7 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "05ca8c2b7b9d4568bb7055dd4ac8ebf1" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "ff7e7db7db87471d8322efd3d7857965" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "8c4a1aa2a99844a882972f7f264d9438" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "ff7e7db7db87471d8322efd3d7857965" + }, + "m_SlotId": 7 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "29eb48c2832048ca9318e3423b369f44" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "ff7e7db7db87471d8322efd3d7857965" + }, + "m_SlotId": 7 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "3f28ebd7aa804fd2aa9b6a3c212b2851" + }, + "m_SlotId": 3 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "ff7e7db7db87471d8322efd3d7857965" + }, + "m_SlotId": 7 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "8c4a1aa2a99844a882972f7f264d9438" + }, + "m_SlotId": 1 + } + } + ], + "m_VertexContext": { + "m_Position": { + "x": 2306.0, + "y": 1082.0 + }, + "m_Blocks": [ + { + "m_Id": "0ae87d908af64c8d895773e95fbb03cd" + }, + { + "m_Id": "53ad9a11605c46798f8fe666aa95d323" + }, + { + "m_Id": "289eb041bbb7454c8c244d8c1fc5257a" + } + ] + }, + "m_FragmentContext": { + "m_Position": { + "x": 2307.0, + "y": 1323.9998779296875 + }, + "m_Blocks": [ + { + "m_Id": "dc6fd797e228463db48ef6688e5693c4" + }, + { + "m_Id": "5cebaa1ea1c44ef19bf4664c09eacdd2" + } + ] + }, + "m_PreviewData": { + "serializedMesh": { + "m_SerializedMesh": "{\"mesh\":{\"instanceID\":0}}", + "m_Guid": "" + }, + "preventRotation": false + }, + "m_Path": "Shader Graphs", + "m_GraphPrecision": 1, + "m_PreviewMode": 2, + "m_OutputNode": { + "m_Id": "" + }, + "m_SubDatas": [], + "m_ActiveTargets": [ + { + "m_Id": "11a7b8922fe243e4aa14881b8eb6631c" + } + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "0000a19666a44d7e91e8930960caa254", + "m_Id": 6, + "m_DisplayName": "RG", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RG", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVMaterialSlot", + "m_ObjectId": "00367d82860a4fb4914ef36d41a4d3aa", + "m_Id": 0, + "m_DisplayName": "UV", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [], + "m_Channel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "005ff45b0d664daaa9f512f525168f36", + "m_Id": 6, + "m_DisplayName": "B", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [], + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "026901168e1644fcbf94e77c3ed743d9", + "m_Id": 7, + "m_DisplayName": "A", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [], + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.AddNode", + "m_ObjectId": "05ca8c2b7b9d4568bb7055dd4ac8ebf1", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Add", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -416.0000305175781, + "y": 1218.0001220703125, + "width": 208.00001525878907, + "height": 302.0 + } + }, + "m_Slots": [ + { + "m_Id": "76566179b01c4510aef5132a430906de" + }, + { + "m_Id": "d296a24411c14a76993b6a9f661cc659" + }, + { + "m_Id": "62083bd43adc45ccb4d5cc22cbaa6849" + } + ], + "synonyms": [ + "addition", + "sum", + "plus" + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SampleTexture2DNode", + "m_ObjectId": "06d133b766cd48bdae0aff3c11f31ec7", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Sample Texture 2D", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -846.9998779296875, + "y": 586.9999389648438, + "width": 207.99993896484376, + "height": 432.99993896484377 + } + }, + "m_Slots": [ + { + "m_Id": "bb4504b514c14b1da7050443b8014bb3" + }, + { + "m_Id": "9bfc9d61f6f646a78bb0bace2a27963b" + }, + { + "m_Id": "ebc6bb1d2ba0444883095c91f0d3aaf6" + }, + { + "m_Id": "005ff45b0d664daaa9f512f525168f36" + }, + { + "m_Id": "026901168e1644fcbf94e77c3ed743d9" + }, + { + "m_Id": "80397606e1d74fd08285c250ef35f925" + }, + { + "m_Id": "e2d1cad3c6eb4ae89bf349d9647ee97c" + }, + { + "m_Id": "f00ca195879d4a659e6944f7e06b70cc" + } + ], + "synonyms": [ + "tex2d" + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_TextureType": 0, + "m_NormalMapSpace": 0, + "m_EnableGlobalMipBias": true, + "m_MipSamplingMode": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "0ae87d908af64c8d895773e95fbb03cd", + "m_Group": { + "m_Id": "" + }, + "m_Name": "VertexDescription.Position", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 0.0, + "y": 0.0, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "39c09c1a7a424af1b5f042eda83ec58c" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "VertexDescription.Position" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "0b82521f8a4841c7a0e1ff1987dd9d09", + "m_Id": 4, + "m_DisplayName": "R", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [], + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector3MaterialSlot", + "m_ObjectId": "0d9e745535794f2db458ac812d5499f4", + "m_Id": 5, + "m_DisplayName": "RGB", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGB", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "0eded642bb1442f9a1056d92dd45212d", + "m_Id": 1, + "m_DisplayName": "X", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "X", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [], + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "10cd93b48f3042e8a0aa4b6fcf0d1b03", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SampleTexture2DNode", + "m_ObjectId": "10cee73648a6453cb0e52ca64b8c19f0", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Sample Texture 2D", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -807.0, + "y": 1591.9998779296875, + "width": 207.99993896484376, + "height": 433.0 + } + }, + "m_Slots": [ + { + "m_Id": "bff325e1c2ff4afa91a103654035c288" + }, + { + "m_Id": "24995dd2864e420aa0c162471ca0d4cf" + }, + { + "m_Id": "7286d00f7b984d6ea6bc799203a37071" + }, + { + "m_Id": "77664bf3c5d841569b6f260ed40e9630" + }, + { + "m_Id": "b62ee9fc1c224437b240378184fed8e1" + }, + { + "m_Id": "2e9d9f6353444b37a0cb87322ba74d4b" + }, + { + "m_Id": "68dddf01ff0c4afeb37ed91465046fdf" + }, + { + "m_Id": "b33fcfcfb0d6418db15b8604eb3f211a" + } + ], + "synonyms": [ + "tex2d" + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_TextureType": 0, + "m_NormalMapSpace": 0, + "m_EnableGlobalMipBias": true, + "m_MipSamplingMode": 0 +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.Rendering.Universal.ShaderGraph.UniversalTarget", + "m_ObjectId": "11a7b8922fe243e4aa14881b8eb6631c", + "m_Datas": [], + "m_ActiveSubTarget": { + "m_Id": "7a4f622935ba47ebaecd88a408b3fd63" + }, + "m_AllowMaterialOverride": false, + "m_SurfaceType": 0, + "m_ZTestMode": 4, + "m_ZWriteControl": 0, + "m_AlphaMode": 0, + "m_RenderFace": 2, + "m_AlphaClip": false, + "m_CastShadows": true, + "m_ReceiveShadows": true, + "m_DisableTint": false, + "m_Sort3DAs2DCompatible": false, + "m_AdditionalMotionVectorMode": 0, + "m_AlembicMotionVectors": false, + "m_SupportsLODCrossFade": false, + "m_CustomEditorGUI": "", + "m_SupportVFX": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "19f2418b9dd247f791c9ac71109f8134", + "m_Id": 2, + "m_DisplayName": "Y", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Y", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "Y" + ], + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "1a09c87849fe49f19b63483e8261f471", + "m_Id": 7, + "m_DisplayName": "A", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [], + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "1d48c1a79aae4dd68b72686822e3ed75", + "m_Id": 5, + "m_DisplayName": "G", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [], + "m_LiteralMode": false +} + +{ + "m_SGVersion": 3, + "m_Type": "UnityEditor.ShaderGraph.Internal.ColorShaderProperty", + "m_ObjectId": "1fdec4aaf36144518b784eb73b55e1cb", + "m_Guid": { + "m_GuidSerialized": "93c805da-f01f-406a-992b-90f558c6d0c1" + }, + "promotedFromAssetID": "", + "promotedFromCategoryName": "", + "promotedOrdering": -1, + "m_Name": "Colour", + "m_DefaultRefNameVersion": 1, + "m_RefNameGeneratedByDisplayName": "Colour", + "m_DefaultReferenceName": "_Colour", + "m_OverrideReferenceName": "", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_PerRendererData": false, + "m_customAttributes": [], + "m_Value": { + "r": 0.9341286420822144, + "g": 1.0, + "b": 0.0, + "a": 1.0 + }, + "isMainColor": false, + "m_ColorMode": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "22e8505bf0524d45ac6d7c622c552a83", + "m_Id": 0, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.MultiplyNode", + "m_ObjectId": "236e5ce21f5047bf9e89c931c7a7a99e", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Multiply", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 1072.0, + "y": 1421.0, + "width": 208.0, + "height": 302.0 + } + }, + "m_Slots": [ + { + "m_Id": "448937dc5a8d42e2b1285922dca8196e" + }, + { + "m_Id": "c1ac9005d7344dc99ef93232e948fbff" + }, + { + "m_Id": "fb0d87f180014e0b9106698130e1f723" + } + ], + "synonyms": [ + "multiplication", + "times", + "x" + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "2497009c7d74427cbbe00e3a6505a97c", + "m_Id": 7, + "m_DisplayName": "A", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [], + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "24995dd2864e420aa0c162471ca0d4cf", + "m_Id": 4, + "m_DisplayName": "R", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [], + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "261218b7374445b69d14d1efd216ba9a", + "m_Id": 7, + "m_DisplayName": "A", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [], + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVMaterialSlot", + "m_ObjectId": "267efe7469d44616b79110f8743c3743", + "m_Id": 0, + "m_DisplayName": "UV", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [], + "m_Channel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "289eb041bbb7454c8c244d8c1fc5257a", + "m_Group": { + "m_Id": "" + }, + "m_Name": "VertexDescription.Tangent", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 0.0, + "y": 0.0, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "d7eb7d41b5e148bcb48a3c4180a8e82d" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "VertexDescription.Tangent" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DMaterialSlot", + "m_ObjectId": "29635612674f4e9ba6fdc43230939a21", + "m_Id": 0, + "m_DisplayName": "_MainTex", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SubtractNode", + "m_ObjectId": "29eb48c2832048ca9318e3423b369f44", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Subtract", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 763.9999389648438, + "y": 1332.0, + "width": 208.0, + "height": 302.0 + } + }, + "m_Slots": [ + { + "m_Id": "d00275b8d41147caa2039573855ddef4" + }, + { + "m_Id": "df53aff5461843d39beee80fe11e5297" + }, + { + "m_Id": "f48f757860d1470ebfae96910ec199e0" + } + ], + "synonyms": [ + "subtraction", + "remove", + "minus", + "take away" + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "2badc70f22984202b919adba66e510fb", + "m_Id": 2, + "m_DisplayName": "Offset", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Offset", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "2cef9fe6e7fc40f89b9a52c7cfb037bf", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DInputMaterialSlot", + "m_ObjectId": "2e9d9f6353444b37a0cb87322ba74d4b", + "m_Id": 1, + "m_DisplayName": "Texture", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Texture", + "m_StageCapability": 3, + "m_BareResource": false, + "m_Texture": { + "m_SerializedTexture": "", + "m_Guid": "" + }, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SampleTexture2DNode", + "m_ObjectId": "2fd87e6debe24fb98346493793b07418", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Sample Texture 2D", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -764.9999389648438, + "y": 2089.0, + "width": 207.99993896484376, + "height": 433.0 + } + }, + "m_Slots": [ + { + "m_Id": "98f9fab3b79d444498214fe65a1e01a0" + }, + { + "m_Id": "0b82521f8a4841c7a0e1ff1987dd9d09" + }, + { + "m_Id": "c6af0edf98424c38baf0843a21ed19d4" + }, + { + "m_Id": "eca8c04bbe2f4acda14e523d5201be4b" + }, + { + "m_Id": "2497009c7d74427cbbe00e3a6505a97c" + }, + { + "m_Id": "6273927aac5b45af9263f22a838d02a6" + }, + { + "m_Id": "5c59fe79a47c4f67b52380a91a4d56e0" + }, + { + "m_Id": "d668e16a77894d95b1a9b1dda3dc2cac" + } + ], + "synonyms": [ + "tex2d" + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_TextureType": 0, + "m_NormalMapSpace": 0, + "m_EnableGlobalMipBias": true, + "m_MipSamplingMode": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "30edf2ab9b9c439cbc0cf27345ff707d", + "m_Id": 2, + "m_DisplayName": "Y", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Y", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "Y" + ], + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "32d12470c94249cdaf09b869c912fd15", + "m_Id": 1, + "m_DisplayName": "X", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "X", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [], + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.AddNode", + "m_ObjectId": "3603d149d7b942f788a6cd26e67cf613", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Add", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 1744.9998779296875, + "y": 1048.9998779296875, + "width": 207.9998779296875, + "height": 302.0 + } + }, + "m_Slots": [ + { + "m_Id": "837c63b62786465b8de953d5a4502ba9" + }, + { + "m_Id": "6b8527de43294dfeb3dabf708c41c0ba" + }, + { + "m_Id": "ea6d6d2bd79747dab9e2dbc75b48e5f5" + } + ], + "synonyms": [ + "addition", + "sum", + "plus" + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "38e444e328f542ba8fc922c33c659cbb", + "m_Id": 2, + "m_DisplayName": "Max", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Max", + "m_StageCapability": 3, + "m_Value": { + "x": 1.0, + "y": 1.0, + "z": 1.0, + "w": 1.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "3997c1bcba2b4e01b8c4e19070cd3cd3", + "m_Id": 2, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [], + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PositionMaterialSlot", + "m_ObjectId": "39c09c1a7a424af1b5f042eda83ec58c", + "m_Id": 0, + "m_DisplayName": "Position", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Position", + "m_StageCapability": 1, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [], + "m_Space": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "3a72e6f475b74df993e5c75a32f881d9", + "m_Id": 0, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.TilingAndOffsetNode", + "m_ObjectId": "3a8542ed79184b70a4cbb5dc1b051e52", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Tiling And Offset", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -1131.0, + "y": 1697.9998779296875, + "width": 208.0, + "height": 326.0 + } + }, + "m_Slots": [ + { + "m_Id": "e89bb4aa53ac4c73b252ea64db9326a1" + }, + { + "m_Id": "fb27f3ee7f344e35878f2ef58194795b" + }, + { + "m_Id": "e39a2e44e1e34c229246f8dbc692f60e" + }, + { + "m_Id": "eb290f07412747259c7b18f91da3e686" + } + ], + "synonyms": [ + "pan", + "scale" + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "3d10ed97dd574a939c8461789775096f", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -1889.9998779296875, + "y": 1031.9998779296875, + "width": 128.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "ebaedb45629e4c2ca6e7942473da61b3" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "eaca47c0266e40d882c9b99b803af89d" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.CombineNode", + "m_ObjectId": "3f28ebd7aa804fd2aa9b6a3c212b2851", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Combine", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 1416.9998779296875, + "y": 816.9999389648438, + "width": 208.0, + "height": 349.99993896484377 + } + }, + "m_Slots": [ + { + "m_Id": "de36711c551c4efeb1c3b13e1918d7f3" + }, + { + "m_Id": "59092906353043e2b4f362f0360d1008" + }, + { + "m_Id": "3997c1bcba2b4e01b8c4e19070cd3cd3" + }, + { + "m_Id": "7c5f76675a924e45be58678e45754277" + }, + { + "m_Id": "ee2e656d7c50448cb9c2e16c915bf009" + }, + { + "m_Id": "0d9e745535794f2db458ac812d5499f4" + }, + { + "m_Id": "0000a19666a44d7e91e8930960caa254" + } + ], + "synonyms": [ + "append" + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "3f7c485941d148a5bb896287e222ff7a", + "m_Id": 3, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "429093771fb14068876b716bf02ede9e", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -1082.9998779296875, + "y": 596.9999389648438, + "width": 132.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "69f1997525b84a748af93040aeab33a0" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "a8c41c77f28146d998d1e4791cce19be" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "448937dc5a8d42e2b1285922dca8196e", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SplitNode", + "m_ObjectId": "4717a1e2c95e4dceab040a96df1e2d9d", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Split", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 1234.0, + "y": 809.0, + "width": 120.0, + "height": 149.0 + } + }, + "m_Slots": [ + { + "m_Id": "e9a8182b082b4461923bb7d95255dd48" + }, + { + "m_Id": "8040a07ed2fd43b986f72d74658dff17" + }, + { + "m_Id": "ca1444c7724940feac28971623b5a4ad" + }, + { + "m_Id": "e7d7f0ecefe14967a6972c84ccdece70" + }, + { + "m_Id": "d2d3006ded6d45f9a482df0cc0f8c340" + } + ], + "synonyms": [ + "separate" + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "47cb9ec4554543b2866d9c0c8dc409a4", + "m_Id": 6, + "m_DisplayName": "B", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [], + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "48351fa0943745b79e57ed804f7ac13d", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -1000.9999389648438, + "y": 2098.999755859375, + "width": 132.0, + "height": 34.000244140625 + } + }, + "m_Slots": [ + { + "m_Id": "29635612674f4e9ba6fdc43230939a21" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "a8c41c77f28146d998d1e4791cce19be" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.NegateNode", + "m_ObjectId": "49927dd0fdc94a339265abad17c28f9e", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Negate", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -1586.9998779296875, + "y": 2205.0, + "width": 128.0, + "height": 93.999755859375 + } + }, + "m_Slots": [ + { + "m_Id": "93dcc6f9682f4b8587d276696be03a8e" + }, + { + "m_Id": "dccee567268d48b38793a1c97b7696f5" + } + ], + "synonyms": [ + "invert", + "opposite" + ], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.NormalMaterialSlot", + "m_ObjectId": "4cd048f612144bf6861aa4ca0f071573", + "m_Id": 0, + "m_DisplayName": "Normal", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Normal", + "m_StageCapability": 1, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [], + "m_Space": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DMaterialSlot", + "m_ObjectId": "4f0459fecb80495983671dedfd1ab705", + "m_Id": 0, + "m_DisplayName": "_MainTex", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVMaterialSlot", + "m_ObjectId": "53595b39588346f39ed928271b8c7215", + "m_Id": 2, + "m_DisplayName": "UV", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [], + "m_Channel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "53ad9a11605c46798f8fe666aa95d323", + "m_Group": { + "m_Id": "" + }, + "m_Name": "VertexDescription.Normal", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 0.0, + "y": 0.0, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "4cd048f612144bf6861aa4ca0f071573" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "VertexDescription.Normal" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2Node", + "m_ObjectId": "54192823419740dea2fe01179860ca7c", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Vector 2", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -1406.9998779296875, + "y": 1279.0, + "width": 128.0, + "height": 101.0 + } + }, + "m_Slots": [ + { + "m_Id": "32d12470c94249cdaf09b869c912fd15" + }, + { + "m_Id": "fd1ccc2d90214252bae6e44f9f4bfb02" + }, + { + "m_Id": "54f81b70d4be4ee3b7f185a4cbb7c343" + } + ], + "synonyms": [ + "2", + "v2", + "vec2", + "float2" + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Value": { + "x": 0.0, + "y": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "54f81b70d4be4ee3b7f185a4cbb7c343", + "m_Id": 0, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "5648adc9661149278e082e24c9492b24", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 864.9999389648438, + "y": 1723.0, + "width": 112.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "d4a267ee802642d0b8175b452b302616" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "1fdec4aaf36144518b784eb73b55e1cb" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "59092906353043e2b4f362f0360d1008", + "m_Id": 1, + "m_DisplayName": "G", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [], + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SamplerStateMaterialSlot", + "m_ObjectId": "59e74e448fc54a348b51930fd91bebec", + "m_Id": 3, + "m_DisplayName": "Sampler", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Sampler", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "5ad43d43f68f48629c683c8e6cd5c42e", + "m_Id": 1, + "m_DisplayName": "Tiling", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Tiling", + "m_StageCapability": 3, + "m_Value": { + "x": 1.0, + "y": 1.0 + }, + "m_DefaultValue": { + "x": 1.0, + "y": 1.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "5bcc56bbf9a044d3970ec2d1069ecebf", + "m_Id": 2, + "m_DisplayName": "Offset", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Offset", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVMaterialSlot", + "m_ObjectId": "5c59fe79a47c4f67b52380a91a4d56e0", + "m_Id": 2, + "m_DisplayName": "UV", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [], + "m_Channel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "5cebaa1ea1c44ef19bf4664c09eacdd2", + "m_Group": { + "m_Id": "" + }, + "m_Name": "SurfaceDescription.Alpha", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 0.0, + "y": 0.0, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "c8e097d1b2cb46be850b64d9e4733d96" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "SurfaceDescription.Alpha" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DMaterialSlot", + "m_ObjectId": "5efd6f5c1a17470da290e0ee39a019ac", + "m_Id": 0, + "m_DisplayName": "_MainTex", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "62083bd43adc45ccb4d5cc22cbaa6849", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DInputMaterialSlot", + "m_ObjectId": "6273927aac5b45af9263f22a838d02a6", + "m_Id": 1, + "m_DisplayName": "Texture", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Texture", + "m_StageCapability": 3, + "m_BareResource": false, + "m_Texture": { + "m_SerializedTexture": "", + "m_Guid": "" + }, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVMaterialSlot", + "m_ObjectId": "68dddf01ff0c4afeb37ed91465046fdf", + "m_Id": 2, + "m_DisplayName": "UV", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [], + "m_Channel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DMaterialSlot", + "m_ObjectId": "69f1997525b84a748af93040aeab33a0", + "m_Id": 0, + "m_DisplayName": "_MainTex", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "6b8527de43294dfeb3dabf708c41c0ba", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "71d9ca090eec44f2b6f012445400a99c", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -1041.0, + "y": 1093.9998779296875, + "width": 132.00006103515626, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "4f0459fecb80495983671dedfd1ab705" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "a8c41c77f28146d998d1e4791cce19be" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "7286d00f7b984d6ea6bc799203a37071", + "m_Id": 5, + "m_DisplayName": "G", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [], + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "7595aa818ef94dd2be80e0a6943be4f5", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "e00": 2.0, + "e01": 2.0, + "e02": 2.0, + "e03": 2.0, + "e10": 2.0, + "e11": 2.0, + "e12": 2.0, + "e13": 2.0, + "e20": 2.0, + "e21": 2.0, + "e22": 2.0, + "e23": 2.0, + "e30": 2.0, + "e31": 2.0, + "e32": 2.0, + "e33": 2.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "76566179b01c4510aef5132a430906de", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVMaterialSlot", + "m_ObjectId": "769bea38fbf048328cfbd56169d8439e", + "m_Id": 0, + "m_DisplayName": "UV", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [], + "m_Channel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "77664bf3c5d841569b6f260ed40e9630", + "m_Id": 6, + "m_DisplayName": "B", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [], + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.AddNode", + "m_ObjectId": "7942c56fa5da4d709ca1665fcb428766", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Add", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -437.0, + "y": 1690.0001220703125, + "width": 208.0, + "height": 302.0 + } + }, + "m_Slots": [ + { + "m_Id": "a70e1ffb293a40f3a98ad02d6a59a793" + }, + { + "m_Id": "10cd93b48f3042e8a0aa4b6fcf0d1b03" + }, + { + "m_Id": "7c63a04aff044e2ba6c1edef35941ab7" + } + ], + "synonyms": [ + "addition", + "sum", + "plus" + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.Rendering.Universal.ShaderGraph.UniversalSpriteUnlitSubTarget", + "m_ObjectId": "7a4f622935ba47ebaecd88a408b3fd63" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "7c5f76675a924e45be58678e45754277", + "m_Id": 3, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [], + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "7c63a04aff044e2ba6c1edef35941ab7", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DInputMaterialSlot", + "m_ObjectId": "80397606e1d74fd08285c250ef35f925", + "m_Id": 1, + "m_DisplayName": "Texture", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Texture", + "m_StageCapability": 3, + "m_BareResource": false, + "m_Texture": { + "m_SerializedTexture": "", + "m_Guid": "" + }, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "8040a07ed2fd43b986f72d74658dff17", + "m_Id": 1, + "m_DisplayName": "R", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [], + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "82d28beadd774ff19555bc0397c5ab90", + "m_Id": 1, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "837c63b62786465b8de953d5a4502ba9", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "84c8a8babc2a42168c9380dd514f4be7", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 301.00006103515627, + "y": 763.0, + "width": 132.00006103515626, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "c80ec957c3b5414184596f5f1215dc9c" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "a8c41c77f28146d998d1e4791cce19be" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "84ec2e93e6b14d0b9589257b6dc70488", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "873c4c6288d84b4f941f6126a32daf88", + "m_Id": 0, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 2, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "87c46420f3f44d5bb1a81a1b2b138e57", + "m_Id": 1, + "m_DisplayName": "X", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "X", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [], + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "87fef81044ce46418d731e2c7ae567c7", + "m_Id": 4, + "m_DisplayName": "R", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [], + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2Node", + "m_ObjectId": "890d8cd9fe2342088ecb14efddd90a9f", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Vector 2", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -1367.0, + "y": 2284.0, + "width": 128.0, + "height": 101.0 + } + }, + "m_Slots": [ + { + "m_Id": "9fa5253459d9487eb3943ade25c597e5" + }, + { + "m_Id": "30edf2ab9b9c439cbc0cf27345ff707d" + }, + { + "m_Id": "3a72e6f475b74df993e5c75a32f881d9" + } + ], + "synonyms": [ + "2", + "v2", + "vec2", + "float2" + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Value": { + "x": 0.0, + "y": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.ClampNode", + "m_ObjectId": "8a41ba6ffe5a4f97aea1f78a39d3df00", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Clamp", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 281.0, + "y": 1414.0, + "width": 208.00003051757813, + "height": 326.0001220703125 + } + }, + "m_Slots": [ + { + "m_Id": "e241476f79e64f6f9de4b2559969d5d1" + }, + { + "m_Id": "98416f0da1974184bf15ea1ea2ec66be" + }, + { + "m_Id": "38e444e328f542ba8fc922c33c659cbb" + }, + { + "m_Id": "ddc858333ac14e07bdc275c743abcbfb" + } + ], + "synonyms": [ + "limit" + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "8abcd2efbda54f20b58d7eb1613e7d88", + "m_Id": 3, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2Node", + "m_ObjectId": "8b2dd52084004486aa00cc8629210540", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Vector 2", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -1409.0, + "y": 1786.9998779296875, + "width": 128.0, + "height": 101.0 + } + }, + "m_Slots": [ + { + "m_Id": "87c46420f3f44d5bb1a81a1b2b138e57" + }, + { + "m_Id": "19f2418b9dd247f791c9ac71109f8134" + }, + { + "m_Id": "fb98925a5c9e4f739167178bb14ccb9f" + } + ], + "synonyms": [ + "2", + "v2", + "vec2", + "float2" + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Value": { + "x": 0.0, + "y": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.ColorRGBMaterialSlot", + "m_ObjectId": "8bde73d15bff4e6f8ce80a53ca05be5f", + "m_Id": 0, + "m_DisplayName": "Base Color", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "BaseColor", + "m_StageCapability": 2, + "m_Value": { + "x": 0.5, + "y": 0.5, + "z": 0.5 + }, + "m_DefaultValue": { + "x": 0.5, + "y": 0.5, + "z": 0.5 + }, + "m_Labels": [], + "m_ColorMode": 0, + "m_DefaultColor": { + "r": 0.5, + "g": 0.5, + "b": 0.5, + "a": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.MultiplyNode", + "m_ObjectId": "8c4a1aa2a99844a882972f7f264d9438", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Multiply", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 903.0000610351563, + "y": 823.0000610351563, + "width": 208.00006103515626, + "height": 302.00006103515627 + } + }, + "m_Slots": [ + { + "m_Id": "2cef9fe6e7fc40f89b9a52c7cfb037bf" + }, + { + "m_Id": "7595aa818ef94dd2be80e0a6943be4f5" + }, + { + "m_Id": "92fd1f5e0c5f4627a22d36409b3d7668" + } + ], + "synonyms": [ + "multiplication", + "times", + "x" + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "8e521b005d8746afb6350e6b7cbbded1", + "m_Id": 0, + "m_DisplayName": "In", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "In", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "8f48eec442df45ea8da4bd569f059e88", + "m_Id": 2, + "m_DisplayName": "Y", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Y", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "Y" + ], + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "92fd1f5e0c5f4627a22d36409b3d7668", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "93dcc6f9682f4b8587d276696be03a8e", + "m_Id": 0, + "m_DisplayName": "In", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "In", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SamplerStateMaterialSlot", + "m_ObjectId": "955fae67cf3245acbf0479e701121ffc", + "m_Id": 3, + "m_DisplayName": "Sampler", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Sampler", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "983f9adf00f2431abdf44574f86207f0", + "m_Id": 0, + "m_DisplayName": "Colour", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "98416f0da1974184bf15ea1ea2ec66be", + "m_Id": 1, + "m_DisplayName": "Min", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Min", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DInputMaterialSlot", + "m_ObjectId": "98cc5c2841dd45faa451602fd2d78edf", + "m_Id": 1, + "m_DisplayName": "Texture", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Texture", + "m_StageCapability": 3, + "m_BareResource": false, + "m_Texture": { + "m_SerializedTexture": "", + "m_Guid": "" + }, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "98f9fab3b79d444498214fe65a1e01a0", + "m_Id": 0, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 2, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVMaterialSlot", + "m_ObjectId": "9a42b2a562c848d5a8695df2c64e74c0", + "m_Id": 2, + "m_DisplayName": "UV", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [], + "m_Channel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "9bfc9d61f6f646a78bb0bace2a27963b", + "m_Id": 4, + "m_DisplayName": "R", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [], + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.TilingAndOffsetNode", + "m_ObjectId": "9cc3c0388d8242d4bce014b0f06e7159", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Tiling And Offset", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -1128.9998779296875, + "y": 1189.9998779296875, + "width": 207.9998779296875, + "height": 326.0 + } + }, + "m_Slots": [ + { + "m_Id": "267efe7469d44616b79110f8743c3743" + }, + { + "m_Id": "d356bc4f00534476bdd12680b6f8d6e4" + }, + { + "m_Id": "bde079b462e044e6a132fdc102c11d73" + }, + { + "m_Id": "8abcd2efbda54f20b58d7eb1613e7d88" + } + ], + "synonyms": [ + "pan", + "scale" + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "9ef2cc42aae1491caa62b6b6ef4dd5f1", + "m_Id": 3, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "9fa5253459d9487eb3943ade25c597e5", + "m_Id": 1, + "m_DisplayName": "X", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "X", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [], + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "a70e1ffb293a40f3a98ad02d6a59a793", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "a896e0e39e1a440ba8d85d0a5ef45a1d", + "m_Id": 1, + "m_DisplayName": "Tiling", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Tiling", + "m_StageCapability": 3, + "m_Value": { + "x": 1.0, + "y": 1.0 + }, + "m_DefaultValue": { + "x": 1.0, + "y": 1.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Internal.Texture2DShaderProperty", + "m_ObjectId": "a8c41c77f28146d998d1e4791cce19be", + "m_Guid": { + "m_GuidSerialized": "3746a173-0934-4e68-bc7c-91677e53bac8" + }, + "promotedFromAssetID": "", + "promotedFromCategoryName": "", + "promotedOrdering": -1, + "m_Name": "_MainTex", + "m_DefaultRefNameVersion": 1, + "m_RefNameGeneratedByDisplayName": "_MainTex", + "m_DefaultReferenceName": "_MainTex", + "m_OverrideReferenceName": "", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_PerRendererData": false, + "m_customAttributes": [], + "m_Value": { + "m_SerializedTexture": "{\"texture\":{\"fileID\":2800000,\"guid\":\"ae6ce5ebb60e1504ea6c9983c822e0cf\",\"type\":3}}", + "m_Guid": "" + }, + "isMainTexture": false, + "useTilingAndOffset": false, + "useTexelSize": true, + "m_Modifiable": true, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "abe51cfb8dd8403ca7b1949a471be280", + "m_Id": 0, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 2, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SamplerStateMaterialSlot", + "m_ObjectId": "b33fcfcfb0d6418db15b8604eb3f211a", + "m_Id": 3, + "m_DisplayName": "Sampler", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Sampler", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.TilingAndOffsetNode", + "m_ObjectId": "b3b1f0c4eaf047deb010c0d9be462886", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Tiling And Offset", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -1089.0, + "y": 2194.999755859375, + "width": 208.00006103515626, + "height": 326.0 + } + }, + "m_Slots": [ + { + "m_Id": "00367d82860a4fb4914ef36d41a4d3aa" + }, + { + "m_Id": "a896e0e39e1a440ba8d85d0a5ef45a1d" + }, + { + "m_Id": "5bcc56bbf9a044d3970ec2d1069ecebf" + }, + { + "m_Id": "9ef2cc42aae1491caa62b6b6ef4dd5f1" + } + ], + "synonyms": [ + "pan", + "scale" + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "b62ee9fc1c224437b240378184fed8e1", + "m_Id": 7, + "m_DisplayName": "A", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [], + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.CategoryData", + "m_ObjectId": "b834ebe6456947499aaed0c982d08837", + "m_Name": "", + "m_ChildObjectList": [ + { + "m_Id": "a8c41c77f28146d998d1e4791cce19be" + }, + { + "m_Id": "eaca47c0266e40d882c9b99b803af89d" + }, + { + "m_Id": "1fdec4aaf36144518b784eb73b55e1cb" + } + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "bb4504b514c14b1da7050443b8014bb3", + "m_Id": 0, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 2, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "bde079b462e044e6a132fdc102c11d73", + "m_Id": 2, + "m_DisplayName": "Offset", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Offset", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "be5918eb4b8a4b60934970595d1c0744", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "bff325e1c2ff4afa91a103654035c288", + "m_Id": 0, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 2, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "c18874e780324618bb0b954d05ac58f6", + "m_Id": 4, + "m_DisplayName": "R", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [], + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "c1ac9005d7344dc99ef93232e948fbff", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "e00": 2.0, + "e01": 2.0, + "e02": 2.0, + "e03": 2.0, + "e10": 2.0, + "e11": 2.0, + "e12": 2.0, + "e13": 2.0, + "e20": 2.0, + "e21": 2.0, + "e22": 2.0, + "e23": 2.0, + "e30": 2.0, + "e31": 2.0, + "e32": 2.0, + "e33": 2.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "c6af0edf98424c38baf0843a21ed19d4", + "m_Id": 5, + "m_DisplayName": "G", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [], + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DMaterialSlot", + "m_ObjectId": "c80ec957c3b5414184596f5f1215dc9c", + "m_Id": 0, + "m_DisplayName": "_MainTex", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "c8e097d1b2cb46be850b64d9e4733d96", + "m_Id": 0, + "m_DisplayName": "Alpha", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Alpha", + "m_StageCapability": 2, + "m_Value": 1.0, + "m_DefaultValue": 1.0, + "m_Labels": [], + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "ca1444c7724940feac28971623b5a4ad", + "m_Id": 2, + "m_DisplayName": "G", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [], + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "cf1253454e334e6da7b507f9270c1b5b", + "m_Id": 5, + "m_DisplayName": "G", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [], + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "d00275b8d41147caa2039573855ddef4", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "x": 1.0, + "y": 1.0, + "z": 1.0, + "w": 1.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "d16426a1039941afa475aecb3094aed2", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "d26e5ec3b356407c9001baa1d707b4d6", + "m_Id": 6, + "m_DisplayName": "B", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [], + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "d296a24411c14a76993b6a9f661cc659", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "d2d3006ded6d45f9a482df0cc0f8c340", + "m_Id": 4, + "m_DisplayName": "A", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [], + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "d356bc4f00534476bdd12680b6f8d6e4", + "m_Id": 1, + "m_DisplayName": "Tiling", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Tiling", + "m_StageCapability": 3, + "m_Value": { + "x": 1.0, + "y": 1.0 + }, + "m_DefaultValue": { + "x": 1.0, + "y": 1.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "d4a267ee802642d0b8175b452b302616", + "m_Id": 0, + "m_DisplayName": "Colour", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SamplerStateMaterialSlot", + "m_ObjectId": "d668e16a77894d95b1a9b1dda3dc2cac", + "m_Id": 3, + "m_DisplayName": "Sampler", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Sampler", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.TangentMaterialSlot", + "m_ObjectId": "d7eb7d41b5e148bcb48a3c4180a8e82d", + "m_Id": 0, + "m_DisplayName": "Tangent", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Tangent", + "m_StageCapability": 1, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [], + "m_Space": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "d967a2a80ea147aeb1313bf698ad1b38", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -1042.9998779296875, + "y": 1601.9998779296875, + "width": 131.9998779296875, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "5efd6f5c1a17470da290e0ee39a019ac" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "a8c41c77f28146d998d1e4791cce19be" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.AddNode", + "m_ObjectId": "dbf343eb52244114b4e0cd6ad6c37594", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Add", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -75.00000762939453, + "y": 1422.0001220703125, + "width": 208.0, + "height": 302.0 + } + }, + "m_Slots": [ + { + "m_Id": "d16426a1039941afa475aecb3094aed2" + }, + { + "m_Id": "be5918eb4b8a4b60934970595d1c0744" + }, + { + "m_Id": "84ec2e93e6b14d0b9589257b6dc70488" + } + ], + "synonyms": [ + "addition", + "sum", + "plus" + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "dc6fd797e228463db48ef6688e5693c4", + "m_Group": { + "m_Id": "" + }, + "m_Name": "SurfaceDescription.BaseColor", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 0.0, + "y": 0.0, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "8bde73d15bff4e6f8ce80a53ca05be5f" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "SurfaceDescription.BaseColor" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "dccee567268d48b38793a1c97b7696f5", + "m_Id": 1, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "ddc858333ac14e07bdc275c743abcbfb", + "m_Id": 3, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "de36711c551c4efeb1c3b13e1918d7f3", + "m_Id": 0, + "m_DisplayName": "R", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [], + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "df53aff5461843d39beee80fe11e5297", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "x": 1.0, + "y": 1.0, + "z": 1.0, + "w": 1.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "e0899bc96cdd408d89e56d235ef86f31", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 1617.9998779296875, + "y": 1798.0, + "width": 112.0001220703125, + "height": 33.9998779296875 + } + }, + "m_Slots": [ + { + "m_Id": "983f9adf00f2431abdf44574f86207f0" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "1fdec4aaf36144518b784eb73b55e1cb" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "e241476f79e64f6f9de4b2559969d5d1", + "m_Id": 0, + "m_DisplayName": "In", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "In", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2Node", + "m_ObjectId": "e27f0f5a9e25469ab9e340a19176a065", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Vector 2", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -1448.9998779296875, + "y": 781.9999389648438, + "width": 128.0, + "height": 101.0 + } + }, + "m_Slots": [ + { + "m_Id": "0eded642bb1442f9a1056d92dd45212d" + }, + { + "m_Id": "8f48eec442df45ea8da4bd569f059e88" + }, + { + "m_Id": "22e8505bf0524d45ac6d7c622c552a83" + } + ], + "synonyms": [ + "2", + "v2", + "vec2", + "float2" + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Value": { + "x": 0.0, + "y": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVMaterialSlot", + "m_ObjectId": "e2d1cad3c6eb4ae89bf349d9647ee97c", + "m_Id": 2, + "m_DisplayName": "UV", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [], + "m_Channel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "e39a2e44e1e34c229246f8dbc692f60e", + "m_Id": 2, + "m_DisplayName": "Offset", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Offset", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.TilingAndOffsetNode", + "m_ObjectId": "e3b4aa432177435d9d00fa6295146bd6", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Tiling And Offset", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -1170.9998779296875, + "y": 692.9999389648438, + "width": 207.99993896484376, + "height": 326.0 + } + }, + "m_Slots": [ + { + "m_Id": "769bea38fbf048328cfbd56169d8439e" + }, + { + "m_Id": "5ad43d43f68f48629c683c8e6cd5c42e" + }, + { + "m_Id": "2badc70f22984202b919adba66e510fb" + }, + { + "m_Id": "3f7c485941d148a5bb896287e222ff7a" + } + ], + "synonyms": [ + "pan", + "scale" + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.NegateNode", + "m_ObjectId": "e55d04001897458b96e0de9df51caba1", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Negate", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -1626.9998779296875, + "y": 1199.9998779296875, + "width": 128.0, + "height": 94.0 + } + }, + "m_Slots": [ + { + "m_Id": "8e521b005d8746afb6350e6b7cbbded1" + }, + { + "m_Id": "82d28beadd774ff19555bc0397c5ab90" + } + ], + "synonyms": [ + "invert", + "opposite" + ], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SampleTexture2DNode", + "m_ObjectId": "e6efb5c1944e4390a277f66b8f87ed36", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Sample Texture 2D", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -804.9998779296875, + "y": 1083.9998779296875, + "width": 207.99993896484376, + "height": 433.0 + } + }, + "m_Slots": [ + { + "m_Id": "abe51cfb8dd8403ca7b1949a471be280" + }, + { + "m_Id": "c18874e780324618bb0b954d05ac58f6" + }, + { + "m_Id": "1d48c1a79aae4dd68b72686822e3ed75" + }, + { + "m_Id": "47cb9ec4554543b2866d9c0c8dc409a4" + }, + { + "m_Id": "261218b7374445b69d14d1efd216ba9a" + }, + { + "m_Id": "fb5f8cb7e54a436d921a418131c92736" + }, + { + "m_Id": "9a42b2a562c848d5a8695df2c64e74c0" + }, + { + "m_Id": "59e74e448fc54a348b51930fd91bebec" + } + ], + "synonyms": [ + "tex2d" + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_TextureType": 0, + "m_NormalMapSpace": 0, + "m_EnableGlobalMipBias": true, + "m_MipSamplingMode": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "e7d7f0ecefe14967a6972c84ccdece70", + "m_Id": 3, + "m_DisplayName": "B", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [], + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVMaterialSlot", + "m_ObjectId": "e89bb4aa53ac4c73b252ea64db9326a1", + "m_Id": 0, + "m_DisplayName": "UV", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [], + "m_Channel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "e9a8182b082b4461923bb7d95255dd48", + "m_Id": 0, + "m_DisplayName": "In", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "In", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "ea6d6d2bd79747dab9e2dbc75b48e5f5", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_LiteralMode": false +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty", + "m_ObjectId": "eaca47c0266e40d882c9b99b803af89d", + "m_Guid": { + "m_GuidSerialized": "081b1f51-c4ff-4da1-941d-81a5e6a017ec" + }, + "promotedFromAssetID": "", + "promotedFromCategoryName": "", + "promotedOrdering": -1, + "m_Name": "Thickness", + "m_DefaultRefNameVersion": 1, + "m_RefNameGeneratedByDisplayName": "Thickness", + "m_DefaultReferenceName": "_Thickness", + "m_OverrideReferenceName": "", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_PerRendererData": false, + "m_customAttributes": [], + "m_Value": 0.009999999776482582, + "m_FloatType": 0, + "m_LiteralFloatMode": false, + "m_RangeValues": { + "x": 0.0, + "y": 1.0 + }, + "m_SliderType": 0, + "m_SliderPower": 3.0, + "m_EnumType": 0, + "m_CSharpEnumString": "", + "m_EnumNames": [ + "Default" + ], + "m_EnumValues": [ + 0 + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "eb290f07412747259c7b18f91da3e686", + "m_Id": 3, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "ebaedb45629e4c2ca6e7942473da61b3", + "m_Id": 0, + "m_DisplayName": "Thickness", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [], + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "ebc6bb1d2ba0444883095c91f0d3aaf6", + "m_Id": 5, + "m_DisplayName": "G", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [], + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "eca8c04bbe2f4acda14e523d5201be4b", + "m_Id": 6, + "m_DisplayName": "B", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [], + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "ee2e656d7c50448cb9c2e16c915bf009", + "m_Id": 4, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SamplerStateMaterialSlot", + "m_ObjectId": "f00ca195879d4a659e6944f7e06b70cc", + "m_Id": 3, + "m_DisplayName": "Sampler", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Sampler", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "f48f757860d1470ebfae96910ec199e0", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "fb0d87f180014e0b9106698130e1f723", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "fb27f3ee7f344e35878f2ef58194795b", + "m_Id": 1, + "m_DisplayName": "Tiling", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Tiling", + "m_StageCapability": 3, + "m_Value": { + "x": 1.0, + "y": 1.0 + }, + "m_DefaultValue": { + "x": 1.0, + "y": 1.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DInputMaterialSlot", + "m_ObjectId": "fb5f8cb7e54a436d921a418131c92736", + "m_Id": 1, + "m_DisplayName": "Texture", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Texture", + "m_StageCapability": 3, + "m_BareResource": false, + "m_Texture": { + "m_SerializedTexture": "", + "m_Guid": "" + }, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "fb98925a5c9e4f739167178bb14ccb9f", + "m_Id": 0, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "fd1ccc2d90214252bae6e44f9f4bfb02", + "m_Id": 2, + "m_DisplayName": "Y", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Y", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "Y" + ], + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SampleTexture2DNode", + "m_ObjectId": "ff7e7db7db87471d8322efd3d7857965", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Sample Texture 2D", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 490.9999694824219, + "y": 802.0, + "width": 208.00015258789063, + "height": 433.0 + } + }, + "m_Slots": [ + { + "m_Id": "873c4c6288d84b4f941f6126a32daf88" + }, + { + "m_Id": "87fef81044ce46418d731e2c7ae567c7" + }, + { + "m_Id": "cf1253454e334e6da7b507f9270c1b5b" + }, + { + "m_Id": "d26e5ec3b356407c9001baa1d707b4d6" + }, + { + "m_Id": "1a09c87849fe49f19b63483e8261f471" + }, + { + "m_Id": "98cc5c2841dd45faa451602fd2d78edf" + }, + { + "m_Id": "53595b39588346f39ed928271b8c7215" + }, + { + "m_Id": "955fae67cf3245acbf0479e701121ffc" + } + ], + "synonyms": [ + "tex2d" + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_TextureType": 0, + "m_NormalMapSpace": 0, + "m_EnableGlobalMipBias": true, + "m_MipSamplingMode": 0 +} + diff --git a/Assets/Art/Materials/OutlineGlowShader.shadergraph.meta b/Assets/Art/Materials/OutlineGlowShader.shadergraph.meta new file mode 100644 index 00000000..c9f0454a --- /dev/null +++ b/Assets/Art/Materials/OutlineGlowShader.shadergraph.meta @@ -0,0 +1,18 @@ +fileFormatVersion: 2 +guid: 67e69300250a78149b299fcbef76600f +ScriptedImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 2 + userData: + assetBundleName: + assetBundleVariant: + script: {fileID: 11500000, guid: 625f186215c104763be7675aa2d941aa, type: 3} + useAsTemplate: 0 + exposeTemplateAsShader: 0 + template: + name: + category: + description: + icon: {instanceID: 0} + thumbnail: {instanceID: 0} diff --git a/Assets/Art/Materials/SimpleOutlineMaterial.mat b/Assets/Art/Materials/SimpleOutlineMaterial.mat new file mode 100644 index 00000000..0d14545d --- /dev/null +++ b/Assets/Art/Materials/SimpleOutlineMaterial.mat @@ -0,0 +1,63 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &-2558047921083943664 +MonoBehaviour: + m_ObjectHideFlags: 11 + 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: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} + m_Name: + m_EditorClassIdentifier: Unity.RenderPipelines.Universal.Editor::UnityEditor.Rendering.Universal.AssetVersion + version: 10 +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: SimpleOutlineMaterial + m_Shader: {fileID: -6465566751694194690, guid: ec68bffbfd711284ba7968cf1b8ae340, type: 3} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 + m_ValidKeywords: [] + m_InvalidKeywords: [] + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_LockedProperties: + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _MainTex: + m_Texture: {fileID: 2800000, guid: ae6ce5ebb60e1504ea6c9983c822e0cf, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - unity_Lightmaps: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - unity_LightmapsInd: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - unity_ShadowMasks: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: + - _Thickness: 0.01 + m_Colors: + - White: {r: 1, g: 1, b: 1, a: 1} + - _Color: {r: 1, g: 0.87843144, b: 0.57254905, a: 1} + - _Colour: {r: 0.9341286, g: 1, b: 0, a: 1} + m_BuildTextureStacks: [] + m_AllowLocking: 1 diff --git a/Assets/Art/Materials/SimpleOutlineMaterial.mat.meta b/Assets/Art/Materials/SimpleOutlineMaterial.mat.meta new file mode 100644 index 00000000..e64eb787 --- /dev/null +++ b/Assets/Art/Materials/SimpleOutlineMaterial.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 5971a6dc0428a6e4b9d9718e9e97359e +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Art/Materials/SimplifiedOutline.shadergraph b/Assets/Art/Materials/SimplifiedOutline.shadergraph new file mode 100644 index 00000000..3051d123 --- /dev/null +++ b/Assets/Art/Materials/SimplifiedOutline.shadergraph @@ -0,0 +1,1079 @@ +{ + "m_SGVersion": 3, + "m_Type": "UnityEditor.ShaderGraph.GraphData", + "m_ObjectId": "7b2fc6341f804ae589ed59441bc4f5aa", + "m_Properties": [ + { + "m_Id": "a8c41c77f28146d998d1e4791cce19be" + }, + { + "m_Id": "1fdec4aaf36144518b784eb73b55e1cb" + } + ], + "m_Keywords": [], + "m_Dropdowns": [], + "m_CategoryData": [ + { + "m_Id": "b834ebe6456947499aaed0c982d08837" + } + ], + "m_Nodes": [ + { + "m_Id": "0ae87d908af64c8d895773e95fbb03cd" + }, + { + "m_Id": "53ad9a11605c46798f8fe666aa95d323" + }, + { + "m_Id": "289eb041bbb7454c8c244d8c1fc5257a" + }, + { + "m_Id": "dc6fd797e228463db48ef6688e5693c4" + }, + { + "m_Id": "5cebaa1ea1c44ef19bf4664c09eacdd2" + }, + { + "m_Id": "84c8a8babc2a42168c9380dd514f4be7" + }, + { + "m_Id": "ff7e7db7db87471d8322efd3d7857965" + }, + { + "m_Id": "43c5a3e7948544e3a620868b704ba32e" + }, + { + "m_Id": "e0899bc96cdd408d89e56d235ef86f31" + } + ], + "m_GroupDatas": [], + "m_StickyNoteDatas": [], + "m_Edges": [ + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "43c5a3e7948544e3a620868b704ba32e" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "dc6fd797e228463db48ef6688e5693c4" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "84c8a8babc2a42168c9380dd514f4be7" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "ff7e7db7db87471d8322efd3d7857965" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "e0899bc96cdd408d89e56d235ef86f31" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "43c5a3e7948544e3a620868b704ba32e" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "ff7e7db7db87471d8322efd3d7857965" + }, + "m_SlotId": 7 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "43c5a3e7948544e3a620868b704ba32e" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "ff7e7db7db87471d8322efd3d7857965" + }, + "m_SlotId": 7 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "5cebaa1ea1c44ef19bf4664c09eacdd2" + }, + "m_SlotId": 0 + } + } + ], + "m_VertexContext": { + "m_Position": { + "x": 2306.0, + "y": 1082.0 + }, + "m_Blocks": [ + { + "m_Id": "0ae87d908af64c8d895773e95fbb03cd" + }, + { + "m_Id": "53ad9a11605c46798f8fe666aa95d323" + }, + { + "m_Id": "289eb041bbb7454c8c244d8c1fc5257a" + } + ] + }, + "m_FragmentContext": { + "m_Position": { + "x": 2307.0, + "y": 1323.9998779296875 + }, + "m_Blocks": [ + { + "m_Id": "dc6fd797e228463db48ef6688e5693c4" + }, + { + "m_Id": "5cebaa1ea1c44ef19bf4664c09eacdd2" + } + ] + }, + "m_PreviewData": { + "serializedMesh": { + "m_SerializedMesh": "{\"mesh\":{\"instanceID\":0}}", + "m_Guid": "" + }, + "preventRotation": false + }, + "m_Path": "Shader Graphs", + "m_GraphPrecision": 1, + "m_PreviewMode": 2, + "m_OutputNode": { + "m_Id": "" + }, + "m_SubDatas": [], + "m_ActiveTargets": [ + { + "m_Id": "11a7b8922fe243e4aa14881b8eb6631c" + } + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "0ae87d908af64c8d895773e95fbb03cd", + "m_Group": { + "m_Id": "" + }, + "m_Name": "VertexDescription.Position", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 0.0, + "y": 0.0, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "39c09c1a7a424af1b5f042eda83ec58c" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "VertexDescription.Position" +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.Rendering.Universal.ShaderGraph.UniversalTarget", + "m_ObjectId": "11a7b8922fe243e4aa14881b8eb6631c", + "m_Datas": [], + "m_ActiveSubTarget": { + "m_Id": "7a4f622935ba47ebaecd88a408b3fd63" + }, + "m_AllowMaterialOverride": false, + "m_SurfaceType": 0, + "m_ZTestMode": 4, + "m_ZWriteControl": 0, + "m_AlphaMode": 1, + "m_RenderFace": 2, + "m_AlphaClip": false, + "m_CastShadows": true, + "m_ReceiveShadows": true, + "m_DisableTint": false, + "m_Sort3DAs2DCompatible": false, + "m_AdditionalMotionVectorMode": 0, + "m_AlembicMotionVectors": false, + "m_SupportsLODCrossFade": false, + "m_CustomEditorGUI": "", + "m_SupportVFX": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "1a09c87849fe49f19b63483e8261f471", + "m_Id": 7, + "m_DisplayName": "A", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [], + "m_LiteralMode": false +} + +{ + "m_SGVersion": 3, + "m_Type": "UnityEditor.ShaderGraph.Internal.ColorShaderProperty", + "m_ObjectId": "1fdec4aaf36144518b784eb73b55e1cb", + "m_Guid": { + "m_GuidSerialized": "93c805da-f01f-406a-992b-90f558c6d0c1" + }, + "promotedFromAssetID": "", + "promotedFromCategoryName": "", + "promotedOrdering": -1, + "m_Name": "Color", + "m_DefaultRefNameVersion": 1, + "m_RefNameGeneratedByDisplayName": "Color", + "m_DefaultReferenceName": "_Color", + "m_OverrideReferenceName": "_Color", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_PerRendererData": false, + "m_customAttributes": [], + "m_Value": { + "r": 0.1818181276321411, + "g": 1.0, + "b": 0.0, + "a": 1.0 + }, + "isMainColor": false, + "m_ColorMode": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "289eb041bbb7454c8c244d8c1fc5257a", + "m_Group": { + "m_Id": "" + }, + "m_Name": "VertexDescription.Tangent", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 0.0, + "y": 0.0, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "d7eb7d41b5e148bcb48a3c4180a8e82d" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "VertexDescription.Tangent" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "3125586e00904c52ad9db88864772f96", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "e00": 2.0, + "e01": 2.0, + "e02": 2.0, + "e03": 2.0, + "e10": 2.0, + "e11": 2.0, + "e12": 2.0, + "e13": 2.0, + "e20": 2.0, + "e21": 2.0, + "e22": 2.0, + "e23": 2.0, + "e30": 2.0, + "e31": 2.0, + "e32": 2.0, + "e33": 2.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PositionMaterialSlot", + "m_ObjectId": "39c09c1a7a424af1b5f042eda83ec58c", + "m_Id": 0, + "m_DisplayName": "Position", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Position", + "m_StageCapability": 1, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [], + "m_Space": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.MultiplyNode", + "m_ObjectId": "43c5a3e7948544e3a620868b704ba32e", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Multiply", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 1802.0001220703125, + "y": 1619.0001220703125, + "width": 208.0, + "height": 302.0 + } + }, + "m_Slots": [ + { + "m_Id": "fcdb6600a17441109552253fdb817253" + }, + { + "m_Id": "3125586e00904c52ad9db88864772f96" + }, + { + "m_Id": "cacbed31f46b439aa90c796cf9cdd4a1" + } + ], + "synonyms": [ + "multiplication", + "times", + "x" + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 1, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.NormalMaterialSlot", + "m_ObjectId": "4cd048f612144bf6861aa4ca0f071573", + "m_Id": 0, + "m_DisplayName": "Normal", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Normal", + "m_StageCapability": 1, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [], + "m_Space": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVMaterialSlot", + "m_ObjectId": "53595b39588346f39ed928271b8c7215", + "m_Id": 2, + "m_DisplayName": "UV", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [], + "m_Channel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "53ad9a11605c46798f8fe666aa95d323", + "m_Group": { + "m_Id": "" + }, + "m_Name": "VertexDescription.Normal", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 0.0, + "y": 0.0, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "4cd048f612144bf6861aa4ca0f071573" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "VertexDescription.Normal" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "5cebaa1ea1c44ef19bf4664c09eacdd2", + "m_Group": { + "m_Id": "" + }, + "m_Name": "SurfaceDescription.Alpha", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 0.0, + "y": 0.0, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "c8e097d1b2cb46be850b64d9e4733d96" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "SurfaceDescription.Alpha" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.Rendering.Universal.ShaderGraph.UniversalSpriteUnlitSubTarget", + "m_ObjectId": "7a4f622935ba47ebaecd88a408b3fd63" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "84c8a8babc2a42168c9380dd514f4be7", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 1172.0001220703125, + "y": 1333.0001220703125, + "width": 132.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "c80ec957c3b5414184596f5f1215dc9c" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "a8c41c77f28146d998d1e4791cce19be" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "873c4c6288d84b4f941f6126a32daf88", + "m_Id": 0, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 2, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "87fef81044ce46418d731e2c7ae567c7", + "m_Id": 4, + "m_DisplayName": "R", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [], + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.ColorRGBMaterialSlot", + "m_ObjectId": "8bde73d15bff4e6f8ce80a53ca05be5f", + "m_Id": 0, + "m_DisplayName": "Base Color", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "BaseColor", + "m_StageCapability": 2, + "m_Value": { + "x": 0.5, + "y": 0.5, + "z": 0.5 + }, + "m_DefaultValue": { + "x": 0.5, + "y": 0.5, + "z": 0.5 + }, + "m_Labels": [], + "m_ColorMode": 0, + "m_DefaultColor": { + "r": 0.5, + "g": 0.5, + "b": 0.5, + "a": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SamplerStateMaterialSlot", + "m_ObjectId": "955fae67cf3245acbf0479e701121ffc", + "m_Id": 3, + "m_DisplayName": "Sampler", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Sampler", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "983f9adf00f2431abdf44574f86207f0", + "m_Id": 0, + "m_DisplayName": "Color", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DInputMaterialSlot", + "m_ObjectId": "98cc5c2841dd45faa451602fd2d78edf", + "m_Id": 1, + "m_DisplayName": "Texture", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Texture", + "m_StageCapability": 3, + "m_BareResource": false, + "m_Texture": { + "m_SerializedTexture": "", + "m_Guid": "" + }, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Internal.Texture2DShaderProperty", + "m_ObjectId": "a8c41c77f28146d998d1e4791cce19be", + "m_Guid": { + "m_GuidSerialized": "3746a173-0934-4e68-bc7c-91677e53bac8" + }, + "promotedFromAssetID": "", + "promotedFromCategoryName": "", + "promotedOrdering": -1, + "m_Name": "_MainTex", + "m_DefaultRefNameVersion": 1, + "m_RefNameGeneratedByDisplayName": "_MainTex", + "m_DefaultReferenceName": "_MainTex", + "m_OverrideReferenceName": "", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_PerRendererData": false, + "m_customAttributes": [], + "m_Value": { + "m_SerializedTexture": "{\"texture\":{\"fileID\":2800000,\"guid\":\"ae6ce5ebb60e1504ea6c9983c822e0cf\",\"type\":3}}", + "m_Guid": "" + }, + "isMainTexture": false, + "useTilingAndOffset": false, + "useTexelSize": true, + "m_Modifiable": true, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.CategoryData", + "m_ObjectId": "b834ebe6456947499aaed0c982d08837", + "m_Name": "", + "m_ChildObjectList": [ + { + "m_Id": "a8c41c77f28146d998d1e4791cce19be" + }, + { + "m_Id": "1fdec4aaf36144518b784eb73b55e1cb" + } + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DMaterialSlot", + "m_ObjectId": "c80ec957c3b5414184596f5f1215dc9c", + "m_Id": 0, + "m_DisplayName": "_MainTex", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "c8e097d1b2cb46be850b64d9e4733d96", + "m_Id": 0, + "m_DisplayName": "Alpha", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Alpha", + "m_StageCapability": 2, + "m_Value": 1.0, + "m_DefaultValue": 1.0, + "m_Labels": [], + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "cacbed31f46b439aa90c796cf9cdd4a1", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "cf1253454e334e6da7b507f9270c1b5b", + "m_Id": 5, + "m_DisplayName": "G", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [], + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "d26e5ec3b356407c9001baa1d707b4d6", + "m_Id": 6, + "m_DisplayName": "B", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [], + "m_LiteralMode": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.TangentMaterialSlot", + "m_ObjectId": "d7eb7d41b5e148bcb48a3c4180a8e82d", + "m_Id": 0, + "m_DisplayName": "Tangent", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Tangent", + "m_StageCapability": 1, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [], + "m_Space": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "dc6fd797e228463db48ef6688e5693c4", + "m_Group": { + "m_Id": "" + }, + "m_Name": "SurfaceDescription.BaseColor", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 0.0, + "y": 0.0, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "8bde73d15bff4e6f8ce80a53ca05be5f" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "SurfaceDescription.BaseColor" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "e0899bc96cdd408d89e56d235ef86f31", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 1617.9998779296875, + "y": 1798.0, + "width": 112.0001220703125, + "height": 33.9998779296875 + } + }, + "m_Slots": [ + { + "m_Id": "983f9adf00f2431abdf44574f86207f0" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "1fdec4aaf36144518b784eb73b55e1cb" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "fcdb6600a17441109552253fdb817253", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SampleTexture2DNode", + "m_ObjectId": "ff7e7db7db87471d8322efd3d7857965", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Sample Texture 2D", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 1362.0001220703125, + "y": 1372.0001220703125, + "width": 208.0, + "height": 433.0 + } + }, + "m_Slots": [ + { + "m_Id": "873c4c6288d84b4f941f6126a32daf88" + }, + { + "m_Id": "87fef81044ce46418d731e2c7ae567c7" + }, + { + "m_Id": "cf1253454e334e6da7b507f9270c1b5b" + }, + { + "m_Id": "d26e5ec3b356407c9001baa1d707b4d6" + }, + { + "m_Id": "1a09c87849fe49f19b63483e8261f471" + }, + { + "m_Id": "98cc5c2841dd45faa451602fd2d78edf" + }, + { + "m_Id": "53595b39588346f39ed928271b8c7215" + }, + { + "m_Id": "955fae67cf3245acbf0479e701121ffc" + } + ], + "synonyms": [ + "tex2d" + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_TextureType": 0, + "m_NormalMapSpace": 0, + "m_EnableGlobalMipBias": true, + "m_MipSamplingMode": 0 +} + diff --git a/Assets/Art/Materials/SimplifiedOutline.shadergraph.meta b/Assets/Art/Materials/SimplifiedOutline.shadergraph.meta new file mode 100644 index 00000000..257ae657 --- /dev/null +++ b/Assets/Art/Materials/SimplifiedOutline.shadergraph.meta @@ -0,0 +1,18 @@ +fileFormatVersion: 2 +guid: ec68bffbfd711284ba7968cf1b8ae340 +ScriptedImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 2 + userData: + assetBundleName: + assetBundleVariant: + script: {fileID: 11500000, guid: 625f186215c104763be7675aa2d941aa, type: 3} + useAsTemplate: 0 + exposeTemplateAsShader: 0 + template: + name: + category: + description: + icon: {instanceID: 0} + thumbnail: {instanceID: 0} diff --git a/Assets/Art/Materials/SpriteOutlineMaterial.mat b/Assets/Art/Materials/SpriteOutlineMaterial.mat new file mode 100644 index 00000000..01cf5718 --- /dev/null +++ b/Assets/Art/Materials/SpriteOutlineMaterial.mat @@ -0,0 +1,62 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: SpriteOutlineMaterial + m_Shader: {fileID: -6465566751694194690, guid: 67e69300250a78149b299fcbef76600f, type: 3} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 + m_ValidKeywords: [] + m_InvalidKeywords: [] + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_LockedProperties: + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - unity_Lightmaps: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - unity_LightmapsInd: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - unity_ShadowMasks: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: + - _Thickness: 0.002 + m_Colors: + - White: {r: 1, g: 1, b: 1, a: 1} + - _Colour: {r: 0.9341286, g: 1, b: 0, a: 1} + m_BuildTextureStacks: [] + m_AllowLocking: 1 +--- !u!114 &5663714819455386904 +MonoBehaviour: + m_ObjectHideFlags: 11 + 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: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} + m_Name: + m_EditorClassIdentifier: Unity.RenderPipelines.Universal.Editor::UnityEditor.Rendering.Universal.AssetVersion + version: 10 diff --git a/Assets/Art/Materials/SpriteOutlineMaterial.mat.meta b/Assets/Art/Materials/SpriteOutlineMaterial.mat.meta new file mode 100644 index 00000000..4b65a7f1 --- /dev/null +++ b/Assets/Art/Materials/SpriteOutlineMaterial.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 91b7189b38f61ad48868dea964c7bf14 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Art/Sprites/UI/.SpeakerOption.png-autosave.kra b/Assets/Art/Sprites/UI/.SpeakerOption.png-autosave.kra new file mode 100644 index 00000000..ea496220 Binary files /dev/null and b/Assets/Art/Sprites/UI/.SpeakerOption.png-autosave.kra differ diff --git a/Assets/Art/Sprites/UI/SpeakerOption_question.png b/Assets/Art/Sprites/UI/SpeakerOption_question.png new file mode 100644 index 00000000..0ce63ad2 Binary files /dev/null and b/Assets/Art/Sprites/UI/SpeakerOption_question.png differ diff --git a/Assets/Art/Sprites/UI/SpeakerOption_question.png.meta b/Assets/Art/Sprites/UI/SpeakerOption_question.png.meta new file mode 100644 index 00000000..686de0e7 --- /dev/null +++ b/Assets/Art/Sprites/UI/SpeakerOption_question.png.meta @@ -0,0 +1,169 @@ +fileFormatVersion: 2 +guid: 4e5d5a9dd24adad4f80facf870ec454c +TextureImporter: + internalIDToNameTable: + - first: + 213: 6821686978506991011 + second: SpeakerOption_question_0 + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 2 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 80 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 4 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: Android + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: iOS + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: + - serializedVersion: 2 + name: SpeakerOption_question_0 + rect: + serializedVersion: 2 + x: 12 + y: 2 + width: 245 + height: 148 + alignment: 0 + pivot: {x: 0, y: 0} + border: {x: 0, y: 0, z: 0, w: 0} + customData: + outline: [] + physicsShape: [] + tessellationDetail: -1 + bones: [] + spriteID: 3a521d20a208bae50800000000000000 + internalID: 6821686978506991011 + vertices: [] + indices: + edges: [] + weights: [] + outline: [] + customData: + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spriteCustomMetadata: + entries: [] + nameFileIdTable: + SpeakerOption_question_0: 6821686978506991011 + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/External/Feel.meta b/Assets/External/Feel.meta new file mode 100644 index 00000000..094e99fe --- /dev/null +++ b/Assets/External/Feel.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: e5594e1e7ea598d409319855db3fd1f5 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/External/Feel/MMFeedbacks.meta b/Assets/External/Feel/MMFeedbacks.meta new file mode 100644 index 00000000..d9bd6d41 --- /dev/null +++ b/Assets/External/Feel/MMFeedbacks.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 0b22304f1aade44dc86db2bcb325574a +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/External/Feel/MMFeedbacks/Authorizations.meta b/Assets/External/Feel/MMFeedbacks/Authorizations.meta new file mode 100644 index 00000000..510eec9e --- /dev/null +++ b/Assets/External/Feel/MMFeedbacks/Authorizations.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 4ad6833276c9b1b4b86f0a85803055e4 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/External/Feel/MMFeedbacks/Authorizations/MMFeedbacksAuthorizations.cs b/Assets/External/Feel/MMFeedbacks/Authorizations/MMFeedbacksAuthorizations.cs new file mode 100644 index 00000000..b92e4235 --- /dev/null +++ b/Assets/External/Feel/MMFeedbacks/Authorizations/MMFeedbacksAuthorizations.cs @@ -0,0 +1,589 @@ +using MoreMountains.FeedbacksForThirdParty; +using MoreMountains.Tools; + +namespace MoreMountains.Feedbacks +{ + /// + /// Add this class to an empty object in your scene and it will prevent any unchecked feedback in its inspector from playing + /// + public partial class MMFeedbacksAuthorizations : MMMonoBehaviour + { + [MMInspectorGroup("Animation", true, 16)] [MMInspectorButton("ToggleAnimation")] + public bool ToggleAnimationButton; + + public bool AnimationParameter = true; + public bool AnimatorSpeed = true; + + [MMInspectorGroup("Audio", true, 17)] [MMInspectorButton("ToggleAudio")] + public bool ToggleAudioButton; + + public bool AudioFilterDistortion = true; + public bool AudioFilterEcho = true; + public bool AudioFilterHighPass = true; + public bool AudioFilterLowPass = true; + public bool AudioFilterReverb = true; + public bool AudioMixerSnapshotTransition = true; + public bool AudioSource = true; + public bool AudioSourcePitch = true; + public bool AudioSourceStereoPan = true; + public bool AudioSourceVolume = true; + public bool MMPlaylist = true; + public bool MMSoundManagerAllSoundsControl = true; + public bool MMSoundManagerSaveAndLoad = true; + public bool MMSoundManagerSound = true; + public bool MMSoundManagerSoundControl = true; + public bool MMSoundManagerSoundFade = true; + public bool MMSoundManagerTrackControl = true; + public bool MMSoundManagerTrackFade = true; + public bool Sound = true; + + [MMInspectorGroup("Camera", true, 18)] [MMInspectorButton("ToggleCamera")] + public bool ToggleCameraButton; + + public bool CameraShake = true; + public bool CameraZoom = true; + #if MM_CINEMACHINE || MM_CINEMACHINE3 + public bool CinemachineImpulse = true; + public bool CinemachineImpulseClear = true; + public bool CinemachineImpulseSource = true; + public bool CinemachineTransition = true; + #endif + public bool ClippingPlanes = true; + public bool Fade = true; + public bool FieldOfView = true; + public bool Flash = true; + public bool OrthographicSize = true; + + [MMInspectorGroup("Debug", true, 19)] [MMInspectorButton("ToggleDebug")] + public bool ToggleDebugButton; + + public bool Comment = true; + public bool Log = true; + + [MMInspectorGroup("Events", true, 20)] [MMInspectorButton("ToggleEvents")] + public bool ToggleEventsButton; + + public bool MMGameEvent = true; + public bool UnityEvents = true; + + [MMInspectorGroup("GameObject", true, 47)] [MMInspectorButton("ToggleGameObject")] + public bool ToggleGameObjectButton; + + public bool Broadcast = true; + public bool Collider = true; + public bool Collider2D = true; + public bool DestroyTargetObject = true; + public bool EnableBehaviour = true; + public bool FloatController = true; + public bool InstantiateObject = true; + public bool MMRadioSignal = true; + public bool Rigidbody = true; + public bool Rigidbody2D = true; + public bool SetActive = true; + + + #if MOREMOUNTAINS_NICEVIBRATIONS_INSTALLED + [MMInspectorGroup("Haptics", true, 22)] [MMInspectorButton("ToggleHaptics")] + public bool ToggleHapticsButton; + + public bool HapticClip = true; + public bool HapticContinuous = true; + public bool HapticControl = true; + public bool HapticEmphasis = true; + public bool HapticPreset = true; + #endif + + [MMInspectorGroup("Light", true, 23)] [MMInspectorButton("ToggleLight")] + public bool ToggleLightButton; + + public bool Light = true; + + [MMInspectorGroup("Loop", true, 24)] [MMInspectorButton("ToggleLoop")] + public bool ToggleLoopButton; + + public bool Looper = true; + public bool LooperStart = true; + + [MMInspectorGroup("Particles", true, 25)] [MMInspectorButton("ToggleParticles")] + public bool ToggleParticlesButton; + + public bool ParticlesInstantiation = true; + public bool ParticlesPlay = true; + + [MMInspectorGroup("Pause", true, 26)] [MMInspectorButton("TogglePause")] + public bool TogglePauseButton; + + public bool HoldingPause = true; + public bool Pause = true; + + [MMInspectorGroup("Post Process", true, 27)] [MMInspectorButton("TogglePostProcess")] + public bool TogglePostProcessButton; + + public bool Bloom = true; + public bool ChromaticAberration = true; + public bool ColorGrading = true; + public bool DepthOfField = true; + public bool GlobalPPVolumeAutoBlend = true; + public bool LensDistortion = true; + public bool PPMovingFilter = true; + public bool Vignette = true; + + [MMInspectorGroup("Flicker", true, 28)] [MMInspectorButton("ToggleFlicker")] + public bool ToggleFlickerButton; + + public bool Flicker = true; + public bool Fog = true; + public bool Material = true; + public bool MMBlink = true; + public bool ShaderGlobal = true; + public bool ShaderController = true; + public bool Skybox = true; + public bool SpriteRenderer = true; + public bool TextureOffset = true; + public bool TextureScale = true; + + [MMInspectorGroup("Scene", true, 29)] [MMInspectorButton("ToggleScene")] + public bool ToggleSceneButton; + + public bool LoadScene = true; + public bool UnloadScene = true; + + [MMInspectorGroup("Time", true, 31)] [MMInspectorButton("ToggleTime")] + public bool ToggleTimeButton; + + public bool FreezeFrame = true; + public bool TimescaleModifier = true; + + [MMInspectorGroup("Transform", true, 32)] [MMInspectorButton("ToggleTransform")] + public bool ToggleTransformButton; + + public bool Destination = true; + public bool Position = true; + public bool PositionShake = true; + public bool RotatePositionAround = true; + public bool Rotation = true; + public bool RotationShake = true; + public bool Scale = true; + public bool ScaleShake = true; + public bool SquashAndStretch = true; + public bool Wiggle = true; + + [MMInspectorGroup("UI", true, 33)] [MMInspectorButton("ToggleUI")] + public bool ToggleUiButton; + + public bool CanvasGroup = true; + public bool CanvasGroupBlocksRaycasts = true; + public bool FloatingText = true; + public bool Graphic = true; + public bool GraphicCrossFade = true; + public bool Image = true; + public bool ImageAlpha = true; + public bool ImageFill = true; + public bool ImageRaycastTarget = true; + public bool ImageTextureOffset = true; + public bool ImageTextureScale = true; + public bool RectTransformAnchor = true; + public bool RectTransformOffset = true; + public bool RectTransformPivot = true; + public bool RectTransformSizeDelta = true; + public bool Text = true; + public bool TextColor = true; + public bool TextFontSize = true; + public bool VideoPlayer = true; + + [MMInspectorGroup("TextMesh Pro", true, 30)] [MMInspectorButton("ToggleTextMeshPro")] + public bool ToggleTextMeshProButton; + + #if MM_UGUI2 + public bool TMPAlpha = true; + public bool TMPCharacterSpacing = true; + public bool TMPColor = true; + public bool TMPCountTo = true; + public bool TMPDilate = true; + public bool TMPFontSize = true; + public bool TMPLineSpacing = true; + public bool TMPOutlineColor = true; + public bool TMPOutlineWidth = true; + public bool TMPParagraphSpacing = true; + public bool TMPSoftness = true; + public bool TMPText = true; + public bool TMPTextReveal = true; + public bool TMPWordSpacing = true; + #endif + + #region ToggleMethods + + private void ToggleAnimation() + { + AnimationParameter = !AnimationParameter; + AnimatorSpeed = !AnimatorSpeed; + } + + private void ToggleAudio() + { + AudioFilterDistortion = !AudioFilterDistortion; + AudioFilterEcho = !AudioFilterEcho; + AudioFilterHighPass = !AudioFilterHighPass; + AudioFilterLowPass = !AudioFilterLowPass; + AudioFilterReverb = !AudioFilterReverb; + AudioMixerSnapshotTransition = !AudioMixerSnapshotTransition; + AudioSource = !AudioSource; + AudioSourcePitch = !AudioSourcePitch; + AudioSourceStereoPan = !AudioSourceStereoPan; + AudioSourceVolume = !AudioSourceVolume; + MMPlaylist = !MMPlaylist; + MMSoundManagerAllSoundsControl = !MMSoundManagerAllSoundsControl; + MMSoundManagerSaveAndLoad = !MMSoundManagerSaveAndLoad; + MMSoundManagerSound = !MMSoundManagerSound; + MMSoundManagerSoundControl = !MMSoundManagerSoundControl; + MMSoundManagerSoundFade = !MMSoundManagerSoundFade; + MMSoundManagerTrackControl = !MMSoundManagerTrackControl; + MMSoundManagerTrackFade = !MMSoundManagerTrackFade; + Sound = !Sound; + } + + private void ToggleCamera() + { + CameraShake = !CameraShake; + CameraZoom = !CameraZoom; + #if MM_CINEMACHINE || MM_CINEMACHINE3 + CinemachineImpulse = !CinemachineImpulse; + CinemachineImpulseClear = !CinemachineImpulseClear; + CinemachineImpulseSource = !CinemachineImpulseSource; + CinemachineTransition = !CinemachineTransition; + #endif + ClippingPlanes = !ClippingPlanes; + Fade = !Fade; + FieldOfView = !FieldOfView; + Flash = !Flash; + OrthographicSize = !OrthographicSize; + } + + private void ToggleDebug() + { + Comment = !Comment; + Log = !Log; + } + + private void ToggleEvents() + { + MMGameEvent = !MMGameEvent; + UnityEvents = !UnityEvents; + } + + private void ToggleGameObject() + { + Broadcast = !Broadcast; + Collider = !Collider; + Collider2D = !Collider2D; + DestroyTargetObject = !DestroyTargetObject; + EnableBehaviour = !EnableBehaviour; + FloatController = !FloatController; + InstantiateObject = !InstantiateObject; + MMRadioSignal = !MMRadioSignal; + Rigidbody = !Rigidbody; + Rigidbody2D = !Rigidbody2D; + SetActive = !SetActive; + } + + #if MOREMOUNTAINS_NICEVIBRATIONS_INSTALLED + private void ToggleHaptics() + { + HapticClip = !HapticClip; + HapticContinuous = !HapticContinuous; + HapticControl = !HapticControl; + HapticEmphasis = !HapticEmphasis; + HapticPreset = !HapticPreset; + } + #endif + + private void ToggleLight() + { + Light = !Light; + } + + private void ToggleLoop() + { + Looper = !Looper; + LooperStart = !LooperStart; + } + + private void ToggleParticles() + { + ParticlesInstantiation = !ParticlesInstantiation; + ParticlesPlay = !ParticlesPlay; + } + + private void TogglePause() + { + HoldingPause = !HoldingPause; + Pause = !Pause; + } + + #if MM_POSTPROCESSING + private void TogglePostProcess() + { + Bloom = !Bloom; + ChromaticAberration = !ChromaticAberration; + ColorGrading = !ColorGrading; + DepthOfField = !DepthOfField; + GlobalPPVolumeAutoBlend = !GlobalPPVolumeAutoBlend; + LensDistortion = !LensDistortion; + PPMovingFilter = !PPMovingFilter; + Vignette = !Vignette; + } + #endif + + private void ToggleFlicker() + { + Flicker = !Flicker; + Fog = !Fog; + Material = !Material; + MMBlink = !MMBlink; + ShaderGlobal = !ShaderGlobal; + ShaderController = !ShaderController; + Skybox = !Skybox; + SpriteRenderer = !SpriteRenderer; + TextureOffset = !TextureOffset; + TextureScale = !TextureScale; + } + + private void ToggleScene() + { + LoadScene = !LoadScene; + UnloadScene = !UnloadScene; + } + + private void ToggleTime() + { + FreezeFrame = !FreezeFrame; + TimescaleModifier = !TimescaleModifier; + } + + private void ToggleTransform() + { + Destination = !Destination; + Position = !Position; + PositionShake = !PositionShake; + RotatePositionAround = !RotatePositionAround; + Rotation = !Rotation; + RotationShake = !RotationShake; + Scale = !Scale; + ScaleShake = !ScaleShake; + SquashAndStretch = !SquashAndStretch; + Wiggle = !Wiggle; + } + + private void ToggleUI() + { + CanvasGroup = !CanvasGroup; + CanvasGroupBlocksRaycasts = !CanvasGroupBlocksRaycasts; + FloatingText = !FloatingText; + Graphic = !Graphic; + GraphicCrossFade = !GraphicCrossFade; + Image = !Image; + ImageAlpha = !ImageAlpha; + ImageFill = !ImageFill; + ImageRaycastTarget = !ImageRaycastTarget; + ImageTextureOffset = !ImageTextureOffset; + ImageTextureScale = !ImageTextureScale; + RectTransformAnchor = !RectTransformAnchor; + RectTransformOffset = !RectTransformOffset; + RectTransformPivot = !RectTransformPivot; + RectTransformSizeDelta = !RectTransformSizeDelta; + Text = !Text; + TextColor = !TextColor; + TextFontSize = !TextFontSize; + VideoPlayer = !VideoPlayer; + } + + #if MM_UGUI2 + private void ToggleTextMeshPro() + { + TMPAlpha = !TMPAlpha; + TMPCharacterSpacing = !TMPCharacterSpacing; + TMPColor = !TMPColor; + TMPCountTo = !TMPCountTo; + TMPDilate = !TMPDilate; + TMPFontSize = !TMPFontSize; + TMPLineSpacing = !TMPLineSpacing; + TMPOutlineColor = !TMPOutlineColor; + TMPOutlineWidth = !TMPOutlineWidth; + TMPParagraphSpacing = !TMPParagraphSpacing; + TMPSoftness = !TMPSoftness; + TMPText = !TMPText; + TMPTextReveal = !TMPTextReveal; + TMPWordSpacing = !TMPWordSpacing; + } + #endif + + #endregion + + private void Start() + { + MMF_Animation.FeedbackTypeAuthorized = AnimationParameter; + MMF_AnimatorSpeed.FeedbackTypeAuthorized = AnimatorSpeed; + MMF_AudioFilterDistortion.FeedbackTypeAuthorized = AudioFilterDistortion; + MMF_AudioFilterEcho.FeedbackTypeAuthorized = AudioFilterEcho; + MMF_AudioFilterHighPass.FeedbackTypeAuthorized = AudioFilterHighPass; + MMF_AudioFilterLowPass.FeedbackTypeAuthorized = AudioFilterLowPass; + MMF_AudioFilterReverb.FeedbackTypeAuthorized = AudioFilterReverb; + MMF_AudioMixerSnapshotTransition.FeedbackTypeAuthorized = AudioMixerSnapshotTransition; + MMF_AudioSource.FeedbackTypeAuthorized = AudioSource; + MMF_AudioSourcePitch.FeedbackTypeAuthorized = AudioSourcePitch; + MMF_AudioSourceStereoPan.FeedbackTypeAuthorized = AudioSourceStereoPan; + MMF_AudioSourceVolume.FeedbackTypeAuthorized = AudioSourceVolume; + MMF_Playlist.FeedbackTypeAuthorized = MMPlaylist; + MMF_MMSoundManagerAllSoundsControl.FeedbackTypeAuthorized = MMSoundManagerAllSoundsControl; + MMF_MMSoundManagerSaveLoad.FeedbackTypeAuthorized = MMSoundManagerSaveAndLoad; + MMF_MMSoundManagerSound.FeedbackTypeAuthorized = MMSoundManagerSound; + MMF_MMSoundManagerSoundControl.FeedbackTypeAuthorized = MMSoundManagerSoundControl; + MMF_MMSoundManagerSoundFade.FeedbackTypeAuthorized = MMSoundManagerSoundFade; + MMF_MMSoundManagerTrackControl.FeedbackTypeAuthorized = MMSoundManagerTrackControl; + MMF_MMSoundManagerTrackFade.FeedbackTypeAuthorized = MMSoundManagerTrackFade; + MMF_Sound.FeedbackTypeAuthorized = Sound; + MMF_CameraShake.FeedbackTypeAuthorized = CameraShake; + MMF_CameraZoom.FeedbackTypeAuthorized = CameraZoom; + + #if MM_CINEMACHINE || MM_CINEMACHINE3 + MMF_CinemachineImpulse.FeedbackTypeAuthorized = CinemachineImpulse; + MMF_CinemachineImpulseClear.FeedbackTypeAuthorized = CinemachineImpulseClear; + MMF_CinemachineImpulseSource.FeedbackTypeAuthorized = CinemachineImpulseSource; + MMF_CinemachineTransition.FeedbackTypeAuthorized = CinemachineTransition; + #endif + + MMF_CameraClippingPlanes.FeedbackTypeAuthorized = ClippingPlanes; + MMF_CameraFieldOfView.FeedbackTypeAuthorized = FieldOfView; + MMF_CameraOrthographicSize.FeedbackTypeAuthorized = OrthographicSize; + MMF_DebugComment.FeedbackTypeAuthorized = Comment; + MMF_DebugLog.FeedbackTypeAuthorized = Log; + MMF_MMGameEvent.FeedbackTypeAuthorized = MMGameEvent; + MMF_Events.FeedbackTypeAuthorized = UnityEvents; + MMF_Broadcast.FeedbackTypeAuthorized = Broadcast; + MMF_Collider.FeedbackTypeAuthorized = Collider; + MMF_Destroy.FeedbackTypeAuthorized = DestroyTargetObject; + MMF_Enable.FeedbackTypeAuthorized = EnableBehaviour; + MMF_FloatController.FeedbackTypeAuthorized = FloatController; + MMF_InstantiateObject.FeedbackTypeAuthorized = InstantiateObject; + MMF_RadioSignal.FeedbackTypeAuthorized = MMRadioSignal; + MMF_Rigidbody.FeedbackTypeAuthorized = Rigidbody; + MMF_SetActive.FeedbackTypeAuthorized = SetActive; + + #if MM_PHYSICS2D + MMF_Collider2D.FeedbackTypeAuthorized = Collider2D; + MMF_Rigidbody2D.FeedbackTypeAuthorized = Rigidbody2D; + #endif + + #if MOREMOUNTAINS_NICEVIBRATIONS_INSTALLED + MMF_Haptics.FeedbackTypeAuthorized = HapticClip; + MMF_NVContinuous.FeedbackTypeAuthorized = HapticContinuous; + MMF_NVControl.FeedbackTypeAuthorized = HapticControl; + MMF_NVEmphasis.FeedbackTypeAuthorized = HapticEmphasis; + MMF_NVPreset.FeedbackTypeAuthorized = HapticPreset; + #endif + + MMF_Light.FeedbackTypeAuthorized = Light; + MMF_Looper.FeedbackTypeAuthorized = Looper; + MMF_LooperStart.FeedbackTypeAuthorized = LooperStart; + MMF_ParticlesInstantiation.FeedbackTypeAuthorized = ParticlesInstantiation; + MMF_Particles.FeedbackTypeAuthorized = ParticlesPlay; + MMF_HoldingPause.FeedbackTypeAuthorized = HoldingPause; + MMF_Pause.FeedbackTypeAuthorized = Pause; + MMF_Flicker.FeedbackTypeAuthorized = Flicker; + MMF_Fog.FeedbackTypeAuthorized = Fog; + MMF_Material.FeedbackTypeAuthorized = Material; + MMF_Blink.FeedbackTypeAuthorized = MMBlink; + MMF_ShaderGlobal.FeedbackTypeAuthorized = ShaderGlobal; + MMF_Skybox.FeedbackTypeAuthorized = Skybox; + MMF_SpriteRenderer.FeedbackTypeAuthorized = SpriteRenderer; + MMF_TextureOffset.FeedbackTypeAuthorized = TextureOffset; + MMF_TextureScale.FeedbackTypeAuthorized = TextureScale; + MMF_LoadScene.FeedbackTypeAuthorized = LoadScene; + MMF_UnloadScene.FeedbackTypeAuthorized = UnloadScene; + MMF_FreezeFrame.FeedbackTypeAuthorized = FreezeFrame; + MMF_TimescaleModifier.FeedbackTypeAuthorized = TimescaleModifier; + MMF_DestinationTransform.FeedbackTypeAuthorized = Destination; + MMF_Position.FeedbackTypeAuthorized = Position; + MMF_PositionShake.FeedbackTypeAuthorized = PositionShake; + MMF_RotatePositionAround.FeedbackTypeAuthorized = RotatePositionAround; + MMF_Rotation.FeedbackTypeAuthorized = Rotation; + MMF_RotationShake.FeedbackTypeAuthorized = RotationShake; + MMF_Scale.FeedbackTypeAuthorized = Scale; + MMF_ScaleShake.FeedbackTypeAuthorized = ScaleShake; + MMF_SquashAndStretch.FeedbackTypeAuthorized = SquashAndStretch; + MMF_Wiggle.FeedbackTypeAuthorized = Wiggle; + MMF_CanvasGroup.FeedbackTypeAuthorized = CanvasGroup; + MMF_CanvasGroupBlocksRaycasts.FeedbackTypeAuthorized = CanvasGroupBlocksRaycasts; + + MMF_FloatingText.FeedbackTypeAuthorized = FloatingText; + MMF_RectTransformAnchor.FeedbackTypeAuthorized = RectTransformAnchor; + MMF_RectTransformOffset.FeedbackTypeAuthorized = RectTransformOffset; + MMF_RectTransformPivot.FeedbackTypeAuthorized = RectTransformPivot; + MMF_RectTransformSizeDelta.FeedbackTypeAuthorized = RectTransformSizeDelta; + MMF_VideoPlayer.FeedbackTypeAuthorized = VideoPlayer; + + #if MM_UI + MMF_ShaderController.FeedbackTypeAuthorized = ShaderController; + MMF_Graphic.FeedbackTypeAuthorized = Graphic; + MMF_GraphicCrossFade.FeedbackTypeAuthorized = GraphicCrossFade; + MMF_Image.FeedbackTypeAuthorized = Image; + MMF_ImageAlpha.FeedbackTypeAuthorized = ImageAlpha; + MMF_ImageFill.FeedbackTypeAuthorized = ImageFill; + MMF_ImageRaycastTarget.FeedbackTypeAuthorized = ImageRaycastTarget; + MMF_ImageTextureOffset.FeedbackTypeAuthorized = ImageTextureOffset; + MMF_ImageTextureScale.FeedbackTypeAuthorized = ImageTextureScale; + MMF_Text.FeedbackTypeAuthorized = Text; + MMF_TextColor.FeedbackTypeAuthorized = TextColor; + MMF_TextFontSize.FeedbackTypeAuthorized = TextFontSize; + MMF_Fade.FeedbackTypeAuthorized = Fade; + MMF_Flash.FeedbackTypeAuthorized = Flash; + #endif + + #if MM_POSTPROCESSING + MMF_Bloom.FeedbackTypeAuthorized = Bloom; + MMF_ChromaticAberration.FeedbackTypeAuthorized = ChromaticAberration; + MMF_ColorGrading.FeedbackTypeAuthorized = ColorGrading; + MMF_DepthOfField.FeedbackTypeAuthorized = DepthOfField; + MMF_GlobalPPVolumeAutoBlend.FeedbackTypeAuthorized = GlobalPPVolumeAutoBlend; + MMF_LensDistortion.FeedbackTypeAuthorized = LensDistortion; + MMF_Vignette.FeedbackTypeAuthorized = Vignette; + MMF_PPMovingFilter.FeedbackTypeAuthorized = PPMovingFilter; + #endif + + #if MM_HDRP + MMF_Bloom_HDRP.FeedbackTypeAuthorized = Bloom; + MMF_ChromaticAberration_HDRP.FeedbackTypeAuthorized = ChromaticAberration; + MMF_LensDistortion_HDRP.FeedbackTypeAuthorized = LensDistortion; + MMF_ColorAdjustments_HDRP.FeedbackTypeAuthorized = ColorGrading; + MMF_LensDistortion_HDRP.FeedbackTypeAuthorized = LensDistortion; + MMF_Vignette_HDRP.FeedbackTypeAuthorized = Vignette; + #endif + + #if MM_URP + MMF_Bloom_URP.FeedbackTypeAuthorized = Bloom; + MMF_ChromaticAberration_URP.FeedbackTypeAuthorized = ChromaticAberration; + MMF_LensDistortion_URP.FeedbackTypeAuthorized = LensDistortion; + MMF_ColorAdjustments_URP.FeedbackTypeAuthorized = ColorGrading; + MMF_LensDistortion_URP.FeedbackTypeAuthorized = LensDistortion; + MMF_Vignette_URP.FeedbackTypeAuthorized = Vignette; + #endif + + #if MM_UGUI2 + MMF_TMPAlpha.FeedbackTypeAuthorized = TMPAlpha; + MMF_TMPCharacterSpacing.FeedbackTypeAuthorized = TMPCharacterSpacing; + MMF_TMPColor.FeedbackTypeAuthorized = TMPColor; + MMF_TMPCountTo.FeedbackTypeAuthorized = TMPCountTo; + MMF_TMPDilate.FeedbackTypeAuthorized = TMPDilate; + MMF_TMPFontSize.FeedbackTypeAuthorized = TMPFontSize; + MMF_TMPLineSpacing.FeedbackTypeAuthorized = TMPLineSpacing; + MMF_TMPOutlineColor.FeedbackTypeAuthorized = TMPOutlineColor; + MMF_TMPOutlineWidth.FeedbackTypeAuthorized = TMPOutlineWidth; + MMF_TMPParagraphSpacing.FeedbackTypeAuthorized = TMPParagraphSpacing; + MMF_TMPSoftness.FeedbackTypeAuthorized = TMPSoftness; + MMF_TMPText.FeedbackTypeAuthorized = TMPText; + MMF_TMPTextReveal.FeedbackTypeAuthorized = TMPTextReveal; + #endif + } + } + +} \ No newline at end of file diff --git a/Assets/External/Feel/MMFeedbacks/Authorizations/MMFeedbacksAuthorizations.cs.meta b/Assets/External/Feel/MMFeedbacks/Authorizations/MMFeedbacksAuthorizations.cs.meta new file mode 100644 index 00000000..637e7d91 --- /dev/null +++ b/Assets/External/Feel/MMFeedbacks/Authorizations/MMFeedbacksAuthorizations.cs.meta @@ -0,0 +1,18 @@ +fileFormatVersion: 2 +guid: be090172b5d6e3149b78c6da8b309d47 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: +AssetOrigin: + serializedVersion: 1 + productId: 183370 + packageName: Feel + packageVersion: 5.9.1 + assetPath: Assets/Feel/MMFeedbacks/Authorizations/MMFeedbacksAuthorizations.cs + uploadId: 830868 diff --git a/Assets/External/Feel/MMFeedbacks/Authorizations/MoreMountains.Feedbacks.Authorizations.asmref b/Assets/External/Feel/MMFeedbacks/Authorizations/MoreMountains.Feedbacks.Authorizations.asmref new file mode 100644 index 00000000..c66cf006 --- /dev/null +++ b/Assets/External/Feel/MMFeedbacks/Authorizations/MoreMountains.Feedbacks.Authorizations.asmref @@ -0,0 +1,3 @@ +{ + "reference": "GUID:4a1cb1490dc4df8409b2580d6b44e75e" +} \ No newline at end of file diff --git a/Assets/External/Feel/MMFeedbacks/Authorizations/MoreMountains.Feedbacks.Authorizations.asmref.meta b/Assets/External/Feel/MMFeedbacks/Authorizations/MoreMountains.Feedbacks.Authorizations.asmref.meta new file mode 100644 index 00000000..7f23baea --- /dev/null +++ b/Assets/External/Feel/MMFeedbacks/Authorizations/MoreMountains.Feedbacks.Authorizations.asmref.meta @@ -0,0 +1,14 @@ +fileFormatVersion: 2 +guid: 9a55bdc9c20a8d640a83b706174628dd +AssemblyDefinitionReferenceImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: +AssetOrigin: + serializedVersion: 1 + productId: 183370 + packageName: Feel + packageVersion: 5.9.1 + assetPath: Assets/Feel/MMFeedbacks/Authorizations/MoreMountains.Feedbacks.Authorizations.asmref + uploadId: 830868 diff --git a/Assets/External/Feel/MMFeedbacks/Editor.meta b/Assets/External/Feel/MMFeedbacks/Editor.meta new file mode 100644 index 00000000..5dc2748a --- /dev/null +++ b/Assets/External/Feel/MMFeedbacks/Editor.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: b38c3aee5b446914b9307897b3f70ece +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/External/Feel/MMFeedbacks/Editor/Core.meta b/Assets/External/Feel/MMFeedbacks/Editor/Core.meta new file mode 100644 index 00000000..b1d36800 --- /dev/null +++ b/Assets/External/Feel/MMFeedbacks/Editor/Core.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: c15bb0862679ae743bdf21a29103355a +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/External/Feel/MMFeedbacks/Editor/Core/AttributeDrawers.cs b/Assets/External/Feel/MMFeedbacks/Editor/Core/AttributeDrawers.cs new file mode 100644 index 00000000..3acc20f5 --- /dev/null +++ b/Assets/External/Feel/MMFeedbacks/Editor/Core/AttributeDrawers.cs @@ -0,0 +1,250 @@ +using MoreMountains.Tools; +using UnityEngine; +#if UNITY_EDITOR +using UnityEditor; +#endif + +namespace MoreMountains.Feedbacks +{ + [CustomPropertyDrawer(typeof(MMFEnumConditionAttribute))] + public class MMFEnumConditionAttributeDrawer : PropertyDrawer + { + public override void OnGUI(Rect position, SerializedProperty property, GUIContent label) + { + MMFEnumConditionAttribute enumConditionAttribute = (MMFEnumConditionAttribute)attribute; + bool enabled = GetConditionAttributeResult(enumConditionAttribute, property); + bool previouslyEnabled = GUI.enabled; + GUI.enabled = enabled; + if (!enumConditionAttribute.Hidden || enabled) + { + EditorGUI.PropertyField(position, property, label, true); + } + GUI.enabled = previouslyEnabled; + } + + private bool GetConditionAttributeResult(MMFEnumConditionAttribute enumConditionAttribute, SerializedProperty property) + { + bool enabled = true; + string propertyPath = property.propertyPath; + string conditionPath = propertyPath.Replace(property.name, enumConditionAttribute.ConditionEnum); + SerializedProperty sourcePropertyValue = property.serializedObject.FindProperty(conditionPath); + + if ((sourcePropertyValue != null) && (sourcePropertyValue.propertyType == SerializedPropertyType.Enum)) + { + int currentEnum = sourcePropertyValue.enumValueIndex; + enabled = enumConditionAttribute.ContainsBitFlag(currentEnum); + } + else + { + Debug.LogWarning("No matching boolean found for ConditionAttribute in object: " + enumConditionAttribute.ConditionEnum); + } + + return enabled; + } + + public override float GetPropertyHeight(SerializedProperty property, GUIContent label) + { + MMFEnumConditionAttribute enumConditionAttribute = (MMFEnumConditionAttribute)attribute; + bool enabled = GetConditionAttributeResult(enumConditionAttribute, property); + + if (!enumConditionAttribute.Hidden || enabled) + { + return EditorGUI.GetPropertyHeight(property, label); + } + else + { + return -EditorGUIUtility.standardVerticalSpacing; + } + } + } + + // original implementation by http://www.brechtos.com/hiding-or-disabling-inspector-properties-using-propertydrawers-within-unity-5/ + [CustomPropertyDrawer(typeof(MMFConditionAttribute))] + public class MMFConditionAttributeDrawer : PropertyDrawer + { + public override void OnGUI(Rect position, SerializedProperty property, GUIContent label) + { + MMFConditionAttribute conditionAttribute = (MMFConditionAttribute)attribute; + bool enabled = GetConditionAttributeResult(conditionAttribute, property); + bool previouslyEnabled = GUI.enabled; + GUI.enabled = conditionAttribute.Negative ? !enabled : enabled; + if (ShouldDisplay(conditionAttribute, enabled)) + { + EditorGUI.PropertyField(position, property, label, true); + } + GUI.enabled = previouslyEnabled; + } + + private bool GetConditionAttributeResult(MMFConditionAttribute conditionAttribute, SerializedProperty property) + { + bool enabled = true; + string propertyPath = property.propertyPath; + string conditionPath = propertyPath.Replace(property.name, conditionAttribute.ConditionBoolean); + SerializedProperty sourcePropertyValue = property.serializedObject.FindProperty(conditionPath); + + if (sourcePropertyValue != null) + { + enabled = sourcePropertyValue.boolValue; + } + else + { + Debug.LogWarning("No matching boolean found for ConditionAttribute in object: " + conditionAttribute.ConditionBoolean); + } + + return enabled; + } + + private bool ShouldDisplay(MMFConditionAttribute conditionAttribute, bool result) + { + bool shouldDisplay = !conditionAttribute.Hidden || result; + if (conditionAttribute.Negative) + { + shouldDisplay = !shouldDisplay; + } + return shouldDisplay; + } + + public override float GetPropertyHeight(SerializedProperty property, GUIContent label) + { + MMFConditionAttribute conditionAttribute = (MMFConditionAttribute)attribute; + bool enabled = GetConditionAttributeResult(conditionAttribute, property); + + if (ShouldDisplay(conditionAttribute, enabled)) + { + return EditorGUI.GetPropertyHeight(property, label); + } + else + { + /*int multiplier = 1; // this multiplier fixes issues in differing property spacing between MMFeedbacks and MMF_Player + if (property.depth > 0) + { + //multiplier = property.depth; + }*/ + return -EditorGUIUtility.standardVerticalSpacing /** multiplier*/; + } + } + } + + [CustomPropertyDrawer(typeof(MMFHiddenAttribute))] + public class MMFHiddenAttributeDrawer : PropertyDrawer + { + public override float GetPropertyHeight(SerializedProperty property, GUIContent label) + { + return 0f; + } + + public override void OnGUI(Rect position, SerializedProperty property, GUIContent label) + { + + } + } + + [CustomPropertyDrawer(typeof(MMFInformationAttribute))] + /// + /// This class allows the display of a message box (warning, info, error...) next to a property (before or after) + /// + public class MMFInformationAttributeDrawer : PropertyDrawer + { + // determines the space after the help box, the space before the text box, and the width of the help box icon + const int spaceBeforeTheTextBox = 5; + const int spaceAfterTheTextBox = 10; + const int iconWidth = 55; + + MMFInformationAttribute informationAttribute { get { return ((MMFInformationAttribute)attribute); } } + + /// + /// OnGUI, displays the property and the textbox in the specified order + /// + /// Rect. + /// Property. + /// Label. + public override void OnGUI(Rect rect, SerializedProperty prop, GUIContent label) + { + if (MMMenuHelp.HelpEnabled) + { + EditorStyles.helpBox.richText = true; + Rect helpPosition = rect; + Rect textFieldPosition = rect; + + if (!informationAttribute.MessageAfterProperty) + { + // we position the message before the property + helpPosition.height = DetermineTextboxHeight(informationAttribute.Message); + + textFieldPosition.y += helpPosition.height + spaceBeforeTheTextBox; + textFieldPosition.height = GetPropertyHeight(prop, label); + } + else + { + // we position the property first, then the message + textFieldPosition.height = GetPropertyHeight(prop, label); + + helpPosition.height = DetermineTextboxHeight(informationAttribute.Message); + // we add the complete property height (property + helpbox, as overridden in this very script), and substract both to get just the property + helpPosition.y += GetPropertyHeight(prop, label) - DetermineTextboxHeight(informationAttribute.Message) - spaceAfterTheTextBox; + } + + EditorGUI.HelpBox(helpPosition, informationAttribute.Message, informationAttribute.Type); + EditorGUI.PropertyField(textFieldPosition, prop, label, true); + } + else + { + Rect textFieldPosition = rect; + textFieldPosition.height = GetPropertyHeight(prop, label); + EditorGUI.PropertyField(textFieldPosition, prop, label, true); + } + } + + /// + /// Returns the complete height of the whole block (property + help text) + /// + /// The block height. + /// Property. + /// Label. + public override float GetPropertyHeight(SerializedProperty property, GUIContent label) + { + if (MMMenuHelp.HelpEnabled) + { + return EditorGUI.GetPropertyHeight(property) + DetermineTextboxHeight(informationAttribute.Message) + spaceAfterTheTextBox + spaceBeforeTheTextBox; + } + else + { + return EditorGUI.GetPropertyHeight(property); + } + } + + /// + /// Determines the height of the textbox. + /// + /// The textbox height. + /// Message. + protected virtual float DetermineTextboxHeight(string message) + { + GUIStyle style = new GUIStyle(EditorStyles.helpBox); + style.richText = true; + + float newHeight = style.CalcHeight(new GUIContent(message), EditorGUIUtility.currentViewWidth - iconWidth); + return newHeight; + } + } + + [CustomPropertyDrawer(typeof(MMFReadOnlyAttribute))] + public class MMFReadOnlyAttributeDrawer : PropertyDrawer + { + // Necessary since some properties tend to collapse smaller than their content + public override float GetPropertyHeight(SerializedProperty property, GUIContent label) + { + return EditorGUI.GetPropertyHeight(property, label, true); + } + + // Draw a disabled property field + public override void OnGUI(Rect position, SerializedProperty property, GUIContent label) + { + GUI.enabled = false; // Disable fields + EditorGUI.PropertyField(position, property, label, true); + GUI.enabled = true; // Enable fields + } + } + + +} \ No newline at end of file diff --git a/Assets/External/Feel/MMFeedbacks/Editor/Core/AttributeDrawers.cs.meta b/Assets/External/Feel/MMFeedbacks/Editor/Core/AttributeDrawers.cs.meta new file mode 100644 index 00000000..0cc4b670 --- /dev/null +++ b/Assets/External/Feel/MMFeedbacks/Editor/Core/AttributeDrawers.cs.meta @@ -0,0 +1,18 @@ +fileFormatVersion: 2 +guid: bb4df52d2a954374b913a14cc5d474d4 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: +AssetOrigin: + serializedVersion: 1 + productId: 183370 + packageName: Feel + packageVersion: 5.9.1 + assetPath: Assets/Feel/MMFeedbacks/Editor/Core/AttributeDrawers.cs + uploadId: 830868 diff --git a/Assets/External/Feel/MMFeedbacks/Editor/Core/MMF_PlayerConfiguration.cs b/Assets/External/Feel/MMFeedbacks/Editor/Core/MMF_PlayerConfiguration.cs new file mode 100644 index 00000000..46a9ddb9 --- /dev/null +++ b/Assets/External/Feel/MMFeedbacks/Editor/Core/MMF_PlayerConfiguration.cs @@ -0,0 +1,53 @@ +using System.Collections; +using System.Collections.Generic; +using System.Linq; +using UnityEngine; + +namespace MoreMountains.Feedbacks +{ + /// + /// An asset to store copy information, as well as global feedback settings. + /// It requires that one (and only one) MMFeedbacksConfiguration asset be created and stored in a Resources folder. + /// That's already done when installing MMFeedbacks. + /// + [CreateAssetMenu(menuName = "MoreMountains/MMFeedbacks/Configuration", fileName = "MMFeedbacksConfiguration")] + public class MMF_PlayerConfiguration : ScriptableObject + { + private static MMF_PlayerConfiguration _instance; + private static bool _instantiated; + + /// + /// Singleton pattern + /// + public static MMF_PlayerConfiguration Instance + { + get + { + if (_instantiated) + { + return _instance; + } + + string assetName = typeof(MMF_PlayerConfiguration).Name; + + MMF_PlayerConfiguration loadedAsset = Resources.Load("MMF_PlayerConfiguration"); + _instance = loadedAsset; + _instantiated = true; + + return _instance; + } + } + + [Header("Help settings")] + /// if this is true, inspector tips will be shown for MMFeedbacks + public bool ShowInspectorTips = true; + /// if this is true, when exiting play mode when KeepPlaymodeChanges is active, it'll turn off automatically, otherwise it'll remain on + public bool AutoDisableKeepPlaymodeChanges = true; + /// if this is true, when exiting play mode when KeepPlaymodeChanges is active, it'll turn off automatically, otherwise it'll remain on + public bool InspectorGroupsExpandedByDefault = true; + + + + private void OnDestroy(){ _instantiated = false; } + } +} \ No newline at end of file diff --git a/Assets/External/Feel/MMFeedbacks/Editor/Core/MMF_PlayerConfiguration.cs.meta b/Assets/External/Feel/MMFeedbacks/Editor/Core/MMF_PlayerConfiguration.cs.meta new file mode 100644 index 00000000..93291558 --- /dev/null +++ b/Assets/External/Feel/MMFeedbacks/Editor/Core/MMF_PlayerConfiguration.cs.meta @@ -0,0 +1,18 @@ +fileFormatVersion: 2 +guid: 8bcf466015f0b254893ff0208fccf90f +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: +AssetOrigin: + serializedVersion: 1 + productId: 183370 + packageName: Feel + packageVersion: 5.9.1 + assetPath: Assets/Feel/MMFeedbacks/Editor/Core/MMF_PlayerConfiguration.cs + uploadId: 830868 diff --git a/Assets/External/Feel/MMFeedbacks/Editor/Core/MMF_PlayerCopy.cs b/Assets/External/Feel/MMFeedbacks/Editor/Core/MMF_PlayerCopy.cs new file mode 100644 index 00000000..1a2f45bd --- /dev/null +++ b/Assets/External/Feel/MMFeedbacks/Editor/Core/MMF_PlayerCopy.cs @@ -0,0 +1,145 @@ +using System; +using System.Collections.Generic; +using UnityEditor; +using System.Linq; +using UnityEngine; +using Object = UnityEngine.Object; + +namespace MoreMountains.Feedbacks +{ + /// + /// A helper class to copy and paste feedback properties + /// + static class MMF_PlayerCopy + { + static public System.Type Type { get; private set; } + public static readonly List CopiedFeedbacks = new List(); + public static readonly Dictionary> RuntimeChanges = new Dictionary>(); + + static string[] IgnoreList = new string[] + { + "m_ObjectHideFlags", + "m_CorrespondingSourceObject", + "m_PrefabInstance", + "m_PrefabAsset", + "m_GameObject", + "m_Enabled", + "m_EditorHideFlags", + "m_Script", + "m_Name", + "m_EditorClassIdentifier" + }; + + static MMF_PlayerCopy() + { + EditorApplication.playModeStateChanged += ModeChanged; + } + + private static void ModeChanged(PlayModeStateChange playModeState) + { + switch (playModeState) + { + case PlayModeStateChange.ExitingPlayMode: + StoreRuntimeChanges(); + break; + + case PlayModeStateChange.EnteredEditMode: + ApplyRuntimeChanges(); + break; + } + } + + private static void StoreRuntimeChanges() + { + foreach (MMF_Player player in Object.FindObjectsByType(FindObjectsInactive.Include, FindObjectsSortMode.None).Where(p => p.KeepPlayModeChanges)) + { + MMF_PlayerCopy.StoreRuntimeChanges(player); + } + } + + private static void ApplyRuntimeChanges() + { + foreach (MMF_Player player in Object.FindObjectsByType(FindObjectsInactive.Include, FindObjectsSortMode.None).Where(MMF_PlayerCopy.RuntimeChanges.ContainsKey)) + { + MMF_PlayerCopy.ApplyRuntimeChanges(player); + } + } + + static public bool HasCopy() + { + return CopiedFeedbacks != null && CopiedFeedbacks.Count == 1; + } + + static public bool HasMultipleCopies() + { + return CopiedFeedbacks != null && CopiedFeedbacks.Count > 1; + } + + static public void Copy(MMF_Feedback feedback) + { + Type feedbackType = feedback.GetType(); + MMF_Feedback newFeedback = (MMF_Feedback)Activator.CreateInstance(feedbackType); + EditorUtility.CopySerializedManagedFieldsOnly(feedback, newFeedback); + CopiedFeedbacks.Clear(); + CopiedFeedbacks.Add(newFeedback); + } + + static public void CopyAll(MMF_Player sourceFeedbacks) + { + CopiedFeedbacks.Clear(); + foreach (MMF_Feedback feedback in sourceFeedbacks.FeedbacksList) + { + Type feedbackType = feedback.GetType(); + MMF_Feedback newFeedback = (MMF_Feedback)Activator.CreateInstance(feedbackType); + EditorUtility.CopySerializedManagedFieldsOnly(feedback, newFeedback); + CopiedFeedbacks.Add(newFeedback); + } + } + + // Multiple Copy ---------------------------------------------------------- + + static public void PasteAll(MMF_PlayerEditorUITK targetEditor) + { + foreach (MMF_Feedback feedback in MMF_PlayerCopy.CopiedFeedbacks) + { + targetEditor.TargetMmfPlayer.AddFeedback(feedback); + } + CopiedFeedbacks.Clear(); + } + + // Runtime Changes + + static public void StoreRuntimeChanges(MMF_Player player) + { + RuntimeChanges[player] = new List(); + foreach (MMF_Feedback feedback in player.FeedbacksList) + { + Type feedbackType = feedback.GetType(); + MMF_Feedback newFeedback = (MMF_Feedback)Activator.CreateInstance(feedbackType); + EditorUtility.CopySerializedManagedFieldsOnly(feedback, newFeedback); + RuntimeChanges[player].Add(newFeedback); + } + } + + static public void ApplyRuntimeChanges(MMF_Player player) + { + SerializedObject playerSerialized = new SerializedObject(player); + playerSerialized.Update(); + Undo.RecordObject(player, "Replace all feedbacks"); + player.FeedbacksList.Clear(); + foreach (MMF_Feedback feedback in MMF_PlayerCopy.RuntimeChanges[player]) + { + player.AddFeedback(feedback, true); + } + playerSerialized.ApplyModifiedProperties(); + PrefabUtility.RecordPrefabInstancePropertyModifications(player); + if (MMF_PlayerConfiguration.Instance.AutoDisableKeepPlaymodeChanges) + { + playerSerialized.Update(); + player.KeepPlayModeChanges = false; + playerSerialized.ApplyModifiedProperties(); + } + player.RefreshCache(); + } + } +} \ No newline at end of file diff --git a/Assets/External/Feel/MMFeedbacks/Editor/Core/MMF_PlayerCopy.cs.meta b/Assets/External/Feel/MMFeedbacks/Editor/Core/MMF_PlayerCopy.cs.meta new file mode 100644 index 00000000..dcba6cc9 --- /dev/null +++ b/Assets/External/Feel/MMFeedbacks/Editor/Core/MMF_PlayerCopy.cs.meta @@ -0,0 +1,18 @@ +fileFormatVersion: 2 +guid: 5f7bf459716aa484c8db5d1ef3ef8049 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: +AssetOrigin: + serializedVersion: 1 + productId: 183370 + packageName: Feel + packageVersion: 5.9.1 + assetPath: Assets/Feel/MMFeedbacks/Editor/Core/MMF_PlayerCopy.cs + uploadId: 830868 diff --git a/Assets/External/Feel/MMFeedbacks/Editor/Core/MMFeedbackStyling.cs b/Assets/External/Feel/MMFeedbacks/Editor/Core/MMFeedbackStyling.cs new file mode 100644 index 00000000..f3f80208 --- /dev/null +++ b/Assets/External/Feel/MMFeedbacks/Editor/Core/MMFeedbackStyling.cs @@ -0,0 +1,351 @@ +using UnityEngine; +using UnityEditor; + +namespace MoreMountains.Feedbacks +{ + /// + /// A class used to regroup most of the styling options for the MMFeedback editors + /// + public static class MMFeedbackStyling + { + public static readonly GUIStyle SmallTickbox = new GUIStyle("ShurikenToggle"); + + static readonly Color _splitterdark = new Color(0.12f, 0.12f, 0.12f, 1.333f); + static readonly Color _splitterlight = new Color(0.6f, 0.6f, 0.6f, 1.333f); + public static Color Splitter { get { return EditorGUIUtility.isProSkin ? _splitterdark : _splitterlight; } } + + static readonly Color _headerbackgrounddark = new Color(0.1f, 0.1f, 0.1f, 0.2f); + static readonly Color _headerbackgroundlight = new Color(1f, 1f, 1f, 0.4f); + public static Color HeaderBackground { get { return EditorGUIUtility.isProSkin ? _headerbackgrounddark : _headerbackgroundlight; } } + + static readonly Color _reorderdark = new Color(1f, 1f, 1f, 0.2f); + static readonly Color _reorderlight = new Color(0.1f, 0.1f, 0.1f, 0.2f); + public static Color Reorder { get { return EditorGUIUtility.isProSkin ? _reorderdark : _reorderlight; } } + + static readonly Color _timingDark = new Color(1f, 1f, 1f, 0.5f); + static readonly Color _timingLight = new Color(0f, 0f, 0f, 0.5f); + + static readonly Texture2D _paneoptionsicondark; + static readonly Texture2D _paneoptionsiconlight; + public static Texture2D PaneOptionsIcon { get { return EditorGUIUtility.isProSkin ? _paneoptionsicondark : _paneoptionsiconlight; } } + + static MMFeedbackStyling() + { + _paneoptionsicondark = (Texture2D)EditorGUIUtility.Load("Builtin Skins/DarkSkin/Images/pane options.png"); + _paneoptionsiconlight = (Texture2D)EditorGUIUtility.Load("Builtin Skins/LightSkin/Images/pane options.png"); + } + + private static GUIStyle _timingStyle = new GUIStyle(); + + /// + /// Simply drow a splitter line and a title bellow + /// + static public void DrawSection(string title) + { + EditorGUILayout.Space(); + + DrawSplitter(); + + EditorGUILayout.Space(); + EditorGUILayout.Space(); + + EditorGUILayout.LabelField(title, EditorStyles.boldLabel); + } + + /// + /// Draw a separator line + /// + static public void DrawSplitter() + { + // Helper to draw a separator line + + var rect = GUILayoutUtility.GetRect(1f, 1f); + + rect.xMin = 0f; + rect.width += 4f; + + if (Event.current.type != EventType.Repaint) + return; + + EditorGUI.DrawRect(rect, Splitter); + } + + /// + /// Draw a header similar to the one used for the post-process stack + /// + static public Rect DrawSimpleHeader(ref bool expanded, ref bool activeField, string title) + { + var e = Event.current; + + // Initialize Rects + + var backgroundRect = GUILayoutUtility.GetRect(1f, 17f); + + var reorderRect = backgroundRect; + reorderRect.xMin -= 8f; + reorderRect.y += 5f; + reorderRect.width = 9f; + reorderRect.height = 9f; + + var labelRect = backgroundRect; + labelRect.xMin += 32f; + labelRect.xMax -= 20f; + + var foldoutRect = backgroundRect; + foldoutRect.y += 1f; + foldoutRect.width = 13f; + foldoutRect.height = 13f; + + var toggleRect = backgroundRect; + toggleRect.x += 16f; + toggleRect.y += 2f; + toggleRect.width = 13f; + toggleRect.height = 13f; + + var menuIcon = PaneOptionsIcon; + var menuRect = new Rect(labelRect.xMax + 4f, labelRect.y + 4f, menuIcon.width, menuIcon.height); + + // Background rect should be full-width + backgroundRect.xMin = 0f; + backgroundRect.width += 4f; + + // Background + EditorGUI.DrawRect(backgroundRect, HeaderBackground); + + // Foldout + expanded = GUI.Toggle(foldoutRect, expanded, GUIContent.none, EditorStyles.foldout); + + // Title + EditorGUI.LabelField(labelRect, title, EditorStyles.boldLabel); + + // Active checkbox + activeField = GUI.Toggle(toggleRect, activeField, GUIContent.none, SmallTickbox); + + // Handle events + + if (e.type == EventType.MouseDown && labelRect.Contains(e.mousePosition) && e.button == 0) + { + expanded = !expanded; + e.Use(); + } + + return backgroundRect; + } + + /// + /// Draw a header similar to the one used for the post-process stack + /// + static public Rect DrawHeader(ref bool expanded, ref bool activeField, string title, Color feedbackColor, System.Action fillGenericMenu, + float startedAt, float duration, float totalDuration, MMFeedbackTiming timing, bool pause, MMFeedbacks host) + { + float thisTime = timing.TimescaleMode == TimescaleModes.Scaled ? Time.time : Time.unscaledTime; + float thisDeltaTime = timing.TimescaleMode == TimescaleModes.Scaled ? Time.deltaTime : Time.unscaledDeltaTime; + + var e = Event.current; + + // Initialize Rects + var backgroundRect = GUILayoutUtility.GetRect(1f, 17f); + + var progressRect = GUILayoutUtility.GetRect(1f, 2f); + + var offset = 4f; + + var reorderRect = backgroundRect; + reorderRect.xMin -= 8f; + reorderRect.y += 5f; + reorderRect.width = 9f; + reorderRect.height = 9f; + + var labelRect = backgroundRect; + labelRect.xMin += 32f + offset; + labelRect.xMax -= 20f; + + var foldoutRect = backgroundRect; + foldoutRect.y += 1f; + foldoutRect.xMin += offset; + foldoutRect.width = 13f; + foldoutRect.height = 13f; + + var toggleRect = backgroundRect; + toggleRect.x += 16f; + toggleRect.xMin += offset; + toggleRect.y += 2f; + toggleRect.width = 13f; + toggleRect.height = 13f; + + var menuIcon = PaneOptionsIcon; + var menuRect = new Rect(labelRect.xMax + 4f, labelRect.y + 4f, menuIcon.width, menuIcon.height); + + _timingStyle.normal.textColor = EditorGUIUtility.isProSkin ? _timingDark : _timingLight; + _timingStyle.alignment = TextAnchor.MiddleRight; + + var colorRect = new Rect(labelRect.xMin, labelRect.yMin, 5f, 17f); + colorRect.xMin = 0f; + colorRect.xMax = 5f; + EditorGUI.DrawRect(colorRect, feedbackColor); + + // Background rect should be full-width + backgroundRect.xMin = 0f; + backgroundRect.width += 4f; + + progressRect.xMin = 0f; + progressRect.width += 4f; + + Color headerBackgroundColor = Color.white; + // Background - if color is white we draw the default color + if (!pause) + { + headerBackgroundColor = HeaderBackground; + } + else + { + headerBackgroundColor = feedbackColor; + } + EditorGUI.DrawRect(backgroundRect, headerBackgroundColor); + + // Foldout + expanded = GUI.Toggle(foldoutRect, expanded, GUIContent.none, EditorStyles.foldout); + + // Title ---------------------------------------------------------------------------------------------------- + + using (new EditorGUI.DisabledScope(!activeField)) + { + EditorGUI.LabelField(labelRect, title, EditorStyles.boldLabel); + } + + // Direction ---------------------------------------------------------------------------------------------- + + float directionRectWidth = 70f; + var directionRect = new Rect(labelRect.xMax - directionRectWidth, labelRect.yMin, directionRectWidth, 17f); + directionRect.xMin = labelRect.xMax - directionRectWidth; + directionRect.xMax = labelRect.xMax; + + if (timing.MMFeedbacksDirectionCondition == MMFeedbackTiming.MMFeedbacksDirectionConditions.OnlyWhenBackwards) + { + Texture arrowUpIcon = Resources.Load("FeelArrowUp") as Texture; + GUIContent directionIcon = new GUIContent(arrowUpIcon); + EditorGUI.LabelField(directionRect, directionIcon); + } + + if (timing.MMFeedbacksDirectionCondition == MMFeedbackTiming.MMFeedbacksDirectionConditions.OnlyWhenForwards) + { + Texture arrowDownIcon = Resources.Load("FeelArrowDown") as Texture; + GUIContent directionIcon = new GUIContent(arrowDownIcon); + EditorGUI.LabelField(directionRect, directionIcon); + } + + // Time ----------------------------------------------------------------------------------------------------- + + string timingInfo = ""; + bool displayTotal = false; + if (host.DisplayFullDurationDetails) + { + if (timing.InitialDelay != 0) + { + timingInfo += host.ApplyTimeMultiplier(timing.InitialDelay).ToString() + "s + "; + displayTotal = true; + } + + timingInfo += duration.ToString("F2") + "s"; + + if (timing.NumberOfRepeats != 0) + { + float delayBetweenRepeats = host.ApplyTimeMultiplier(timing.DelayBetweenRepeats); + + timingInfo += " + "+ timing.NumberOfRepeats.ToString() + " x "; + if (timing.DelayBetweenRepeats > 0) + { + timingInfo += "("; + } + timingInfo += duration + "s"; + if (timing.DelayBetweenRepeats > 0) + { + timingInfo += " + " + host.ApplyTimeMultiplier(timing.DelayBetweenRepeats) + "s )"; + } + displayTotal = true; + } + + if (displayTotal) + { + timingInfo += " = " + totalDuration.ToString("F2") + "s"; + } + } + else + { + timingInfo = totalDuration.ToString("F2") + "s"; + } + + //"[ 2s + 3 x (4s + 1s) ]" + + float timingRectWidth = 150f; + var timingRect = new Rect(labelRect.xMax - timingRectWidth, labelRect.yMin, timingRectWidth, 17f); + timingRect.xMin = labelRect.xMax - timingRectWidth; + timingRect.xMax = labelRect.xMax; + EditorGUI.LabelField(timingRect, timingInfo, _timingStyle); + + // Progress bar + if (totalDuration == 0f) + { + totalDuration = 0.1f; + } + + if (startedAt == 0f) + { + startedAt = 0.001f; + } + if ((startedAt > 0f) && (thisTime - startedAt < totalDuration + 0.05f)) + { + float fullWidth = progressRect.width; + if (totalDuration == 0f) { totalDuration = 0.1f; } + float percent = ((thisTime - startedAt) / totalDuration) * 100f; + progressRect.width = percent * fullWidth / 100f; + Color barColor = Color.white; + if (thisTime - startedAt > totalDuration) + { + barColor = Color.yellow; + } + EditorGUI.DrawRect(progressRect, barColor); + } + else + { + EditorGUI.DrawRect(progressRect, headerBackgroundColor); + } + + // Active checkbox + activeField = GUI.Toggle(toggleRect, activeField, GUIContent.none, SmallTickbox); + + // Dropdown menu icon + GUI.DrawTexture(menuRect, menuIcon); + + for(int i = 0; i < 3; i++) + { + Rect r = reorderRect; + r.height = 1; + r.y = reorderRect.y + reorderRect.height * (i / 3.0f); + EditorGUI.DrawRect(r, Reorder); + } + + + // Handle events + + if (e.type == EventType.MouseDown) + { + if (menuRect.Contains(e.mousePosition)) + { + var menu = new GenericMenu(); + fillGenericMenu(menu); + menu.DropDown(new Rect(new Vector2(menuRect.x, menuRect.yMax), Vector2.zero)); + e.Use(); + } + } + + if (e.type == EventType.MouseDown && labelRect.Contains(e.mousePosition) && e.button == 0) + { + expanded = !expanded; + e.Use(); + } + + return backgroundRect; + } + } +} \ No newline at end of file diff --git a/Assets/External/Feel/MMFeedbacks/Editor/Core/MMFeedbackStyling.cs.meta b/Assets/External/Feel/MMFeedbacks/Editor/Core/MMFeedbackStyling.cs.meta new file mode 100644 index 00000000..5a349498 --- /dev/null +++ b/Assets/External/Feel/MMFeedbacks/Editor/Core/MMFeedbackStyling.cs.meta @@ -0,0 +1,18 @@ +fileFormatVersion: 2 +guid: 74bba79889819c645bedf0dcd6d6cfa3 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: +AssetOrigin: + serializedVersion: 1 + productId: 183370 + packageName: Feel + packageVersion: 5.9.1 + assetPath: Assets/Feel/MMFeedbacks/Editor/Core/MMFeedbackStyling.cs + uploadId: 830868 diff --git a/Assets/External/Feel/MMFeedbacks/Editor/Core/MMFeedbacksColors.cs b/Assets/External/Feel/MMFeedbacks/Editor/Core/MMFeedbacksColors.cs new file mode 100644 index 00000000..855fd192 --- /dev/null +++ b/Assets/External/Feel/MMFeedbacks/Editor/Core/MMFeedbacksColors.cs @@ -0,0 +1,396 @@ +using UnityEngine; +using System.Collections; +using System.Collections.Generic; + +namespace MoreMountains.Feedbacks +{ + /// + /// Color helpers + /// + public static class MMFeedbacksColors + { + // via https://gist.github.com/LotteMakesStuff/f7ce43f11e545a151b95b5e87f76304c + // NOTE: The follwing color names come from the CSS3 specification, Section 4.3 Extended Color Keywords + // http://www.w3.org/TR/css3-color/#svg-color + + public static readonly Color AliceBlue = new Color32(240, 248, 255, 255); + public static readonly Color AntiqueWhite = new Color32(250, 235, 215, 255); + public static readonly Color Aqua = new Color32(0, 255, 255, 255); + public static readonly Color Aquamarine = new Color32(127, 255, 212, 255); + public static readonly Color Azure = new Color32(240, 255, 255, 255); + public static readonly Color Beige = new Color32(245, 245, 220, 255); + public static readonly Color Bisque = new Color32(255, 228, 196, 255); + public static readonly Color Black = new Color32(0, 0, 0, 255); + public static readonly Color BlanchedAlmond = new Color32(255, 235, 205, 255); + public static readonly Color Blue = new Color32(0, 0, 255, 255); + public static readonly Color BlueViolet = new Color32(138, 43, 226, 255); + public static readonly Color Brown = new Color32(165, 42, 42, 255); + public static readonly Color Burlywood = new Color32(222, 184, 135, 255); + public static readonly Color CadetBlue = new Color32(95, 158, 160, 255); + public static readonly Color Chartreuse = new Color32(127, 255, 0, 255); + public static readonly Color Chocolate = new Color32(210, 105, 30, 255); + public static readonly Color Coral = new Color32(255, 127, 80, 255); + public static readonly Color CornflowerBlue = new Color32(100, 149, 237, 255); + public static readonly Color Cornsilk = new Color32(255, 248, 220, 255); + public static readonly Color Crimson = new Color32(220, 20, 60, 255); + public static readonly Color Cyan = new Color32(0, 255, 255, 255); + public static readonly Color DarkBlue = new Color32(0, 0, 139, 255); + public static readonly Color DarkCyan = new Color32(0, 139, 139, 255); + public static readonly Color DarkGoldenrod = new Color32(184, 134, 11, 255); + public static readonly Color DarkGray = new Color32(169, 169, 169, 255); + public static readonly Color DarkGreen = new Color32(0, 100, 0, 255); + public static readonly Color DarkKhaki = new Color32(189, 183, 107, 255); + public static readonly Color DarkMagenta = new Color32(139, 0, 139, 255); + public static readonly Color DarkOliveGreen = new Color32(85, 107, 47, 255); + public static readonly Color DarkOrange = new Color32(255, 140, 0, 255); + public static readonly Color DarkOrchid = new Color32(153, 50, 204, 255); + public static readonly Color DarkRed = new Color32(139, 0, 0, 255); + public static readonly Color DarkSalmon = new Color32(233, 150, 122, 255); + public static readonly Color DarkSeaGreen = new Color32(143, 188, 143, 255); + public static readonly Color DarkSlateBlue = new Color32(72, 61, 139, 255); + public static readonly Color DarkSlateGray = new Color32(47, 79, 79, 255); + public static readonly Color DarkTurquoise = new Color32(0, 206, 209, 255); + public static readonly Color DarkViolet = new Color32(148, 0, 211, 255); + public static readonly Color DeepPink = new Color32(255, 20, 147, 255); + public static readonly Color DeepSkyBlue = new Color32(0, 191, 255, 255); + public static readonly Color DimGray = new Color32(105, 105, 105, 255); + public static readonly Color DodgerBlue = new Color32(30, 144, 255, 255); + public static readonly Color FireBrick = new Color32(178, 34, 34, 255); + public static readonly Color FloralWhite = new Color32(255, 250, 240, 255); + public static readonly Color ForestGreen = new Color32(34, 139, 34, 255); + public static readonly Color Fuchsia = new Color32(255, 0, 255, 255); + public static readonly Color Gainsboro = new Color32(220, 220, 220, 255); + public static readonly Color GhostWhite = new Color32(248, 248, 255, 255); + public static readonly Color Gold = new Color32(255, 215, 0, 255); + public static readonly Color Goldenrod = new Color32(218, 165, 32, 255); + public static readonly Color Gray = new Color32(128, 128, 128, 255); + public static readonly Color Green = new Color32(0, 128, 0, 255); + public static readonly Color GreenYellow = new Color32(173, 255, 47, 255); + public static readonly Color Honeydew = new Color32(240, 255, 240, 255); + public static readonly Color HotPink = new Color32(255, 105, 180, 255); + public static readonly Color IndianRed = new Color32(205, 92, 92, 255); + public static readonly Color Indigo = new Color32(75, 0, 130, 255); + public static readonly Color Ivory = new Color32(255, 255, 240, 255); + public static readonly Color Khaki = new Color32(240, 230, 140, 255); + public static readonly Color Lavender = new Color32(230, 230, 250, 255); + public static readonly Color Lavenderblush = new Color32(255, 240, 245, 255); + public static readonly Color LawnGreen = new Color32(124, 252, 0, 255); + public static readonly Color LemonChiffon = new Color32(255, 250, 205, 255); + public static readonly Color LightBlue = new Color32(173, 216, 230, 255); + public static readonly Color LightCoral = new Color32(240, 128, 128, 255); + public static readonly Color LightCyan = new Color32(224, 255, 255, 255); + public static readonly Color LightGoldenodYellow = new Color32(250, 250, 210, 255); + public static readonly Color LightGray = new Color32(211, 211, 211, 255); + public static readonly Color LightGreen = new Color32(144, 238, 144, 255); + public static readonly Color LightPink = new Color32(255, 182, 193, 255); + public static readonly Color LightSalmon = new Color32(255, 160, 122, 255); + public static readonly Color LightSeaGreen = new Color32(32, 178, 170, 255); + public static readonly Color LightSkyBlue = new Color32(135, 206, 250, 255); + public static readonly Color LightSlateGray = new Color32(119, 136, 153, 255); + public static readonly Color LightSteelBlue = new Color32(176, 196, 222, 255); + public static readonly Color LightYellow = new Color32(255, 255, 224, 255); + public static readonly Color Lime = new Color32(0, 255, 0, 255); + public static readonly Color LimeGreen = new Color32(50, 205, 50, 255); + public static readonly Color Linen = new Color32(250, 240, 230, 255); + public static readonly Color Magenta = new Color32(255, 0, 255, 255); + public static readonly Color Maroon = new Color32(128, 0, 0, 255); + public static readonly Color MediumAquamarine = new Color32(102, 205, 170, 255); + public static readonly Color MediumBlue = new Color32(0, 0, 205, 255); + public static readonly Color MediumOrchid = new Color32(186, 85, 211, 255); + public static readonly Color MediumPurple = new Color32(147, 112, 219, 255); + public static readonly Color MediumSeaGreen = new Color32(60, 179, 113, 255); + public static readonly Color MediumSlateBlue = new Color32(123, 104, 238, 255); + public static readonly Color MediumSpringGreen = new Color32(0, 250, 154, 255); + public static readonly Color MediumTurquoise = new Color32(72, 209, 204, 255); + public static readonly Color MediumVioletRed = new Color32(199, 21, 133, 255); + public static readonly Color MidnightBlue = new Color32(25, 25, 112, 255); + public static readonly Color Mintcream = new Color32(245, 255, 250, 255); + public static readonly Color MistyRose = new Color32(255, 228, 225, 255); + public static readonly Color Moccasin = new Color32(255, 228, 181, 255); + public static readonly Color NavajoWhite = new Color32(255, 222, 173, 255); + public static readonly Color Navy = new Color32(0, 0, 128, 255); + public static readonly Color OldLace = new Color32(253, 245, 230, 255); + public static readonly Color Olive = new Color32(128, 128, 0, 255); + public static readonly Color Olivedrab = new Color32(107, 142, 35, 255); + public static readonly Color Orange = new Color32(255, 165, 0, 255); + public static readonly Color Orangered = new Color32(255, 69, 0, 255); + public static readonly Color Orchid = new Color32(218, 112, 214, 255); + public static readonly Color PaleGoldenrod = new Color32(238, 232, 170, 255); + public static readonly Color PaleGreen = new Color32(152, 251, 152, 255); + public static readonly Color PaleTurquoise = new Color32(175, 238, 238, 255); + public static readonly Color PaleVioletred = new Color32(219, 112, 147, 255); + public static readonly Color PapayaWhip = new Color32(255, 239, 213, 255); + public static readonly Color PeachPuff = new Color32(255, 218, 185, 255); + public static readonly Color Peru = new Color32(205, 133, 63, 255); + public static readonly Color Pink = new Color32(255, 192, 203, 255); + public static readonly Color Plum = new Color32(221, 160, 221, 255); + public static readonly Color PowderBlue = new Color32(176, 224, 230, 255); + public static readonly Color Purple = new Color32(128, 0, 128, 255); + public static readonly Color Red = new Color32(255, 0, 0, 255); + public static readonly Color RosyBrown = new Color32(188, 143, 143, 255); + public static readonly Color RoyalBlue = new Color32(65, 105, 225, 255); + public static readonly Color SaddleBrown = new Color32(139, 69, 19, 255); + public static readonly Color Salmon = new Color32(250, 128, 114, 255); + public static readonly Color SandyBrown = new Color32(244, 164, 96, 255); + public static readonly Color SeaGreen = new Color32(46, 139, 87, 255); + public static readonly Color Seashell = new Color32(255, 245, 238, 255); + public static readonly Color Sienna = new Color32(160, 82, 45, 255); + public static readonly Color Silver = new Color32(192, 192, 192, 255); + public static readonly Color SkyBlue = new Color32(135, 206, 235, 255); + public static readonly Color SlateBlue = new Color32(106, 90, 205, 255); + public static readonly Color SlateGray = new Color32(112, 128, 144, 255); + public static readonly Color Snow = new Color32(255, 250, 250, 255); + public static readonly Color SpringGreen = new Color32(0, 255, 127, 255); + public static readonly Color SteelBlue = new Color32(70, 130, 180, 255); + public static readonly Color Tan = new Color32(210, 180, 140, 255); + public static readonly Color Teal = new Color32(0, 128, 128, 255); + public static readonly Color Thistle = new Color32(216, 191, 216, 255); + public static readonly Color Tomato = new Color32(255, 99, 71, 255); + public static readonly Color Turquoise = new Color32(64, 224, 208, 255); + public static readonly Color Violet = new Color32(238, 130, 238, 255); + public static readonly Color Wheat = new Color32(245, 222, 179, 255); + public static readonly Color White = new Color32(255, 255, 255, 255); + public static readonly Color WhiteSmoke = new Color32(245, 245, 245, 255); + public static readonly Color Yellow = new Color32(255, 255, 0, 255); + public static readonly Color YellowGreen = new Color32(154, 205, 50, 255); + public static readonly Color ReunoYellow = new Color32(255, 196, 0, 255); + public static readonly Color BestRed = new Color32(255, 24, 0, 255); + + public static Dictionary ColorDictionary; + + public static Color RandomColor() + { + int random = Random.Range(0, 140); + return GetColorAt(random); + } + + public static Color GetColorAt(int index) + { + if (ColorDictionary == null) + { + InitializeDictionary(); + } + + if (index < ColorDictionary.Count) + { + return ColorDictionary[index]; + } + else + { + return Color.white; + } + } + + public static void InitializeDictionary() + { + ColorDictionary = new Dictionary + { + { 0, AliceBlue }, + { 1, AntiqueWhite }, + { 2, Aqua }, + { 3, Aquamarine }, + { 4, Azure }, + { 5, Beige }, + { 6, Bisque }, + { 7, Black }, + { 8, BlanchedAlmond }, + { 9, Blue }, + { 10, BlueViolet }, + { 11, Brown }, + { 12, Burlywood }, + { 13, CadetBlue }, + { 14, Chartreuse }, + { 15, Chocolate }, + { 16, Coral }, + { 17, CornflowerBlue }, + { 18, Cornsilk }, + { 19, Crimson }, + { 20, Cyan }, + { 21, DarkBlue }, + { 22, DarkCyan }, + { 23, DarkGoldenrod }, + { 24, DarkGray }, + { 25, DarkGreen }, + { 26, DarkKhaki }, + { 27, DarkMagenta }, + { 28, DarkOliveGreen }, + { 29, DarkOrange }, + { 30, DarkOrchid }, + { 31, DarkRed }, + { 32, DarkSalmon }, + { 33, DarkSeaGreen }, + { 34, DarkSlateBlue }, + { 35, DarkSlateGray }, + { 36, DarkTurquoise }, + { 37, DarkViolet }, + { 38, DeepPink }, + { 39, DeepSkyBlue }, + { 40, DimGray }, + { 41, DodgerBlue }, + { 42, FireBrick }, + { 43, FloralWhite }, + { 44, ForestGreen }, + { 45, Fuchsia }, + { 46, Gainsboro }, + { 47, GhostWhite }, + { 48, Gold }, + { 49, Goldenrod }, + { 50, Gray }, + { 51, Green }, + { 52, GreenYellow }, + { 53, Honeydew }, + { 54, HotPink }, + { 55, IndianRed }, + { 56, Indigo }, + { 57, Ivory }, + { 58, Khaki }, + { 59, Lavender }, + { 60, Lavenderblush }, + { 61, LawnGreen }, + { 62, LemonChiffon }, + { 63, LightBlue }, + { 64, LightCoral }, + { 65, LightCyan }, + { 66, LightGoldenodYellow }, + { 67, LightGray }, + { 68, LightGreen }, + { 69, LightPink }, + { 70, LightSalmon }, + { 71, LightSeaGreen }, + { 72, LightSkyBlue }, + { 73, LightSlateGray }, + { 74, LightSteelBlue }, + { 75, LightYellow }, + { 76, Lime }, + { 77, LimeGreen }, + { 78, Linen }, + { 79, Magenta }, + { 80, Maroon }, + { 81, MediumAquamarine }, + { 82, MediumBlue }, + { 83, MediumOrchid }, + { 84, MediumPurple }, + { 85, MediumSeaGreen }, + { 86, MediumSlateBlue }, + { 87, MediumSpringGreen }, + { 88, MediumTurquoise }, + { 89, MediumVioletRed }, + { 90, MidnightBlue }, + { 91, Mintcream }, + { 92, MistyRose }, + { 93, Moccasin }, + { 94, NavajoWhite }, + { 95, Navy }, + { 96, OldLace }, + { 97, Olive }, + { 98, Olivedrab }, + { 99, Orange }, + { 100, Orangered }, + { 101, Orchid }, + { 102, PaleGoldenrod }, + { 103, PaleGreen }, + { 104, PaleTurquoise }, + { 105, PaleVioletred }, + { 106, PapayaWhip }, + { 107, PeachPuff }, + { 108, Peru }, + { 109, Pink }, + { 110, Plum }, + { 111, PowderBlue }, + { 112, Purple }, + { 113, Red }, + { 114, RosyBrown }, + { 115, RoyalBlue }, + { 116, SaddleBrown }, + { 117, Salmon }, + { 118, SandyBrown }, + { 119, SeaGreen }, + { 120, Seashell }, + { 121, Sienna }, + { 122, Silver }, + { 123, SkyBlue }, + { 124, SlateBlue }, + { 125, SlateGray }, + { 126, Snow }, + { 127, SpringGreen }, + { 128, SteelBlue }, + { 129, Tan }, + { 130, Teal }, + { 131, Thistle }, + { 132, Tomato }, + { 133, Turquoise }, + { 134, Violet }, + { 135, Wheat }, + { 136, White }, + { 137, WhiteSmoke }, + { 138, Yellow }, + { 139, YellowGreen }, + { 140, ReunoYellow }, + { 141, BestRed } + }; + } + + /// + /// Returns a random color between the two min/max specified + /// + /// + /// + /// + /// + public static Color MMRandomColor(this Color color, Color min, Color max) + { + Color c = new Color() + { + r = UnityEngine.Random.Range(min.r, max.r), + g = UnityEngine.Random.Range(min.g, max.g), + b = UnityEngine.Random.Range(min.b, max.b), + a = UnityEngine.Random.Range(min.a, max.a) + }; + + return c; + } + + + /// + /// Tint : Uses HSV color conversions, keeps the original values, multiplies alpha + /// Multiply : The whole color, including alpha, is multiplied over the original + /// Replace : completely replaces the original with the target color + /// ReplaceKeepAlpha : color is replaced but the original alpha channel is ignored + /// Add : target color gets added (including its alpha) + /// + public enum ColoringMode { Tint, Multiply, Replace, ReplaceKeepAlpha, Add } + + public static Color MMColorize(this Color originalColor, Color targetColor, ColoringMode coloringMode, float lerpAmount = 1.0f) + { + Color resultColor = Color.white; + switch (coloringMode) + { + case ColoringMode.Tint: + { + float s_h, s_s, s_v, t_h, t_s, t_v; + Color.RGBToHSV(originalColor, out s_h, out s_s, out s_v); + Color.RGBToHSV(targetColor, out t_h, out t_s, out t_v); + resultColor = Color.HSVToRGB(t_h, t_s, s_v * t_v); + resultColor.a = originalColor.a * targetColor.a; + } + break; + case ColoringMode.Multiply: + resultColor = originalColor * targetColor; + break; + case ColoringMode.Replace: + resultColor = targetColor; + break; + case ColoringMode.ReplaceKeepAlpha: + resultColor = targetColor; + resultColor.a = originalColor.a; + break; + case ColoringMode.Add: + resultColor = originalColor + targetColor; + break; + default: + break; + } + return Color.Lerp(originalColor, resultColor, lerpAmount); + } + } +} \ No newline at end of file diff --git a/Assets/External/Feel/MMFeedbacks/Editor/Core/MMFeedbacksColors.cs.meta b/Assets/External/Feel/MMFeedbacks/Editor/Core/MMFeedbacksColors.cs.meta new file mode 100644 index 00000000..ab0c4c21 --- /dev/null +++ b/Assets/External/Feel/MMFeedbacks/Editor/Core/MMFeedbacksColors.cs.meta @@ -0,0 +1,18 @@ +fileFormatVersion: 2 +guid: 822282e53ae1ea84d9795a45c89280db +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: +AssetOrigin: + serializedVersion: 1 + productId: 183370 + packageName: Feel + packageVersion: 5.9.1 + assetPath: Assets/Feel/MMFeedbacks/Editor/Core/MMFeedbacksColors.cs + uploadId: 830868 diff --git a/Assets/External/Feel/MMFeedbacks/Editor/Core/MMFeedbacksConfiguration.cs b/Assets/External/Feel/MMFeedbacks/Editor/Core/MMFeedbacksConfiguration.cs new file mode 100644 index 00000000..0902754a --- /dev/null +++ b/Assets/External/Feel/MMFeedbacks/Editor/Core/MMFeedbacksConfiguration.cs @@ -0,0 +1,51 @@ +using System.Collections; +using System.Collections.Generic; +using System.Linq; +using UnityEngine; + +namespace MoreMountains.Feedbacks +{ + /// + /// An asset to store copy information, as well as global feedback settings. + /// It requires that one (and only one) MMFeedbacksConfiguration asset be created and stored in a Resources folder. + /// That's already done when installing MMFeedbacks. + /// + [CreateAssetMenu(menuName = "MoreMountains/MMFeedbacks/Configuration", fileName = "MMFeedbacksConfiguration")] + public class MMFeedbacksConfiguration : ScriptableObject + { + private static MMFeedbacksConfiguration _instance; + private static bool _instantiated; + + /// + /// Singleton pattern + /// + public static MMFeedbacksConfiguration Instance + { + get + { + if (_instantiated) + { + return _instance; + } + + string assetName = typeof(MMFeedbacksConfiguration).Name; + + MMFeedbacksConfiguration loadedAsset = Resources.Load("MMFeedbacksConfiguration"); + _instantiated = true; + _instance = loadedAsset; + + return _instance; + } + } + + [Header("Debug")] + /// storage for copy/paste + public MMFeedbacks _mmFeedbacks; + + [Header("Help settings")] + /// if this is true, inspector tips will be shown for MMFeedbacks + public bool ShowInspectorTips = true; + + private void OnDestroy(){ _instantiated = false; } + } +} \ No newline at end of file diff --git a/Assets/External/Feel/MMFeedbacks/Editor/Core/MMFeedbacksConfiguration.cs.meta b/Assets/External/Feel/MMFeedbacks/Editor/Core/MMFeedbacksConfiguration.cs.meta new file mode 100644 index 00000000..934ee77d --- /dev/null +++ b/Assets/External/Feel/MMFeedbacks/Editor/Core/MMFeedbacksConfiguration.cs.meta @@ -0,0 +1,18 @@ +fileFormatVersion: 2 +guid: 00bf1cad26d9e9342b90f463840caf08 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: +AssetOrigin: + serializedVersion: 1 + productId: 183370 + packageName: Feel + packageVersion: 5.9.1 + assetPath: Assets/Feel/MMFeedbacks/Editor/Core/MMFeedbacksConfiguration.cs + uploadId: 830868 diff --git a/Assets/External/Feel/MMFeedbacks/Editor/Core/MMFeedbacksEditor.cs b/Assets/External/Feel/MMFeedbacks/Editor/Core/MMFeedbacksEditor.cs new file mode 100644 index 00000000..ced9b35e --- /dev/null +++ b/Assets/External/Feel/MMFeedbacks/Editor/Core/MMFeedbacksEditor.cs @@ -0,0 +1,31 @@ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Linq; +using System.Reflection; +using MoreMountains.Tools; +using UnityEditor; +using UnityEngine; + +namespace MoreMountains.Feedbacks +{ + /// + /// A custom editor displaying a foldable list of MMFeedbacks, a dropdown to add more, as well as test buttons to test your feedbacks at runtime + /// + [CustomEditor(typeof(MMFeedbacks))] + public class MMFeedbacksEditor : Editor + { + /// + /// Draws the inspector, complete with helpbox, init mode selection, list of feedbacks, feedback selection and test buttons + /// + public override void OnInspectorGUI() + { + + EditorGUILayout.HelpBox("The MMFeedbacks component got deprecated with the introduction of the MMF Player, in v3.0.\n\n" + + "The MMF Player improves performance, lets you keep runtime changes, and much more! And it works just like MMFeedbacks. " + + "With the release of v4.0, the MMFeedbacks is now completely removed from Feel and phased out.\n\n" + + "If you've tried adding this component, maybe you're watching an old tutorial, in that case, fear not, all you're watching is still valid, " + + "just replace MMFeedbacks with MMF Player and you'll be good to go! Have fun with Feel!", MessageType.Warning); + } + } +} \ No newline at end of file diff --git a/Assets/External/Feel/MMFeedbacks/Editor/Core/MMFeedbacksEditor.cs.meta b/Assets/External/Feel/MMFeedbacks/Editor/Core/MMFeedbacksEditor.cs.meta new file mode 100644 index 00000000..a20457df --- /dev/null +++ b/Assets/External/Feel/MMFeedbacks/Editor/Core/MMFeedbacksEditor.cs.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: b44bc3e42b280e843bc6108cbdee8253 +AssetOrigin: + serializedVersion: 1 + productId: 183370 + packageName: Feel + packageVersion: 5.9.1 + assetPath: Assets/Feel/MMFeedbacks/Editor/Core/MMFeedbacksEditor.cs + uploadId: 830868 diff --git a/Assets/External/Feel/MMFeedbacks/Editor/Core/UIToolkit.meta b/Assets/External/Feel/MMFeedbacks/Editor/Core/UIToolkit.meta new file mode 100644 index 00000000..978503f6 --- /dev/null +++ b/Assets/External/Feel/MMFeedbacks/Editor/Core/UIToolkit.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 6df6061b7bd0f2b48bd1dffd95b1c113 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/External/Feel/MMFeedbacks/Editor/Core/UIToolkit/FeelScriptIcon.png b/Assets/External/Feel/MMFeedbacks/Editor/Core/UIToolkit/FeelScriptIcon.png new file mode 100644 index 00000000..4a5d83e0 Binary files /dev/null and b/Assets/External/Feel/MMFeedbacks/Editor/Core/UIToolkit/FeelScriptIcon.png differ diff --git a/Assets/External/Feel/MMFeedbacks/Editor/Core/UIToolkit/FeelScriptIcon.png.meta b/Assets/External/Feel/MMFeedbacks/Editor/Core/UIToolkit/FeelScriptIcon.png.meta new file mode 100644 index 00000000..b7482179 --- /dev/null +++ b/Assets/External/Feel/MMFeedbacks/Editor/Core/UIToolkit/FeelScriptIcon.png.meta @@ -0,0 +1,150 @@ +fileFormatVersion: 2 +guid: d9d54e48cd32e274287fb32bbb13da24 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 0 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 4 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: Win64 + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + customData: + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spriteCustomMetadata: + entries: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: +AssetOrigin: + serializedVersion: 1 + productId: 183370 + packageName: Feel + packageVersion: 5.9.1 + assetPath: Assets/Feel/MMFeedbacks/Editor/Core/UIToolkit/FeelScriptIcon.png + uploadId: 830868 diff --git a/Assets/External/Feel/MMFeedbacks/Editor/Core/UIToolkit/MMF_FeedbackPropertyDrawerUITK.cs b/Assets/External/Feel/MMFeedbacks/Editor/Core/UIToolkit/MMF_FeedbackPropertyDrawerUITK.cs new file mode 100644 index 00000000..43c55cab --- /dev/null +++ b/Assets/External/Feel/MMFeedbacks/Editor/Core/UIToolkit/MMF_FeedbackPropertyDrawerUITK.cs @@ -0,0 +1,385 @@ +using System; +using System.Collections.Generic; +using System.Reflection; +using MoreMountains.Tools; +using UnityEditor; +using UnityEditor.UIElements; +using UnityEngine; +using UnityEngine.UIElements; + +namespace MoreMountains.Feedbacks +{ + public class MMFInspectorDrawData + { + public int Index; + public Foldout FeedbackFoldout; + public SerializedProperty CurrentProperty; + public MMF_Feedback Feedback; + public MMF_PlayerEditorUITK PlayerEditor; + public Action OnAnyValueChanged; + public Action OnFeedbackFieldValueChanged; + public Dictionary FeedbackGroupsDictionary; + public Dictionary GroupDataDictionary; + public List PropertiesList; + public Sprite SetupRequiredIcon; + } + + public class MMFInspectorGroupData + { + public bool GroupIsOpen; + public MMFInspectorGroupAttribute GroupAttribute; + public List PropertiesList = new List(); + public HashSet GroupHashSet = new HashSet(); + public Color GroupColor; + public bool Initialized = false; + + public void ClearGroup() + { + GroupAttribute = null; + GroupHashSet.Clear(); + PropertiesList.Clear(); + Initialized = false; + } + } + + public class MMF_FeedbackPropertyDrawerUITK + { + private const string _channelFieldName = "Channel"; + private const string _channelModeFieldName = "ChannelMode"; + private const string _channelDefinitionFieldName = "MMChannelDefinition"; + private const string _automatedTargetAcquisitionName = "AutomatedTargetAcquisition"; + private const string _timingFieldName = "Timing"; + protected const string _customInspectorButtonPropertyName = "MMF_Button"; + + protected const string _mmfInspectorClassName = "mm-mmf-inspector"; + protected const string _mmfContainerClassName = "mm-mmf-container"; + protected const string _mmfGroupClassName = "mm-mmf-group"; + protected const string _mmfFieldClassName = "mm-mmf-field"; + protected const string _feedbackGroupHeaderExtrasClassName = "mm-feedback-group-header-extras"; + + public static VisualElement DrawInspector(MMFInspectorDrawData drawData) + { + // create our inspector root + VisualElement root = new VisualElement(); + root.RegisterCallback(evt => { evt.StopPropagation(); }); + root.AddToClassList(_mmfInspectorClassName); + + // initialize our data containers + Dictionary groupDataDictionary = new Dictionary(); + List propertiesList = new List(); + drawData.GroupDataDictionary = groupDataDictionary; + drawData.PropertiesList = propertiesList; + + Initialization(drawData); + root.Add(DrawContainer(drawData)); + + // we initialize our groupdata with a delay to make sure OnFeedbackFieldValueChanged isn't called on the first render of each field + root.schedule.Execute(() => + { + foreach (var keyPair in groupDataDictionary) + { + keyPair.Value.Initialized = true; + } + }).StartingIn(1000); + + return root; + } + + protected static void Initialization(MMFInspectorDrawData drawData) + { + List fieldInfoList; + MMFInspectorGroupAttribute previousGroupAttribute = default; + int fieldInfoLength = MMF_FieldInfo.GetFieldInfo(drawData.Feedback, out fieldInfoList); + + for (int i = 0; i < fieldInfoLength; i++) + { + MMFInspectorGroupAttribute group = Attribute.GetCustomAttribute(fieldInfoList[i], typeof(MMFInspectorGroupAttribute)) as MMFInspectorGroupAttribute; + + MMFInspectorGroupData groupData; + if (group == null) + { + if (previousGroupAttribute != null && previousGroupAttribute.GroupAllFieldsUntilNextGroupAttribute) + { + if (!drawData.GroupDataDictionary.TryGetValue(previousGroupAttribute.GroupName, out groupData)) + { + if (!ShouldSkipGroup(previousGroupAttribute.GroupName, drawData.Feedback)) + { + drawData.GroupDataDictionary.Add(previousGroupAttribute.GroupName, new MMFInspectorGroupData + { + GroupAttribute = previousGroupAttribute, + GroupHashSet = new HashSet { fieldInfoList[i].Name }, + GroupColor = MMFeedbacksColors.GetColorAt(previousGroupAttribute.GroupColorIndex) + }); + } + } + else + { + groupData.GroupColor = MMFeedbacksColors.GetColorAt(previousGroupAttribute.GroupColorIndex); + groupData.GroupHashSet.Add(fieldInfoList[i].Name); + } + } + + continue; + } + + previousGroupAttribute = group; + + if (!drawData.GroupDataDictionary.TryGetValue(group.GroupName, out groupData)) + { + bool fallbackOpenState = true; + if (group.ClosedByDefault) { fallbackOpenState = false; } + bool groupIsOpen = EditorPrefs.GetBool(string.Format($"{group.GroupName}{fieldInfoList[i].Name}{drawData.Feedback.UniqueID}"), fallbackOpenState); + + if (!ShouldSkipGroup(previousGroupAttribute.GroupName, drawData.Feedback)) + { + drawData.GroupDataDictionary.Add(group.GroupName, new MMFInspectorGroupData + { + GroupAttribute = group, + GroupColor = MMFeedbacksColors.GetColorAt(previousGroupAttribute.GroupColorIndex), + GroupHashSet = new HashSet { fieldInfoList[i].Name }, GroupIsOpen = groupIsOpen + }); + } + } + else + { + groupData.GroupHashSet.Add(fieldInfoList[i].Name); + groupData.GroupColor = MMFeedbacksColors.GetColorAt(previousGroupAttribute.GroupColorIndex); + } + } + + if (drawData.CurrentProperty.NextVisible(true)) + { + do + { + FillPropertiesList(drawData.CurrentProperty, drawData.GroupDataDictionary, drawData.PropertiesList); + } while (drawData.CurrentProperty.NextVisible(false)); + } + } + + protected static bool ShouldSkipGroup(string groupName, MMF_Feedback feedback) + { + bool skip = false; + + if (groupName == MMF_Feedback._randomnessGroupName && !feedback.HasRandomness) + { + skip = true; + } + + if (groupName == MMF_Feedback._rangeGroupName && !feedback.HasRange) + { + skip = true; + } + + if (groupName == MMF_Feedback._automaticSetupGroupName && !feedback.HasAutomaticShakerSetup) + { + skip = true; + } + + return skip; + } + + public static void FillPropertiesList(SerializedProperty serializedProperty, Dictionary groupDataDictionary, List propertiesList) + { + bool shouldClose = false; + + foreach (KeyValuePair pair in groupDataDictionary) + { + if (pair.Value.GroupHashSet.Contains(serializedProperty.name)) + { + SerializedProperty property = serializedProperty.Copy(); + shouldClose = true; + pair.Value.PropertiesList.Add(property); + break; + } + } + + if (!shouldClose) + { + SerializedProperty property = serializedProperty.Copy(); + propertiesList.Add(property); + } + } + + protected static VisualElement DrawContainer(MMFInspectorDrawData drawData) + { + VisualElement root = new VisualElement(); + root.AddToClassList(_mmfContainerClassName); + + if (drawData.PropertiesList.Count == 0) + { + return root; + } + + foreach (KeyValuePair pair in drawData.GroupDataDictionary) + { + VisualElement group = DrawGroup(pair.Value, drawData); + root.Add(group); + } + + return root; + } + + protected static VisualElement DrawGroup(MMFInspectorGroupData groupData, MMFInspectorDrawData drawData) + { + VisualElement root = new VisualElement(); + root.RegisterCallback(evt => { evt.StopPropagation(); }); + root.AddToClassList(_mmfGroupClassName); + + Foldout foldout = new Foldout(); + foldout.text = groupData.GroupAttribute.GroupName; + foldout.value = groupData.GroupIsOpen; + foldout.AddToClassList(MMF_PlayerEditorUITK._foldoutClassName); + foldout.style.borderLeftColor = groupData.GroupColor; + foldout.viewDataKey = drawData.Feedback.UniqueID + "-" + drawData.Feedback.Label + "-" + groupData.GroupAttribute.GroupName; + root.Add(foldout); + + var toggleElement = foldout.Q(); + toggleElement.AddToClassList(MMF_PlayerEditorUITK._foldoutToggleClassName); + + VisualElement headerExtrasContainer = new VisualElement(); + headerExtrasContainer.AddToClassList(_feedbackGroupHeaderExtrasClassName); + headerExtrasContainer.pickingMode = PickingMode.Ignore; + foldout.parent.Insert(1, headerExtrasContainer); + + MMF_PlayerEditorUITK.MMFFeedbackGroupExtrasContainerData feedbackGroupExtrasContainerData = new MMF_PlayerEditorUITK.MMFFeedbackGroupExtrasContainerData(); + feedbackGroupExtrasContainerData.HeaderExtrasContainer = headerExtrasContainer; + feedbackGroupExtrasContainerData.GroupData = groupData; + feedbackGroupExtrasContainerData.DrawData = drawData; + drawData.FeedbackGroupsDictionary.Add(groupData, feedbackGroupExtrasContainerData); + DrawGroupExtrasContainer(feedbackGroupExtrasContainerData); + + // foldout contents + foldout.schedule.Execute(() => + { + if (foldout.value) { DrawFoldoutContents(); } + }).ExecuteLater(1); + + EventCallback> callback = null; + callback = evt => + { + if (evt.newValue) + { + if (foldout.childCount == 0) + { + DrawFoldoutContents(); + foldout.UnregisterValueChangedCallback(callback); + } + } + }; + foldout.RegisterValueChangedCallback(callback); + + void DrawFoldoutContents() + { + for (int i = 0; i < groupData.PropertiesList.Count; i++) + { + DrawChild(i, foldout, root); + } + } + + void DrawChild(int i, Foldout foldout, VisualElement root) + { + if (!drawData.Feedback.HasChannel + && (groupData.PropertiesList[i].name == _channelFieldName + || groupData.PropertiesList[i].name == _channelModeFieldName + || groupData.PropertiesList[i].name == _channelDefinitionFieldName)) + { + return; + } + + bool shouldDraw = !((groupData.PropertiesList[i].name == _automatedTargetAcquisitionName) && (!drawData.Feedback.HasAutomatedTargetAcquisition)); + if (!shouldDraw) + { + return; + } + + if (!DrawCustomInspectors(groupData.PropertiesList[i], drawData.Feedback, foldout)) + { + PropertyField field = new PropertyField(groupData.PropertiesList[i]); + field.label = ObjectNames.NicifyVariableName(groupData.PropertiesList[i].name); + field.name = groupData.PropertiesList[i].name; + field.tooltip = groupData.PropertiesList[i].tooltip; + field.AddToClassList(_mmfFieldClassName); + field.Bind(groupData.PropertiesList[i].serializedObject); + field.TrackPropertyValue(groupData.PropertiesList[i], drawData.OnAnyValueChanged); + + if (field.name == "Label") + { + field?.RegisterCallback>(evt => + { + drawData.FeedbackFoldout.text = drawData.PlayerEditor.DetermineFeedbackLabel(drawData.Index, drawData.Feedback.GetType()); + }); + } + + field.RegisterValueChangeCallback(evt => + { + if (groupData.Initialized) + { + drawData.OnFeedbackFieldValueChanged(groupData.PropertiesList[i], groupData, drawData.Feedback); + } + }); + foldout.Add(field); + + // we register callbacks for all the nested fields under Timing + if (field.name == _timingFieldName) + { + RegisterNestedCallbacks(field, groupData.PropertiesList[i], groupData, drawData); + } + } + } + + return root; + } + + private static void RegisterNestedCallbacks(VisualElement field, SerializedProperty property, MMFInspectorGroupData groupData, MMFInspectorDrawData drawData) + { + field.schedule.Execute(() => // we delay the execution to avoid calling the callback before the Timing foldout is fully built + { + foreach (var child in field.Children()) + { + if (child is PropertyField genericField) + { + genericField.RegisterValueChangeCallback(evt => drawData.OnFeedbackFieldValueChanged(property, groupData, drawData.Feedback)); + } + if (child.childCount > 0) + { + RegisterNestedCallbacks(child, property, groupData, drawData); + } + } + }).StartingIn(100); + } + + public static void DrawGroupExtrasContainer(MMF_PlayerEditorUITK.MMFFeedbackGroupExtrasContainerData groupExtrasContainerData) + { + groupExtrasContainerData.HeaderExtrasContainer.Clear(); + + if (groupExtrasContainerData.GroupData.GroupAttribute.RequiresSetup && groupExtrasContainerData.DrawData.Feedback.RequiresSetup) + { + VisualElement setupRequiredIcon = new VisualElement(); + setupRequiredIcon.AddToClassList(MMF_PlayerEditorUITK._iconClassName); + setupRequiredIcon.AddToClassList(MMF_PlayerEditorUITK._setupRequiredIconClassName); + setupRequiredIcon.style.backgroundImage = new StyleBackground(groupExtrasContainerData.DrawData.SetupRequiredIcon); + groupExtrasContainerData.HeaderExtrasContainer.Add(setupRequiredIcon); + } + } + + protected static bool DrawCustomInspectors(SerializedProperty currentProperty, MMF_Feedback feedback, Foldout foldout) + { + if (feedback.HasCustomInspectors) + { + switch (currentProperty.type) + { + case _customInspectorButtonPropertyName: + MMF_Button myButton = (MMF_Button)(currentProperty.MMFGetObjectValue()); + + Button newButton = new Button(() => myButton.TargetMethod()); + newButton.text = myButton.ButtonText; + foldout.Add(newButton); + + return true; + } + } + + return false; + } + } +} diff --git a/Assets/External/Feel/MMFeedbacks/Editor/Core/UIToolkit/MMF_FeedbackPropertyDrawerUITK.cs.meta b/Assets/External/Feel/MMFeedbacks/Editor/Core/UIToolkit/MMF_FeedbackPropertyDrawerUITK.cs.meta new file mode 100644 index 00000000..52d50d78 --- /dev/null +++ b/Assets/External/Feel/MMFeedbacks/Editor/Core/UIToolkit/MMF_FeedbackPropertyDrawerUITK.cs.meta @@ -0,0 +1,18 @@ +fileFormatVersion: 2 +guid: 886d805cbd686b046b8707c00676d919 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: +AssetOrigin: + serializedVersion: 1 + productId: 183370 + packageName: Feel + packageVersion: 5.9.1 + assetPath: Assets/Feel/MMFeedbacks/Editor/Core/UIToolkit/MMF_FeedbackPropertyDrawerUITK.cs + uploadId: 830868 diff --git a/Assets/External/Feel/MMFeedbacks/Editor/Core/UIToolkit/MMF_PlayerEditorUITK.cs b/Assets/External/Feel/MMFeedbacks/Editor/Core/UIToolkit/MMF_PlayerEditorUITK.cs new file mode 100644 index 00000000..de3896c5 --- /dev/null +++ b/Assets/External/Feel/MMFeedbacks/Editor/Core/UIToolkit/MMF_PlayerEditorUITK.cs @@ -0,0 +1,1841 @@ +using System; +using System.Collections.Generic; +using MoreMountains.Tools; +#if UNITY_EDITOR +using UnityEditor; +using UnityEditor.UIElements; +#endif +using UnityEngine; +using System.Linq; +using UnityEngine.UIElements; + +namespace MoreMountains.Feedbacks +{ + [CanEditMultipleObjects] + [CustomEditor(typeof(MMF_Player), true)] + public class MMF_PlayerEditorUITK : Editor + { + public struct FeedbackTypePair + { + public System.Type FeedbackType; + public string FeedbackName; + } + + public class FeedbackHeaderContainersData + { + public int Index; + public MMF_Feedback Feedback; + public VisualElement HeaderContainer; + public VisualElement SetupRequiredWarningBox; + public VisualElement ProgressBar; + public Type FeedbackType; + } + + public class MMFFeedbackGroupExtrasContainerData + { + public VisualElement HeaderExtrasContainer; + public MMFInspectorGroupData GroupData; + public MMFInspectorDrawData DrawData; + } + + // Bindings + public StyleSheet StyleSheetBase; + public StyleSheet StyleSheetControls; + public StyleSheet StyleSheetFeedbacksList; + public StyleSheet StyleSheetFoldouts; + public StyleSheet StyleSheetSettings; + public StyleSheet StyleSheetLightSkin; + + // Icons + public Sprite GearIcon; + public Sprite TopToBottomIcon; + public Sprite BottomToTopIcon; + public Sprite ContextlMenuIcon; + public Sprite SetupRequiredIcon; + public Sprite EmptyListImage; + public Sprite ScriptIcon; + public Sprite SearchFieldCloseIcon; + + // Properties + public MMF_Player TargetMmfPlayer; + public static List _typeDisplays; + public static List _typeNamesDisplays; + public static List _typesAndNames = new List(); + + // Protected + protected bool _settingsFoldoutIsOpen = false; + protected SerializedProperty _inScriptDrivenPause; + protected SerializedProperty _mmfeedbacksList; + protected VisualElement _root; + protected VisualElement _bottomBar; + protected Foldout _settingsFoldout; + protected Label _isPlayingLabel; + protected VisualElement _settingsInfo; + protected ListView _feedbacksListView; + protected bool _initialized = false; + protected bool _isPlayingLastFrame; + protected string _feedbackLabel; + protected IVisualElementScheduledItem _blinkingTask; + protected Label _feedbacksListLabel; + protected Length _progressBarLength; + protected VisualElement _emptyFeedbackListContainer; + protected VisualElement _automaticShakerSetupButtonContainer; + protected StyleBackground _styleBackgroundGearIcon; + protected StyleColor _transparentColor = new StyleColor(new Color(0, 0, 0, 0)); + + protected Dictionary FeedbackHeaderContainersDictionary; + protected Dictionary FeedbackGroupsDictionary; + + // text constants + protected const string _copyAllText = "Copy all"; + protected const string _pasteAsNewText = "Paste as new"; + protected const string _pasteUndoText = "Paste Feedback"; + protected const string _replaceAllText = "Replace all"; + protected const string _replaceAllUndoText = "Replace all feedbacks"; + protected const string _addUndoText = "Add new feedback"; + protected const string _removeUndoText = "Remove feedback"; + protected const string _reorderUndoText = "Reorder feedback"; + protected const string _pasteAllAsNewText = "Paste all feedbacks as new"; + + protected const string _inactiveMessage = + "All MMFeedbacks, including this one, are currently disabled. This is done via script, by changing the value of the MMFeedbacks.GlobalMMFeedbacksActive boolean. Right now this value has been set to false. Setting it back to true will allow MMFeedbacks to play again."; + + protected const string _initializationSectionText = "Initialization"; + protected const string _directionSectionText = "Direction"; + protected const string _intensitySectionText = "Intensity"; + protected const string _timingSectionText = "Timing"; + protected const string _rangeSectionText = "Range"; + protected const string _playSettingsSectionText = "Play Settings"; + protected const string _eventsSectionText = "Events"; + protected const string _settingsText = "MMF PLAYER SETTINGS"; + protected const string _isPlayingText = "PLAYING "; + protected const string _infiniteLoopText = "[Infinite Loop] "; + protected const string _initializeText = "Initialization"; + protected const string _playText = "Play"; + protected const string _removeText = "Remove"; + protected const string _pauseText = "Pause"; + protected const string _stopText = "Stop"; + protected const string _resetText = "Reset"; + protected const string _resetUndoText = "Reset Feedback"; + protected const string _changeDirectionText = "ChangeDirection"; + protected const string _duplicateText = "Duplicate"; + protected const string _copyText = "Copy"; + protected const string _pasteText = "Paste"; + protected const string _editScriptText = "Edit Script"; + protected const string _skipText = "SkipToTheEnd"; + protected const string _restoreText = "RestoreInitialValues"; + protected const string _keepPlaymodeChangesText = "Keep Play Mode Changes"; + protected const string _scriptEditLabelText = "Script"; + protected const string _searchFeedbackPlaceholderText = "Search..."; + + protected const string _scriptDrivenInProgressText = + "Script driven pause in progress, call ResumeFeedbacks() or press the button below to exit pause"; + + protected const string _resumeText = "ResumeFeedbacks"; + protected const string _feedbacksSectionTitle = "FEEDBACKS"; + protected const string _originalLabelColor = "#666"; + + protected const string _emptyFeedbackListMessage = + "This MMF Player doesn't contain any feedbacks for the moment.\n\n Pick a feedback from the \"Add a new feedback\" dropdown below to get started."; + + protected const string _addNewFeedbackText = "Add new feedback..."; + protected const string _automaticShakerSetupText = "Automatic Shaker Setup"; + + protected const string _undoText = "Modified Feedback Manager"; + //protected const string _debugControlsText = "Debug Controls"; + + // property names + protected const string _inScriptDrivenPausePropertyName = "InScriptDrivenPause"; + protected const string _feedbacksListPropertyName = "FeedbacksList"; + protected const string _feedbackBaseName = "MMF_FeedbackBase"; + protected const string _scriptPropertyName = "m_Script"; + protected const string _initializationModePropertyName = "InitializationMode"; + protected const string _autoPlayOnStartPropertyName = "AutoPlayOnStart"; + protected const string _autoPlayOnEnablePropertyName = "AutoPlayOnEnable"; + protected const string _autoInitializationPropertyName = "AutoInitialization"; + protected const string _directionPropertyName = "Direction"; + protected const string _autoChangeDirectionOnEndPropertyName = "AutoChangeDirectionOnEnd"; + protected const string _feedbacksIntensityPropertyName = "FeedbacksIntensity"; + protected const string _durationMultiplierPropertyName = "DurationMultiplier"; + protected const string _randomizeDurationPropertyName = "RandomizeDuration"; + protected const string _randomDurationMultiplierPropertyName = "RandomDurationMultiplier"; + protected const string _displayFullDurationDetailsPropertyName = "DisplayFullDurationDetails"; + protected const string _cooldownDurationPropertyName = "CooldownDuration"; + protected const string _initialDelayPropertyName = "InitialDelay"; + protected const string _chanceToPlayPropertyName = "ChanceToPlay"; + protected const string _playerTimescaleModePropertyName = "PlayerTimescaleMode"; + protected const string _forceTimescaleModePropertyName = "ForceTimescaleMode"; + protected const string _forcedTimescaleModePropertyName = "ForcedTimescaleMode"; + protected const string _timescaleMultiplierPropertyName = "TimescaleMultiplier"; + protected const string _rangeCenterPropertyName = "RangeCenter"; + protected const string _rangeDistancePropertyName = "RangeDistance"; + protected const string _useRangeFalloffPropertyName = "UseRangeFalloff"; + protected const string _onlyPlayIfWithinRangePropertyName = "OnlyPlayIfWithinRange"; + protected const string _rangeFalloffPropertyName = "RangeFalloff"; + protected const string _remapRangeFalloffPropertyName = "RemapRangeFalloff"; + protected const string _ignoreRangeEventsPropertyName = "IgnoreRangeEvents"; + protected const string _canPlayPropertyName = "CanPlay"; + protected const string _canPlayWhileAlreadyPlayingPropertyName = "CanPlayWhileAlreadyPlaying"; + protected const string _performanceModePropertyName = "PerformanceMode"; + protected const string _stopFeedbacksOnDisablePropertyName = "StopFeedbacksOnDisable"; + protected const string _restoreInitialValuesOnDisablePropertyName = "RestoreInitialValuesOnDisable"; + protected const string _playCountPropertyName = "PlayCount"; + protected const string _labelPropertyName = "Label"; + protected const string _infiniteLoopPropertyName = "InfiniteLoop"; + + protected const string _channelModePropertyName = "MMF_ChannelMode"; + protected const string _channelPropertyName = "MMF_Channel"; + protected const string _mmChannelDefinitionPropertyName = "MMF_ChannelDefinition"; + + // class names + public const string _foldoutClassName = "mm-foldout"; + public const string _iconClassName = "mm-icon"; + public const string _setupRequiredIconClassName = "mm-setup-required-icon"; + public const string _foldoutToggleClassName = "mm-foldout-toggle"; + protected const string _objectSelectorClassName = "unity-object-field__selector"; + protected const string _mmfEditorClassName = "mmf-editor"; + protected const string _settingsFoldoutSuffix = "- SettingsFoldout"; + protected const string _settingsFoldoutSubClassName = "mm-settings-foldout-sub"; + protected const string _settingsFoldoutSubToggleClassName = "mm-settings-foldout-sub-toggle"; + protected const string _settingsFoldoutToggleClassName = "mm-settings-foldout-toggle"; + protected const string _settingsFoldoutClassName = "mm-settings-foldout"; + protected const string _iconSettingsClassName = "mm-settings-icon"; + protected const string _scriptClassName = "mm-script-field"; + protected const string _settingsInfoClassName = "mm-settings-info"; + protected const string _settingsInfoSuffix = "- SettingsInfo"; + protected const string _unityFoldoutTextClassName = "unity-foldout__text"; + protected const string _settingsIsPlayingClassName = "mm-settings-is-playing"; + protected const string _settingsDurationClassName = "mm-settings-duration"; + protected const string _directionIconClassName = "mm-direction-icon"; + protected const string _inactiveWarningClassName = "mm-feedbacks-inactive-warning"; + protected const string _feedbackFoldoutClassName = "mm-feedback-foldout"; + protected const string _bottomBarClassName = "mm-bottom-bar"; + protected const string _controlsClassName = "mm-controls"; + protected const string _searchFieldClassName = "mm-add-feedback-search-field"; + protected const string _searchFieldPlaceholderClassName = "mm-add-feedback-search-field-placeholder"; + protected const string _playModeButtonActiveClassName = "mm-playmode-button-active"; + protected const string _searchResultsRowClassName = "mm-search-results-row"; + protected const string _searchAddFeedbackButtonClassName = "mm-search-add-feedback-button"; + protected const string _scriptDrivenPauseLabelClassName = "mm-script-driven-pause-label"; + protected const string _scriptDrivenPauseLabelBlinkClassName = "mm-script-driven-pause-label-blink"; + protected const string _feedbackControlButtonsClassName = "mm-feedback-control-buttons"; + protected const string _feedbackHeaderContainerClassName = "mm-feedback-header-container"; + protected const string _feedbackActiveCheckboxClassName = "mm-feedback-active-checkbox"; + protected const string _automaticShakerSetupButtonClassName = "automatic-shaker-setup-button"; + protected const string _settingsInitClassNameSuffix = "- SettingsFoldoutInitialization"; + protected const string _settingsDirectionClassNameSuffix = "- SettingsFoldoutDirection"; + protected const string _settingsIntensityClassNameSuffix = "- SettingsFoldoutIntensity"; + protected const string _settingsTimingClassNameSuffix = "- SettingsFoldoutTiming"; + protected const string _settingsRangeClassNameSuffix = "- SettingsFoldoutRange"; + protected const string _settingsPlaySettingsClassNameSuffix = "- SettingsFoldoutPlaySettings"; + protected const string _addNewFeedbackPopupFieldLabel = "addNewFeedbackPopupField"; + protected const string _emptyListImageClassName = "mm-empty-list-image"; + protected const string _feedbacksListEmptyClassName = "mm-feedbacks-list-empty"; + protected const string _feedbacksListViewClassNameSuffix = "- feedbacksListView"; + protected const string _feedbacksListClassName = "mm-feedbacks-list"; + protected const string _feedbacksListContainerClassNameSuffix = "- feedbacksListContainer"; + protected const string _feedbacksListTitleClassName = "mm-feedbacks-list-title"; + protected const string _settingsFoldoutClassNameSuffix = "- SettingsFoldout - "; + protected const string _feedbackHelpBoxClassName = "mm-feedback-help-box"; + protected const string _feedbackHelpLabelClassName = "mm-feedback-help-label"; + protected const string _feedbackEditScriptButtonContainerClassName = "mm-feedback-edit-script-button-container"; + protected const string _feedbackEditScriptButtonLabelClassName = "mm-feedback-edit-script-button-label"; + protected const string _feedbackEditScriptButtonBoxClassName = "mm-feedback-edit-script-button-box"; + protected const string _feedbackProgressLineContainerClassName = "mm-feedback-progress-line-container"; + protected const string _feedbackProgressLineClassName = "mm-feedback-progress-line"; + protected const string _feedbackSetupRequiredBoxClassName = "mm-feedback-setup-required-box"; + protected const string _feedbackSetupRequiredLabelClassName = "mm-feedback-setup-required-label"; + protected const string _feedbackInspectorContainerClassName = "mm-feedback-inspector-container"; + protected const string _feedbackReorderableItemClassName = "mm-feedback-reorderable-item"; + protected const string _feedbackLeftBorderClassName = "mm-feedback-left-border"; + protected const string _feedbackBackgroundColorClassName = "mm-feedback-background-color"; + protected const string _feedbackFoldoutLabelClassName = "mm-feedback-foldout-label"; + protected const string _feedbackTimingLabelClassName = "mm-feedback-timing-label"; + protected const string _feedbackDirectionIconClassName = "mm-feedback-direction-icon"; + protected const string _feedbackContextualMenuButtonClassName = "mm-feedback-contextual-menu-button"; + protected const string _contextMenuIconClassName = "mm-context-menu-icon"; + protected const string _feedbackRequiredTargetLabelClassName = "mm-feedback-required-target-label"; + + #region LIFE CYCLE + + private void OnEnable() + { + ClearDictionaries(); + Undo.undoRedoPerformed += OnUndoRedo; + EditorApplication.update += OnEditorUpdate; + } + + private void OnDisable() + { + Undo.undoRedoPerformed -= OnUndoRedo; + EditorApplication.update -= OnEditorUpdate; + } + + public override bool RequiresConstantRepaint() => false; + + #endregion + + #region UPDATE EVENTS + + private void OnEditorUpdate() + { + if (!_initialized) + { + return; + } + + if (Application.isPlaying) + { + if (TargetMmfPlayer.IsPlaying) + { + foreach (var headerData in FeedbackHeaderContainersDictionary) + { + UpdateProgressBar(headerData.Value); + } + } + + if (TargetMmfPlayer.IsPlaying != _isPlayingLastFrame) + { + // display IsPlaying label in the top bar + _isPlayingLabel.style.display = TargetMmfPlayer.IsPlaying ? DisplayStyle.Flex : DisplayStyle.None; + if (!TargetMmfPlayer.IsPlaying) + { + foreach (var headerData in FeedbackHeaderContainersDictionary) + { + headerData.Value.ProgressBar.style.width = 0f; + } + } + } + } + + _isPlayingLastFrame = TargetMmfPlayer.IsPlaying; + } + + protected virtual void UpdateProgressBar(FeedbackHeaderContainersData data) + { + if (!TargetMmfPlayer.IsPlaying) + { + data.ProgressBar.style.width = 0f; + return; + } + + float totalDuration = data.Feedback.TotalDuration - data.Feedback.Timing.InitialDelay; + float startedAt = data.Feedback.FeedbackStartedAt; + float thisTime = data.Feedback.Timing.TimescaleMode == TimescaleModes.Scaled + ? Time.time + : Time.unscaledTime; + + if (totalDuration == 0f) + { + totalDuration = 0.1f; + } + + if (startedAt == 0f) + { + startedAt = 0.001f; + } + + if ((startedAt > 0f) && (thisTime - startedAt < totalDuration + 0.05f)) + { + if (totalDuration == 0f) + { + totalDuration = 0.1f; + } + + float percent = ((thisTime - startedAt) / totalDuration) * 100f; + + _progressBarLength.value = percent; + data.ProgressBar.style.width = _progressBarLength; + } + else + { + data.ProgressBar.style.width = 0f; + } + } + + protected virtual void OnAnyValueChanged(SerializedProperty property) + { + // triggers for any value changed anywhere on the feedback + DrawDurationAndDirectionContents(); + RedrawAllFeedbackHeaders(); + } + + protected virtual void OnFeedbackFieldValueChanged(SerializedProperty property, MMFInspectorGroupData groupData, + MMF_Feedback feedback) // triggers for any value changed anywhere on the feedback + { + // we update only that feedback's header + FeedbackHeaderContainersDictionary[feedback].HeaderContainer = + DrawFeedbackHeaderContainer(FeedbackHeaderContainersDictionary[feedback]); + // we update that field's group header + MMF_FeedbackPropertyDrawerUITK.DrawGroupExtrasContainer(FeedbackGroupsDictionary[groupData]); + } + + protected virtual void OnFeedbackListReorder() + { + Undo.RecordObject(target, _reorderUndoText); + RedrawFeedbacksList(); + SavePlayerChanges(); + } + + protected virtual void OnUndoRedo() + { + if (serializedObject == null) + { + return; + } + + if (serializedObject.targetObject == null) + { + return; + } + + serializedObject.Update(); + CacheFeedbacksListProperty(); + RedrawFeedbacksList(); + } + + #endregion + + public override VisualElement CreateInspectorGUI() + { + serializedObject.Update(); + Undo.RecordObject(target, _undoText); + + Initialization(); + DrawScriptField(_root); + DrawFeedbacksInactiveWarning(_root); + DrawSettingsDropDown(_root); + DrawDurationAndDirection(); + DrawFeedbacksList(_root); + DrawBottomBar(_root); + DrawDebugControls(_root); + SavePlayerChanges(); + return _root; + } + + protected virtual void Initialization() + { + TargetMmfPlayer = (MMF_Player)target; + + CacheFeedbacksListProperty(); + _inScriptDrivenPause = serializedObject.FindProperty(_inScriptDrivenPausePropertyName); + PrepareFeedbackTypeList(); + + FeedbackHeaderContainersDictionary = new Dictionary(); + FeedbackGroupsDictionary = new Dictionary(); + + _styleBackgroundGearIcon = new StyleBackground(GearIcon); + + _progressBarLength = new Length(0f, LengthUnit.Percent); + + // draw the root + _root = new VisualElement(); + _root.AddToClassList(_mmfEditorClassName); + _root.styleSheets.Add(StyleSheetBase); + _root.styleSheets.Add(StyleSheetFoldouts); + _root.styleSheets.Add(StyleSheetControls); + _root.styleSheets.Add(StyleSheetSettings); + _root.styleSheets.Add(StyleSheetFeedbacksList); + if (!EditorGUIUtility.isProSkin) + { + _root.styleSheets.Add(StyleSheetLightSkin); + } + + // listen for changes on all properties in the MMF Player + SerializedProperty propertyIterator = serializedObject.GetIterator(); + if (propertyIterator.NextVisible(true)) + { + do + { + _root.TrackPropertyValue(propertyIterator, this.OnAnyValueChanged); + } while (propertyIterator.NextVisible(false)); + } + + _initialized = true; + } + + protected virtual void CacheFeedbacksListProperty() + { + _mmfeedbacksList = serializedObject.FindProperty(_feedbacksListPropertyName); + } + + protected virtual void PrepareFeedbackTypeList() + { + if (_typeDisplays == null) + { + _typeDisplays = new List(); + } + + if (_typeNamesDisplays == null) + { + _typeNamesDisplays = new List(); + } + + if (_typeDisplays.Count > 0) + { + return; + } + + // Retrieve available feedbacks + List types = (from domainAssembly in System.AppDomain.CurrentDomain.GetAssemblies() + from assemblyType in domainAssembly.GetTypes() + where assemblyType.IsSubclassOf(typeof(MMF_Feedback)) + select assemblyType).ToList(); + + // Create display list from types + _typeDisplays.Clear(); + _typeNamesDisplays.Clear(); + for (int i = 0; i < types.Count; i++) + { + FeedbackTypePair _newType = new FeedbackTypePair(); + _newType.FeedbackType = types[i]; + _newType.FeedbackName = FeedbackPathAttribute.GetFeedbackDefaultPath(types[i]); + if ((_newType.FeedbackName == _feedbackBaseName) || (_newType.FeedbackName == null)) + { + continue; + } + + _typesAndNames.Add(_newType); + } + + _typesAndNames = _typesAndNames.OrderBy(t => t.FeedbackName).ToList(); + + _typeDisplays.Add(_addNewFeedbackText); + for (int i = 0; i < _typesAndNames.Count; i++) + { + _typeDisplays.Add(_typesAndNames[i].FeedbackName); + _typeNamesDisplays.Add(_typesAndNames[i].FeedbackName.Split('/').Last()); + } + } + + protected virtual void DrawScriptField(VisualElement root) + { + SerializedProperty scriptProperty = serializedObject.FindProperty(_scriptPropertyName); + PropertyField scriptField = new PropertyField(scriptProperty); + scriptField.AddToClassList(_scriptClassName); + scriptField.SetEnabled(false); + root.Add(scriptField); + } + + protected virtual void DrawDurationAndDirection() + { + _settingsInfo = new VisualElement(); + _settingsInfo.AddToClassList(_settingsInfoClassName); + _settingsInfo.viewDataKey = target.name + _settingsInfoSuffix; + DrawDurationAndDirectionContents(); + } + + public virtual void DrawDurationAndDirectionContents() + { + _settingsInfo.Clear(); + VisualElement foldoutLabel = _settingsFoldout.Q(className: _unityFoldoutTextClassName); + foldoutLabel.parent.Add(_settingsInfo); + + // IS PLAYING label + _isPlayingLabel = new Label(_isPlayingText); + _isPlayingLabel.AddToClassList(_settingsIsPlayingClassName); + _isPlayingLabel.style.display = TargetMmfPlayer.IsPlaying ? DisplayStyle.Flex : DisplayStyle.None; + _settingsInfo.Add(_isPlayingLabel); + + // feedback duration label + Label durationLabel = new Label("[" + TargetMmfPlayer.TotalDuration.ToString("F2") + "s]"); + durationLabel.AddToClassList(_settingsDurationClassName); + _settingsInfo.Add(durationLabel); + + // direction icon + VisualElement directionIcon = new VisualElement(); + directionIcon.AddToClassList(_iconClassName); + directionIcon.AddToClassList(_directionIconClassName); + directionIcon.style.backgroundImage = (TargetMmfPlayer.Direction == MMF_Player.Directions.BottomToTop) + ? new StyleBackground(BottomToTopIcon) + : new StyleBackground(TopToBottomIcon); + _settingsInfo.Add(directionIcon); + } + + protected virtual void DrawFeedbacksInactiveWarning(VisualElement root) + { + // displays a label if feedbacks have been turned off via a global variable + if (!MMF_Player.GlobalMMFeedbacksActive) + { + VisualElement feedbacksInactiveWarning = new VisualElement(); + feedbacksInactiveWarning.AddToClassList(_inactiveWarningClassName); + Label feedbacksInactiveLabel = new Label(_inactiveMessage); + feedbacksInactiveWarning.Add(feedbacksInactiveLabel); + root.Add(feedbacksInactiveWarning); + } + } + + protected virtual void DrawSettingsDropDown(VisualElement root) + { + // settings foldout + _settingsFoldout = new Foldout(); + _settingsFoldout.text = _settingsText; + _settingsFoldout.value = _settingsFoldoutIsOpen; + _settingsFoldout.AddToClassList(_foldoutClassName); + _settingsFoldout.AddToClassList(_settingsFoldoutClassName); + _settingsFoldout.viewDataKey = target.name + _settingsFoldoutSuffix; + _settingsFoldout.Q().AddToClassList(_foldoutToggleClassName); + _settingsFoldout.Q().AddToClassList(_settingsFoldoutToggleClassName); + root.Add(_settingsFoldout); + + // icon on the left + VisualElement settingsIcon = new VisualElement(); + settingsIcon.AddToClassList(_iconClassName); + settingsIcon.AddToClassList(_iconSettingsClassName); + settingsIcon.style.backgroundImage = _styleBackgroundGearIcon; + VisualElement foldoutLabel = _settingsFoldout.Q(className: _unityFoldoutTextClassName); + foldoutLabel.style.flexGrow = 1; + foldoutLabel.parent.Insert(0, settingsIcon); + + // initialization foldout + Foldout settingsInitializationFoldout = + CreateSettingsSubFoldout(_initializationSectionText, _settingsFoldout); + settingsInitializationFoldout.value = false; + settingsInitializationFoldout.viewDataKey = target.name + _settingsInitClassNameSuffix; + settingsInitializationFoldout.style.borderLeftColor = + new StyleColor(MMColors.CreateColor(249, 246, 216, 255)); + HandleFoldoutChange(settingsInitializationFoldout, BuildSettingsInitializationFoldout); + + void BuildSettingsInitializationFoldout() + { + MMUIToolkit.CreateAndBindPropertyField(_initializationModePropertyName, serializedObject, + settingsInitializationFoldout); + MMUIToolkit.CreateAndBindPropertyField(_autoPlayOnStartPropertyName, serializedObject, + settingsInitializationFoldout); + MMUIToolkit.CreateAndBindPropertyField(_autoPlayOnEnablePropertyName, serializedObject, + settingsInitializationFoldout); + MMUIToolkit.CreateAndBindPropertyField(_autoInitializationPropertyName, serializedObject, + settingsInitializationFoldout); + } + + // direction foldout + Foldout settingsDirectionFoldout = CreateSettingsSubFoldout(_directionSectionText, _settingsFoldout); + settingsDirectionFoldout.value = false; + settingsDirectionFoldout.viewDataKey = target.name + _settingsDirectionClassNameSuffix; + settingsDirectionFoldout.style.borderLeftColor = new StyleColor(MMColors.CreateColor(249, 244, 205, 255)); + HandleFoldoutChange(settingsDirectionFoldout, BuildSettingsDirectionFoldout); + + void BuildSettingsDirectionFoldout() + { + MMUIToolkit.CreateAndBindPropertyField(_directionPropertyName, serializedObject, + settingsDirectionFoldout); + MMUIToolkit.CreateAndBindPropertyField(_autoChangeDirectionOnEndPropertyName, serializedObject, + settingsDirectionFoldout); + } + + // intensity foldout + Foldout settingsIntensityFoldout = CreateSettingsSubFoldout(_intensitySectionText, _settingsFoldout); + settingsIntensityFoldout.value = false; + settingsIntensityFoldout.viewDataKey = target.name + _settingsIntensityClassNameSuffix; + settingsIntensityFoldout.style.borderLeftColor = new StyleColor(MMColors.CreateColor(250, 238, 179, 255)); + HandleFoldoutChange(settingsIntensityFoldout, BuildIntensitySettingsFoldout); + + void BuildIntensitySettingsFoldout() + { + MMUIToolkit.CreateAndBindPropertyField(_feedbacksIntensityPropertyName, serializedObject, + settingsIntensityFoldout); + } + + // timing foldout + Foldout settingsTimingFoldout = CreateSettingsSubFoldout(_timingSectionText, _settingsFoldout); + settingsTimingFoldout.value = false; + settingsTimingFoldout.viewDataKey = target.name + _settingsTimingClassNameSuffix; + settingsTimingFoldout.style.borderLeftColor = new StyleColor(MMColors.CreateColor(251, 226, 128, 255)); + HandleFoldoutChange(settingsTimingFoldout, BuildSettingsTimingFoldout); + + void BuildSettingsTimingFoldout() + { + MMUIToolkit.CreateAndBindPropertyField(_durationMultiplierPropertyName, serializedObject, + settingsTimingFoldout); + MMUIToolkit.CreateAndBindPropertyField(_randomizeDurationPropertyName, serializedObject, + settingsTimingFoldout); + MMUIToolkit.CreateAndBindPropertyField(_randomDurationMultiplierPropertyName, serializedObject, + settingsTimingFoldout); + MMUIToolkit.CreateAndBindPropertyField(_displayFullDurationDetailsPropertyName, serializedObject, + settingsTimingFoldout); + MMUIToolkit.CreateAndBindPropertyField(_cooldownDurationPropertyName, serializedObject, + settingsTimingFoldout); + MMUIToolkit.CreateAndBindPropertyField(_initialDelayPropertyName, serializedObject, + settingsTimingFoldout); + MMUIToolkit.CreateAndBindPropertyField(_chanceToPlayPropertyName, serializedObject, + settingsTimingFoldout); + MMUIToolkit.CreateAndBindPropertyField(_playerTimescaleModePropertyName, serializedObject, + settingsTimingFoldout); + MMUIToolkit.CreateAndBindPropertyField(_forceTimescaleModePropertyName, serializedObject, + settingsTimingFoldout); + MMUIToolkit.CreateAndBindPropertyField(_forcedTimescaleModePropertyName, serializedObject, + settingsTimingFoldout); + MMUIToolkit.CreateAndBindPropertyField(_timescaleMultiplierPropertyName, serializedObject, + settingsTimingFoldout); + } + + // range foldout + Foldout settingsRangeFoldout = CreateSettingsSubFoldout(_rangeSectionText, _settingsFoldout); + settingsRangeFoldout.value = false; + settingsRangeFoldout.viewDataKey = target.name + _settingsRangeClassNameSuffix; + settingsRangeFoldout.style.borderLeftColor = new StyleColor(MMColors.CreateColor(253, 216, 88, 255)); + PropertyField onlyPlayIfWithinRangeField = + new PropertyField(serializedObject.FindProperty(_onlyPlayIfWithinRangePropertyName)); + settingsRangeFoldout.Add(onlyPlayIfWithinRangeField); + + // range container + VisualElement rangeContainer = new VisualElement(); + rangeContainer.Add(new PropertyField(serializedObject.FindProperty(_rangeCenterPropertyName))); + rangeContainer.Add(new PropertyField(serializedObject.FindProperty(_rangeDistancePropertyName))); + PropertyField useRangeFalloffField = + new PropertyField(serializedObject.FindProperty(_useRangeFalloffPropertyName)); + rangeContainer.Add(useRangeFalloffField); + settingsRangeFoldout.Add(rangeContainer); + + // range falloff container + VisualElement rangeFalloffContainer = new VisualElement(); + rangeFalloffContainer.Add(new PropertyField(serializedObject.FindProperty(_rangeFalloffPropertyName))); + rangeFalloffContainer.Add(new PropertyField(serializedObject.FindProperty(_remapRangeFalloffPropertyName))); + rangeFalloffContainer.Add(new PropertyField(serializedObject.FindProperty(_ignoreRangeEventsPropertyName))); + rangeContainer.Add(rangeFalloffContainer); + onlyPlayIfWithinRangeField.RegisterCallback>(evt => + { + rangeContainer.style.display = evt.newValue ? DisplayStyle.Flex : DisplayStyle.None; + }); + useRangeFalloffField.RegisterCallback>(evt => + { + rangeFalloffContainer.style.display = evt.newValue ? DisplayStyle.Flex : DisplayStyle.None; + }); + + // play settings foldout + Foldout settingsPlaySettingsFoldout = CreateSettingsSubFoldout(_playSettingsSectionText, _settingsFoldout); + settingsPlaySettingsFoldout.value = false; + settingsPlaySettingsFoldout.viewDataKey = target.name + _settingsPlaySettingsClassNameSuffix; + settingsPlaySettingsFoldout.style.borderLeftColor = new StyleColor(MMColors.CreateColor(254, 209, 57, 255)); + HandleFoldoutChange(settingsPlaySettingsFoldout, BuildPlaySettingsFoldout); + + void BuildPlaySettingsFoldout() + { + MMUIToolkit.CreateAndBindPropertyField(_canPlayPropertyName, serializedObject, settingsPlaySettingsFoldout); + MMUIToolkit.CreateAndBindPropertyField(_canPlayWhileAlreadyPlayingPropertyName, serializedObject, settingsPlaySettingsFoldout); + MMUIToolkit.CreateAndBindPropertyField(_performanceModePropertyName, serializedObject, settingsPlaySettingsFoldout); + MMUIToolkit.CreateAndBindPropertyField(_stopFeedbacksOnDisablePropertyName, serializedObject, settingsPlaySettingsFoldout); + MMUIToolkit.CreateAndBindPropertyField(_restoreInitialValuesOnDisablePropertyName, serializedObject, settingsPlaySettingsFoldout); + + MMUIToolkit.CreateAndBindPropertyField(_channelModePropertyName, serializedObject, settingsPlaySettingsFoldout); + MMUIToolkit.CreateAndBindPropertyField(_channelPropertyName, serializedObject, settingsPlaySettingsFoldout); + MMUIToolkit.CreateAndBindPropertyField(_mmChannelDefinitionPropertyName, serializedObject, settingsPlaySettingsFoldout); + + if (Application.isPlaying) + { + MMUIToolkit.CreateAndBindPropertyField(_playCountPropertyName, serializedObject, + settingsPlaySettingsFoldout); + } + } + + // events foldout + PropertyField eventsField = new PropertyField(serializedObject.FindProperty(_eventsSectionText)); + _settingsFoldout.Add(eventsField); + eventsField.RegisterCallback(evt => + { + Foldout eventsFieldFoldout = eventsField.Q(); + if (eventsFieldFoldout != null) + { + eventsFieldFoldout.AddToClassList(_foldoutClassName); + eventsFieldFoldout.AddToClassList(_settingsFoldoutSubClassName); + eventsFieldFoldout.style.borderLeftColor = new StyleColor(MMColors.CreateColor(255, 197, 8, 255)); + } + + eventsField.Q()?.AddToClassList(_foldoutToggleClassName); + eventsField.Q()?.AddToClassList(_settingsFoldoutSubToggleClassName); + }); + + // automatic setup button + _automaticShakerSetupButtonContainer = new VisualElement(); + _settingsFoldout.Add(_automaticShakerSetupButtonContainer); + DrawAutomaticShakerSetupButton(); + + // when a foldout gets opened/closed, we build the foldout contents if needed + void HandleFoldoutChange(Foldout foldout, Action buildMethod) + { + foldout.schedule.Execute(() => + { + if (foldout.value) + { + buildMethod(); + } + }).ExecuteLater(1); + + EventCallback> callback = null; + callback = evt => + { + if (evt.newValue) // foldout opened + { + if (foldout.childCount == 0) + { + buildMethod(); + foldout.UnregisterValueChangedCallback(callback); + } + } + }; + foldout.RegisterValueChangedCallback(callback); + } + + // creates a new settings sub foldout + Foldout CreateSettingsSubFoldout(string name, VisualElement parent) + { + Foldout newFoldout = new Foldout(); + newFoldout.text = name; + newFoldout.AddToClassList(_foldoutClassName); + newFoldout.AddToClassList(_settingsFoldoutSubClassName); + newFoldout.viewDataKey = target.name + _settingsFoldoutClassNameSuffix + name; + parent.Add(newFoldout); + newFoldout.Q().AddToClassList(_foldoutToggleClassName); + newFoldout.Q().AddToClassList(_settingsFoldoutSubToggleClassName); + return newFoldout; + } + } + + protected virtual void DrawAutomaticShakerSetupButton() + { + _automaticShakerSetupButtonContainer.Clear(); + if (!Application.isPlaying && TargetMmfPlayer.HasAutomaticShakerSetup) + { + Button automaticShakerSetupButton = new Button(() => TargetMmfPlayer.AutomaticShakerSetup()); + automaticShakerSetupButton.text = _automaticShakerSetupText; + automaticShakerSetupButton.AddToClassList(_automaticShakerSetupButtonClassName); + _automaticShakerSetupButtonContainer.Add(automaticShakerSetupButton); + } + } + + protected virtual void DrawFeedbacksList(VisualElement root) + { + // draw feedbacks list container + VisualElement feedbacksListContainer = new VisualElement(); + feedbacksListContainer.AddToClassList(_feedbacksListClassName); + feedbacksListContainer.viewDataKey = target.name + _feedbacksListContainerClassNameSuffix; + root.Add(feedbacksListContainer); + + // draw top label + _feedbacksListLabel = new Label(); + _feedbacksListLabel.AddToClassList(_feedbacksListTitleClassName); + UpdateFeedbacksListLabel(); + feedbacksListContainer.Add(_feedbacksListLabel); + feedbacksListContainer.style.flexDirection = FlexDirection.Column; + + // empty state + _emptyFeedbackListContainer = new VisualElement(); + DrawEmptyListState(); + feedbacksListContainer.Add(_emptyFeedbackListContainer); + + // draw feedback list + AssembleFeedbacksList(); + feedbacksListContainer.Add(_feedbacksListView); + } + + protected virtual void UpdateFeedbacksListLabel() + { + int count = 0; + if ((TargetMmfPlayer != null) && (TargetMmfPlayer.FeedbacksList != null)) + { + count = TargetMmfPlayer.FeedbacksList.Count; + } + + _feedbacksListLabel.text = count + " " + _feedbacksSectionTitle; + } + + protected virtual void DrawEmptyListState() + { + if (_emptyFeedbackListContainer == null) + { + return; + } + _emptyFeedbackListContainer.Clear(); + if ((TargetMmfPlayer.FeedbacksList == null) || (TargetMmfPlayer.FeedbacksList.Count == 0)) + { + VisualElement emptyListImage = new VisualElement(); + emptyListImage.AddToClassList(_emptyListImageClassName); + emptyListImage.style.backgroundImage = new StyleBackground(EmptyListImage); + _emptyFeedbackListContainer.Add(emptyListImage); + _emptyFeedbackListContainer.AddToClassList(_feedbacksListEmptyClassName); + _emptyFeedbackListContainer.Add(new Label(_emptyFeedbackListMessage)); + _emptyFeedbackListContainer.style.display = DisplayStyle.Flex; + } + else + { + _emptyFeedbackListContainer.style.display = DisplayStyle.None; + } + } + + protected virtual void AssembleFeedbacksList() + { + _feedbacksListView = new ListView(); + BindListViewToData(); + _feedbacksListView.viewDataKey = target.name + _feedbacksListViewClassNameSuffix; + _feedbacksListView.name = target.name + _feedbacksListViewClassNameSuffix; + _feedbacksListView.fixedItemHeight = 25; + _feedbacksListView.reorderable = true; + _feedbacksListView.reorderMode = ListViewReorderMode.Animated; + _feedbacksListView.selectionType = SelectionType.Single; + _feedbacksListView.virtualizationMethod = CollectionVirtualizationMethod.DynamicHeight; + _feedbacksListView.itemIndexChanged += (oldIndex, newIndex) => OnFeedbackListReorder(); + _feedbacksListView.RegisterCallback(evt => { evt.StopPropagation(); }); + + ClearDictionaries(); + + _feedbacksListView.makeItem = () => { return new Foldout(); }; + + _feedbacksListView.bindItem = (element, index) => + { + Type feedbackType = TargetMmfPlayer.FeedbacksList[index].GetType(); + + // to prevent double bindings during list reorders, we return if we've already bound this feedback + if (FeedbackHeaderContainersDictionary.ContainsKey(TargetMmfPlayer.FeedbacksList[index])) + { + return; + } + + // feedback foldout + Foldout foldout = (element as Foldout); + foldout.AddToClassList(_feedbackFoldoutClassName); + foldout.text = DetermineFeedbackLabel(index, feedbackType); + foldout.Clear(); + foldout.value = TargetMmfPlayer.FeedbacksList[index].IsExpanded; + foldout.viewDataKey = TargetMmfPlayer.name + "-" + TargetMmfPlayer.FeedbacksList[index].UniqueID; + + // help box + if (MMMenuHelp.HelpEnabled) + { + string helpText = + FeedbackHelpAttribute.GetFeedbackHelpText(feedbackType); + if (!string.IsNullOrEmpty(helpText)) + { + VisualElement helpBox = new VisualElement(); + helpBox.AddToClassList(_feedbackHelpBoxClassName); + Label helpLabel = new Label(helpText); + helpLabel.AddToClassList(_feedbackHelpLabelClassName); + helpBox.Add(helpLabel); + helpBox.style.borderLeftColor = TargetMmfPlayer.FeedbacksList[index].FeedbackColor; + foldout.Add(helpBox); + } + } + + // script edit button + PropertyField scriptEditContainer = new PropertyField(); + scriptEditContainer.AddToClassList(_feedbackEditScriptButtonContainerClassName); + Label scriptEditLabel = new Label(_scriptEditLabelText); + scriptEditLabel.AddToClassList(_feedbackEditScriptButtonLabelClassName); + scriptEditContainer.Add(scriptEditLabel); + VisualElement scriptEditButtonBox = new VisualElement(); + scriptEditButtonBox.AddToClassList(_feedbackEditScriptButtonBoxClassName); + scriptEditContainer.Add(scriptEditButtonBox); + VisualElement scriptIcon = new VisualElement(); + scriptIcon.AddToClassList(_iconClassName); + scriptIcon.style.backgroundImage = new StyleBackground(ScriptIcon); + scriptEditButtonBox.Add(scriptIcon); + Button scriptEditButton = new Button(() => EditScript(feedbackType)); + scriptEditButton.text = feedbackType.Name; + scriptEditButtonBox.Add(scriptEditButton); + VisualElement scriptEditSelectorIcon = new VisualElement(); + scriptEditSelectorIcon.AddToClassList(_objectSelectorClassName); + scriptEditButtonBox.Add(scriptEditSelectorIcon); + foldout.Add(scriptEditContainer); + + // progress line + VisualElement feedbackProgressBarContainer = new VisualElement(); + feedbackProgressBarContainer.AddToClassList(_feedbackProgressLineContainerClassName); + foldout.parent.Add(feedbackProgressBarContainer); + VisualElement feedbackProgressBar = new VisualElement(); + feedbackProgressBar.AddToClassList(_feedbackProgressLineClassName); + feedbackProgressBar.style.backgroundColor = + TargetMmfPlayer.FeedbacksList[index].FeedbackColor.MMLighten(0.3f); + feedbackProgressBarContainer.Add(feedbackProgressBar); + + // setup required + VisualElement setupRequiredWarningBox = new VisualElement(); + setupRequiredWarningBox.AddToClassList(_feedbackSetupRequiredBoxClassName); + setupRequiredWarningBox.focusable = false; + Label setupRequiredLabel = new Label(TargetMmfPlayer.FeedbacksList[index].RequiresSetupText); + setupRequiredLabel.AddToClassList(_feedbackSetupRequiredLabelClassName); + setupRequiredWarningBox.Add(setupRequiredLabel); + foldout.Add(setupRequiredWarningBox); + + // feedback inspector + SerializedProperty feedbackProperty = _mmfeedbacksList.GetArrayElementAtIndex(index); + MMFInspectorDrawData drawData = new MMFInspectorDrawData(); + drawData.Index = index; + drawData.FeedbackFoldout = foldout; + drawData.CurrentProperty = feedbackProperty; + drawData.Feedback = TargetMmfPlayer.FeedbacksList[index]; + drawData.OnAnyValueChanged = OnAnyValueChanged; + drawData.PlayerEditor = this; + drawData.OnFeedbackFieldValueChanged = OnFeedbackFieldValueChanged; + drawData.FeedbackGroupsDictionary = FeedbackGroupsDictionary; + drawData.SetupRequiredIcon = SetupRequiredIcon; + VisualElement feedbackInspectorContainer = new VisualElement(); + feedbackInspectorContainer.AddToClassList(_feedbackInspectorContainerClassName); + + // we wait for one frame before checking if the foldout is open, because Unity can't let you know if a foldout is open instantly after drawing it for the first time, but it can after one frame + foldout.schedule.Execute(() => DrawInspectorIfFoldoutIsOpen()).ExecuteLater(1); + // believe it or not we do it again after 100ms, because Unity can't let you know if a foldout is open or not instantly after a reorder in a list view. + // you'd think you could get a callback when the object is ready, think again + foldout.schedule.Execute(() => DrawInspectorIfFoldoutIsOpen()).ExecuteLater(100); + // we listen for foldout events, if the foldout opens, we draw its contents if not done already + foldout.RegisterValueChangedCallback(evt => DrawInspectorIfFoldoutIsOpen()); + + void DrawInspectorIfFoldoutIsOpen() + { + if (foldout.value) + { + if (feedbackInspectorContainer.childCount == 0) + { + feedbackInspectorContainer.Add(MMF_FeedbackPropertyDrawerUITK.DrawInspector(drawData)); + } + } + } + + foldout.Add(feedbackInspectorContainer); + + // bind label and infinite loop property to header refresh + PropertyField labelField = feedbackInspectorContainer.Q(_labelPropertyName); + labelField?.RegisterCallback>(evt => + { + foldout.text = DetermineFeedbackLabel(index, feedbackType); + }); + + PropertyField infiniteLoopField = + feedbackInspectorContainer.Q(_infiniteLoopPropertyName); + infiniteLoopField?.RegisterCallback>(evt => + { + foldout.text = DetermineFeedbackLabel(index, feedbackType); + }); + + // setting the left bar border color + VisualElement feedbackReorderableItem = foldout.parent.parent; + feedbackReorderableItem.AddToClassList(_feedbackReorderableItemClassName); + + // feedback left border color + VisualElement feedbackLeftBorder = new VisualElement(); + feedbackLeftBorder.AddToClassList(_feedbackLeftBorderClassName); + feedbackReorderableItem.Insert(0, feedbackLeftBorder); + feedbackLeftBorder.style.backgroundColor = TargetMmfPlayer.FeedbacksList[index].FeedbackColor; + + // handling background color + if (TargetMmfPlayer.FeedbacksList[index].DisplayFullHeaderColor) + { + VisualElement feedbackBackgroundColor = new VisualElement(); + feedbackBackgroundColor.AddToClassList(_feedbackBackgroundColorClassName); + feedbackBackgroundColor.style.backgroundColor = TargetMmfPlayer.FeedbacksList[index].DisplayColor; + feedbackReorderableItem.Insert(0, feedbackBackgroundColor); + } + + // toggle label, add class + Toggle toggle = foldout.Q(); + Label toggleLabel = foldout.Q