Files
Magical-Jumping-Bean/Library/metadata/9a/9a371bcbba2084dd0a8ebc6826aa8794
T

116 lines
9.8 KiB
Plaintext
Raw Normal View History

2019-09-29 19:40:54 -04:00
í'2019.2.3f1þÿÿÿÿÿ’3$øÌuñ옲e+ Í=^7€ÿÿÿÿ€¦€²€Ѐ¦€¦€¦€#¦€+H€3ÿÿÿÿ€1€1€ÿÿÿÿ@Þ€€ Q€j€
H€<ÿÿÿÿ €1€1€ÿÿÿÿ @Þ€€
Q€j€Õ€Iÿÿÿÿ€1€1€ÿÿÿÿÀÞ€€H€j€ÿÿÿÿ€1€1€ÿÿÿÿ@Þ€€Q€j€™€PAssetMetaDataguiddata[0]data[1]data[2]data[3]pathNameoriginalNamelabelsassetStoreRef ÿÿfš†!ë5˜9Ý4QÁóBí7€ÿÿÿÿ€¦€²€
E€ Þ€#€.€,€5a€ Þ€#€.€,€†€r€ Þ€# €.€,
€H€«€ÿÿÿÿ €1€1€ÿÿÿÿ @Þ€€
Q€j€ñ€JÿÿÿÿÀ1€1€ÿÿÿÿ€Þ€€€j€ÿÿÿÿ€\›€ÿÿÿÿ€H€rÿÿÿÿ€1€1€ÿÿÿÿ@Þ€€Q€j€H€wÿÿÿÿ€1€1€ÿÿÿÿ@Þ€€Q€j€H€€ÿÿÿÿ€1€1€ÿÿÿÿ@Þ€€Q€j€y€
€ Þ€#!€.€,"€€…ÿÿÿÿ#@1€1€ÿÿÿÿ$Þ€€%.€j€&Õ€“ÿÿÿÿ'€1€1€ÿÿÿÿ(ÀÞ€€)€j€ÿÿÿÿ*€H€›€ÿÿÿÿ+€1€1€ÿÿÿÿ,@Þ€€-Q€j€.y€
€ /Þ€#0€.€,1€ €§2@¾€¶ 3@Þ€#4€.€,5€H€»ÿÿÿÿ6€1€1€ÿÿÿÿ7@Þ€€8Q€j€9H€Æÿÿÿÿ:€1€1€ÿÿÿÿ;@Þ€€<Q€j€=H€Øÿÿÿÿ>€1€1€ÿÿÿÿ?@Þ€€@Q€j€AMonoImporterPPtr<EditorExtension>m_FileIDm_PathIDPPtr<PrefabInstance>m_ExternalObjectsSourceAssetIdentifiertypeassemblynamem_UsedFileIDsm_DefaultReferencesexecutionOrdericonm_UserDatam_AssetBundleNamem_AssetBundleVariantsÿÿ£Gñ×Ü�Z56 :!@iÁJ*�€7€ÿÿÿÿ€¦€²€E€ Þ€€.€€(a€ Þ€€.€€†€r€ Þ€ €.€
€H€«€ÿÿÿÿ €1€1€ÿÿÿÿ @Þ€€
Q€j€H€ê€ÿÿÿÿ€1€1€ÿÿÿÿ@Þ€€Q€j€ñ€=ÿÿÿÿ€1€1€ÿÿÿÿ€Þ€€€j€ÿÿÿÿ€H€›€ÿÿÿÿ€1€1€ÿÿÿÿ@Þ€€Q€j€y€
€ Þ€€.€€y€Q Þ€€.€ €Þ€X!H€iÿÿÿÿ"€1€1€ÿÿÿÿ#@Þ€€$Q€j€%H€uÿÿÿÿ&€1€1€ÿÿÿÿ'@Þ€€(Q€j€)PPtr<EditorExtension>m_FileIDm_PathIDPPtr<PrefabInstance>m_DefaultReferencesm_Iconm_ExecutionOrderm_ClassNamem_Namespace€€\ày¯à ©s±¼«HÝ èˆbªxIWPackages/com.unity.timeline/Editor/inspectors/CurvesOwner/CurvesOwnerInspectorHelper.csày¯CurvesOwnerInspectorHelper†using System;
using UnityEngine;
using UnityEngine.Timeline;
namespace UnityEditor.Timeline
{
static class CurvesOwnerInspectorHelper
{
// Because what is animated is not the asset, but the instanced playable,
// we apply the animation clip here to preview what is being shown
// This could be improved doing something more inline with animation mode,
// and reverting values that aren't be recorded later to avoid dirtying the asset
public static void PreparePlayableAsset(ICurvesOwnerInspectorWrapper wrapper)
{
if (Event.current.type != EventType.Repaint)
return;
if (wrapper.serializedPlayableAsset == null)
return;
var curvesOwner = wrapper.curvesOwner;
if (curvesOwner == null || curvesOwner.curves == null)
return;
var timelineWindow = TimelineWindow.instance;
if (timelineWindow == null || timelineWindow.state == null)
return;
// requires preview mode. reset the eval time so previous value is correct value is displayed while toggling
if (!timelineWindow.state.previewMode)
{
wrapper.lastEvalTime = -1;
return;
}
var time = wrapper.ToLocalTime(timelineWindow.state.editSequence.time);
// detect if the time has changed, or if the curves have changed
if (Math.Abs(wrapper.lastEvalTime - time) < TimeUtility.kTimeEpsilon)
{
int curveVersion = AnimationClipCurveCache.Instance.GetCurveInfo(curvesOwner.curves).version;
if (curveVersion == wrapper.lastCurveVersion)
return;
wrapper.lastCurveVersion = curveVersion;
}
wrapper.lastEvalTime = time;
var clipInfo = AnimationClipCurveCache.Instance.GetCurveInfo(curvesOwner.curves);
int count = clipInfo.bindings.Length;
if (count == 0)
return;
wrapper.serializedPlayableAsset.Update();
var prop = wrapper.serializedPlayableAsset.GetIterator();
while (prop.NextVisible(true))
{
if (curvesOwner.IsParameterAnimated(prop.propertyPath))
{
var curve = curvesOwner.GetAnimatedParameter(prop.propertyPath);
switch (prop.propertyType)
{
case SerializedPropertyType.Boolean:
prop.boolValue = curve.Evaluate((float)time) > 0;
break;
case SerializedPropertyType.Float:
prop.floatValue = curve.Evaluate((float)time);
break;
case SerializedPropertyType.Integer:
prop.intValue = Mathf.FloorToInt(curve.Evaluate((float)time));
break;
case SerializedPropertyType.Color:
SetAnimatedValue(curvesOwner, prop, "r", time);
SetAnimatedValue(curvesOwner, prop, "g", time);
SetAnimatedValue(curvesOwner, prop, "b", time);
SetAnimatedValue(curvesOwner, prop, "a", time);
break;
case SerializedPropertyType.Quaternion:
case SerializedPropertyType.Vector4:
SetAnimatedValue(curvesOwner, prop, "w", time);
goto case SerializedPropertyType.Vector3;
case SerializedPropertyType.Vector3:
SetAnimatedValue(curvesOwner, prop, "z", time);
goto case SerializedPropertyType.Vector2;
case SerializedPropertyType.Vector2:
SetAnimatedValue(curvesOwner, prop, "x", time);
SetAnimatedValue(curvesOwner, prop, "y", time);
break;
}
}
}
wrapper.serializedPlayableAsset.ApplyModifiedPropertiesWithoutUndo();
}
static void SetAnimatedValue(ICurvesOwner clip, SerializedProperty property, string path, double localTime)
{
var prop = property.FindPropertyRelative(path);
if (prop != null)
{
var curve = clip.GetAnimatedParameter(prop.propertyPath);
if (curve != null)
prop.floatValue = curve.Evaluate((float)localTime);
}