Files
Magical-Jumping-Bean/Library/metadata/a5/a55fb7b4961a425381d1282fc424f966
T

185 lines
11 KiB
Plaintext
Raw Normal View History

2019-09-29 19:40:54 -04:00
í,D2019.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¯ÐdZõ{Ki¡$5‚òLBŸfEPackages/com.unity.textmeshpro/Scripts/Runtime/TMP_UpdateRegistery.csày¯TMP_UpdateRegisteryîusing UnityEngine;
using UnityEngine.UI;
using UnityEngine.UI.Collections;
using System.Collections;
using System.Collections.Generic;
namespace TMPro
{
/// <summary>
/// Class for handling and scheduling text object updates.
/// </summary>
public class TMP_UpdateRegistry
{
private static TMP_UpdateRegistry s_Instance;
private readonly List<ICanvasElement> m_LayoutRebuildQueue = new List<ICanvasElement>();
private Dictionary<int, int> m_LayoutQueueLookup = new Dictionary<int, int>();
private readonly List<ICanvasElement> m_GraphicRebuildQueue = new List<ICanvasElement>();
private Dictionary<int, int> m_GraphicQueueLookup = new Dictionary<int, int>();
//private bool m_PerformingLayoutUpdate;
//private bool m_PerformingGraphicUpdate;
/// <summary>
/// Get a singleton instance of the registry
/// </summary>
public static TMP_UpdateRegistry instance
{
get
{
if (TMP_UpdateRegistry.s_Instance == null)
TMP_UpdateRegistry.s_Instance = new TMP_UpdateRegistry();
return TMP_UpdateRegistry.s_Instance;
}
}
/// <summary>
/// Register to receive callback from the Canvas System.
/// </summary>
protected TMP_UpdateRegistry()
{
//Debug.Log("Adding WillRenderCanvases");
Canvas.willRenderCanvases += PerformUpdateForCanvasRendererObjects;
}
/// <summary>
/// Function to register elements which require a layout rebuild.
/// </summary>
/// <param name="element"></param>
public static void RegisterCanvasElementForLayoutRebuild(ICanvasElement element)
{
TMP_UpdateRegistry.instance.InternalRegisterCanvasElementForLayoutRebuild(element);
}
private bool InternalRegisterCanvasElementForLayoutRebuild(ICanvasElement element)
{
int id = (element as Object).GetInstanceID();
if (this.m_LayoutQueueLookup.ContainsKey(id))
return false;
m_LayoutQueueLookup[id] = id;
this.m_LayoutRebuildQueue.Add(element);
return true;
}
/// <summary>
/// Function to register elements which require a graphic rebuild.
/// </summary>
/// <param name="element"></param>
public static void RegisterCanvasElementForGraphicRebuild(ICanvasElement element)
{
TMP_UpdateRegistry.instance.InternalRegisterCanvasElementForGraphicRebuild(element);
}
private bool InternalRegisterCanvasElementForGraphicRebuild(ICanvasElement element)
{
int id = (element as Object).GetInstanceID();
if (this.m_GraphicQueueLookup.ContainsKey(id))
return false;
m_GraphicQueueLookup[id] = id;
this.m_GraphicRebuildQueue.Add(element);
return true;
}
/// <summary>
/// Method to handle objects that need updating.
/// </summary>
private void PerformUpdateForCanvasRendererObjects()
{
//Debug.Log("Performing update of CanvasRenderer objects at Frame: " + Time.frameCount);
// Processing elements that require a layout rebuild.
//this.m_PerformingLayoutUpdate = true;
for (int index = 0; index < m_LayoutRebuildQueue.Count; index++)
{
ICanvasElement element = TMP_UpdateRegistry.instance.m_LayoutRebuildQueue[index];
element.Rebuild(CanvasUpdate.Prelayout);
}
if (m_LayoutRebuildQueue.Count > 0)
{
m_LayoutRebuildQueue.Clear();
m_LayoutQueueLookup.Clear();
}
// Update font assets before graphic rebuild
// Processing elements that require a graphic rebuild.
for (int index = 0; index < m_GraphicRebuildQueue.Count; index++)
{
ICanvasElement element = TMP_UpdateRegistry.instance.m_GraphicRebuildQueue[index];
element.Rebuild(CanvasUpdate.PreRender);
}
// If there are no objects in the queue, we don't need to clear the lists again.
if (m_GraphicRebuildQueue.Count > 0)
{
m_GraphicRebuildQueue.Clear();
m_GraphicQueueLookup.Clear();
}
}
/// <summary>
/// Method to handle objects that need updating.
/// </summary>
private void PerformUpdateForMeshRendererObjects()
{
Debug.Log("Perform update of MeshRenderer objects.");
}
/// <summary>
/// Function to unregister elements which no longer require a rebuild.
/// </summary>
/// <param name="element"></param>
public static void UnRegisterCanvasElementForRebuild(ICanvasElement element)
{
TMP_UpdateRegistry.instance.InternalUnRegisterCanvasElementForLayoutRebuild(element);
TMP_UpdateRegistry.instance.InternalUnRegisterCanvasElementForGraphicRebuild(element);
}
private void InternalUnRegisterCanvasElementForLayoutRebuild(ICanvasElement element)
{
int id = (element as Object).GetInstanceID();
//element.LayoutComplete();
TMP_UpdateRegistry.instance.m_LayoutRebuildQueue.Remove(element);
m_GraphicQueueLookup.Remove(id);
}
private void InternalUnRegisterCanvasElementForGraphicRebuild(ICanvasElement element)
{
int id = (element as Object).GetInstanceID();
//element.GraphicUpdateComplete();
TMP_UpdateRegistry.instance.m_GraphicRebuildQueue.Remove(element);
m_LayoutQueueLookup.Remove(id);