Files
Magical-Jumping-Bean/Library/metadata/be/bea62e1faac8f9a48a4cb919ea05cb6a
T

88 lines
7.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_Namespacetx\ày¯Ø$ ëjâñªŒŸJ¨Ä›‘®P¼¦JPackages/com.unity.timeline/Editor/treeview/Drawers/Layers/MarkersLayer.csày¯ MarkersLayerª
using System;
using System.Collections.Generic;
using System.Linq;
using UnityEngine.Timeline;
namespace UnityEditor.Timeline
{
class MarkersLayer : ItemsLayer
{
public MarkersLayer(Layer layerOrder, IRowGUI parent) : base(layerOrder)
{
CreateLists(parent);
}
void CreateLists(IRowGUI parent)
{
var markerCount = parent.asset.GetMarkerCount();
if (markerCount == 0) return;
var accumulator = new List<IMarker>();
var sortedMarkers = new List<IMarker>(parent.asset.GetMarkers());
var vm = TimelineWindowViewPrefs.GetTrackViewModelData(parent.asset);
sortedMarkers.Sort((lhs, rhs) =>
{
// Sort by time first
var timeComparison = lhs.time.CompareTo(rhs.time);
if (timeComparison != 0)
return timeComparison;
// If there's a collision, sort by edit timestamp
var lhsObject = lhs as object;
var rhsObject = rhs as object;
if (lhsObject.Equals(null) || rhsObject.Equals(null))
return 0;
var lhsHash = lhsObject.GetHashCode();
var rhsHash = rhsObject.GetHashCode();
if (vm.markerTimeStamps.ContainsKey(lhsHash) && vm.markerTimeStamps.ContainsKey(rhsHash))
return vm.markerTimeStamps[lhsHash].CompareTo(vm.markerTimeStamps[rhsHash]);
return 0;
});
foreach (var current in sortedMarkers)
{
// TODO: Take zoom factor into account?
if (accumulator.Count > 0 && Math.Abs(current.time - accumulator[accumulator.Count - 1].time) > TimeUtility.kTimeEpsilon)
ProcessAccumulator(accumulator, parent);
accumulator.Add(current);
}
ProcessAccumulator(accumulator, parent);
}
void ProcessAccumulator(List<IMarker> accumulator, IRowGUI parent)
{
if (accumulator.Count == 0) return;
if (accumulator.Count == 1)
{
AddItem(new TimelineMarkerGUI(accumulator[0], parent, this));
}
else
{
// Ensure that the cluster is always considered *below* the markers it contains.
var clusterZOrder = Next();
AddItem(
new TimelineMarkerClusterGUI(
accumulator.Select(m => new TimelineMarkerGUI(m, parent, this)).ToList(),
parent, this, clusterZOrder));
}
accumulator.Clear();