From 6ca0c7bd11e577c99278c8698d503345e2c78f35 Mon Sep 17 00:00:00 2001 From: Tohru Date: Wed, 7 Aug 2024 20:24:05 +0200 Subject: [PATCH 01/11] Initial commit Initial commit --- Animations.meta | 8 + Animations/MirrorClone Off.anim | 116 +++++++ Animations/MirrorClone Off.anim.meta | 8 + Animations/MirrorClone On.anim | 116 +++++++ Animations/MirrorClone On.anim.meta | 8 + Animations/MirrorCloneToggle Empty.anim | 53 ++++ Animations/MirrorCloneToggle Empty.anim.meta | 8 + MirrorCloneToggle Parameters.asset | 20 ++ MirrorCloneToggle Parameters.asset.meta | 8 + MirrorCloneToggle.prefab | 107 +++++++ MirrorCloneToggle.prefab.meta | 7 + MirrorCloneToggle_FX.controller | 289 ++++++++++++++++++ MirrorCloneToggle_FX.controller.meta | 8 + README.md | 30 +- Texture.meta | 8 + .../MirrorCloneToggleTexture.renderTexture | 37 +++ ...irrorCloneToggleTexture.renderTexture.meta | 8 + 17 files changed, 838 insertions(+), 1 deletion(-) create mode 100644 Animations.meta create mode 100644 Animations/MirrorClone Off.anim create mode 100644 Animations/MirrorClone Off.anim.meta create mode 100644 Animations/MirrorClone On.anim create mode 100644 Animations/MirrorClone On.anim.meta create mode 100644 Animations/MirrorCloneToggle Empty.anim create mode 100644 Animations/MirrorCloneToggle Empty.anim.meta create mode 100644 MirrorCloneToggle Parameters.asset create mode 100644 MirrorCloneToggle Parameters.asset.meta create mode 100644 MirrorCloneToggle.prefab create mode 100644 MirrorCloneToggle.prefab.meta create mode 100644 MirrorCloneToggle_FX.controller create mode 100644 MirrorCloneToggle_FX.controller.meta create mode 100644 Texture.meta create mode 100644 Texture/MirrorCloneToggleTexture.renderTexture create mode 100644 Texture/MirrorCloneToggleTexture.renderTexture.meta diff --git a/Animations.meta b/Animations.meta new file mode 100644 index 0000000..e8fc227 --- /dev/null +++ b/Animations.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 0a938435b09986f458ea208a4109c90d +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Animations/MirrorClone Off.anim b/Animations/MirrorClone Off.anim new file mode 100644 index 0000000..cbf65f2 --- /dev/null +++ b/Animations/MirrorClone Off.anim @@ -0,0 +1,116 @@ +%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: MirrorClone Off + serializedVersion: 6 + m_Legacy: 0 + m_Compressed: 0 + m_UseHighQualityCurve: 1 + m_RotationCurves: [] + m_CompressedRotationCurves: [] + m_EulerCurves: [] + m_PositionCurves: [] + m_ScaleCurves: [] + m_FloatCurves: + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: Infinity + outSlope: Infinity + tangentMode: 103 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 0.016666668 + 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_Enabled + path: MirrorCloneToggle/MirrorCloneCamera + classID: 20 + script: {fileID: 0} + m_PPtrCurves: [] + m_SampleRate: 60 + m_WrapMode: 0 + m_Bounds: + m_Center: {x: 0, y: 0, z: 0} + m_Extent: {x: 0, y: 0, z: 0} + m_ClipBindingConstant: + genericBindings: + - serializedVersion: 2 + path: 1229527887 + attribute: 3305885265 + script: {fileID: 0} + typeID: 20 + customType: 0 + isPPtrCurve: 0 + pptrCurveMapping: [] + m_AnimationClipSettings: + serializedVersion: 2 + m_AdditiveReferencePoseClip: {fileID: 0} + m_AdditiveReferencePoseTime: 0 + m_StartTime: 0 + m_StopTime: 0.016666668 + m_OrientationOffsetY: 0 + m_Level: 0 + m_CycleOffset: 0 + m_HasAdditiveReferencePose: 0 + m_LoopTime: 0 + m_LoopBlend: 0 + m_LoopBlendOrientation: 0 + m_LoopBlendPositionY: 0 + m_LoopBlendPositionXZ: 0 + m_KeepOriginalOrientation: 0 + m_KeepOriginalPositionY: 1 + m_KeepOriginalPositionXZ: 0 + m_HeightFromFeet: 0 + m_Mirror: 0 + m_EditorCurves: + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: Infinity + outSlope: Infinity + tangentMode: 103 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 0.016666668 + 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_Enabled + path: MirrorCloneToggle/MirrorCloneCamera + classID: 20 + script: {fileID: 0} + m_EulerEditorCurves: [] + m_HasGenericRootTransform: 0 + m_HasMotionFloatCurves: 0 + m_Events: [] diff --git a/Animations/MirrorClone Off.anim.meta b/Animations/MirrorClone Off.anim.meta new file mode 100644 index 0000000..f9b6a9b --- /dev/null +++ b/Animations/MirrorClone Off.anim.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: d8c0e2a9235deba4d91a56f82c7a7791 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 7400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Animations/MirrorClone On.anim b/Animations/MirrorClone On.anim new file mode 100644 index 0000000..cc60b2a --- /dev/null +++ b/Animations/MirrorClone On.anim @@ -0,0 +1,116 @@ +%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: MirrorClone On + serializedVersion: 6 + m_Legacy: 0 + m_Compressed: 0 + m_UseHighQualityCurve: 1 + m_RotationCurves: [] + m_CompressedRotationCurves: [] + m_EulerCurves: [] + m_PositionCurves: [] + m_ScaleCurves: [] + m_FloatCurves: + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: Infinity + outSlope: Infinity + tangentMode: 103 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 0.016666668 + value: 1 + inSlope: Infinity + outSlope: Infinity + tangentMode: 103 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_Enabled + path: MirrorCloneToggle/MirrorCloneCamera + classID: 20 + script: {fileID: 0} + m_PPtrCurves: [] + m_SampleRate: 60 + m_WrapMode: 0 + m_Bounds: + m_Center: {x: 0, y: 0, z: 0} + m_Extent: {x: 0, y: 0, z: 0} + m_ClipBindingConstant: + genericBindings: + - serializedVersion: 2 + path: 1229527887 + attribute: 3305885265 + script: {fileID: 0} + typeID: 20 + customType: 0 + isPPtrCurve: 0 + pptrCurveMapping: [] + m_AnimationClipSettings: + serializedVersion: 2 + m_AdditiveReferencePoseClip: {fileID: 0} + m_AdditiveReferencePoseTime: 0 + m_StartTime: 0 + m_StopTime: 0.016666668 + m_OrientationOffsetY: 0 + m_Level: 0 + m_CycleOffset: 0 + m_HasAdditiveReferencePose: 0 + m_LoopTime: 0 + m_LoopBlend: 0 + m_LoopBlendOrientation: 0 + m_LoopBlendPositionY: 0 + m_LoopBlendPositionXZ: 0 + m_KeepOriginalOrientation: 0 + m_KeepOriginalPositionY: 1 + m_KeepOriginalPositionXZ: 0 + m_HeightFromFeet: 0 + m_Mirror: 0 + m_EditorCurves: + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: Infinity + outSlope: Infinity + tangentMode: 103 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 0.016666668 + value: 1 + inSlope: Infinity + outSlope: Infinity + tangentMode: 103 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_Enabled + path: MirrorCloneToggle/MirrorCloneCamera + classID: 20 + script: {fileID: 0} + m_EulerEditorCurves: [] + m_HasGenericRootTransform: 0 + m_HasMotionFloatCurves: 0 + m_Events: [] diff --git a/Animations/MirrorClone On.anim.meta b/Animations/MirrorClone On.anim.meta new file mode 100644 index 0000000..a50a694 --- /dev/null +++ b/Animations/MirrorClone On.anim.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 51595a4a862e73147bb5c83b2b2940ff +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 7400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Animations/MirrorCloneToggle Empty.anim b/Animations/MirrorCloneToggle Empty.anim new file mode 100644 index 0000000..d151ede --- /dev/null +++ b/Animations/MirrorCloneToggle Empty.anim @@ -0,0 +1,53 @@ +%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: MirrorCloneToggle Empty + serializedVersion: 6 + m_Legacy: 0 + m_Compressed: 0 + m_UseHighQualityCurve: 1 + m_RotationCurves: [] + m_CompressedRotationCurves: [] + m_EulerCurves: [] + m_PositionCurves: [] + m_ScaleCurves: [] + m_FloatCurves: [] + m_PPtrCurves: [] + m_SampleRate: 60 + m_WrapMode: 0 + m_Bounds: + m_Center: {x: 0, y: 0, z: 0} + m_Extent: {x: 0, y: 0, z: 0} + m_ClipBindingConstant: + genericBindings: [] + pptrCurveMapping: [] + m_AnimationClipSettings: + serializedVersion: 2 + m_AdditiveReferencePoseClip: {fileID: 0} + m_AdditiveReferencePoseTime: 0 + m_StartTime: 0 + m_StopTime: 1 + m_OrientationOffsetY: 0 + m_Level: 0 + m_CycleOffset: 0 + m_HasAdditiveReferencePose: 0 + m_LoopTime: 0 + m_LoopBlend: 0 + m_LoopBlendOrientation: 0 + m_LoopBlendPositionY: 0 + m_LoopBlendPositionXZ: 0 + m_KeepOriginalOrientation: 0 + m_KeepOriginalPositionY: 1 + m_KeepOriginalPositionXZ: 0 + m_HeightFromFeet: 0 + m_Mirror: 0 + m_EditorCurves: [] + m_EulerEditorCurves: [] + m_HasGenericRootTransform: 0 + m_HasMotionFloatCurves: 0 + m_Events: [] diff --git a/Animations/MirrorCloneToggle Empty.anim.meta b/Animations/MirrorCloneToggle Empty.anim.meta new file mode 100644 index 0000000..5307348 --- /dev/null +++ b/Animations/MirrorCloneToggle Empty.anim.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: b5063aaf0ac6bb449b86dc17f00e4c60 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 7400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/MirrorCloneToggle Parameters.asset b/MirrorCloneToggle Parameters.asset new file mode 100644 index 0000000..b3a62ad --- /dev/null +++ b/MirrorCloneToggle Parameters.asset @@ -0,0 +1,20 @@ +%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: -1506855854, guid: 67cc4cb7839cd3741b63733d5adf0442, type: 3} + m_Name: MirrorCloneToggle Parameters + m_EditorClassIdentifier: + parameters: + - name: MirrorCloneToggle/Enabled + valueType: 2 + saved: 0 + defaultValue: 0 + networkSynced: 0 diff --git a/MirrorCloneToggle Parameters.asset.meta b/MirrorCloneToggle Parameters.asset.meta new file mode 100644 index 0000000..33538a7 --- /dev/null +++ b/MirrorCloneToggle Parameters.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: f5d005f63629201499f645ba521b48f8 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/MirrorCloneToggle.prefab b/MirrorCloneToggle.prefab new file mode 100644 index 0000000..8706059 --- /dev/null +++ b/MirrorCloneToggle.prefab @@ -0,0 +1,107 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &3882979636311929898 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3882979636311929899} + - component: {fileID: 3882979636311929908} + m_Layer: 0 + m_Name: MirrorCloneCamera + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &3882979636311929899 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3882979636311929898} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 3882979638049024001} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!20 &3882979636311929908 +Camera: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3882979636311929898} + m_Enabled: 0 + serializedVersion: 2 + m_ClearFlags: 1 + m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0} + m_projectionMatrixMode: 1 + m_GateFitMode: 2 + m_FOVAxisMode: 0 + m_SensorSize: {x: 36, y: 24} + m_LensShift: {x: 0, y: 0} + m_FocalLength: 50 + m_NormalizedViewPortRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 1 + height: 1 + near clip plane: 0.3 + far clip plane: 0.31 + field of view: 1 + orthographic: 0 + orthographic size: 5 + m_Depth: 0 + m_CullingMask: + serializedVersion: 2 + m_Bits: 262144 + m_RenderingPath: -1 + m_TargetTexture: {fileID: 8400000, guid: 13f9f29dfe756564d9d99af99d243f95, type: 2} + m_TargetDisplay: 0 + m_TargetEye: 1 + m_HDR: 0 + m_AllowMSAA: 0 + m_AllowDynamicResolution: 0 + m_ForceIntoRT: 0 + m_OcclusionCulling: 0 + m_StereoConvergence: 10 + m_StereoSeparation: 0.022 +--- !u!1 &3882979638049024000 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3882979638049024001} + m_Layer: 0 + m_Name: MirrorCloneToggle + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &3882979638049024001 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3882979638049024000} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 3882979636311929899} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} diff --git a/MirrorCloneToggle.prefab.meta b/MirrorCloneToggle.prefab.meta new file mode 100644 index 0000000..b177b6d --- /dev/null +++ b/MirrorCloneToggle.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 77c5dc2670a82c44fa69d87bc6e09183 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/MirrorCloneToggle_FX.controller b/MirrorCloneToggle_FX.controller new file mode 100644 index 0000000..57447b0 --- /dev/null +++ b/MirrorCloneToggle_FX.controller @@ -0,0 +1,289 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1101 &-8173707088435146515 +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: MirrorCloneToggle/Enabled + m_EventTreshold: 0 + - m_ConditionMode: 1 + m_ConditionEvent: IsLocal + m_EventTreshold: 0 + m_DstStateMachine: {fileID: 0} + m_DstState: {fileID: 5919636765436306317} + m_Solo: 0 + m_Mute: 0 + m_IsExit: 0 + serializedVersion: 3 + m_TransitionDuration: 0 + m_TransitionOffset: 0 + m_ExitTime: 0 + m_HasExitTime: 0 + m_HasFixedDuration: 1 + m_InterruptionSource: 0 + m_OrderedInterruption: 1 + m_CanTransitionToSelf: 1 +--- !u!1101 &-5764120379198688606 +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: MirrorCloneToggle/Enabled + m_EventTreshold: 0 + - m_ConditionMode: 1 + m_ConditionEvent: IsLocal + m_EventTreshold: 0 + m_DstStateMachine: {fileID: 0} + m_DstState: {fileID: 5919636765436306317} + m_Solo: 0 + m_Mute: 0 + m_IsExit: 0 + serializedVersion: 3 + m_TransitionDuration: 0 + m_TransitionOffset: 0 + m_ExitTime: 0 + m_HasExitTime: 0 + m_HasFixedDuration: 1 + m_InterruptionSource: 0 + m_OrderedInterruption: 1 + m_CanTransitionToSelf: 1 +--- !u!1102 &-5426313753696026812 +AnimatorState: + serializedVersion: 6 + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Initialize + m_Speed: 1 + m_CycleOffset: 0 + m_Transitions: + - {fileID: 6510848551071469322} + - {fileID: -5764120379198688606} + m_StateMachineBehaviours: [] + m_Position: {x: 50, y: 50, z: 0} + m_IKOnFeet: 0 + m_WriteDefaultValues: 0 + m_Mirror: 0 + m_SpeedParameterActive: 0 + m_MirrorParameterActive: 0 + m_CycleOffsetParameterActive: 0 + m_TimeParameterActive: 0 + m_Motion: {fileID: 7400000, guid: b5063aaf0ac6bb449b86dc17f00e4c60, type: 2} + m_Tag: + m_SpeedParameter: + m_MirrorParameter: + m_CycleOffsetParameter: + m_TimeParameter: +--- !u!1101 &-2656895139126610080 +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: MirrorCloneToggle/Enabled + m_EventTreshold: 0 + - m_ConditionMode: 1 + m_ConditionEvent: IsLocal + m_EventTreshold: 0 + m_DstStateMachine: {fileID: 0} + m_DstState: {fileID: 5125844152620525728} + m_Solo: 0 + m_Mute: 0 + m_IsExit: 0 + serializedVersion: 3 + m_TransitionDuration: 0 + m_TransitionOffset: 0 + m_ExitTime: 0 + m_HasExitTime: 0 + m_HasFixedDuration: 1 + m_InterruptionSource: 0 + m_OrderedInterruption: 1 + m_CanTransitionToSelf: 1 +--- !u!91 &9100000 +AnimatorController: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: MirrorCloneToggle_FX + serializedVersion: 5 + m_AnimatorParameters: + - m_Name: MirrorCloneToggle/Enabled + m_Type: 4 + m_DefaultFloat: 0 + m_DefaultInt: 0 + m_DefaultBool: 0 + m_Controller: {fileID: 9100000} + - m_Name: IsLocal + 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: 6842736305399051491} + 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} + - serializedVersion: 5 + m_Name: MirrorCloneToggle + m_StateMachine: {fileID: 1547352308192947263} + m_Mask: {fileID: 0} + m_Motions: [] + m_Behaviours: [] + m_BlendingMode: 0 + m_SyncedLayerIndex: -1 + m_DefaultWeight: 1 + m_IKPass: 0 + m_SyncedLayerAffectsTiming: 0 + m_Controller: {fileID: 9100000} +--- !u!1107 &1547352308192947263 +AnimatorStateMachine: + serializedVersion: 6 + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: MirrorCloneToggle + m_ChildStates: + - serializedVersion: 1 + m_State: {fileID: -5426313753696026812} + m_Position: {x: 30, y: 170, z: 0} + - serializedVersion: 1 + m_State: {fileID: 5125844152620525728} + m_Position: {x: -90, y: 230, z: 0} + - serializedVersion: 1 + m_State: {fileID: 5919636765436306317} + m_Position: {x: 140, y: 230, 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: 50, y: 70, z: 0} + m_ParentStateMachinePosition: {x: 800, y: 20, z: 0} + m_DefaultState: {fileID: -5426313753696026812} +--- !u!1102 &5125844152620525728 +AnimatorState: + serializedVersion: 6 + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: MirrorClone On + m_Speed: 1 + m_CycleOffset: 0 + m_Transitions: + - {fileID: -8173707088435146515} + m_StateMachineBehaviours: [] + m_Position: {x: 50, y: 50, z: 0} + m_IKOnFeet: 0 + m_WriteDefaultValues: 0 + m_Mirror: 0 + m_SpeedParameterActive: 0 + m_MirrorParameterActive: 0 + m_CycleOffsetParameterActive: 0 + m_TimeParameterActive: 0 + m_Motion: {fileID: 7400000, guid: 51595a4a862e73147bb5c83b2b2940ff, type: 2} + m_Tag: + m_SpeedParameter: + m_MirrorParameter: + m_CycleOffsetParameter: + m_TimeParameter: +--- !u!1102 &5919636765436306317 +AnimatorState: + serializedVersion: 6 + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: MirrorClone Off + m_Speed: 1 + m_CycleOffset: 0 + m_Transitions: + - {fileID: -2656895139126610080} + m_StateMachineBehaviours: [] + m_Position: {x: 50, y: 50, z: 0} + m_IKOnFeet: 0 + m_WriteDefaultValues: 0 + m_Mirror: 0 + m_SpeedParameterActive: 0 + m_MirrorParameterActive: 0 + m_CycleOffsetParameterActive: 0 + m_TimeParameterActive: 0 + m_Motion: {fileID: 7400000, guid: d8c0e2a9235deba4d91a56f82c7a7791, type: 2} + m_Tag: + m_SpeedParameter: + m_MirrorParameter: + m_CycleOffsetParameter: + m_TimeParameter: +--- !u!1101 &6510848551071469322 +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: MirrorCloneToggle/Enabled + m_EventTreshold: 0 + - m_ConditionMode: 1 + m_ConditionEvent: IsLocal + m_EventTreshold: 0 + m_DstStateMachine: {fileID: 0} + m_DstState: {fileID: 5125844152620525728} + m_Solo: 0 + m_Mute: 0 + m_IsExit: 0 + serializedVersion: 3 + m_TransitionDuration: 0 + m_TransitionOffset: 0 + m_ExitTime: 0 + m_HasExitTime: 0 + m_HasFixedDuration: 1 + m_InterruptionSource: 0 + m_OrderedInterruption: 1 + m_CanTransitionToSelf: 1 +--- !u!1107 &6842736305399051491 +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: [] + 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: 50, y: 70, z: 0} + m_ParentStateMachinePosition: {x: 800, y: 20, z: 0} + m_DefaultState: {fileID: 0} diff --git a/MirrorCloneToggle_FX.controller.meta b/MirrorCloneToggle_FX.controller.meta new file mode 100644 index 0000000..c45e050 --- /dev/null +++ b/MirrorCloneToggle_FX.controller.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: bb436c3848cf21544b7e0f60308e2f5a +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 9100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/README.md b/README.md index 76cd534..f1c496c 100644 --- a/README.md +++ b/README.md @@ -1 +1,29 @@ -# MirrorCloneToggle \ No newline at end of file +# MirrorCloneToggle + Forces the mirror clone to be on when requested
+

+ +

How it works

+ +There is a camera in the system, which when enabled, always renders the `MirrorReflection` layer to a 1x1 resolution render texture.
+This is enough to get VRChat to enable the local Mirror Clone. + +

Install guide

+ +- Drag and drop the `MirrorCloneToggle` prefab onto your avatar +- Merge the `MirrorCloneToggle_FX` FX layer with your avatar's FX layer, using [Av3Manager](https://github.com/VRLabs/Avatars-3.0-Manager) +- Merge the parameter list with your avatar's parameter list +
+ +

Performance stats

+- 1 local bool parameter (0 synced cost)
+- 0 material slots (1 texture that doesn't get used in any material) + +

Hierarchy layout

+MirrorCloneToggle
+|-MirrorCloneCamera + +

Contributors

+ diff --git a/Texture.meta b/Texture.meta new file mode 100644 index 0000000..46163e1 --- /dev/null +++ b/Texture.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 98f049afaec537f4794e6ec89abe4dd8 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Texture/MirrorCloneToggleTexture.renderTexture b/Texture/MirrorCloneToggleTexture.renderTexture new file mode 100644 index 0000000..37c72ef --- /dev/null +++ b/Texture/MirrorCloneToggleTexture.renderTexture @@ -0,0 +1,37 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!84 &8400000 +RenderTexture: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: MirrorCloneToggleTexture + m_ImageContentsHash: + serializedVersion: 2 + Hash: 00000000000000000000000000000000 + m_ForcedFallbackFormat: 4 + m_DownscaleFallback: 0 + serializedVersion: 3 + m_Width: 1 + m_Height: 1 + m_AntiAliasing: 1 + m_MipCount: -1 + m_DepthFormat: 0 + m_ColorFormat: 8 + m_MipMap: 0 + m_GenerateMips: 0 + m_SRGB: 0 + m_UseDynamicScale: 0 + m_BindMS: 0 + m_EnableCompatibleFormat: 1 + m_TextureSettings: + serializedVersion: 2 + m_FilterMode: 0 + m_Aniso: 0 + m_MipBias: 0 + m_WrapU: 1 + m_WrapV: 1 + m_WrapW: 1 + m_Dimension: 2 + m_VolumeDepth: 1 diff --git a/Texture/MirrorCloneToggleTexture.renderTexture.meta b/Texture/MirrorCloneToggleTexture.renderTexture.meta new file mode 100644 index 0000000..a053549 --- /dev/null +++ b/Texture/MirrorCloneToggleTexture.renderTexture.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 13f9f29dfe756564d9d99af99d243f95 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 8400000 + userData: + assetBundleName: + assetBundleVariant: From 5c3d6949520e9a6d5f5836607a1357170059d9ca Mon Sep 17 00:00:00 2001 From: TohruTheDragon Date: Wed, 7 Aug 2024 20:40:24 +0200 Subject: [PATCH 02/11] Update README.md --- README.md | 86 ++++++++++++++++++++++++++++++++++++++++++------------- 1 file changed, 66 insertions(+), 20 deletions(-) diff --git a/README.md b/README.md index f1c496c..0e2f467 100644 --- a/README.md +++ b/README.md @@ -1,29 +1,75 @@ -# MirrorCloneToggle +
+ +# Mirror Clone Toggle + +[![Generic badge](https://img.shields.io/github/downloads/VRLabs/Weapon-Slash/total?label=Downloads)](https://github.com/VRLabs/Weapon-Slash/releases/latest) +[![Generic badge](https://img.shields.io/badge/License-MIT-informational.svg)](https://github.com/VRLabs/Weapon-Slash/blob/main/LICENSE) +[![Generic badge](https://img.shields.io/badge/Unity-2022.3.22f1-lightblue?logo=Unity)](https://unity.com/releases/editor/whats-new/2022.3.22) +[![Generic badge](https://img.shields.io/badge/SDK-AvatarSDK3-lightblue.svg)](https://vrchat.com/home/download) + +[![Generic badge](https://img.shields.io/discord/706913824607043605?color=%237289da&label=DISCORD&logo=Discord&style=for-the-badge)](https://discord.vrlabs.dev/) +[![Generic badge](https://img.shields.io/endpoint.svg?url=https%3A%2F%2Fshieldsio-patreon.vercel.app%2Fapi%3Fusername%3Dvrlabs%26type%3Dpatrons&style=for-the-badge)](https://patreon.vrlabs.dev/) + Forces the mirror clone to be on when requested
-

-

How it works

+### ⬇️ [Download Latest Version](https://github.com/VRLabs/MirrorCloneToggle/releases/latest) + +### 📦 [Add to VRChat Creator Companion](https://vrlabs.dev/packages?package=dev.vrlabs.weapon-slash) (FIX THIS LINK) +
+ +## How it works + +* There is a camera in the system, which when enabled, always renders the `MirrorReflection` layer to a 1x1 resolution render texture. +* This is enough to get VRChat to enable the local Mirror Clone. + +## Install guide + +* Drag and drop the `MirrorCloneToggle` prefab onto your avatar +* Merge the `MirrorCloneToggle_FX` FX layer with your avatar's FX layer, using [Av3Manager](https://github.com/VRLabs/Avatars-3.0-Manager) +* Merge the parameter list with your avatar's parameter list + +## How to use -There is a camera in the system, which when enabled, always renders the `MirrorReflection` layer to a 1x1 resolution render texture.
-This is enough to get VRChat to enable the local Mirror Clone. +* Use a parameter driver to drive the `MirrorCloneToggle/Enabled` parameter, to turn the system on or off. -

Install guide

+## Performance stats -- Drag and drop the `MirrorCloneToggle` prefab onto your avatar -- Merge the `MirrorCloneToggle_FX` FX layer with your avatar's FX layer, using [Av3Manager](https://github.com/VRLabs/Avatars-3.0-Manager) -- Merge the parameter list with your avatar's parameter list -
+```c++ +Constraints: 0 +Constraint Depth: 0 +Contact Receivers: 0 +Contact Senders: 0 +FX Animator Layers: 1 +Parameter Memory: 0 +Phys Bones: 0 +``` -

Performance stats

-- 1 local bool parameter (0 synced cost)
-- 0 material slots (1 texture that doesn't get used in any material) +## Hierarchy layout -

Hierarchy layout

-MirrorCloneToggle
+```html +MirrorCloneToggle |-MirrorCloneCamera +``` + +## Contributors + +* [WingmanDraws](https://github.com/WingmanDraws) +* [TohruTheDragon](https://github.com/fkrisi11) + +## License + +Mirror Clone Toggle is available as-is under MIT. For more information see [LICENSE](https://github.com/VRLabs/Weapon-Slash/blob/main/LICENSE). + +​ + +
+ +[](https://vrlabs.dev "VRLabs") + +[](https://discord.vrlabs.dev/ "VRLabs") + +[](https://patreon.vrlabs.dev/ "VRLabs") + +[](https://twitter.com/vrlabsdev "VRLabs") -

Contributors

-
    -
  • [WingmanDraws](https://github.com/WingmanDraws)
  • -
  • [TohruTheDragon](https://github.com/fkrisi11)
  • -
+
From 3639932027f9e1fe10ee13979185ad4e7c62aabd Mon Sep 17 00:00:00 2001 From: JelleJurre <76777936+jellejurre@users.noreply.github.com> Date: Wed, 7 Aug 2024 21:06:44 +0200 Subject: [PATCH 03/11] Update README.md --- README.md | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/README.md b/README.md index 0e2f467..3a91641 100644 --- a/README.md +++ b/README.md @@ -14,7 +14,7 @@ ### ⬇️ [Download Latest Version](https://github.com/VRLabs/MirrorCloneToggle/releases/latest) -### 📦 [Add to VRChat Creator Companion](https://vrlabs.dev/packages?package=dev.vrlabs.weapon-slash) (FIX THIS LINK) +### 📦 [Add to VRChat Creator Companion](https://vrlabs.dev/packages?package=dev.vrlabs.mirror-clone-toggle) ## How it works @@ -35,13 +35,7 @@ ## Performance stats ```c++ -Constraints: 0 -Constraint Depth: 0 -Contact Receivers: 0 -Contact Senders: 0 FX Animator Layers: 1 -Parameter Memory: 0 -Phys Bones: 0 ``` ## Hierarchy layout From 446813d9f5ee866466bce1524f1a1c2454a83c84 Mon Sep 17 00:00:00 2001 From: JelleJurre <76777936+jellejurre@users.noreply.github.com> Date: Wed, 7 Aug 2024 21:12:32 +0200 Subject: [PATCH 04/11] Update README.md --- README.md | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index 3a91641..8466a14 100644 --- a/README.md +++ b/README.md @@ -2,9 +2,9 @@ # Mirror Clone Toggle -[![Generic badge](https://img.shields.io/github/downloads/VRLabs/Weapon-Slash/total?label=Downloads)](https://github.com/VRLabs/Weapon-Slash/releases/latest) -[![Generic badge](https://img.shields.io/badge/License-MIT-informational.svg)](https://github.com/VRLabs/Weapon-Slash/blob/main/LICENSE) -[![Generic badge](https://img.shields.io/badge/Unity-2022.3.22f1-lightblue?logo=Unity)](https://unity.com/releases/editor/whats-new/2022.3.22) +[![Generic badge](https://img.shields.io/github/downloads/VRLabs/Mirror-Clone-Toggle/total?label=Downloads)](https://github.com/VRLabs/Mirror-Clone-Toggle/releases/latest) +[![Generic badge](https://img.shields.io/badge/License-MIT-informational.svg)](https://github.com/VRLabs/Mirror-Clone-Toggle/blob/main/LICENSE) +[![Generic badge](https://img.shields.io/badge/Unity-2019.4.31f1-lightblue?logo=Unity)](https://unity.com/releases/editor/whats-new/2019.4.31) [![Generic badge](https://img.shields.io/badge/SDK-AvatarSDK3-lightblue.svg)](https://vrchat.com/home/download) [![Generic badge](https://img.shields.io/discord/706913824607043605?color=%237289da&label=DISCORD&logo=Discord&style=for-the-badge)](https://discord.vrlabs.dev/) @@ -12,7 +12,7 @@ Forces the mirror clone to be on when requested
-### ⬇️ [Download Latest Version](https://github.com/VRLabs/MirrorCloneToggle/releases/latest) +### ⬇️ [Download Latest Version](https://github.com/VRLabs/Mirror-Clone-Toggle/releases/latest) ### 📦 [Add to VRChat Creator Companion](https://vrlabs.dev/packages?package=dev.vrlabs.mirror-clone-toggle) @@ -47,12 +47,12 @@ MirrorCloneToggle ## Contributors -* [WingmanDraws](https://github.com/WingmanDraws) -* [TohruTheDragon](https://github.com/fkrisi11) +* [WingmanDraws](https://github.com/WingmanDraws) +* [TohruTheDragon](https://github.com/fkrisi11) ## License -Mirror Clone Toggle is available as-is under MIT. For more information see [LICENSE](https://github.com/VRLabs/Weapon-Slash/blob/main/LICENSE). +Mirror Clone Toggle is available as-is under MIT. For more information see [LICENSE](https://github.com/VRLabs/Mirror-Clone-Toggle/blob/main/LICENSE). ​ From 54eadac59d89801be2f8af77b2dcfcfe26b89221 Mon Sep 17 00:00:00 2001 From: jellejurre Date: Fri, 9 Aug 2024 20:35:25 +0200 Subject: [PATCH 05/11] Make ready for VRLabs release --- .../VRC-Asset-Release-And-Upload.yml | 84 +++++++++++++++++++ Instancer.meta | 3 + .../Mirror-Clone-Toggle Instancer.asmdef | 22 +++++ .../Mirror-Clone-Toggle Instancer.asmdef.meta | 3 + Instancer/Mirror-Clone-Toggle Instancer.cs | 50 +++++++++++ .../Mirror-Clone-Toggle Instancer.cs.meta | 3 + LICENSE.meta | 7 ++ ...troller => MirrorCloneToggle FX.controller | 0 ...ta => MirrorCloneToggle FX.controller.meta | 0 README.md | 7 +- README.md.meta | 7 ++ Resources.meta | 3 + Animations.meta => Resources/Animations.meta | 0 .../Animations}/MirrorClone Off.anim | 0 .../Animations}/MirrorClone Off.anim.meta | 0 .../Animations}/MirrorClone On.anim | 0 .../Animations}/MirrorClone On.anim.meta | 0 .../Animations}/MirrorCloneToggle Empty.anim | 0 .../MirrorCloneToggle Empty.anim.meta | 0 Texture.meta => Resources/Texture.meta | 0 .../MirrorCloneToggleTexture.renderTexture | 0 ...irrorCloneToggleTexture.renderTexture.meta | 0 package.json | 24 ++++++ package.json.meta | 3 + 24 files changed, 214 insertions(+), 2 deletions(-) create mode 100644 .github/workflows/VRC-Asset-Release-And-Upload.yml create mode 100644 Instancer.meta create mode 100644 Instancer/Mirror-Clone-Toggle Instancer.asmdef create mode 100644 Instancer/Mirror-Clone-Toggle Instancer.asmdef.meta create mode 100644 Instancer/Mirror-Clone-Toggle Instancer.cs create mode 100644 Instancer/Mirror-Clone-Toggle Instancer.cs.meta create mode 100644 LICENSE.meta rename MirrorCloneToggle_FX.controller => MirrorCloneToggle FX.controller (100%) rename MirrorCloneToggle_FX.controller.meta => MirrorCloneToggle FX.controller.meta (100%) create mode 100644 README.md.meta create mode 100644 Resources.meta rename Animations.meta => Resources/Animations.meta (100%) rename {Animations => Resources/Animations}/MirrorClone Off.anim (100%) rename {Animations => Resources/Animations}/MirrorClone Off.anim.meta (100%) rename {Animations => Resources/Animations}/MirrorClone On.anim (100%) rename {Animations => Resources/Animations}/MirrorClone On.anim.meta (100%) rename {Animations => Resources/Animations}/MirrorCloneToggle Empty.anim (100%) rename {Animations => Resources/Animations}/MirrorCloneToggle Empty.anim.meta (100%) rename Texture.meta => Resources/Texture.meta (100%) rename {Texture => Resources/Texture}/MirrorCloneToggleTexture.renderTexture (100%) rename {Texture => Resources/Texture}/MirrorCloneToggleTexture.renderTexture.meta (100%) create mode 100644 package.json create mode 100644 package.json.meta diff --git a/.github/workflows/VRC-Asset-Release-And-Upload.yml b/.github/workflows/VRC-Asset-Release-And-Upload.yml new file mode 100644 index 0000000..ac34bff --- /dev/null +++ b/.github/workflows/VRC-Asset-Release-And-Upload.yml @@ -0,0 +1,84 @@ +name: VRC Asset Release and Listing Upload +on: + push: + tags: + - "*.*.*" + +env: + ASSETS_PATH: . + RELEASE_PATH: Packages + ARTIFACT_DURATION: 30 # In days + UPLOAD_ENDPOINT: https://api.vrlabs.dev/packages/add + WORKFLOW_VERSION: 1.0.0 + +jobs: + build: + runs-on: "ubuntu-latest" + steps: + - name: Checkout + uses: actions/checkout@v3 + + - name: Check if package.json exists + run: | + if [ ! -f package.json ]; then + echo "package.json not found" + exit 1 + fi + + - name: Get package.json + id: get_package_json + run: | + { + echo 'package_json<<"""' + echo $(cat package.json) + echo '"""' + } >> $GITHUB_OUTPUT + + - name: Get needed Data + id: job_data + run: | + version=$(echo "${{ github.ref_name }}") + version=$(echo $version | tr '[:upper:]' '[:lower:]') + echo "version=$version" >> $GITHUB_OUTPUT + major_version=$(echo $version | cut -d '.' -f 1) + minor_version=$(echo $version | cut -d '.' -f 2) + echo "major_version=$major_version" >> $GITHUB_OUTPUT + echo "minor_version=$minor_version" >> $GITHUB_OUTPUT + name="${{ fromJson(steps.get_package_json.outputs.package_json).name }}" + display_name="${{ fromJson(steps.get_package_json.outputs.package_json).displayName }}" + echo "package_name=$name" >> $GITHUB_OUTPUT + echo "package_display_name=$display_name" >> $GITHUB_OUTPUT + + - name: Create Packages + id: create_packages + uses: VRLabs/VRCTools-Packaging-Action@v1 + with: + path: '${{ env.ASSETS_PATH }}' + outputPath: '${{ env.RELEASE_PATH }}' + releaseUrl: 'https://github.com/${{ github.repository }}/releases/download/${{ steps.job_data.outputs.version }}/${{ steps.job_data.outputs.package_name }}-${{ steps.job_data.outputs.version }}.zip' + unityReleaseUrl: 'https://github.com/${{ github.repository }}/releases/download/${{ steps.job_data.outputs.version }}/${{ steps.job_data.outputs.package_name }}-${{ steps.job_data.outputs.version }}.unitypackage' + releaseVersion: '${{ steps.job_data.outputs.version }}' + + - name: Create Release + uses: softprops/action-gh-release@v1 + if: startsWith(github.ref, 'refs/tags/') + with: + name: "${{ steps.job_data.outputs.package_display_name }} ${{ steps.job_data.outputs.version }}" + files: | + ${{ steps.create_packages.outputs.unityPackagePath }} + ${{ steps.create_packages.outputs.vccPackagePath }} + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + SOURCE_TAG: ${{ steps.job_data.outputs.version }} + + - name: Add server-json to Artifacts + uses: actions/upload-artifact@v3 + with: + name: server-json + path: ${{ steps.create_packages.outputs.serverPackageJsonPath }} + retention-days: ${{ env.ARTIFACT_DURATION }} + + - name: Send package info to a server + run: | + curl -X POST -H "Content-Type: application/json" -H "Vrl-Api-Key: ${{ secrets.LISTINGS_API_KEY }}" --data @${{ steps.create_packages.outputs.serverPackageJsonPath }} ${{ env.UPLOAD_ENDPOINT }} || exit 0 + shell: bash \ No newline at end of file diff --git a/Instancer.meta b/Instancer.meta new file mode 100644 index 0000000..7b5e64f --- /dev/null +++ b/Instancer.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: b4349f730b814a7082972510eb968f5d +timeCreated: 1723227768 \ No newline at end of file diff --git a/Instancer/Mirror-Clone-Toggle Instancer.asmdef b/Instancer/Mirror-Clone-Toggle Instancer.asmdef new file mode 100644 index 0000000..88e4c5d --- /dev/null +++ b/Instancer/Mirror-Clone-Toggle Instancer.asmdef @@ -0,0 +1,22 @@ +{ + "name": "VRLabs Mirror-Clone-Toggle Instancer", + "rootNamespace": "", + "references": [], + "includePlatforms": [ + "Editor" + ], + "excludePlatforms": [], + "allowUnsafeCode": false, + "overrideReferences": false, + "precompiledReferences": [], + "autoReferenced": true, + "defineConstraints": [], + "versionDefines": [ + { + "name": "dev.vrlabs.instancer", + "expression": "", + "define": "VRLABS_INSTANCER_FOUND" + } + ], + "noEngineReferences": false +} \ No newline at end of file diff --git a/Instancer/Mirror-Clone-Toggle Instancer.asmdef.meta b/Instancer/Mirror-Clone-Toggle Instancer.asmdef.meta new file mode 100644 index 0000000..056e8fc --- /dev/null +++ b/Instancer/Mirror-Clone-Toggle Instancer.asmdef.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 5da78789c0cd4809889e5c87c5ec9c9e +timeCreated: 1723227768 \ No newline at end of file diff --git a/Instancer/Mirror-Clone-Toggle Instancer.cs b/Instancer/Mirror-Clone-Toggle Instancer.cs new file mode 100644 index 0000000..e48d1ae --- /dev/null +++ b/Instancer/Mirror-Clone-Toggle Instancer.cs @@ -0,0 +1,50 @@ +#if VRLABS_INSTANCER_FOUND +using System; +using System.Linq; +using System.Reflection; +using UnityEditor; +using UnityEngine; + +namespace VRLabs.MirrorCloneToggle +{ + public class MirrorCloneToggle : ScriptableObject + { + public const string packageName = "Mirror-Clone-Toggle"; + + public static string[] excludeRegexs = + { + ".*\\.cs", + ".*\\.asmdef", + "package.json" + }; + + [MenuItem("VRLabs/Create Instance/Mirror Clone Toggle")] + public static void FancyPackage() + { + Type instancerType = AppDomain.CurrentDomain.GetAssemblies() + .Where(x => x.GetType("VRLabs.Instancer.Instancer") != null) + .Select(x => x.GetType("VRLabs.Instancer.Instancer")).FirstOrDefault(); + + if (instancerType == null) + { + Debug.LogError("Instancer not found. To use this functionality, install the VRLabs Instancer from https://github.com/VRLabs/Instancer"); + return; + } + + MethodInfo instanceMethod = instancerType.GetMethod("Instance", BindingFlags.Instance | BindingFlags.Static | BindingFlags.Public | BindingFlags.NonPublic); + + if (instanceMethod == null) + { + Debug.LogError("Instance method not found"); + return; + } + + var assetPath = new System.Diagnostics.StackTrace(true).GetFrame(0).GetFileName() + .Replace(System.IO.Path.GetDirectoryName(Application.dataPath), "") + .Replace("\\", "/".Replace("./", "")); + + instanceMethod.Invoke(null, new object[] { packageName, assetPath, excludeRegexs }); + } + } +} +#endif \ No newline at end of file diff --git a/Instancer/Mirror-Clone-Toggle Instancer.cs.meta b/Instancer/Mirror-Clone-Toggle Instancer.cs.meta new file mode 100644 index 0000000..44cade8 --- /dev/null +++ b/Instancer/Mirror-Clone-Toggle Instancer.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: bcea72e9d1784ef9a41455807931f8c7 +timeCreated: 1723227768 \ No newline at end of file diff --git a/LICENSE.meta b/LICENSE.meta new file mode 100644 index 0000000..8687b1f --- /dev/null +++ b/LICENSE.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 83655823a7e15f447bf464ee6d0522b1 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/MirrorCloneToggle_FX.controller b/MirrorCloneToggle FX.controller similarity index 100% rename from MirrorCloneToggle_FX.controller rename to MirrorCloneToggle FX.controller diff --git a/MirrorCloneToggle_FX.controller.meta b/MirrorCloneToggle FX.controller.meta similarity index 100% rename from MirrorCloneToggle_FX.controller.meta rename to MirrorCloneToggle FX.controller.meta diff --git a/README.md b/README.md index 8466a14..b1b31d8 100644 --- a/README.md +++ b/README.md @@ -10,13 +10,16 @@ [![Generic badge](https://img.shields.io/discord/706913824607043605?color=%237289da&label=DISCORD&logo=Discord&style=for-the-badge)](https://discord.vrlabs.dev/) [![Generic badge](https://img.shields.io/endpoint.svg?url=https%3A%2F%2Fshieldsio-patreon.vercel.app%2Fapi%3Fusername%3Dvrlabs%26type%3Dpatrons&style=for-the-badge)](https://patreon.vrlabs.dev/) - Forces the mirror clone to be on when requested
+A system for forcing the mirror clone to be enabled ### ⬇️ [Download Latest Version](https://github.com/VRLabs/Mirror-Clone-Toggle/releases/latest) ### 📦 [Add to VRChat Creator Companion](https://vrlabs.dev/packages?package=dev.vrlabs.mirror-clone-toggle) + +--- + ## How it works * There is a camera in the system, which when enabled, always renders the `MirrorReflection` layer to a 1x1 resolution render texture. @@ -30,7 +33,7 @@ ## How to use -* Use a parameter driver to drive the `MirrorCloneToggle/Enabled` parameter, to turn the system on or off. +* The `MirrorCloneToggle/Enabled` parameter is a bool, which enables the mirror clone when enabled. ## Performance stats diff --git a/README.md.meta b/README.md.meta new file mode 100644 index 0000000..d023518 --- /dev/null +++ b/README.md.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: f312616b66ef523469e05f092c74d9fe +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Resources.meta b/Resources.meta new file mode 100644 index 0000000..d4b8594 --- /dev/null +++ b/Resources.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 31f451ce050f49c0a70a6e2f347942d4 +timeCreated: 1723227777 \ No newline at end of file diff --git a/Animations.meta b/Resources/Animations.meta similarity index 100% rename from Animations.meta rename to Resources/Animations.meta diff --git a/Animations/MirrorClone Off.anim b/Resources/Animations/MirrorClone Off.anim similarity index 100% rename from Animations/MirrorClone Off.anim rename to Resources/Animations/MirrorClone Off.anim diff --git a/Animations/MirrorClone Off.anim.meta b/Resources/Animations/MirrorClone Off.anim.meta similarity index 100% rename from Animations/MirrorClone Off.anim.meta rename to Resources/Animations/MirrorClone Off.anim.meta diff --git a/Animations/MirrorClone On.anim b/Resources/Animations/MirrorClone On.anim similarity index 100% rename from Animations/MirrorClone On.anim rename to Resources/Animations/MirrorClone On.anim diff --git a/Animations/MirrorClone On.anim.meta b/Resources/Animations/MirrorClone On.anim.meta similarity index 100% rename from Animations/MirrorClone On.anim.meta rename to Resources/Animations/MirrorClone On.anim.meta diff --git a/Animations/MirrorCloneToggle Empty.anim b/Resources/Animations/MirrorCloneToggle Empty.anim similarity index 100% rename from Animations/MirrorCloneToggle Empty.anim rename to Resources/Animations/MirrorCloneToggle Empty.anim diff --git a/Animations/MirrorCloneToggle Empty.anim.meta b/Resources/Animations/MirrorCloneToggle Empty.anim.meta similarity index 100% rename from Animations/MirrorCloneToggle Empty.anim.meta rename to Resources/Animations/MirrorCloneToggle Empty.anim.meta diff --git a/Texture.meta b/Resources/Texture.meta similarity index 100% rename from Texture.meta rename to Resources/Texture.meta diff --git a/Texture/MirrorCloneToggleTexture.renderTexture b/Resources/Texture/MirrorCloneToggleTexture.renderTexture similarity index 100% rename from Texture/MirrorCloneToggleTexture.renderTexture rename to Resources/Texture/MirrorCloneToggleTexture.renderTexture diff --git a/Texture/MirrorCloneToggleTexture.renderTexture.meta b/Resources/Texture/MirrorCloneToggleTexture.renderTexture.meta similarity index 100% rename from Texture/MirrorCloneToggleTexture.renderTexture.meta rename to Resources/Texture/MirrorCloneToggleTexture.renderTexture.meta diff --git a/package.json b/package.json new file mode 100644 index 0000000..5c00578 --- /dev/null +++ b/package.json @@ -0,0 +1,24 @@ +{ + "name": "dev.vrlabs.mirror-clone-toggle", + "displayName": "Mirror Clone Toggle", + "version": "1.0.999", + "license": "MIT", + "unity": "2019.4", + "description": "A system for forcing the mirror clone to be enabled", + "author": { + "name": "VRLabs", + "email": "mail@vrlabs.dev", + "url": "https://vrlabs.dev" + }, + "siteUrl": "https://github.com/VRLabs/Mirror-Clone-Toggle", + "vpmDependencies": { + "dev.vrlabs.instancer": ">=1.0.2" + }, + "legacyFolders": {}, + "unityPackageDestinationFolder": "Assets/VRLabs/Mirror Clone Toggle", + "vccRepoCategory": "components", + "unityPackageDestinationFolderMetas": { + "Assets/VRLabs": "652a1ba5b00554143bc9a76307dbc4e8", + "Assets/VRLabs/Mirror Clone Toggle": "e4dddd3555a991342961214ad86014b2" + } +} \ No newline at end of file diff --git a/package.json.meta b/package.json.meta new file mode 100644 index 0000000..51594a8 --- /dev/null +++ b/package.json.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: c1ef40a664744dc4b8862dfc23808ca7 +timeCreated: 1723228082 \ No newline at end of file From 07e6b2c3ca1d038d896d85a2e37bd4263d6ebcd9 Mon Sep 17 00:00:00 2001 From: JelleJurre <76777936+jellejurre@users.noreply.github.com> Date: Fri, 9 Aug 2024 20:41:28 +0200 Subject: [PATCH 06/11] Add install guide --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index b1b31d8..0c18575 100644 --- a/README.md +++ b/README.md @@ -27,6 +27,8 @@ A system for forcing the mirror clone to be enabled ## Install guide +https://github.com/user-attachments/assets/93651823-2b07-45d2-b9cf-87c1a2d8b63c\ + * Drag and drop the `MirrorCloneToggle` prefab onto your avatar * Merge the `MirrorCloneToggle_FX` FX layer with your avatar's FX layer, using [Av3Manager](https://github.com/VRLabs/Avatars-3.0-Manager) * Merge the parameter list with your avatar's parameter list From 64e5bd891bbab4646c6558850d55c2e2893be7af Mon Sep 17 00:00:00 2001 From: JelleJurre <76777936+jellejurre@users.noreply.github.com> Date: Fri, 9 Aug 2024 20:41:44 +0200 Subject: [PATCH 07/11] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 0c18575..2d88e91 100644 --- a/README.md +++ b/README.md @@ -27,7 +27,7 @@ A system for forcing the mirror clone to be enabled ## Install guide -https://github.com/user-attachments/assets/93651823-2b07-45d2-b9cf-87c1a2d8b63c\ +https://github.com/user-attachments/assets/93651823-2b07-45d2-b9cf-87c1a2d8b63c * Drag and drop the `MirrorCloneToggle` prefab onto your avatar * Merge the `MirrorCloneToggle_FX` FX layer with your avatar's FX layer, using [Av3Manager](https://github.com/VRLabs/Avatars-3.0-Manager) From e21ebbe649df35cfbc6024f9bd13656a5a8496de Mon Sep 17 00:00:00 2001 From: jellejurre Date: Sun, 1 Sep 2024 15:26:21 +0200 Subject: [PATCH 08/11] Update quest compatibility markers --- README.md | 3 ++- package.json | 5 +++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 2d88e91..bef7115 100644 --- a/README.md +++ b/README.md @@ -4,7 +4,8 @@ [![Generic badge](https://img.shields.io/github/downloads/VRLabs/Mirror-Clone-Toggle/total?label=Downloads)](https://github.com/VRLabs/Mirror-Clone-Toggle/releases/latest) [![Generic badge](https://img.shields.io/badge/License-MIT-informational.svg)](https://github.com/VRLabs/Mirror-Clone-Toggle/blob/main/LICENSE) -[![Generic badge](https://img.shields.io/badge/Unity-2019.4.31f1-lightblue?logo=Unity)](https://unity.com/releases/editor/whats-new/2019.4.31) +![Generic badge](https://img.shields.io/badge/Quest-Incompatible-red?logo=Meta)](https://img.shields.io/badge/Quest-Incompatible-red?logo=Meta) +[![Generic badge](https://img.shields.io/badge/Unity-2022.3.22f1-lightblue?logo=Unity)](https://unity.com/releases/editor/whats-new/2022.3.22) [![Generic badge](https://img.shields.io/badge/SDK-AvatarSDK3-lightblue.svg)](https://vrchat.com/home/download) [![Generic badge](https://img.shields.io/discord/706913824607043605?color=%237289da&label=DISCORD&logo=Discord&style=for-the-badge)](https://discord.vrlabs.dev/) diff --git a/package.json b/package.json index 5c00578..0066d4d 100644 --- a/package.json +++ b/package.json @@ -3,7 +3,7 @@ "displayName": "Mirror Clone Toggle", "version": "1.0.999", "license": "MIT", - "unity": "2019.4", + "unity": "2022.3", "description": "A system for forcing the mirror clone to be enabled", "author": { "name": "VRLabs", @@ -20,5 +20,6 @@ "unityPackageDestinationFolderMetas": { "Assets/VRLabs": "652a1ba5b00554143bc9a76307dbc4e8", "Assets/VRLabs/Mirror Clone Toggle": "e4dddd3555a991342961214ad86014b2" - } + }, + "questCompatibility": "none" } \ No newline at end of file From c0322e62769aca7b0a0a7614106fddb975f59a5d Mon Sep 17 00:00:00 2001 From: jellejurre Date: Sun, 1 Sep 2024 15:30:18 +0200 Subject: [PATCH 09/11] Fix typo --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index bef7115..d6b09b0 100644 --- a/README.md +++ b/README.md @@ -4,7 +4,7 @@ [![Generic badge](https://img.shields.io/github/downloads/VRLabs/Mirror-Clone-Toggle/total?label=Downloads)](https://github.com/VRLabs/Mirror-Clone-Toggle/releases/latest) [![Generic badge](https://img.shields.io/badge/License-MIT-informational.svg)](https://github.com/VRLabs/Mirror-Clone-Toggle/blob/main/LICENSE) -![Generic badge](https://img.shields.io/badge/Quest-Incompatible-red?logo=Meta)](https://img.shields.io/badge/Quest-Incompatible-red?logo=Meta) +[![Generic badge](https://img.shields.io/badge/Quest-Incompatible-red?logo=Meta)](https://img.shields.io/badge/Quest-Incompatible-red?logo=Meta) [![Generic badge](https://img.shields.io/badge/Unity-2022.3.22f1-lightblue?logo=Unity)](https://unity.com/releases/editor/whats-new/2022.3.22) [![Generic badge](https://img.shields.io/badge/SDK-AvatarSDK3-lightblue.svg)](https://vrchat.com/home/download) From 519c64c555c031bd66c760d838fd41936389417a Mon Sep 17 00:00:00 2001 From: hfcRed Date: Tue, 17 Sep 2024 10:59:55 +0200 Subject: [PATCH 10/11] Standardize --- ...oller => Mirror Clone Toggle FX.controller | 55 ++++--------------- ... => Mirror Clone Toggle FX.controller.meta | 0 ...et => Mirror Clone Toggle Parameters.asset | 2 +- ... Mirror Clone Toggle Parameters.asset.meta | 0 ...oggle.prefab => Mirror Clone Toggle.prefab | 20 +++++-- ...ab.meta => Mirror Clone Toggle.prefab.meta | 0 .../{MirrorClone Off.anim => Clone Off.anim} | 20 ++++--- ...lone Off.anim.meta => Clone Off.anim.meta} | 0 .../{MirrorClone On.anim => Clone On.anim} | 20 ++++--- ...rClone On.anim.meta => Clone On.anim.meta} | 0 .../Animations/MirrorCloneToggle Empty.anim | 53 ------------------ .../MirrorCloneToggle Empty.anim.meta | 8 --- ...derTexture => Clone Texture.renderTexture} | 9 ++- ....meta => Clone Texture.renderTexture.meta} | 0 14 files changed, 60 insertions(+), 127 deletions(-) rename MirrorCloneToggle FX.controller => Mirror Clone Toggle FX.controller (82%) rename MirrorCloneToggle FX.controller.meta => Mirror Clone Toggle FX.controller.meta (100%) rename MirrorCloneToggle Parameters.asset => Mirror Clone Toggle Parameters.asset (92%) rename MirrorCloneToggle Parameters.asset.meta => Mirror Clone Toggle Parameters.asset.meta (100%) rename MirrorCloneToggle.prefab => Mirror Clone Toggle.prefab (89%) rename MirrorCloneToggle.prefab.meta => Mirror Clone Toggle.prefab.meta (100%) rename Resources/Animations/{MirrorClone Off.anim => Clone Off.anim} (89%) rename Resources/Animations/{MirrorClone Off.anim.meta => Clone Off.anim.meta} (100%) rename Resources/Animations/{MirrorClone On.anim => Clone On.anim} (89%) rename Resources/Animations/{MirrorClone On.anim.meta => Clone On.anim.meta} (100%) delete mode 100644 Resources/Animations/MirrorCloneToggle Empty.anim delete mode 100644 Resources/Animations/MirrorCloneToggle Empty.anim.meta rename Resources/Texture/{MirrorCloneToggleTexture.renderTexture => Clone Texture.renderTexture} (82%) rename Resources/Texture/{MirrorCloneToggleTexture.renderTexture.meta => Clone Texture.renderTexture.meta} (100%) diff --git a/MirrorCloneToggle FX.controller b/Mirror Clone Toggle FX.controller similarity index 82% rename from MirrorCloneToggle FX.controller rename to Mirror Clone Toggle FX.controller index 57447b0..e779286 100644 --- a/MirrorCloneToggle FX.controller +++ b/Mirror Clone Toggle FX.controller @@ -63,7 +63,7 @@ AnimatorState: m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_Name: Initialize + m_Name: Init m_Speed: 1 m_CycleOffset: 0 m_Transitions: @@ -78,7 +78,7 @@ AnimatorState: m_MirrorParameterActive: 0 m_CycleOffsetParameterActive: 0 m_TimeParameterActive: 0 - m_Motion: {fileID: 7400000, guid: b5063aaf0ac6bb449b86dc17f00e4c60, type: 2} + m_Motion: {fileID: 7400000, guid: d8c0e2a9235deba4d91a56f82c7a7791, type: 2} m_Tag: m_SpeedParameter: m_MirrorParameter: @@ -118,7 +118,7 @@ AnimatorController: m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_Name: MirrorCloneToggle_FX + m_Name: Mirror Clone Toggle FX serializedVersion: 5 m_AnimatorParameters: - m_Name: MirrorCloneToggle/Enabled @@ -135,19 +135,7 @@ AnimatorController: m_Controller: {fileID: 9100000} m_AnimatorLayers: - serializedVersion: 5 - m_Name: Base Layer - m_StateMachine: {fileID: 6842736305399051491} - 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} - - serializedVersion: 5 - m_Name: MirrorCloneToggle + m_Name: Mirror Clone Toggle m_StateMachine: {fileID: 1547352308192947263} m_Mask: {fileID: 0} m_Motions: [] @@ -165,25 +153,25 @@ AnimatorStateMachine: m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_Name: MirrorCloneToggle + m_Name: Mirror Clone Toggle m_ChildStates: - serializedVersion: 1 m_State: {fileID: -5426313753696026812} - m_Position: {x: 30, y: 170, z: 0} + m_Position: {x: 30, y: 180, z: 0} - serializedVersion: 1 m_State: {fileID: 5125844152620525728} - m_Position: {x: -90, y: 230, z: 0} + m_Position: {x: -90, y: 250, z: 0} - serializedVersion: 1 m_State: {fileID: 5919636765436306317} - m_Position: {x: 140, y: 230, z: 0} + m_Position: {x: 150, y: 250, z: 0} m_ChildStateMachines: [] m_AnyStateTransitions: [] m_EntryTransitions: [] m_StateMachineTransitions: {} m_StateMachineBehaviours: [] - m_AnyStatePosition: {x: 50, y: 20, z: 0} + m_AnyStatePosition: {x: 50, y: 80, z: 0} m_EntryPosition: {x: 50, y: 120, z: 0} - m_ExitPosition: {x: 50, y: 70, z: 0} + m_ExitPosition: {x: 50, y: 40, z: 0} m_ParentStateMachinePosition: {x: 800, y: 20, z: 0} m_DefaultState: {fileID: -5426313753696026812} --- !u!1102 &5125844152620525728 @@ -193,7 +181,7 @@ AnimatorState: m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_Name: MirrorClone On + m_Name: Clone On m_Speed: 1 m_CycleOffset: 0 m_Transitions: @@ -220,7 +208,7 @@ AnimatorState: m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_Name: MirrorClone Off + m_Name: Clone Off m_Speed: 1 m_CycleOffset: 0 m_Transitions: @@ -268,22 +256,3 @@ AnimatorStateTransition: m_InterruptionSource: 0 m_OrderedInterruption: 1 m_CanTransitionToSelf: 1 ---- !u!1107 &6842736305399051491 -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: [] - 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: 50, y: 70, z: 0} - m_ParentStateMachinePosition: {x: 800, y: 20, z: 0} - m_DefaultState: {fileID: 0} diff --git a/MirrorCloneToggle FX.controller.meta b/Mirror Clone Toggle FX.controller.meta similarity index 100% rename from MirrorCloneToggle FX.controller.meta rename to Mirror Clone Toggle FX.controller.meta diff --git a/MirrorCloneToggle Parameters.asset b/Mirror Clone Toggle Parameters.asset similarity index 92% rename from MirrorCloneToggle Parameters.asset rename to Mirror Clone Toggle Parameters.asset index b3a62ad..5e4ce97 100644 --- a/MirrorCloneToggle Parameters.asset +++ b/Mirror Clone Toggle Parameters.asset @@ -10,7 +10,7 @@ MonoBehaviour: m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -1506855854, guid: 67cc4cb7839cd3741b63733d5adf0442, type: 3} - m_Name: MirrorCloneToggle Parameters + m_Name: Mirror Clone Toggle Parameters m_EditorClassIdentifier: parameters: - name: MirrorCloneToggle/Enabled diff --git a/MirrorCloneToggle Parameters.asset.meta b/Mirror Clone Toggle Parameters.asset.meta similarity index 100% rename from MirrorCloneToggle Parameters.asset.meta rename to Mirror Clone Toggle Parameters.asset.meta diff --git a/MirrorCloneToggle.prefab b/Mirror Clone Toggle.prefab similarity index 89% rename from MirrorCloneToggle.prefab rename to Mirror Clone Toggle.prefab index 8706059..77fb7d0 100644 --- a/MirrorCloneToggle.prefab +++ b/Mirror Clone Toggle.prefab @@ -11,7 +11,7 @@ GameObject: - component: {fileID: 3882979636311929899} - component: {fileID: 3882979636311929908} m_Layer: 0 - m_Name: MirrorCloneCamera + m_Name: Mirror Clone Camera m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 @@ -24,12 +24,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 3882979636311929898} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 3882979638049024001} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!20 &3882979636311929908 Camera: @@ -45,9 +46,17 @@ Camera: m_projectionMatrixMode: 1 m_GateFitMode: 2 m_FOVAxisMode: 0 + m_Iso: 200 + m_ShutterSpeed: 0.005 + m_Aperture: 16 + m_FocusDistance: 10 + m_FocalLength: 50 + m_BladeCount: 5 + m_Curvature: {x: 2, y: 11} + m_BarrelClipping: 0.25 + m_Anamorphism: 0 m_SensorSize: {x: 36, y: 24} m_LensShift: {x: 0, y: 0} - m_FocalLength: 50 m_NormalizedViewPortRect: serializedVersion: 2 x: 0 @@ -84,7 +93,7 @@ GameObject: m_Component: - component: {fileID: 3882979638049024001} m_Layer: 0 - m_Name: MirrorCloneToggle + m_Name: Mirror Clone Toggle m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 @@ -97,11 +106,12 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 3882979638049024000} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 m_Children: - {fileID: 3882979636311929899} m_Father: {fileID: 0} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} diff --git a/MirrorCloneToggle.prefab.meta b/Mirror Clone Toggle.prefab.meta similarity index 100% rename from MirrorCloneToggle.prefab.meta rename to Mirror Clone Toggle.prefab.meta diff --git a/Resources/Animations/MirrorClone Off.anim b/Resources/Animations/Clone Off.anim similarity index 89% rename from Resources/Animations/MirrorClone Off.anim rename to Resources/Animations/Clone Off.anim index cbf65f2..29f2f6b 100644 --- a/Resources/Animations/MirrorClone Off.anim +++ b/Resources/Animations/Clone Off.anim @@ -6,8 +6,8 @@ AnimationClip: m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_Name: MirrorClone Off - serializedVersion: 6 + m_Name: Clone Off + serializedVersion: 7 m_Legacy: 0 m_Compressed: 0 m_UseHighQualityCurve: 1 @@ -17,7 +17,8 @@ AnimationClip: m_PositionCurves: [] m_ScaleCurves: [] m_FloatCurves: - - curve: + - serializedVersion: 2 + curve: serializedVersion: 2 m_Curve: - serializedVersion: 3 @@ -42,9 +43,10 @@ AnimationClip: m_PostInfinity: 2 m_RotationOrder: 4 attribute: m_Enabled - path: MirrorCloneToggle/MirrorCloneCamera + path: Mirror Clone Toggle/Mirror Clone Camera classID: 20 script: {fileID: 0} + flags: 0 m_PPtrCurves: [] m_SampleRate: 60 m_WrapMode: 0 @@ -54,12 +56,14 @@ AnimationClip: m_ClipBindingConstant: genericBindings: - serializedVersion: 2 - path: 1229527887 + path: 242439732 attribute: 3305885265 script: {fileID: 0} typeID: 20 customType: 0 isPPtrCurve: 0 + isIntCurve: 0 + isSerializeReferenceCurve: 0 pptrCurveMapping: [] m_AnimationClipSettings: serializedVersion: 2 @@ -82,7 +86,8 @@ AnimationClip: m_HeightFromFeet: 0 m_Mirror: 0 m_EditorCurves: - - curve: + - serializedVersion: 2 + curve: serializedVersion: 2 m_Curve: - serializedVersion: 3 @@ -107,9 +112,10 @@ AnimationClip: m_PostInfinity: 2 m_RotationOrder: 4 attribute: m_Enabled - path: MirrorCloneToggle/MirrorCloneCamera + path: Mirror Clone Toggle/Mirror Clone Camera classID: 20 script: {fileID: 0} + flags: 0 m_EulerEditorCurves: [] m_HasGenericRootTransform: 0 m_HasMotionFloatCurves: 0 diff --git a/Resources/Animations/MirrorClone Off.anim.meta b/Resources/Animations/Clone Off.anim.meta similarity index 100% rename from Resources/Animations/MirrorClone Off.anim.meta rename to Resources/Animations/Clone Off.anim.meta diff --git a/Resources/Animations/MirrorClone On.anim b/Resources/Animations/Clone On.anim similarity index 89% rename from Resources/Animations/MirrorClone On.anim rename to Resources/Animations/Clone On.anim index cc60b2a..d9653e6 100644 --- a/Resources/Animations/MirrorClone On.anim +++ b/Resources/Animations/Clone On.anim @@ -6,8 +6,8 @@ AnimationClip: m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_Name: MirrorClone On - serializedVersion: 6 + m_Name: Clone On + serializedVersion: 7 m_Legacy: 0 m_Compressed: 0 m_UseHighQualityCurve: 1 @@ -17,7 +17,8 @@ AnimationClip: m_PositionCurves: [] m_ScaleCurves: [] m_FloatCurves: - - curve: + - serializedVersion: 2 + curve: serializedVersion: 2 m_Curve: - serializedVersion: 3 @@ -42,9 +43,10 @@ AnimationClip: m_PostInfinity: 2 m_RotationOrder: 4 attribute: m_Enabled - path: MirrorCloneToggle/MirrorCloneCamera + path: Mirror Clone Toggle/Mirror Clone Camera classID: 20 script: {fileID: 0} + flags: 0 m_PPtrCurves: [] m_SampleRate: 60 m_WrapMode: 0 @@ -54,12 +56,14 @@ AnimationClip: m_ClipBindingConstant: genericBindings: - serializedVersion: 2 - path: 1229527887 + path: 242439732 attribute: 3305885265 script: {fileID: 0} typeID: 20 customType: 0 isPPtrCurve: 0 + isIntCurve: 0 + isSerializeReferenceCurve: 0 pptrCurveMapping: [] m_AnimationClipSettings: serializedVersion: 2 @@ -82,7 +86,8 @@ AnimationClip: m_HeightFromFeet: 0 m_Mirror: 0 m_EditorCurves: - - curve: + - serializedVersion: 2 + curve: serializedVersion: 2 m_Curve: - serializedVersion: 3 @@ -107,9 +112,10 @@ AnimationClip: m_PostInfinity: 2 m_RotationOrder: 4 attribute: m_Enabled - path: MirrorCloneToggle/MirrorCloneCamera + path: Mirror Clone Toggle/Mirror Clone Camera classID: 20 script: {fileID: 0} + flags: 0 m_EulerEditorCurves: [] m_HasGenericRootTransform: 0 m_HasMotionFloatCurves: 0 diff --git a/Resources/Animations/MirrorClone On.anim.meta b/Resources/Animations/Clone On.anim.meta similarity index 100% rename from Resources/Animations/MirrorClone On.anim.meta rename to Resources/Animations/Clone On.anim.meta diff --git a/Resources/Animations/MirrorCloneToggle Empty.anim b/Resources/Animations/MirrorCloneToggle Empty.anim deleted file mode 100644 index d151ede..0000000 --- a/Resources/Animations/MirrorCloneToggle Empty.anim +++ /dev/null @@ -1,53 +0,0 @@ -%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: MirrorCloneToggle Empty - serializedVersion: 6 - m_Legacy: 0 - m_Compressed: 0 - m_UseHighQualityCurve: 1 - m_RotationCurves: [] - m_CompressedRotationCurves: [] - m_EulerCurves: [] - m_PositionCurves: [] - m_ScaleCurves: [] - m_FloatCurves: [] - m_PPtrCurves: [] - m_SampleRate: 60 - m_WrapMode: 0 - m_Bounds: - m_Center: {x: 0, y: 0, z: 0} - m_Extent: {x: 0, y: 0, z: 0} - m_ClipBindingConstant: - genericBindings: [] - pptrCurveMapping: [] - m_AnimationClipSettings: - serializedVersion: 2 - m_AdditiveReferencePoseClip: {fileID: 0} - m_AdditiveReferencePoseTime: 0 - m_StartTime: 0 - m_StopTime: 1 - m_OrientationOffsetY: 0 - m_Level: 0 - m_CycleOffset: 0 - m_HasAdditiveReferencePose: 0 - m_LoopTime: 0 - m_LoopBlend: 0 - m_LoopBlendOrientation: 0 - m_LoopBlendPositionY: 0 - m_LoopBlendPositionXZ: 0 - m_KeepOriginalOrientation: 0 - m_KeepOriginalPositionY: 1 - m_KeepOriginalPositionXZ: 0 - m_HeightFromFeet: 0 - m_Mirror: 0 - m_EditorCurves: [] - m_EulerEditorCurves: [] - m_HasGenericRootTransform: 0 - m_HasMotionFloatCurves: 0 - m_Events: [] diff --git a/Resources/Animations/MirrorCloneToggle Empty.anim.meta b/Resources/Animations/MirrorCloneToggle Empty.anim.meta deleted file mode 100644 index 5307348..0000000 --- a/Resources/Animations/MirrorCloneToggle Empty.anim.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: b5063aaf0ac6bb449b86dc17f00e4c60 -NativeFormatImporter: - externalObjects: {} - mainObjectFileID: 7400000 - userData: - assetBundleName: - assetBundleVariant: diff --git a/Resources/Texture/MirrorCloneToggleTexture.renderTexture b/Resources/Texture/Clone Texture.renderTexture similarity index 82% rename from Resources/Texture/MirrorCloneToggleTexture.renderTexture rename to Resources/Texture/Clone Texture.renderTexture index 37c72ef..319bb93 100644 --- a/Resources/Texture/MirrorCloneToggleTexture.renderTexture +++ b/Resources/Texture/Clone Texture.renderTexture @@ -6,18 +6,19 @@ RenderTexture: m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_Name: MirrorCloneToggleTexture + m_Name: Clone Texture m_ImageContentsHash: serializedVersion: 2 Hash: 00000000000000000000000000000000 m_ForcedFallbackFormat: 4 m_DownscaleFallback: 0 - serializedVersion: 3 + m_IsAlphaChannelOptional: 0 + serializedVersion: 5 m_Width: 1 m_Height: 1 m_AntiAliasing: 1 m_MipCount: -1 - m_DepthFormat: 0 + m_DepthStencilFormat: 0 m_ColorFormat: 8 m_MipMap: 0 m_GenerateMips: 0 @@ -25,6 +26,7 @@ RenderTexture: m_UseDynamicScale: 0 m_BindMS: 0 m_EnableCompatibleFormat: 1 + m_EnableRandomWrite: 0 m_TextureSettings: serializedVersion: 2 m_FilterMode: 0 @@ -35,3 +37,4 @@ RenderTexture: m_WrapW: 1 m_Dimension: 2 m_VolumeDepth: 1 + m_ShadowSamplingMode: 2 diff --git a/Resources/Texture/MirrorCloneToggleTexture.renderTexture.meta b/Resources/Texture/Clone Texture.renderTexture.meta similarity index 100% rename from Resources/Texture/MirrorCloneToggleTexture.renderTexture.meta rename to Resources/Texture/Clone Texture.renderTexture.meta From 1fb8fd7b7a4dbbd1367b72d70c015d4665530129 Mon Sep 17 00:00:00 2001 From: hfcRed Date: Tue, 17 Sep 2024 11:04:29 +0200 Subject: [PATCH 11/11] Update README --- README.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index d6b09b0..2734a05 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,5 @@
- + # Mirror Clone Toggle [![Generic badge](https://img.shields.io/github/downloads/VRLabs/Mirror-Clone-Toggle/total?label=Downloads)](https://github.com/VRLabs/Mirror-Clone-Toggle/releases/latest) @@ -10,7 +10,7 @@ [![Generic badge](https://img.shields.io/discord/706913824607043605?color=%237289da&label=DISCORD&logo=Discord&style=for-the-badge)](https://discord.vrlabs.dev/) [![Generic badge](https://img.shields.io/endpoint.svg?url=https%3A%2F%2Fshieldsio-patreon.vercel.app%2Fapi%3Fusername%3Dvrlabs%26type%3Dpatrons&style=for-the-badge)](https://patreon.vrlabs.dev/) - + A system for forcing the mirror clone to be enabled ### ⬇️ [Download Latest Version](https://github.com/VRLabs/Mirror-Clone-Toggle/releases/latest) @@ -30,8 +30,8 @@ A system for forcing the mirror clone to be enabled https://github.com/user-attachments/assets/93651823-2b07-45d2-b9cf-87c1a2d8b63c -* Drag and drop the `MirrorCloneToggle` prefab onto your avatar -* Merge the `MirrorCloneToggle_FX` FX layer with your avatar's FX layer, using [Av3Manager](https://github.com/VRLabs/Avatars-3.0-Manager) +* Drag and drop the `Mirror Clone Toggle` prefab onto your avatar +* Merge the `Mirror Clone Toggle FX` FX layer with your avatar's FX layer, using [Av3Manager](https://github.com/VRLabs/Avatars-3.0-Manager) * Merge the parameter list with your avatar's parameter list ## How to use @@ -47,8 +47,8 @@ FX Animator Layers: 1 ## Hierarchy layout ```html -MirrorCloneToggle -|-MirrorCloneCamera +Mirror Clone Toggle +|-Mirror Clone Camera ``` ## Contributors