Files
Magical-Jumping-Bean/Library/metadata/e8/e801faa3b0dd2478dbe801a2441b679e
T

69 lines
7.0 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€jH€wÿÿÿÿ1€1€ÿÿÿÿ@ÞQ€jH€€ÿÿÿÿ1€1€ÿÿÿÿ@ÞQ€jy
 Þ€#!.€,"€…ÿÿÿÿ#@1€1€ÿÿÿÿ$Þ%.€j&Õ€“ÿÿÿÿ'1€1€ÿÿÿÿ(ÀÞ)€j€ÿÿÿÿ*H€›€ÿÿÿÿ+1€1€ÿÿÿÿ,@Þ-Q€j.y
 /Þ€#0.€,1 €§2@¾€¶ 3@Þ€#4.€,5H€»ÿÿÿÿ61€1€ÿÿÿÿ7@Þ8Q€j9H€Æÿÿÿÿ:1€1€ÿÿÿÿ;@Þ<Q€j=H€Øÿÿÿÿ>1€1€ÿÿÿÿ?@Þ@Q€jAMonoImporterPPtr<EditorExtension>m_FileIDm_PathIDPPtr<PrefabInstance>m_ExternalObjectsSourceAssetIdentifiertypeassemblynamem_UsedFileIDsm_DefaultReferencesexecutionOrdericonm_UserDatam_AssetBundleNamem_AssetBundleVariantsÿÿ£Gñ×ÜZ56 :!@iÁJ*€7€ÿÿÿÿ¦€²E Þ.(a Þ.€r Þ .
H€«€ÿÿÿÿ 1€1€ÿÿÿÿ @Þ
Q€jH€ê€ÿÿÿÿ1€1€ÿÿÿÿ@ÞQ€jñ€=ÿÿÿÿ1€1€ÿÿÿÿÞ€j€ÿÿÿÿH€›€ÿÿÿÿ1€1€ÿÿÿÿ@ÞQ€jy
 Þ.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_Namespacepp\ày¯ÐLޝ: ÝB‡½Ž*D±véFPackages/com.unity.timeline/Editor/Utilities/ControlPlayableUtility.csày¯ControlPlayableUtility¹using System.Collections.Generic;
using UnityEngine.Playables;
using UnityEngine.Timeline;
namespace UnityEditor.Timeline
{
static class ControlPlayableUtility
{
public static bool DetectCycle(
ControlPlayableAsset asset, PlayableDirector director, HashSet<PlayableDirector> set = null)
{
if (director == null || asset == null || !asset.updateDirector)
return false;
if (set == null)
set = new HashSet<PlayableDirector>();
if (set.Contains(director))
return true;
var gameObject = asset.sourceGameObject.Resolve(director);
if (gameObject == null)
return false;
set.Add(director);
foreach (var subDirector in asset.GetComponent<PlayableDirector>(gameObject))
{
foreach (var childAsset in GetPlayableAssets(subDirector))
{
if (DetectCycle(childAsset, subDirector, set))
return true;
}
}
set.Remove(director);
return false;
}
public static IEnumerable<ControlPlayableAsset> GetPlayableAssets(PlayableDirector director)
{
var timeline = director != null ? (director.playableAsset as TimelineAsset) : null;
if (timeline != null)
{
foreach (var t in timeline.GetOutputTracks())
{
var controlTrack = t as ControlTrack;
if (controlTrack != null)
{
foreach (var c in t.GetClips())
{
var asset = c.asset as ControlPlayableAsset;
if (asset != null)
yield return asset;
}
}
}
}