aha
This commit is contained in:
92
Assets/TextMesh Pro/Examples & Extras/Scripts/Benchmark03.cs
Normal file
92
Assets/TextMesh Pro/Examples & Extras/Scripts/Benchmark03.cs
Normal file
@ -0,0 +1,92 @@
|
||||
using UnityEngine;
|
||||
using System.Collections;
|
||||
using UnityEngine.TextCore.LowLevel;
|
||||
|
||||
|
||||
namespace TMPro.Examples
|
||||
{
|
||||
|
||||
public class Benchmark03 : MonoBehaviour
|
||||
{
|
||||
public enum BenchmarkType { TMP_SDF_MOBILE = 0, TMP_SDF__MOBILE_SSD = 1, TMP_SDF = 2, TMP_BITMAP_MOBILE = 3, TEXTMESH_BITMAP = 4 }
|
||||
|
||||
public int NumberOfSamples = 100;
|
||||
public BenchmarkType Benchmark;
|
||||
|
||||
public Font SourceFont;
|
||||
|
||||
|
||||
void Awake()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
|
||||
void Start()
|
||||
{
|
||||
TMP_FontAsset fontAsset = null;
|
||||
|
||||
// Create Dynamic Font Asset for the given font file.
|
||||
switch (Benchmark)
|
||||
{
|
||||
case BenchmarkType.TMP_SDF_MOBILE:
|
||||
fontAsset = TMP_FontAsset.CreateFontAsset(SourceFont, 90, 9, GlyphRenderMode.SDFAA, 256, 256, AtlasPopulationMode.Dynamic);
|
||||
break;
|
||||
case BenchmarkType.TMP_SDF__MOBILE_SSD:
|
||||
fontAsset = TMP_FontAsset.CreateFontAsset(SourceFont, 90, 9, GlyphRenderMode.SDFAA, 256, 256, AtlasPopulationMode.Dynamic);
|
||||
fontAsset.material.shader = Shader.Find("TextMeshPro/Mobile/Distance Field SSD");
|
||||
break;
|
||||
case BenchmarkType.TMP_SDF:
|
||||
fontAsset = TMP_FontAsset.CreateFontAsset(SourceFont, 90, 9, GlyphRenderMode.SDFAA, 256, 256, AtlasPopulationMode.Dynamic);
|
||||
fontAsset.material.shader = Shader.Find("TextMeshPro/Distance Field");
|
||||
break;
|
||||
case BenchmarkType.TMP_BITMAP_MOBILE:
|
||||
fontAsset = TMP_FontAsset.CreateFontAsset(SourceFont, 90, 9, GlyphRenderMode.SMOOTH, 256, 256, AtlasPopulationMode.Dynamic);
|
||||
break;
|
||||
}
|
||||
|
||||
for (int i = 0; i < NumberOfSamples; i++)
|
||||
{
|
||||
switch (Benchmark)
|
||||
{
|
||||
case BenchmarkType.TMP_SDF_MOBILE:
|
||||
case BenchmarkType.TMP_SDF__MOBILE_SSD:
|
||||
case BenchmarkType.TMP_SDF:
|
||||
case BenchmarkType.TMP_BITMAP_MOBILE:
|
||||
{
|
||||
GameObject go = new GameObject();
|
||||
go.transform.position = new Vector3(0, 1.2f, 0);
|
||||
|
||||
TextMeshPro textComponent = go.AddComponent<TextMeshPro>();
|
||||
textComponent.font = fontAsset;
|
||||
textComponent.fontSize = 128;
|
||||
textComponent.text = "@";
|
||||
textComponent.alignment = TextAlignmentOptions.Center;
|
||||
textComponent.color = new Color32(255, 255, 0, 255);
|
||||
|
||||
if (Benchmark == BenchmarkType.TMP_BITMAP_MOBILE)
|
||||
textComponent.fontSize = 132;
|
||||
|
||||
}
|
||||
break;
|
||||
case BenchmarkType.TEXTMESH_BITMAP:
|
||||
{
|
||||
GameObject go = new GameObject();
|
||||
go.transform.position = new Vector3(0, 1.2f, 0);
|
||||
|
||||
TextMesh textMesh = go.AddComponent<TextMesh>();
|
||||
textMesh.GetComponent<Renderer>().sharedMaterial = SourceFont.material;
|
||||
textMesh.font = SourceFont;
|
||||
textMesh.anchor = TextAnchor.MiddleCenter;
|
||||
textMesh.fontSize = 130;
|
||||
|
||||
textMesh.color = new Color32(255, 255, 0, 255);
|
||||
textMesh.text = "@";
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user