Ein Bisschen mehr Geilheit, achso und uMotion installiert
This commit is contained in:
@ -0,0 +1,105 @@
|
||||
using UnityEngine;
|
||||
using UnityEditor;
|
||||
using System.Collections;
|
||||
using System.Reflection;
|
||||
|
||||
namespace UMotionEditor
|
||||
{
|
||||
public static class AnimationCurveUtilityRecent
|
||||
{
|
||||
//********************************************************************************
|
||||
// Public Properties
|
||||
//********************************************************************************
|
||||
|
||||
public static bool WeightedTangentsImplemented
|
||||
{
|
||||
get
|
||||
{
|
||||
#if UNITY_2018_1_OR_NEWER
|
||||
return true;
|
||||
#else
|
||||
return false;
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
//********************************************************************************
|
||||
// Private Properties
|
||||
//********************************************************************************
|
||||
|
||||
//----------------------
|
||||
// Inspector
|
||||
//----------------------
|
||||
|
||||
//----------------------
|
||||
// Internal
|
||||
//----------------------
|
||||
|
||||
//********************************************************************************
|
||||
// Public Methods
|
||||
//********************************************************************************
|
||||
|
||||
public static void SetKeyWeightedMode(ref Keyframe key, int weightedMode)
|
||||
{
|
||||
#if UNITY_2018_1_OR_NEWER
|
||||
key.weightedMode = (WeightedMode)weightedMode;
|
||||
#endif
|
||||
}
|
||||
|
||||
public static int GetKeyWeightedMode(Keyframe key)
|
||||
{
|
||||
#if UNITY_2018_1_OR_NEWER
|
||||
return (int)key.weightedMode;
|
||||
#else
|
||||
return 0;
|
||||
#endif
|
||||
}
|
||||
|
||||
public static void SetKeyLeftWeight(ref Keyframe key, float weight)
|
||||
{
|
||||
#if UNITY_2018_1_OR_NEWER
|
||||
key.inWeight = weight;
|
||||
#endif
|
||||
}
|
||||
|
||||
public static float GetKeyLeftWeight(Keyframe key)
|
||||
{
|
||||
#if UNITY_2018_1_OR_NEWER
|
||||
return key.inWeight;
|
||||
#else
|
||||
return 1f / 3f;
|
||||
#endif
|
||||
}
|
||||
|
||||
public static void SetKeyRightWeight(ref Keyframe key, float weight)
|
||||
{
|
||||
#if UNITY_2018_1_OR_NEWER
|
||||
key.outWeight = weight;
|
||||
#endif
|
||||
}
|
||||
|
||||
public static float GetKeyRightWeight(Keyframe key)
|
||||
{
|
||||
#if UNITY_2018_1_OR_NEWER
|
||||
return key.outWeight;
|
||||
#else
|
||||
return 1f / 3f;
|
||||
#endif
|
||||
}
|
||||
|
||||
public static void InitializeKeyframe(int frame, float value, float inTangent, float outTangent, int weightedMode, float leftWeight, float rightWeight, out Keyframe key)
|
||||
{
|
||||
key = new Keyframe(frame, value, inTangent, outTangent);
|
||||
|
||||
#if UNITY_2018_1_OR_NEWER
|
||||
key.weightedMode = (WeightedMode)weightedMode;
|
||||
key.inWeight = leftWeight;
|
||||
key.outWeight = rightWeight;
|
||||
#endif
|
||||
}
|
||||
|
||||
//********************************************************************************
|
||||
// Private Methods
|
||||
//********************************************************************************
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,12 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 8bb13d32d833dc9428b3d5471491263c
|
||||
timeCreated: 1479194383
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@ -0,0 +1,92 @@
|
||||
using UnityEngine;
|
||||
using UnityEditor;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.ObjectModel;
|
||||
using UnityEditor.Compilation;
|
||||
#if UNITY_2021_2_OR_NEWER
|
||||
using UnityEditor.SceneManagement;
|
||||
#else
|
||||
#if UNITY_2018_3_OR_NEWER
|
||||
using UnityEditor.Experimental.SceneManagement;
|
||||
#endif
|
||||
#endif
|
||||
|
||||
namespace UMotionEditor
|
||||
{
|
||||
public static class EditorVersionCompatibilityUtility
|
||||
{
|
||||
//********************************************************************************
|
||||
// Public Properties
|
||||
//********************************************************************************
|
||||
|
||||
public static float HandlesLineThickness
|
||||
{
|
||||
get
|
||||
{
|
||||
#if UNITY_2020_2_OR_NEWER
|
||||
return Handles.lineThickness;
|
||||
#else
|
||||
return 1f;
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
//********************************************************************************
|
||||
// Private Properties
|
||||
//********************************************************************************
|
||||
|
||||
//----------------------
|
||||
// Inspector
|
||||
//----------------------
|
||||
|
||||
//----------------------
|
||||
// Internal
|
||||
//----------------------
|
||||
|
||||
//********************************************************************************
|
||||
// Public Methods
|
||||
//********************************************************************************
|
||||
|
||||
public static bool IsModelPrefab(GameObject gameObject)
|
||||
{
|
||||
#if UNITY_2018_3_OR_NEWER
|
||||
return (PrefabUtility.GetPrefabAssetType(gameObject) == PrefabAssetType.Model);
|
||||
#else
|
||||
return (PrefabUtility.GetPrefabType(gameObject) == PrefabType.ModelPrefab);
|
||||
#endif
|
||||
}
|
||||
|
||||
public static bool IsPrefab(GameObject gameObject)
|
||||
{
|
||||
#if UNITY_2018_3_OR_NEWER
|
||||
return (PrefabUtility.GetPrefabAssetType(gameObject) != PrefabAssetType.NotAPrefab);
|
||||
#else
|
||||
return (PrefabUtility.GetPrefabType(gameObject) != PrefabType.None);
|
||||
#endif
|
||||
}
|
||||
|
||||
public static bool IsInPrefabStage()
|
||||
{
|
||||
#if UNITY_2018_3_OR_NEWER
|
||||
return (PrefabStageUtility.GetCurrentPrefabStage() != null);
|
||||
#else
|
||||
return false;
|
||||
#endif
|
||||
}
|
||||
|
||||
public static void DrawWireArc(Vector3 center, Vector3 normal, Vector3 from, float angle, float radius, float thickness)
|
||||
{
|
||||
#if UNITY_2020_2_OR_NEWER
|
||||
Handles.DrawWireArc(center, normal, from, angle, radius, thickness);
|
||||
#else
|
||||
Handles.DrawWireArc(center, normal, from, angle, radius);
|
||||
#endif
|
||||
}
|
||||
|
||||
//********************************************************************************
|
||||
// Private Methods
|
||||
//********************************************************************************
|
||||
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 4f6f554bcbc4309489c3a11930042443
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@ -0,0 +1,102 @@
|
||||
using System;
|
||||
using System.Reflection;
|
||||
using UnityEngine;
|
||||
using UnityEditor;
|
||||
|
||||
namespace UMotionEditor
|
||||
{
|
||||
public static class GUICompatibilityUtility
|
||||
{
|
||||
//********************************************************************************
|
||||
// Public Properties
|
||||
//********************************************************************************
|
||||
|
||||
public static event System.Action<SceneView> OnSceneGui
|
||||
{
|
||||
add
|
||||
{
|
||||
#if UNITY_2019_1_OR_NEWER
|
||||
SceneView.duringSceneGui += value;
|
||||
#else
|
||||
legacySceneViewGUI += value;
|
||||
if (!initialized)
|
||||
{
|
||||
// Doing this in a static constructor instead caused an exception in Unity 2017.4
|
||||
SceneView.onSceneGUIDelegate += delegate(SceneView sceneView) { legacySceneViewGUI(sceneView); };
|
||||
initialized = true;
|
||||
}
|
||||
#endif
|
||||
}
|
||||
remove
|
||||
{
|
||||
#if UNITY_2019_1_OR_NEWER
|
||||
SceneView.duringSceneGui -= value;
|
||||
#else
|
||||
legacySceneViewGUI -= value;
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
//********************************************************************************
|
||||
// Private Properties
|
||||
//********************************************************************************
|
||||
|
||||
//----------------------
|
||||
// Inspector
|
||||
//----------------------
|
||||
|
||||
//----------------------
|
||||
// Internal
|
||||
//----------------------
|
||||
#if !UNITY_2019_1_OR_NEWER
|
||||
private static event System.Action<SceneView> legacySceneViewGUI;
|
||||
private static bool initialized = false;
|
||||
#endif
|
||||
|
||||
//********************************************************************************
|
||||
// Public Methods
|
||||
//********************************************************************************
|
||||
|
||||
[MenuItem("Window/UMotion Editor/Contact Support", true, 1232)]
|
||||
public static bool UMotionSupportMenuItemValidate()
|
||||
{
|
||||
CheckCurrentAssembly();
|
||||
return true;
|
||||
}
|
||||
|
||||
[MenuItem("Window/UMotion Editor/Contact Support", false, 1232)]
|
||||
public static void UMotionSupportMenuItem()
|
||||
{
|
||||
Help.BrowseURL("https://support.soxware.com");
|
||||
}
|
||||
|
||||
public static Color ColorField(GUIContent label, Color value, bool showEyedropper, bool showAlpha, bool hdr, params GUILayoutOption[] options)
|
||||
{
|
||||
#if UNITY_2018_1_OR_NEWER
|
||||
return EditorGUILayout.ColorField(label, value, showEyedropper, showAlpha, hdr, options);
|
||||
#else
|
||||
return EditorGUILayout.ColorField(label, value, showEyedropper, showAlpha, hdr, null, options);
|
||||
#endif
|
||||
}
|
||||
|
||||
//********************************************************************************
|
||||
// Private Methods
|
||||
//********************************************************************************
|
||||
|
||||
private static bool CheckCurrentAssembly()
|
||||
{
|
||||
string applicationAssemblyName = VersionCompatibilityUtility.GetCurrentAssemblyName();
|
||||
string editorAssemblyName = Assembly.GetExecutingAssembly().GetName().Name;
|
||||
|
||||
bool assemblyOk = (applicationAssemblyName == "UMotionSourceApplication") && (editorAssemblyName == "UMotionSourceEditor");
|
||||
|
||||
if (!assemblyOk)
|
||||
{
|
||||
string message = string.Format("The UMotion script files are not compiled to the correct assembly:\r\n\r\n\"{0}\"\r\n(should be \"UMotionSourceApplication\")\r\n\r\n\"{1}\"\r\n(should be \"UMotionSourceEditor\")\r\n\r\nMake sure that you haven't deleted or re-named the assembly definition files inside the UMotion folder.", applicationAssemblyName, editorAssemblyName);
|
||||
EditorUtility.DisplayDialog("UMotion - Invalid Assembly", message, "OK");
|
||||
}
|
||||
|
||||
return assemblyOk;
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 903e27eafe5bb764db202389e0fefbfa
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@ -0,0 +1,10 @@
|
||||
{
|
||||
"name": "UMotionSourceEditor",
|
||||
"references": [
|
||||
"UMotionSourceApplication"
|
||||
],
|
||||
"includePlatforms": [
|
||||
"Editor"
|
||||
],
|
||||
"excludePlatforms": []
|
||||
}
|
||||
@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: b3ddaa7f43eb8574a8d6541276fc1a67
|
||||
AssemblyDefinitionImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
Reference in New Issue
Block a user