summaryrefslogtreecommitdiff
path: root/Library/Artifacts/ef/ef1cf0f1e552f9fcc5cef32223a1aa08
blob: 438a13d7a7b28a3f71bf7a2ef52e63c2752612d8 (plain)
ofshex dumpascii
0000 00 00 0f 81 00 01 4c dc 00 00 00 15 00 00 10 00 00 00 00 00 32 30 31 39 2e 33 2e 36 66 31 00 fe ......L.............2019.3.6f1..
0020 ff ff ff 01 02 00 00 00 0b 04 00 00 00 ff ff 66 9a 86 21 eb 14 35 98 39 dd 34 1d 51 0e c1 f3 42 ...............f..!..5.9.4.Q...B
0040 00 00 00 ed 00 00 00 02 00 00 00 00 00 00 00 37 00 00 80 ff ff ff ff 00 00 00 00 00 80 00 00 00 ...............7................
0060 00 00 00 00 00 00 00 01 00 01 00 a6 03 00 80 b2 01 00 80 04 00 00 00 01 00 00 00 01 00 00 00 00 ................................
0080 00 00 00 00 00 00 00 01 00 01 00 0d 00 00 00 45 04 00 80 0c 00 00 00 02 00 00 00 01 00 00 00 00 ...............E................
00a0 00 00 00 00 00 00 00 01 00 02 00 de 00 00 80 23 00 00 00 04 00 00 00 03 00 00 00 01 00 80 00 00 ...............#................
00c0 00 00 00 00 00 00 00 01 00 02 00 2e 03 00 80 2c 00 00 00 08 00 00 00 04 00 00 00 01 00 80 00 00 ...............,................
00e0 00 00 00 00 00 00 00 01 00 01 00 35 00 00 00 61 04 00 80 0c 00 00 00 05 00 00 00 01 00 00 00 00 ...........5...a................
0100 00 00 00 00 00 00 00 01 00 02 00 de 00 00 80 23 00 00 00 04 00 00 00 06 00 00 00 01 00 80 00 00 ...............#................
0120 00 00 00 00 00 00 00 01 00 02 00 2e 03 00 80 2c 00 00 00 08 00 00 00 07 00 00 00 01 00 80 00 00 ...............,................
0140 00 00 00 00 00 00 00 01 00 01 00 86 02 00 80 72 04 00 80 0c 00 00 00 08 00 00 00 01 00 00 00 00 ...............r................
0160 00 00 00 00 00 00 00 01 00 02 00 de 00 00 80 23 00 00 00 04 00 00 00 09 00 00 00 01 00 80 00 00 ...............#................
0180 00 00 00 00 00 00 00 01 00 02 00 2e 03 00 80 2c 00 00 00 08 00 00 00 0a 00 00 00 01 00 80 00 00 ...............,................
01a0 00 00 00 00 00 00 00 01 00 01 00 48 03 00 80 ab 01 00 80 ff ff ff ff 0b 00 00 00 01 80 08 00 00 ...........H....................
01c0 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 00 00 80 ff ff ff ff 0c 00 00 00 01 40 08 00 00 ...........1...1............@...
01e0 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b 03 00 80 04 00 00 00 0d 00 00 00 01 00 08 00 00 ................................
0200 00 00 00 00 00 00 00 01 00 03 00 51 00 00 80 6a 00 00 80 01 00 00 00 0e 00 00 00 01 00 08 00 00 ...........Q...j................
0220 00 00 00 00 00 00 00 01 00 01 00 f1 00 00 80 4a 00 00 00 ff ff ff ff 0f 00 00 00 00 c0 00 00 00 ...............J................
0240 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 00 00 80 ff ff ff ff 10 00 00 00 00 80 00 00 00 ...........1...1................
0260 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b 03 00 80 04 00 00 00 11 00 00 00 00 00 00 00 00 ................................
0280 00 00 00 00 00 00 00 01 00 03 00 1f 02 00 80 6a 00 00 80 ff ff ff ff 12 00 00 00 00 80 00 00 00 ...............j................
02a0 00 00 00 00 00 00 00 01 00 04 00 5c 00 00 00 9b 00 00 80 ff ff ff ff 13 00 00 00 00 80 00 00 00 ...........\....................
02c0 00 00 00 00 00 00 00 01 00 05 00 48 03 00 80 72 00 00 00 ff ff ff ff 14 00 00 00 00 80 00 00 00 ...........H...r................
02e0 00 00 00 00 00 00 00 01 00 06 01 31 00 00 80 31 00 00 80 ff ff ff ff 15 00 00 00 01 40 00 00 00 ...........1...1............@...
0300 00 00 00 00 00 00 00 01 00 07 00 de 00 00 80 1b 03 00 80 04 00 00 00 16 00 00 00 01 00 00 00 00 ................................
0320 00 00 00 00 00 00 00 01 00 07 00 51 00 00 80 6a 00 00 80 01 00 00 00 17 00 00 00 01 00 00 00 00 ...........Q...j................
0340 00 00 00 00 00 00 00 01 00 05 00 48 03 00 80 77 00 00 00 ff ff ff ff 18 00 00 00 00 80 00 00 00 ...........H...w................
0360 00 00 00 00 00 00 00 01 00 06 01 31 00 00 80 31 00 00 80 ff ff ff ff 19 00 00 00 01 40 00 00 00 ...........1...1............@...
0380 00 00 00 00 00 00 00 01 00 07 00 de 00 00 80 1b 03 00 80 04 00 00 00 1a 00 00 00 01 00 00 00 00 ................................
03a0 00 00 00 00 00 00 00 01 00 07 00 51 00 00 80 6a 00 00 80 01 00 00 00 1b 00 00 00 01 00 00 00 00 ...........Q...j................
03c0 00 00 00 00 00 00 00 01 00 05 00 48 03 00 80 80 00 00 00 ff ff ff ff 1c 00 00 00 00 80 00 00 00 ...........H....................
03e0 00 00 00 00 00 00 00 01 00 06 01 31 00 00 80 31 00 00 80 ff ff ff ff 1d 00 00 00 01 40 00 00 00 ...........1...1............@...
0400 00 00 00 00 00 00 00 01 00 07 00 de 00 00 80 1b 03 00 80 04 00 00 00 1e 00 00 00 01 00 00 00 00 ................................
0420 00 00 00 00 00 00 00 01 00 07 00 51 00 00 80 6a 00 00 80 01 00 00 00 1f 00 00 00 01 00 00 00 00 ...........Q...j................
0440 00 00 00 00 00 00 00 01 00 04 00 79 02 00 80 0a 03 00 80 0c 00 00 00 20 00 00 00 00 00 00 00 00 ...........y....................
0460 00 00 00 00 00 00 00 01 00 05 00 de 00 00 80 23 00 00 00 04 00 00 00 21 00 00 00 01 00 80 00 00 ...............#.......!........
0480 00 00 00 00 00 00 00 01 00 05 00 2e 03 00 80 2c 00 00 00 08 00 00 00 22 00 00 00 01 00 80 00 00 ...............,......."........
04a0 00 00 00 00 00 00 00 01 00 01 00 11 03 00 80 85 00 00 00 ff ff ff ff 23 00 00 00 01 40 08 00 00 .......................#....@...
04c0 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 00 00 80 ff ff ff ff 24 00 00 00 01 00 08 00 00 ...........1...1.......$........
04e0 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b 03 00 80 04 00 00 00 25 00 00 00 01 00 08 00 00 .......................%........
0500 00 00 00 00 00 00 00 01 00 03 00 2e 03 00 80 6a 00 00 80 08 00 00 00 26 00 00 00 01 00 08 00 00 ...............j.......&........
0520 00 00 00 00 00 00 00 01 00 01 00 d5 03 00 80 93 00 00 00 ff ff ff ff 27 00 00 00 00 80 00 00 00 .......................'........
0540 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 00 00 80 ff ff ff ff 28 00 00 00 00 c0 00 00 00 ...........1...1.......(........
0560 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b 03 00 80 04 00 00 00 29 00 00 00 00 00 00 00 00 .......................)........
0580 00 00 00 00 00 00 00 01 00 03 00 1f 02 00 80 6a 00 00 80 ff ff ff ff 2a 00 00 00 00 80 00 00 00 ...............j.......*........
05a0 00 00 00 00 00 00 00 01 00 04 00 48 03 00 80 9b 00 00 80 ff ff ff ff 2b 00 00 00 00 80 00 00 00 ...........H...........+........
05c0 00 00 00 00 00 00 00 01 00 05 01 31 00 00 80 31 00 00 80 ff ff ff ff 2c 00 00 00 01 40 00 00 00 ...........1...1.......,....@...
05e0 00 00 00 00 00 00 00 01 00 06 00 de 00 00 80 1b 03 00 80 04 00 00 00 2d 00 00 00 01 00 00 00 00 .......................-........
0600 00 00 00 00 00 00 00 01 00 06 00 51 00 00 80 6a 00 00 80 01 00 00 00 2e 00 00 00 01 00 00 00 00 ...........Q...j................
0620 00 00 00 00 00 00 00 01 00 04 00 79 02 00 80 0a 03 00 80 0c 00 00 00 2f 00 00 00 00 00 00 00 00 ...........y.........../........
0640 00 00 00 00 00 00 00 01 00 05 00 de 00 00 80 23 00 00 00 04 00 00 00 30 00 00 00 01 00 80 00 00 ...............#.......0........
0660 00 00 00 00 00 00 00 01 00 05 00 2e 03 00 80 2c 00 00 00 08 00 00 00 31 00 00 00 01 00 80 00 00 ...............,.......1........
0680 00 00 00 00 00 00 00 01 00 01 00 20 03 00 80 a7 00 00 00 02 00 00 00 32 00 00 00 00 40 00 00 00 .......................2....@...
06a0 00 00 00 00 00 00 00 01 00 01 00 be 02 00 80 b6 00 00 00 0c 00 00 00 33 00 00 00 00 40 00 00 00 .......................3....@...
06c0 00 00 00 00 00 00 00 01 00 02 00 de 00 00 80 23 00 00 00 04 00 00 00 34 00 00 00 01 00 80 00 00 ...............#.......4........
06e0 00 00 00 00 00 00 00 01 00 02 00 2e 03 00 80 2c 00 00 00 08 00 00 00 35 00 00 00 01 00 80 00 00 ...............,.......5........
0700 00 00 00 00 00 00 00 01 00 01 00 48 03 00 80 bb 00 00 00 ff ff ff ff 36 00 00 00 01 80 00 00 00 ...........H...........6........
0720 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 00 00 80 ff ff ff ff 37 00 00 00 01 40 00 00 00 ...........1...1.......7....@...
0740 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b 03 00 80 04 00 00 00 38 00 00 00 01 00 00 00 00 .......................8........
0760 00 00 00 00 00 00 00 01 00 03 00 51 00 00 80 6a 00 00 80 01 00 00 00 39 00 00 00 01 00 00 00 00 ...........Q...j.......9........
0780 00 00 00 00 00 00 00 01 00 01 00 48 03 00 80 c6 00 00 00 ff ff ff ff 3a 00 00 00 01 80 00 00 00 ...........H...........:........
07a0 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 00 00 80 ff ff ff ff 3b 00 00 00 01 40 00 00 00 ...........1...1.......;....@...
07c0 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b 03 00 80 04 00 00 00 3c 00 00 00 01 00 00 00 00 .......................<........
07e0 00 00 00 00 00 00 00 01 00 03 00 51 00 00 80 6a 00 00 80 01 00 00 00 3d 00 00 00 01 00 00 00 00 ...........Q...j.......=........
0800 00 00 00 00 00 00 00 01 00 01 00 48 03 00 80 d8 00 00 00 ff ff ff ff 3e 00 00 00 01 80 00 00 00 ...........H...........>........
0820 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 00 00 80 ff ff ff ff 3f 00 00 00 01 40 00 00 00 ...........1...1.......?....@...
0840 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b 03 00 80 04 00 00 00 40 00 00 00 01 00 00 00 00 .......................@........
0860 00 00 00 00 00 00 00 01 00 03 00 51 00 00 80 6a 00 00 80 01 00 00 00 41 00 00 00 01 00 00 00 00 ...........Q...j.......A........
0880 00 00 00 00 00 00 00 4d 6f 6e 6f 49 6d 70 6f 72 74 65 72 00 50 50 74 72 3c 45 64 69 74 6f 72 45 .......MonoImporter.PPtr<EditorE
08a0 78 74 65 6e 73 69 6f 6e 3e 00 6d 5f 46 69 6c 65 49 44 00 6d 5f 50 61 74 68 49 44 00 50 50 74 72 xtension>.m_FileID.m_PathID.PPtr
08c0 3c 50 72 65 66 61 62 49 6e 73 74 61 6e 63 65 3e 00 6d 5f 45 78 74 65 72 6e 61 6c 4f 62 6a 65 63 <PrefabInstance>.m_ExternalObjec
08e0 74 73 00 53 6f 75 72 63 65 41 73 73 65 74 49 64 65 6e 74 69 66 69 65 72 00 74 79 70 65 00 61 73 ts.SourceAssetIdentifier.type.as
0900 73 65 6d 62 6c 79 00 6e 61 6d 65 00 6d 5f 55 73 65 64 46 69 6c 65 49 44 73 00 6d 5f 44 65 66 61 sembly.name.m_UsedFileIDs.m_Defa
0920 75 6c 74 52 65 66 65 72 65 6e 63 65 73 00 65 78 65 63 75 74 69 6f 6e 4f 72 64 65 72 00 69 63 6f ultReferences.executionOrder.ico
0940 6e 00 6d 5f 55 73 65 72 44 61 74 61 00 6d 5f 41 73 73 65 74 42 75 6e 64 6c 65 4e 61 6d 65 00 6d n.m_UserData.m_AssetBundleName.m
0960 5f 41 73 73 65 74 42 75 6e 64 6c 65 56 61 72 69 61 6e 74 00 00 00 00 00 73 00 00 00 00 ff ff a3 _AssetBundleVariant.....s.......
0980 47 f1 d7 dc 8f 5a 35 36 a0 3a 21 40 69 c1 4a 2a 00 00 00 81 00 00 00 05 00 00 00 15 01 00 80 37 G....Z56.:!@i.J*...............7
09a0 00 00 80 ff ff ff ff 00 00 00 00 00 80 00 00 00 00 00 00 00 00 00 00 01 00 01 00 a6 03 00 80 b2 ................................
09c0 01 00 80 04 00 00 00 01 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 01 00 00 00 00 00 45 ...............................E
09e0 04 00 80 0c 00 00 00 02 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 02 00 de 00 00 80 16 ................................
0a00 00 00 00 04 00 00 00 03 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 02 00 2e 03 00 80 1f ................................
0a20 00 00 00 08 00 00 00 04 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 01 00 28 00 00 00 61 ...........................(...a
0a40 04 00 80 0c 00 00 00 05 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 02 00 de 00 00 80 16 ................................
0a60 00 00 00 04 00 00 00 06 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 02 00 2e 03 00 80 1f ................................
0a80 00 00 00 08 00 00 00 07 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 01 00 86 02 00 80 72 ...............................r
0aa0 04 00 80 0c 00 00 00 08 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 02 00 de 00 00 80 16 ................................
0ac0 00 00 00 04 00 00 00 09 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 02 00 2e 03 00 80 1f ................................
0ae0 00 00 00 08 00 00 00 0a 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 01 00 48 03 00 80 ab ...........................H....
0b00 01 00 80 ff ff ff ff 0b 00 00 00 01 80 08 00 00 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 ...........................1...1
0b20 00 00 80 ff ff ff ff 0c 00 00 00 01 40 08 00 00 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b ............@...................
0b40 03 00 80 04 00 00 00 0d 00 00 00 01 00 08 00 00 00 00 00 00 00 00 00 01 00 03 00 51 00 00 80 6a ...........................Q...j
0b60 00 00 80 01 00 00 00 0e 00 00 00 01 00 08 00 00 00 00 00 00 00 00 00 01 00 01 00 48 03 00 80 ea ...........................H....
0b80 01 00 80 ff ff ff ff 0f 00 00 00 01 80 00 00 00 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 ...........................1...1
0ba0 00 00 80 ff ff ff ff 10 00 00 00 01 40 00 00 00 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b ............@...................
0bc0 03 00 80 04 00 00 00 11 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 03 00 51 00 00 80 6a ...........................Q...j
0be0 00 00 80 01 00 00 00 12 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 01 00 f1 00 00 80 3d ...............................=
0c00 00 00 00 ff ff ff ff 13 00 00 00 01 80 00 00 00 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 ...........................1...1
0c20 00 00 80 ff ff ff ff 14 00 00 00 01 80 00 00 00 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b ................................
0c40 03 00 80 04 00 00 00 15 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 03 00 1f 02 00 80 6a ...............................j
0c60 00 00 80 ff ff ff ff 16 00 00 00 01 80 00 00 00 00 00 00 00 00 00 00 01 00 04 00 48 03 00 80 9b ...........................H....
0c80 00 00 80 ff ff ff ff 17 00 00 00 01 80 00 00 00 00 00 00 00 00 00 00 01 00 05 01 31 00 00 80 31 ...........................1...1
0ca0 00 00 80 ff ff ff ff 18 00 00 00 01 40 00 00 00 00 00 00 00 00 00 00 01 00 06 00 de 00 00 80 1b ............@...................
0cc0 03 00 80 04 00 00 00 19 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 06 00 51 00 00 80 6a ...........................Q...j
0ce0 00 00 80 01 00 00 00 1a 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 04 00 79 02 00 80 0a ...........................y....
0d00 03 00 80 0c 00 00 00 1b 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 05 00 de 00 00 80 16 ................................
0d20 00 00 00 04 00 00 00 1c 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 05 00 2e 03 00 80 1f ................................
0d40 00 00 00 08 00 00 00 1d 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 01 00 79 02 00 80 51 ...........................y...Q
0d60 00 00 00 0c 00 00 00 1e 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 02 00 de 00 00 80 16 ................................
0d80 00 00 00 04 00 00 00 1f 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 02 00 2e 03 00 80 1f ................................
0da0 00 00 00 08 00 00 00 20 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 01 00 de 00 00 80 58 ...............................X
0dc0 00 00 00 04 00 00 00 21 00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 01 00 01 00 48 03 00 80 69 .......!...................H...i
0de0 00 00 00 ff ff ff ff 22 00 00 00 10 80 00 00 00 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 ......."...................1...1
0e00 00 00 80 ff ff ff ff 23 00 00 00 11 40 00 00 00 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b .......#....@...................
0e20 03 00 80 04 00 00 00 24 00 00 00 11 00 00 00 00 00 00 00 00 00 00 00 01 00 03 00 51 00 00 80 6a .......$...................Q...j
0e40 00 00 80 01 00 00 00 25 00 00 00 11 00 00 00 00 00 00 00 00 00 00 00 01 00 01 00 48 03 00 80 75 .......%...................H...u
0e60 00 00 00 ff ff ff ff 26 00 00 00 10 80 00 00 00 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 .......&...................1...1
0e80 00 00 80 ff ff ff ff 27 00 00 00 11 40 00 00 00 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b .......'....@...................
0ea0 03 00 80 04 00 00 00 28 00 00 00 11 00 00 00 00 00 00 00 00 00 00 00 01 00 03 00 51 00 00 80 6a .......(...................Q...j
0ec0 00 00 80 01 00 00 00 29 00 00 00 11 00 00 00 00 00 00 00 00 00 00 00 50 50 74 72 3c 45 64 69 74 .......)...............PPtr<Edit
0ee0 6f 72 45 78 74 65 6e 73 69 6f 6e 3e 00 6d 5f 46 69 6c 65 49 44 00 6d 5f 50 61 74 68 49 44 00 50 orExtension>.m_FileID.m_PathID.P
0f00 50 74 72 3c 50 72 65 66 61 62 49 6e 73 74 61 6e 63 65 3e 00 6d 5f 44 65 66 61 75 6c 74 52 65 66 Ptr<PrefabInstance>.m_DefaultRef
0f20 65 72 65 6e 63 65 73 00 6d 5f 49 63 6f 6e 00 6d 5f 45 78 65 63 75 74 69 6f 6e 4f 72 64 65 72 00 erences.m_Icon.m_ExecutionOrder.
0f40 6d 5f 43 6c 61 73 73 4e 61 6d 65 00 6d 5f 4e 61 6d 65 73 70 61 63 65 00 00 00 00 00 02 00 00 00 m_ClassName.m_Namespace.........
0f60 03 00 00 00 00 00 00 00 00 00 00 00 5c 00 00 00 00 00 00 00 e0 79 af 00 00 00 00 00 60 00 00 00 ............\........y......`...
0f80 7c 3c 01 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |<..............................
0fa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0fc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0fe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 e0 79 af 00 00 00 00 00 00 00 00 00 .....................y..........
1040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1060 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1080 00 00 00 00 00 00 00 00 1c 00 00 00 54 4d 50 72 6f 5f 46 6f 6e 74 41 73 73 65 74 43 72 65 61 74 ............TMPro_FontAssetCreat
10a0 6f 72 57 69 6e 64 6f 77 de 3b 01 00 75 73 69 6e 67 20 53 79 73 74 65 6d 3b 0d 0a 75 73 69 6e 67 orWindow.;..using.System;..using
10c0 20 55 6e 69 74 79 45 6e 67 69 6e 65 3b 0d 0a 75 73 69 6e 67 20 55 6e 69 74 79 45 64 69 74 6f 72 .UnityEngine;..using.UnityEditor
10e0 3b 0d 0a 75 73 69 6e 67 20 53 79 73 74 65 6d 2e 43 6f 6c 6c 65 63 74 69 6f 6e 73 2e 47 65 6e 65 ;..using.System.Collections.Gene
1100 72 69 63 3b 0d 0a 75 73 69 6e 67 20 53 79 73 74 65 6d 2e 47 6c 6f 62 61 6c 69 7a 61 74 69 6f 6e ric;..using.System.Globalization
1120 3b 0d 0a 75 73 69 6e 67 20 53 79 73 74 65 6d 2e 54 68 72 65 61 64 69 6e 67 3b 0d 0a 75 73 69 6e ;..using.System.Threading;..usin
1140 67 20 53 79 73 74 65 6d 2e 49 4f 3b 0d 0a 75 73 69 6e 67 20 53 79 73 74 65 6d 2e 54 65 78 74 2e g.System.IO;..using.System.Text.
1160 52 65 67 75 6c 61 72 45 78 70 72 65 73 73 69 6f 6e 73 3b 0d 0a 75 73 69 6e 67 20 55 6e 69 74 79 RegularExpressions;..using.Unity
1180 45 6e 67 69 6e 65 2e 54 65 78 74 43 6f 72 65 3b 0d 0a 75 73 69 6e 67 20 55 6e 69 74 79 45 6e 67 Engine.TextCore;..using.UnityEng
11a0 69 6e 65 2e 54 65 78 74 43 6f 72 65 2e 4c 6f 77 4c 65 76 65 6c 3b 0d 0a 75 73 69 6e 67 20 4f 62 ine.TextCore.LowLevel;..using.Ob
11c0 6a 65 63 74 20 3d 20 55 6e 69 74 79 45 6e 67 69 6e 65 2e 4f 62 6a 65 63 74 3b 0d 0a 0d 0a 6e 61 ject.=.UnityEngine.Object;....na
11e0 6d 65 73 70 61 63 65 20 54 4d 50 72 6f 2e 45 64 69 74 6f 72 55 74 69 6c 69 74 69 65 73 0d 0a 7b mespace.TMPro.EditorUtilities..{
1200 0d 0a 20 20 20 20 70 75 62 6c 69 63 20 63 6c 61 73 73 20 54 4d 50 72 6f 5f 46 6f 6e 74 41 73 73 ......public.class.TMPro_FontAss
1220 65 74 43 72 65 61 74 6f 72 57 69 6e 64 6f 77 20 3a 20 45 64 69 74 6f 72 57 69 6e 64 6f 77 0d 0a etCreatorWindow.:.EditorWindow..
1240 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 5b 4d 65 6e 75 49 74 65 6d 28 22 57 69 6e 64 6f 77 ....{..........[MenuItem("Window
1260 2f 54 65 78 74 4d 65 73 68 50 72 6f 2f 46 6f 6e 74 20 41 73 73 65 74 20 43 72 65 61 74 6f 72 22 /TextMeshPro/Font.Asset.Creator"
1280 2c 20 66 61 6c 73 65 2c 20 32 30 32 35 29 5d 0d 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 ,.false,.2025)]..........public.
12a0 73 74 61 74 69 63 20 76 6f 69 64 20 53 68 6f 77 46 6f 6e 74 41 74 6c 61 73 43 72 65 61 74 6f 72 static.void.ShowFontAtlasCreator
12c0 57 69 6e 64 6f 77 28 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 Window()..........{.............
12e0 20 76 61 72 20 77 69 6e 64 6f 77 20 3d 20 47 65 74 57 69 6e 64 6f 77 3c 54 4d 50 72 6f 5f 46 6f .var.window.=.GetWindow<TMPro_Fo
1300 6e 74 41 73 73 65 74 43 72 65 61 74 6f 72 57 69 6e 64 6f 77 3e 28 29 3b 0d 0a 20 20 20 20 20 20 ntAssetCreatorWindow>();........
1320 20 20 20 20 20 20 77 69 6e 64 6f 77 2e 74 69 74 6c 65 43 6f 6e 74 65 6e 74 20 3d 20 6e 65 77 20 ......window.titleContent.=.new.
1340 47 55 49 43 6f 6e 74 65 6e 74 28 22 46 6f 6e 74 20 41 73 73 65 74 20 43 72 65 61 74 6f 72 22 29 GUIContent("Font.Asset.Creator")
1360 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 77 69 6e 64 6f 77 2e 46 6f 63 75 73 28 29 3b 0d 0a ;..............window.Focus();..
1380 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 4d 61 6b 65 20 73 75 72 65 20 54 4d 50 20 45 ..............//.Make.sure.TMP.E
13a0 73 73 65 6e 74 69 61 6c 20 52 65 73 6f 75 72 63 65 73 20 68 61 76 65 20 62 65 65 6e 20 69 6d 70 ssential.Resources.have.been.imp
13c0 6f 72 74 65 64 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 77 69 6e 64 6f 77 2e 43 68 65 63 6b orted...............window.Check
13e0 45 73 73 65 6e 74 69 61 6c 52 65 73 6f 75 72 63 65 73 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 7d EssentialResources();..........}
1400 0d 0a 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 76 6f 69 64 ..............public.static.void
1420 20 53 68 6f 77 46 6f 6e 74 41 74 6c 61 73 43 72 65 61 74 6f 72 57 69 6e 64 6f 77 28 46 6f 6e 74 .ShowFontAtlasCreatorWindow(Font
1440 20 73 6f 75 72 63 65 46 6f 6e 74 46 69 6c 65 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 .sourceFontFile)..........{.....
1460 20 20 20 20 20 20 20 20 20 76 61 72 20 77 69 6e 64 6f 77 20 3d 20 47 65 74 57 69 6e 64 6f 77 3c .........var.window.=.GetWindow<
1480 54 4d 50 72 6f 5f 46 6f 6e 74 41 73 73 65 74 43 72 65 61 74 6f 72 57 69 6e 64 6f 77 3e 28 29 3b TMPro_FontAssetCreatorWindow>();
14a0 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 77 69 6e 64 6f 77 2e 74 69 74 6c 65 43 6f 6e 74 ................window.titleCont
14c0 65 6e 74 20 3d 20 6e 65 77 20 47 55 49 43 6f 6e 74 65 6e 74 28 22 46 6f 6e 74 20 41 73 73 65 74 ent.=.new.GUIContent("Font.Asset
14e0 20 43 72 65 61 74 6f 72 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 77 69 6e 64 6f 77 2e .Creator");..............window.
1500 46 6f 63 75 73 28 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 77 69 6e 64 6f 77 2e 43 Focus();................window.C
1520 6c 65 61 72 47 65 6e 65 72 61 74 65 64 44 61 74 61 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 learGeneratedData();............
1540 20 20 77 69 6e 64 6f 77 2e 6d 5f 4c 65 67 61 63 79 46 6f 6e 74 41 73 73 65 74 20 3d 20 6e 75 6c ..window.m_LegacyFontAsset.=.nul
1560 6c 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 77 69 6e 64 6f 77 2e 6d 5f 53 65 6c 65 63 74 65 l;..............window.m_Selecte
1580 64 46 6f 6e 74 41 73 73 65 74 20 3d 20 6e 75 6c 6c 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 dFontAsset.=.null;..............
15a0 20 20 2f 2f 20 4f 76 65 72 72 69 64 65 20 73 65 6c 65 63 74 65 64 20 66 6f 6e 74 20 61 73 73 65 ..//.Override.selected.font.asse
15c0 74 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 77 69 6e 64 6f 77 2e 6d 5f 53 6f 75 72 63 65 46 6f t..............window.m_SourceFo
15e0 6e 74 46 69 6c 65 20 3d 20 73 6f 75 72 63 65 46 6f 6e 74 46 69 6c 65 3b 0d 0a 0d 0a 20 20 20 20 ntFile.=.sourceFontFile;........
1600 20 20 20 20 20 20 20 20 2f 2f 20 4d 61 6b 65 20 73 75 72 65 20 54 4d 50 20 45 73 73 65 6e 74 69 ........//.Make.sure.TMP.Essenti
1620 61 6c 20 52 65 73 6f 75 72 63 65 73 20 68 61 76 65 20 62 65 65 6e 20 69 6d 70 6f 72 74 65 64 2e al.Resources.have.been.imported.
1640 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 77 69 6e 64 6f 77 2e 43 68 65 63 6b 45 73 73 65 6e 74 ..............window.CheckEssent
1660 69 61 6c 52 65 73 6f 75 72 63 65 73 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 0d 0a ialResources();..........}......
1680 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 76 6f 69 64 20 53 68 6f 77 46 ........public.static.void.ShowF
16a0 6f 6e 74 41 74 6c 61 73 43 72 65 61 74 6f 72 57 69 6e 64 6f 77 28 54 4d 50 5f 46 6f 6e 74 41 73 ontAtlasCreatorWindow(TMP_FontAs
16c0 73 65 74 20 66 6f 6e 74 41 73 73 65 74 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 set.fontAsset)..........{.......
16e0 20 20 20 20 20 20 20 76 61 72 20 77 69 6e 64 6f 77 20 3d 20 47 65 74 57 69 6e 64 6f 77 3c 54 4d .......var.window.=.GetWindow<TM
1700 50 72 6f 5f 46 6f 6e 74 41 73 73 65 74 43 72 65 61 74 6f 72 57 69 6e 64 6f 77 3e 28 29 3b 0d 0a Pro_FontAssetCreatorWindow>();..
1720 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 77 69 6e 64 6f 77 2e 74 69 74 6c 65 43 6f 6e 74 65 6e ..............window.titleConten
1740 74 20 3d 20 6e 65 77 20 47 55 49 43 6f 6e 74 65 6e 74 28 22 46 6f 6e 74 20 41 73 73 65 74 20 43 t.=.new.GUIContent("Font.Asset.C
1760 72 65 61 74 6f 72 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 77 69 6e 64 6f 77 2e 46 6f reator");..............window.Fo
1780 63 75 73 28 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 43 6c 65 61 72 20 61 cus();................//.Clear.a
17a0 6e 79 20 70 72 65 76 69 6f 75 73 6c 79 20 67 65 6e 65 72 61 74 65 64 20 64 61 74 61 0d 0a 20 20 ny.previously.generated.data....
17c0 20 20 20 20 20 20 20 20 20 20 77 69 6e 64 6f 77 2e 43 6c 65 61 72 47 65 6e 65 72 61 74 65 64 44 ..........window.ClearGeneratedD
17e0 61 74 61 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 77 69 6e 64 6f 77 2e 6d 5f 4c 65 67 ata();..............window.m_Leg
1800 61 63 79 46 6f 6e 74 41 73 73 65 74 20 3d 20 6e 75 6c 6c 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 acyFontAsset.=.null;............
1820 20 20 20 20 2f 2f 20 4c 6f 61 64 20 66 6f 6e 74 20 61 73 73 65 74 20 63 72 65 61 74 69 6f 6e 20 ....//.Load.font.asset.creation.
1840 73 65 74 74 69 6e 67 73 20 69 66 20 77 65 20 68 61 76 65 20 76 61 6c 69 64 20 73 65 74 74 69 6e settings.if.we.have.valid.settin
1860 67 73 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 73 74 72 69 6e 67 2e 49 73 4e 75 6c gs..............if.(string.IsNul
1880 6c 4f 72 45 6d 70 74 79 28 66 6f 6e 74 41 73 73 65 74 2e 63 72 65 61 74 69 6f 6e 53 65 74 74 69 lOrEmpty(fontAsset.creationSetti
18a0 6e 67 73 2e 73 6f 75 72 63 65 46 6f 6e 74 46 69 6c 65 47 55 49 44 29 20 3d 3d 20 66 61 6c 73 65 ngs.sourceFontFileGUID).==.false
18c0 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 )..............{................
18e0 20 20 77 69 6e 64 6f 77 2e 4c 6f 61 64 46 6f 6e 74 43 72 65 61 74 69 6f 6e 53 65 74 74 69 6e 67 ..window.LoadFontCreationSetting
1900 73 28 66 6f 6e 74 41 73 73 65 74 2e 63 72 65 61 74 69 6f 6e 53 65 74 74 69 6e 67 73 29 3b 0d 0a s(fontAsset.creationSettings);..
1920 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 4f 76 65 72 72 69 64 65 20 73 65 ..................//.Override.se
1940 74 74 69 6e 67 73 20 74 6f 20 69 6e 6a 65 63 74 20 63 68 61 72 61 63 74 65 72 20 6c 69 73 74 20 ttings.to.inject.character.list.
1960 66 72 6f 6d 20 66 6f 6e 74 20 61 73 73 65 74 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 from.font.asset.................
1980 20 77 69 6e 64 6f 77 2e 6d 5f 43 68 61 72 61 63 74 65 72 53 65 74 53 65 6c 65 63 74 69 6f 6e 4d .window.m_CharacterSetSelectionM
19a0 6f 64 65 20 3d 20 36 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 77 69 6e 64 6f 77 ode.=.6;..................window
19c0 2e 6d 5f 43 68 61 72 61 63 74 65 72 53 65 71 75 65 6e 63 65 20 3d 20 54 4d 50 5f 45 64 69 74 6f .m_CharacterSequence.=.TMP_Edito
19e0 72 55 74 69 6c 69 74 79 2e 47 65 74 55 6e 69 63 6f 64 65 43 68 61 72 61 63 74 65 72 53 65 71 75 rUtility.GetUnicodeCharacterSequ
1a00 65 6e 63 65 28 54 4d 50 5f 46 6f 6e 74 41 73 73 65 74 2e 47 65 74 43 68 61 72 61 63 74 65 72 73 ence(TMP_FontAsset.GetCharacters
1a20 41 72 72 61 79 28 66 6f 6e 74 41 73 73 65 74 29 29 3b 0d 0a 0d 0a 0d 0a 20 20 20 20 20 20 20 20 Array(fontAsset));..............
1a40 20 20 20 20 20 20 20 20 77 69 6e 64 6f 77 2e 6d 5f 52 65 66 65 72 65 6e 63 65 64 46 6f 6e 74 41 ........window.m_ReferencedFontA
1a60 73 73 65 74 20 3d 20 66 6f 6e 74 41 73 73 65 74 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 sset.=.fontAsset;...............
1a80 20 20 20 77 69 6e 64 6f 77 2e 6d 5f 53 61 76 65 64 46 6f 6e 74 41 74 6c 61 73 20 3d 20 66 6f 6e ...window.m_SavedFontAtlas.=.fon
1aa0 74 41 73 73 65 74 2e 61 74 6c 61 73 54 65 78 74 75 72 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 tAsset.atlasTexture;............
1ac0 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 65 6c 73 65 0d 0a 20 20 20 20 20 20 20 20 20 ..}..............else...........
1ae0 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 77 69 6e 64 6f 77 2e 6d 5f 57 ...{..................window.m_W
1b00 61 72 6e 69 6e 67 4d 65 73 73 61 67 65 20 3d 20 22 46 6f 6e 74 20 41 73 73 65 74 20 5b 22 20 2b arningMessage.=."Font.Asset.[".+
1b20 20 66 6f 6e 74 41 73 73 65 74 2e 6e 61 6d 65 20 2b 20 22 5d 20 64 6f 65 73 20 6e 6f 74 20 63 6f .fontAsset.name.+."].does.not.co
1b40 6e 74 61 69 6e 20 61 6e 79 20 70 72 65 76 69 6f 75 73 20 5c 22 46 6f 6e 74 20 41 73 73 65 74 20 ntain.any.previous.\"Font.Asset.
1b60 43 72 65 61 74 69 6f 6e 20 53 65 74 74 69 6e 67 73 5c 22 2e 20 54 68 69 73 20 75 73 75 61 6c 6c Creation.Settings\"..This.usuall
1b80 79 20 6d 65 61 6e 73 20 5b 22 20 2b 20 66 6f 6e 74 41 73 73 65 74 2e 6e 61 6d 65 20 2b 20 22 5d y.means.[".+.fontAsset.name.+."]
1ba0 20 77 61 73 20 63 72 65 61 74 65 64 20 62 65 66 6f 72 65 20 74 68 69 73 20 6e 65 77 20 66 75 6e .was.created.before.this.new.fun
1bc0 63 74 69 6f 6e 61 6c 69 74 79 20 77 61 73 20 61 64 64 65 64 2e 22 3b 0d 0a 20 20 20 20 20 20 20 ctionality.was.added.";.........
1be0 20 20 20 20 20 20 20 20 20 77 69 6e 64 6f 77 2e 6d 5f 53 6f 75 72 63 65 46 6f 6e 74 46 69 6c 65 .........window.m_SourceFontFile
1c00 20 3d 20 6e 75 6c 6c 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 77 69 6e 64 6f 77 .=.null;..................window
1c20 2e 6d 5f 4c 65 67 61 63 79 46 6f 6e 74 41 73 73 65 74 20 3d 20 66 6f 6e 74 41 73 73 65 74 3b 0d .m_LegacyFontAsset.=.fontAsset;.
1c40 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f .............}................//
1c60 20 45 76 65 6e 20 69 66 20 77 65 20 64 6f 6e 27 74 20 68 61 76 65 20 61 6e 79 20 73 61 76 65 64 .Even.if.we.don't.have.any.saved
1c80 20 67 65 6e 65 72 61 74 69 6f 6e 20 73 65 74 74 69 6e 67 73 2c 20 77 65 20 73 74 69 6c 6c 20 77 .generation.settings,.we.still.w
1ca0 61 6e 74 20 74 6f 20 70 72 65 2d 73 65 6c 65 63 74 20 74 68 65 20 73 6f 75 72 63 65 20 66 6f 6e ant.to.pre-select.the.source.fon
1cc0 74 20 66 69 6c 65 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 77 69 6e 64 6f 77 2e 6d 5f 53 65 t.file...............window.m_Se
1ce0 6c 65 63 74 65 64 46 6f 6e 74 41 73 73 65 74 20 3d 20 66 6f 6e 74 41 73 73 65 74 3b 0d 0a 0d 0a lectedFontAsset.=.fontAsset;....
1d00 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 4d 61 6b 65 20 73 75 72 65 20 54 4d 50 20 45 73 73 ............//.Make.sure.TMP.Ess
1d20 65 6e 74 69 61 6c 20 52 65 73 6f 75 72 63 65 73 20 68 61 76 65 20 62 65 65 6e 20 69 6d 70 6f 72 ential.Resources.have.been.impor
1d40 74 65 64 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 77 69 6e 64 6f 77 2e 43 68 65 63 6b 45 73 ted...............window.CheckEs
1d60 73 65 6e 74 69 61 6c 52 65 73 6f 75 72 63 65 73 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a sentialResources();..........}..
1d80 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 5b 53 79 73 74 65 6d 2e 53 65 72 69 61 6c ..................[System.Serial
1da0 69 7a 61 62 6c 65 5d 0d 0a 20 20 20 20 20 20 20 20 63 6c 61 73 73 20 46 6f 6e 74 41 73 73 65 74 izable]..........class.FontAsset
1dc0 43 72 65 61 74 69 6f 6e 53 65 74 74 69 6e 67 73 43 6f 6e 74 61 69 6e 65 72 0d 0a 20 20 20 20 20 CreationSettingsContainer.......
1de0 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 4c 69 73 74 3c 46 6f ...{..............public.List<Fo
1e00 6e 74 41 73 73 65 74 43 72 65 61 74 69 6f 6e 53 65 74 74 69 6e 67 73 3e 20 66 6f 6e 74 41 73 73 ntAssetCreationSettings>.fontAss
1e20 65 74 43 72 65 61 74 69 6f 6e 53 65 74 74 69 6e 67 73 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a etCreationSettings;..........}..
1e40 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 46 6f 6e 74 41 73 73 65 74 43 72 65 61 74 ..................FontAssetCreat
1e60 69 6f 6e 53 65 74 74 69 6e 67 73 43 6f 6e 74 61 69 6e 65 72 20 6d 5f 46 6f 6e 74 41 73 73 65 74 ionSettingsContainer.m_FontAsset
1e80 43 72 65 61 74 69 6f 6e 53 65 74 74 69 6e 67 73 43 6f 6e 74 61 69 6e 65 72 3b 0d 0a 20 20 20 20 CreationSettingsContainer;......
1ea0 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 2f 2f 73 74 61 74 69 63 20 72 65 61 64 6f 6e 6c 79 20 ..............//static.readonly.
1ec0 73 74 72 69 6e 67 5b 5d 20 6d 5f 46 6f 6e 74 43 72 65 61 74 69 6f 6e 50 72 65 73 65 74 73 20 3d string[].m_FontCreationPresets.=
1ee0 20 6e 65 77 20 73 74 72 69 6e 67 5b 5d 20 7b 20 22 52 65 63 65 6e 74 20 31 22 2c 20 22 52 65 63 .new.string[].{."Recent.1",."Rec
1f00 65 6e 74 20 32 22 2c 20 22 52 65 63 65 6e 74 20 33 22 2c 20 22 52 65 63 65 6e 74 20 34 22 20 7d ent.2",."Recent.3",."Recent.4".}
1f20 3b 0d 0a 20 20 20 20 20 20 20 20 69 6e 74 20 6d 5f 46 6f 6e 74 41 73 73 65 74 43 72 65 61 74 69 ;..........int.m_FontAssetCreati
1f40 6f 6e 53 65 74 74 69 6e 67 73 43 75 72 72 65 6e 74 49 6e 64 65 78 20 3d 20 30 3b 0d 0a 0d 0a 20 onSettingsCurrentIndex.=.0;.....
1f60 20 20 20 20 20 20 20 63 6f 6e 73 74 20 73 74 72 69 6e 67 20 6b 5f 46 6f 6e 74 41 73 73 65 74 43 .......const.string.k_FontAssetC
1f80 72 65 61 74 69 6f 6e 53 65 74 74 69 6e 67 73 43 6f 6e 74 61 69 6e 65 72 4b 65 79 20 3d 20 22 54 reationSettingsContainerKey.=."T
1fa0 65 78 74 4d 65 73 68 50 72 6f 2e 46 6f 6e 74 41 73 73 65 74 43 72 65 61 74 6f 72 2e 52 65 63 65 extMeshPro.FontAssetCreator.Rece
1fc0 6e 74 46 6f 6e 74 41 73 73 65 74 43 72 65 61 74 69 6f 6e 53 65 74 74 69 6e 67 73 2e 43 6f 6e 74 ntFontAssetCreationSettings.Cont
1fe0 61 69 6e 65 72 22 3b 0d 0a 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 73 74 72 69 6e 67 20 6b 5f ainer";..........const.string.k_
2000 46 6f 6e 74 41 73 73 65 74 43 72 65 61 74 69 6f 6e 53 65 74 74 69 6e 67 73 43 75 72 72 65 6e 74 FontAssetCreationSettingsCurrent
2020 49 6e 64 65 78 4b 65 79 20 3d 20 22 54 65 78 74 4d 65 73 68 50 72 6f 2e 46 6f 6e 74 41 73 73 65 IndexKey.=."TextMeshPro.FontAsse
2040 74 43 72 65 61 74 6f 72 2e 52 65 63 65 6e 74 46 6f 6e 74 41 73 73 65 74 43 72 65 61 74 69 6f 6e tCreator.RecentFontAssetCreation
2060 53 65 74 74 69 6e 67 73 2e 43 75 72 72 65 6e 74 49 6e 64 65 78 22 3b 0d 0a 20 20 20 20 20 20 20 Settings.CurrentIndex";.........
2080 20 63 6f 6e 73 74 20 66 6c 6f 61 74 20 6b 5f 54 77 6f 43 6f 6c 75 6d 6e 43 6f 6e 74 72 6f 6c 73 .const.float.k_TwoColumnControls
20a0 57 69 64 74 68 20 3d 20 33 33 35 66 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 2f 2f 20 44 69 61 67 Width.=.335f;............//.Diag
20c0 6e 6f 73 74 69 63 73 0d 0a 20 20 20 20 20 20 20 20 53 79 73 74 65 6d 2e 44 69 61 67 6e 6f 73 74 nostics..........System.Diagnost
20e0 69 63 73 2e 53 74 6f 70 77 61 74 63 68 20 6d 5f 53 74 6f 70 57 61 74 63 68 3b 0d 0a 20 20 20 20 ics.Stopwatch.m_StopWatch;......
2100 20 20 20 20 64 6f 75 62 6c 65 20 6d 5f 47 6c 79 70 68 50 61 63 6b 69 6e 67 47 65 6e 65 72 61 74 ....double.m_GlyphPackingGenerat
2120 69 6f 6e 54 69 6d 65 3b 0d 0a 20 20 20 20 20 20 20 20 64 6f 75 62 6c 65 20 6d 5f 47 6c 79 70 68 ionTime;..........double.m_Glyph
2140 52 65 6e 64 65 72 69 6e 67 47 65 6e 65 72 61 74 69 6f 6e 54 69 6d 65 3b 0d 0a 20 20 20 20 20 20 RenderingGenerationTime;........
2160 20 20 0d 0a 20 20 20 20 20 20 20 20 73 74 72 69 6e 67 5b 5d 20 6d 5f 46 6f 6e 74 53 69 7a 69 6e ............string[].m_FontSizin
2180 67 4f 70 74 69 6f 6e 73 20 3d 20 7b 20 22 41 75 74 6f 20 53 69 7a 69 6e 67 22 2c 20 22 43 75 73 gOptions.=.{."Auto.Sizing",."Cus
21a0 74 6f 6d 20 53 69 7a 65 22 20 7d 3b 0d 0a 20 20 20 20 20 20 20 20 69 6e 74 20 6d 5f 50 6f 69 6e tom.Size".};..........int.m_Poin
21c0 74 53 69 7a 65 53 61 6d 70 6c 69 6e 67 4d 6f 64 65 3b 0d 0a 20 20 20 20 20 20 20 20 73 74 72 69 tSizeSamplingMode;..........stri
21e0 6e 67 5b 5d 20 6d 5f 46 6f 6e 74 52 65 73 6f 6c 75 74 69 6f 6e 4c 61 62 65 6c 73 20 3d 20 7b 20 ng[].m_FontResolutionLabels.=.{.
2200 22 38 22 2c 20 22 31 36 22 2c 22 33 32 22 2c 20 22 36 34 22 2c 20 22 31 32 38 22 2c 20 22 32 35 "8",."16","32",."64",."128",."25
2220 36 22 2c 20 22 35 31 32 22 2c 20 22 31 30 32 34 22 2c 20 22 32 30 34 38 22 2c 20 22 34 30 39 36 6",."512",."1024",."2048",."4096
2240 22 2c 20 22 38 31 39 32 22 20 7d 3b 0d 0a 20 20 20 20 20 20 20 20 69 6e 74 5b 5d 20 6d 5f 46 6f ",."8192".};..........int[].m_Fo
2260 6e 74 41 74 6c 61 73 52 65 73 6f 6c 75 74 69 6f 6e 73 20 3d 20 7b 20 38 2c 20 31 36 2c 20 33 32 ntAtlasResolutions.=.{.8,.16,.32
2280 2c 20 36 34 2c 20 31 32 38 2c 20 32 35 36 2c 20 35 31 32 2c 20 31 30 32 34 2c 20 32 30 34 38 2c ,.64,.128,.256,.512,.1024,.2048,
22a0 20 34 30 39 36 2c 20 38 31 39 32 20 7d 3b 0d 0a 20 20 20 20 20 20 20 20 73 74 72 69 6e 67 5b 5d .4096,.8192.};..........string[]
22c0 20 6d 5f 46 6f 6e 74 43 68 61 72 61 63 74 65 72 53 65 74 73 20 3d 20 7b 20 22 41 53 43 49 49 22 .m_FontCharacterSets.=.{."ASCII"
22e0 2c 20 22 45 78 74 65 6e 64 65 64 20 41 53 43 49 49 22 2c 20 22 41 53 43 49 49 20 4c 6f 77 65 72 ,."Extended.ASCII",."ASCII.Lower
2300 63 61 73 65 22 2c 20 22 41 53 43 49 49 20 55 70 70 65 72 63 61 73 65 22 2c 20 22 4e 75 6d 62 65 case",."ASCII.Uppercase",."Numbe
2320 72 73 20 2b 20 53 79 6d 62 6f 6c 73 22 2c 20 22 43 75 73 74 6f 6d 20 52 61 6e 67 65 22 2c 20 22 rs.+.Symbols",."Custom.Range",."
2340 55 6e 69 63 6f 64 65 20 52 61 6e 67 65 20 28 48 65 78 29 22 2c 20 22 43 75 73 74 6f 6d 20 43 68 Unicode.Range.(Hex)",."Custom.Ch
2360 61 72 61 63 74 65 72 73 22 2c 20 22 43 68 61 72 61 63 74 65 72 73 20 66 72 6f 6d 20 46 69 6c 65 aracters",."Characters.from.File
2380 22 20 7d 3b 0d 0a 20 20 20 20 20 20 20 20 65 6e 75 6d 20 46 6f 6e 74 50 61 63 6b 69 6e 67 4d 6f ".};..........enum.FontPackingMo
23a0 64 65 73 20 7b 20 46 61 73 74 20 3d 20 30 2c 20 4f 70 74 69 6d 75 6d 20 3d 20 34 20 7d 3b 0d 0a des.{.Fast.=.0,.Optimum.=.4.};..
23c0 20 20 20 20 20 20 20 20 46 6f 6e 74 50 61 63 6b 69 6e 67 4d 6f 64 65 73 20 6d 5f 50 61 63 6b 69 ........FontPackingModes.m_Packi
23e0 6e 67 4d 6f 64 65 20 3d 20 46 6f 6e 74 50 61 63 6b 69 6e 67 4d 6f 64 65 73 2e 46 61 73 74 3b 0d ngMode.=.FontPackingModes.Fast;.
2400 0a 0d 0a 20 20 20 20 20 20 20 20 69 6e 74 20 6d 5f 43 68 61 72 61 63 74 65 72 53 65 74 53 65 6c ...........int.m_CharacterSetSel
2420 65 63 74 69 6f 6e 4d 6f 64 65 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 73 74 72 69 6e 67 20 6d 5f ectionMode;............string.m_
2440 43 68 61 72 61 63 74 65 72 53 65 71 75 65 6e 63 65 20 3d 20 22 22 3b 0d 0a 20 20 20 20 20 20 20 CharacterSequence.=."";.........
2460 20 73 74 72 69 6e 67 20 6d 5f 4f 75 74 70 75 74 46 65 65 64 62 61 63 6b 20 3d 20 22 22 3b 0d 0a .string.m_OutputFeedback.=."";..
2480 20 20 20 20 20 20 20 20 73 74 72 69 6e 67 20 6d 5f 57 61 72 6e 69 6e 67 4d 65 73 73 61 67 65 3b ........string.m_WarningMessage;
24a0 0d 0a 20 20 20 20 20 20 20 20 69 6e 74 20 6d 5f 43 68 61 72 61 63 74 65 72 43 6f 75 6e 74 3b 0d ..........int.m_CharacterCount;.
24c0 0a 20 20 20 20 20 20 20 20 56 65 63 74 6f 72 32 20 6d 5f 53 63 72 6f 6c 6c 50 6f 73 69 74 69 6f .........Vector2.m_ScrollPositio
24e0 6e 3b 0d 0a 20 20 20 20 20 20 20 20 56 65 63 74 6f 72 32 20 6d 5f 4f 75 74 70 75 74 53 63 72 6f n;..........Vector2.m_OutputScro
2500 6c 6c 50 6f 73 69 74 69 6f 6e 3b 0d 0a 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 62 llPosition;....................b
2520 6f 6f 6c 20 6d 5f 49 73 52 65 70 61 69 6e 74 4e 65 65 64 65 64 3b 0d 0a 0d 0a 20 20 20 20 20 20 ool.m_IsRepaintNeeded;..........
2540 20 20 66 6c 6f 61 74 20 6d 5f 41 74 6c 61 73 47 65 6e 65 72 61 74 69 6f 6e 50 72 6f 67 72 65 73 ..float.m_AtlasGenerationProgres
2560 73 3b 0d 0a 20 20 20 20 20 20 20 20 73 74 72 69 6e 67 20 6d 5f 41 74 6c 61 73 47 65 6e 65 72 61 s;..........string.m_AtlasGenera
2580 74 69 6f 6e 50 72 6f 67 72 65 73 73 4c 61 62 65 6c 20 3d 20 73 74 72 69 6e 67 2e 45 6d 70 74 79 tionProgressLabel.=.string.Empty
25a0 3b 0d 0a 20 20 20 20 20 20 20 20 66 6c 6f 61 74 20 6d 5f 52 65 6e 64 65 72 69 6e 67 50 72 6f 67 ;..........float.m_RenderingProg
25c0 72 65 73 73 3b 0d 0a 20 20 20 20 20 20 20 20 62 6f 6f 6c 20 6d 5f 49 73 52 65 6e 64 65 72 69 6e ress;..........bool.m_IsRenderin
25e0 67 44 6f 6e 65 3b 0d 0a 20 20 20 20 20 20 20 20 62 6f 6f 6c 20 6d 5f 49 73 50 72 6f 63 65 73 73 gDone;..........bool.m_IsProcess
2600 69 6e 67 3b 0d 0a 20 20 20 20 20 20 20 20 62 6f 6f 6c 20 6d 5f 49 73 47 65 6e 65 72 61 74 69 6f ing;..........bool.m_IsGeneratio
2620 6e 44 69 73 61 62 6c 65 64 3b 0d 0a 20 20 20 20 20 20 20 20 62 6f 6f 6c 20 6d 5f 49 73 47 65 6e nDisabled;..........bool.m_IsGen
2640 65 72 61 74 69 6f 6e 43 61 6e 63 65 6c 6c 65 64 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 62 6f 6f erationCancelled;............boo
2660 6c 20 6d 5f 49 73 46 6f 6e 74 41 74 6c 61 73 49 6e 76 61 6c 69 64 3b 0d 0a 20 20 20 20 20 20 20 l.m_IsFontAtlasInvalid;.........
2680 20 4f 62 6a 65 63 74 20 6d 5f 53 6f 75 72 63 65 46 6f 6e 74 46 69 6c 65 3b 0d 0a 20 20 20 20 20 .Object.m_SourceFontFile;.......
26a0 20 20 20 54 4d 50 5f 46 6f 6e 74 41 73 73 65 74 20 6d 5f 53 65 6c 65 63 74 65 64 46 6f 6e 74 41 ...TMP_FontAsset.m_SelectedFontA
26c0 73 73 65 74 3b 0d 0a 20 20 20 20 20 20 20 20 54 4d 50 5f 46 6f 6e 74 41 73 73 65 74 20 6d 5f 4c sset;..........TMP_FontAsset.m_L
26e0 65 67 61 63 79 46 6f 6e 74 41 73 73 65 74 3b 0d 0a 20 20 20 20 20 20 20 20 54 4d 50 5f 46 6f 6e egacyFontAsset;..........TMP_Fon
2700 74 41 73 73 65 74 20 6d 5f 52 65 66 65 72 65 6e 63 65 64 46 6f 6e 74 41 73 73 65 74 3b 0d 0a 0d tAsset.m_ReferencedFontAsset;...
2720 0a 20 20 20 20 20 20 20 20 54 65 78 74 41 73 73 65 74 20 6d 5f 43 68 61 72 61 63 74 65 72 73 46 .........TextAsset.m_CharactersF
2740 72 6f 6d 46 69 6c 65 3b 0d 0a 20 20 20 20 20 20 20 20 69 6e 74 20 6d 5f 50 6f 69 6e 74 53 69 7a romFile;..........int.m_PointSiz
2760 65 3b 0d 0a 20 20 20 20 20 20 20 20 69 6e 74 20 6d 5f 50 61 64 64 69 6e 67 20 3d 20 35 3b 0d 0a e;..........int.m_Padding.=.5;..
2780 20 20 20 20 20 20 20 20 2f 2f 46 61 63 65 53 74 79 6c 65 73 20 6d 5f 46 6f 6e 74 53 74 79 6c 65 ........//FaceStyles.m_FontStyle
27a0 20 3d 20 46 61 63 65 53 74 79 6c 65 73 2e 4e 6f 72 6d 61 6c 3b 0d 0a 20 20 20 20 20 20 20 20 2f .=.FaceStyles.Normal;........../
27c0 2f 66 6c 6f 61 74 20 6d 5f 46 6f 6e 74 53 74 79 6c 65 56 61 6c 75 65 20 3d 20 32 3b 0d 0a 0d 0a /float.m_FontStyleValue.=.2;....
27e0 20 20 20 20 20 20 20 20 47 6c 79 70 68 52 65 6e 64 65 72 4d 6f 64 65 20 6d 5f 47 6c 79 70 68 52 ........GlyphRenderMode.m_GlyphR
2800 65 6e 64 65 72 4d 6f 64 65 20 3d 20 47 6c 79 70 68 52 65 6e 64 65 72 4d 6f 64 65 2e 53 44 46 41 enderMode.=.GlyphRenderMode.SDFA
2820 41 3b 0d 0a 20 20 20 20 20 20 20 20 69 6e 74 20 6d 5f 41 74 6c 61 73 57 69 64 74 68 20 3d 20 35 A;..........int.m_AtlasWidth.=.5
2840 31 32 3b 0d 0a 20 20 20 20 20 20 20 20 69 6e 74 20 6d 5f 41 74 6c 61 73 48 65 69 67 68 74 20 3d 12;..........int.m_AtlasHeight.=
2860 20 35 31 32 3b 0d 0a 20 20 20 20 20 20 20 20 62 79 74 65 5b 5d 20 6d 5f 41 74 6c 61 73 54 65 78 .512;..........byte[].m_AtlasTex
2880 74 75 72 65 42 75 66 66 65 72 3b 0d 0a 20 20 20 20 20 20 20 20 54 65 78 74 75 72 65 32 44 20 6d tureBuffer;..........Texture2D.m
28a0 5f 46 6f 6e 74 41 74 6c 61 73 54 65 78 74 75 72 65 3b 0d 0a 20 20 20 20 20 20 20 20 54 65 78 74 _FontAtlasTexture;..........Text
28c0 75 72 65 32 44 20 6d 5f 53 61 76 65 64 46 6f 6e 74 41 74 6c 61 73 3b 0d 0a 0d 0a 20 20 20 20 20 ure2D.m_SavedFontAtlas;.........
28e0 20 20 20 2f 2f 20 0d 0a 20 20 20 20 20 20 20 20 4c 69 73 74 3c 47 6c 79 70 68 3e 20 6d 5f 46 6f ...//...........List<Glyph>.m_Fo
2900 6e 74 47 6c 79 70 68 54 61 62 6c 65 20 3d 20 6e 65 77 20 4c 69 73 74 3c 47 6c 79 70 68 3e 28 29 ntGlyphTable.=.new.List<Glyph>()
2920 3b 0d 0a 20 20 20 20 20 20 20 20 4c 69 73 74 3c 54 4d 50 5f 43 68 61 72 61 63 74 65 72 3e 20 6d ;..........List<TMP_Character>.m
2940 5f 46 6f 6e 74 43 68 61 72 61 63 74 65 72 54 61 62 6c 65 20 3d 20 6e 65 77 20 4c 69 73 74 3c 54 _FontCharacterTable.=.new.List<T
2960 4d 50 5f 43 68 61 72 61 63 74 65 72 3e 28 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 44 69 63 74 MP_Character>();............Dict
2980 69 6f 6e 61 72 79 3c 75 69 6e 74 2c 20 75 69 6e 74 3e 20 6d 5f 43 68 61 72 61 63 74 65 72 4c 6f ionary<uint,.uint>.m_CharacterLo
29a0 6f 6b 75 70 4d 61 70 20 3d 20 6e 65 77 20 44 69 63 74 69 6f 6e 61 72 79 3c 75 69 6e 74 2c 20 75 okupMap.=.new.Dictionary<uint,.u
29c0 69 6e 74 3e 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 44 69 63 74 69 6f 6e 61 72 79 3c 75 69 6e 74 int>();..........Dictionary<uint
29e0 2c 20 4c 69 73 74 3c 75 69 6e 74 3e 3e 20 6d 5f 47 6c 79 70 68 4c 6f 6f 6b 75 70 4d 61 70 20 3d ,.List<uint>>.m_GlyphLookupMap.=
2a00 20 6e 65 77 20 44 69 63 74 69 6f 6e 61 72 79 3c 75 69 6e 74 2c 20 4c 69 73 74 3c 75 69 6e 74 3e .new.Dictionary<uint,.List<uint>
2a20 3e 28 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 4c 69 73 74 3c 47 6c 79 70 68 3e 20 6d 5f 47 6c >();............List<Glyph>.m_Gl
2a40 79 70 68 73 54 6f 50 61 63 6b 20 3d 20 6e 65 77 20 4c 69 73 74 3c 47 6c 79 70 68 3e 28 29 3b 0d yphsToPack.=.new.List<Glyph>();.
2a60 0a 20 20 20 20 20 20 20 20 4c 69 73 74 3c 47 6c 79 70 68 3e 20 6d 5f 47 6c 79 70 68 73 50 61 63 .........List<Glyph>.m_GlyphsPac
2a80 6b 65 64 20 3d 20 6e 65 77 20 4c 69 73 74 3c 47 6c 79 70 68 3e 28 29 3b 0d 0a 20 20 20 20 20 20 ked.=.new.List<Glyph>();........
2aa0 20 20 4c 69 73 74 3c 47 6c 79 70 68 52 65 63 74 3e 20 6d 5f 46 72 65 65 47 6c 79 70 68 52 65 63 ..List<GlyphRect>.m_FreeGlyphRec
2ac0 74 73 20 3d 20 6e 65 77 20 4c 69 73 74 3c 47 6c 79 70 68 52 65 63 74 3e 28 29 3b 0d 0a 20 20 20 ts.=.new.List<GlyphRect>();.....
2ae0 20 20 20 20 20 4c 69 73 74 3c 47 6c 79 70 68 52 65 63 74 3e 20 6d 5f 55 73 65 64 47 6c 79 70 68 .....List<GlyphRect>.m_UsedGlyph
2b00 52 65 63 74 73 20 3d 20 6e 65 77 20 4c 69 73 74 3c 47 6c 79 70 68 52 65 63 74 3e 28 29 3b 0d 0a Rects.=.new.List<GlyphRect>();..
2b20 20 20 20 20 20 20 20 20 4c 69 73 74 3c 47 6c 79 70 68 3e 20 6d 5f 47 6c 79 70 68 73 54 6f 52 65 ........List<Glyph>.m_GlyphsToRe
2b40 6e 64 65 72 20 3d 20 6e 65 77 20 4c 69 73 74 3c 47 6c 79 70 68 3e 28 29 3b 0d 0a 20 20 20 20 20 nder.=.new.List<Glyph>();.......
2b60 20 20 20 4c 69 73 74 3c 75 69 6e 74 3e 20 6d 5f 41 76 61 69 6c 61 62 6c 65 47 6c 79 70 68 73 54 ...List<uint>.m_AvailableGlyphsT
2b80 6f 41 64 64 20 3d 20 6e 65 77 20 4c 69 73 74 3c 75 69 6e 74 3e 28 29 3b 0d 0a 20 20 20 20 20 20 oAdd.=.new.List<uint>();........
2ba0 20 20 4c 69 73 74 3c 75 69 6e 74 3e 20 6d 5f 4d 69 73 73 69 6e 67 43 68 61 72 61 63 74 65 72 73 ..List<uint>.m_MissingCharacters
2bc0 20 3d 20 6e 65 77 20 4c 69 73 74 3c 75 69 6e 74 3e 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 4c 69 .=.new.List<uint>();..........Li
2be0 73 74 3c 75 69 6e 74 3e 20 6d 5f 45 78 63 6c 75 64 65 64 43 68 61 72 61 63 74 65 72 73 20 3d 20 st<uint>.m_ExcludedCharacters.=.
2c00 6e 65 77 20 4c 69 73 74 3c 75 69 6e 74 3e 28 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 72 69 new.List<uint>();............pri
2c20 76 61 74 65 20 46 61 63 65 49 6e 66 6f 20 6d 5f 46 61 63 65 49 6e 66 6f 3b 0d 0a 0d 0a 20 20 20 vate.FaceInfo.m_FaceInfo;.......
2c40 20 20 20 20 20 62 6f 6f 6c 20 6d 5f 49 6e 63 6c 75 64 65 46 6f 6e 74 46 65 61 74 75 72 65 73 3b .....bool.m_IncludeFontFeatures;
2c60 0d 0a 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 76 6f 69 64 20 4f 6e 45 6e 61 62 ..............public.void.OnEnab
2c80 6c 65 28 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 le()..........{..............//.
2ca0 55 73 65 64 20 66 6f 72 20 44 69 61 67 6e 6f 73 74 69 63 73 0d 0a 20 20 20 20 20 20 20 20 20 20 Used.for.Diagnostics............
2cc0 20 20 6d 5f 53 74 6f 70 57 61 74 63 68 20 3d 20 6e 65 77 20 53 79 73 74 65 6d 2e 44 69 61 67 6e ..m_StopWatch.=.new.System.Diagn
2ce0 6f 73 74 69 63 73 2e 53 74 6f 70 77 61 74 63 68 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 ostics.Stopwatch();.............
2d00 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 53 65 74 20 45 64 69 74 6f 72 20 77 69 6e ...............//.Set.Editor.win
2d20 64 6f 77 20 73 69 7a 65 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 6d 69 6e 53 69 7a 65 20 3d dow.size...............minSize.=
2d40 20 6e 65 77 20 56 65 63 74 6f 72 32 28 33 31 35 2c 20 6d 69 6e 53 69 7a 65 2e 79 29 3b 0d 0a 0d .new.Vector2(315,.minSize.y);...
2d60 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 49 6e 69 74 69 61 6c 69 7a 65 20 26 20 47 65 74 .............//.Initialize.&.Get
2d80 20 73 68 61 64 65 72 20 70 72 6f 70 65 72 74 79 20 49 44 73 2e 0d 0a 20 20 20 20 20 20 20 20 20 .shader.property.IDs............
2da0 20 20 20 53 68 61 64 65 72 55 74 69 6c 69 74 69 65 73 2e 47 65 74 53 68 61 64 65 72 50 72 6f 70 ...ShaderUtilities.GetShaderProp
2dc0 65 72 74 79 49 44 73 28 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 4c 6f 61 ertyIDs();................//.Loa
2de0 64 20 6c 61 73 74 20 73 65 6c 65 63 74 65 64 20 70 72 65 73 65 74 20 69 66 20 77 65 20 61 72 65 d.last.selected.preset.if.we.are
2e00 20 6e 6f 74 20 61 6c 72 65 61 64 79 20 69 6e 20 74 68 65 20 70 72 6f 63 65 73 73 20 6f 66 20 72 .not.already.in.the.process.of.r
2e20 65 67 65 6e 65 72 61 74 69 6e 67 20 61 6e 20 65 78 69 73 74 69 6e 67 20 66 6f 6e 74 20 61 73 73 egenerating.an.existing.font.ass
2e40 65 74 20 28 76 69 61 20 74 68 65 20 43 6f 6e 74 65 78 74 20 6d 65 6e 75 29 0d 0a 20 20 20 20 20 et.(via.the.Context.menu).......
2e60 20 20 20 20 20 20 20 69 66 20 28 45 64 69 74 6f 72 50 72 65 66 73 2e 48 61 73 4b 65 79 28 6b 5f .......if.(EditorPrefs.HasKey(k_
2e80 46 6f 6e 74 41 73 73 65 74 43 72 65 61 74 69 6f 6e 53 65 74 74 69 6e 67 73 43 6f 6e 74 61 69 6e FontAssetCreationSettingsContain
2ea0 65 72 4b 65 79 29 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 erKey))..............{..........
2ec0 20 20 20 20 20 20 20 20 69 66 20 28 6d 5f 46 6f 6e 74 41 73 73 65 74 43 72 65 61 74 69 6f 6e 53 ........if.(m_FontAssetCreationS
2ee0 65 74 74 69 6e 67 73 43 6f 6e 74 61 69 6e 65 72 20 3d 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 ettingsContainer.==.null).......
2f00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 46 6f 6e 74 41 73 73 65 74 43 72 65 61 74 69 ...............m_FontAssetCreati
2f20 6f 6e 53 65 74 74 69 6e 67 73 43 6f 6e 74 61 69 6e 65 72 20 3d 20 4a 73 6f 6e 55 74 69 6c 69 74 onSettingsContainer.=.JsonUtilit
2f40 79 2e 46 72 6f 6d 4a 73 6f 6e 3c 46 6f 6e 74 41 73 73 65 74 43 72 65 61 74 69 6f 6e 53 65 74 74 y.FromJson<FontAssetCreationSett
2f60 69 6e 67 73 43 6f 6e 74 61 69 6e 65 72 3e 28 45 64 69 74 6f 72 50 72 65 66 73 2e 47 65 74 53 74 ingsContainer>(EditorPrefs.GetSt
2f80 72 69 6e 67 28 6b 5f 46 6f 6e 74 41 73 73 65 74 43 72 65 61 74 69 6f 6e 53 65 74 74 69 6e 67 73 ring(k_FontAssetCreationSettings
2fa0 43 6f 6e 74 61 69 6e 65 72 4b 65 79 29 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ContainerKey));.................
2fc0 20 20 20 69 66 20 28 6d 5f 46 6f 6e 74 41 73 73 65 74 43 72 65 61 74 69 6f 6e 53 65 74 74 69 6e ...if.(m_FontAssetCreationSettin
2fe0 67 73 43 6f 6e 74 61 69 6e 65 72 2e 66 6f 6e 74 41 73 73 65 74 43 72 65 61 74 69 6f 6e 53 65 74 gsContainer.fontAssetCreationSet
3000 74 69 6e 67 73 20 21 3d 20 6e 75 6c 6c 20 26 26 20 6d 5f 46 6f 6e 74 41 73 73 65 74 43 72 65 61 tings.!=.null.&&.m_FontAssetCrea
3020 74 69 6f 6e 53 65 74 74 69 6e 67 73 43 6f 6e 74 61 69 6e 65 72 2e 66 6f 6e 74 41 73 73 65 74 43 tionSettingsContainer.fontAssetC
3040 72 65 61 74 69 6f 6e 53 65 74 74 69 6e 67 73 2e 43 6f 75 6e 74 20 3e 20 30 29 0d 0a 20 20 20 20 reationSettings.Count.>.0)......
3060 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ............{...................
3080 20 20 20 2f 2f 20 4c 6f 61 64 20 46 6f 6e 74 20 41 73 73 65 74 20 43 72 65 61 74 69 6f 6e 20 53 ...//.Load.Font.Asset.Creation.S
30a0 65 74 74 69 6e 67 73 20 70 72 65 73 65 74 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ettings.preset..................
30c0 20 20 20 20 20 69 66 20 28 45 64 69 74 6f 72 50 72 65 66 73 2e 48 61 73 4b 65 79 28 6b 5f 46 6f .....if.(EditorPrefs.HasKey(k_Fo
30e0 6e 74 41 73 73 65 74 43 72 65 61 74 69 6f 6e 53 65 74 74 69 6e 67 73 43 75 72 72 65 6e 74 49 6e ntAssetCreationSettingsCurrentIn
3100 64 65 78 4b 65 79 29 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 dexKey))........................
3120 20 20 6d 5f 46 6f 6e 74 41 73 73 65 74 43 72 65 61 74 69 6f 6e 53 65 74 74 69 6e 67 73 43 75 72 ..m_FontAssetCreationSettingsCur
3140 72 65 6e 74 49 6e 64 65 78 20 3d 20 45 64 69 74 6f 72 50 72 65 66 73 2e 47 65 74 49 6e 74 28 6b rentIndex.=.EditorPrefs.GetInt(k
3160 5f 46 6f 6e 74 41 73 73 65 74 43 72 65 61 74 69 6f 6e 53 65 74 74 69 6e 67 73 43 75 72 72 65 6e _FontAssetCreationSettingsCurren
3180 74 49 6e 64 65 78 4b 65 79 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 tIndexKey);.....................
31a0 20 20 20 4c 6f 61 64 46 6f 6e 74 43 72 65 61 74 69 6f 6e 53 65 74 74 69 6e 67 73 28 6d 5f 46 6f ...LoadFontCreationSettings(m_Fo
31c0 6e 74 41 73 73 65 74 43 72 65 61 74 69 6f 6e 53 65 74 74 69 6e 67 73 43 6f 6e 74 61 69 6e 65 72 ntAssetCreationSettingsContainer
31e0 2e 66 6f 6e 74 41 73 73 65 74 43 72 65 61 74 69 6f 6e 53 65 74 74 69 6e 67 73 5b 6d 5f 46 6f 6e .fontAssetCreationSettings[m_Fon
3200 74 41 73 73 65 74 43 72 65 61 74 69 6f 6e 53 65 74 74 69 6e 67 73 43 75 72 72 65 6e 74 49 6e 64 tAssetCreationSettingsCurrentInd
3220 65 78 5d 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 ex]);..................}........
3240 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 43 6c 65 61 72 47 65 6e 65 ......}................ClearGene
3260 72 61 74 65 64 44 61 74 61 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 0d 0a 20 20 20 ratedData();..........}.........
3280 20 20 20 20 20 70 75 62 6c 69 63 20 76 6f 69 64 20 4f 6e 44 69 73 61 62 6c 65 28 29 0d 0a 20 20 .....public.void.OnDisable()....
32a0 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 44 65 62 75 67 2e 4c 6f 67 ......{..............//Debug.Log
32c0 28 22 54 65 78 74 4d 65 73 68 50 72 6f 20 45 64 69 74 6f 72 20 57 69 6e 64 6f 77 20 68 61 73 20 ("TextMeshPro.Editor.Window.has.
32e0 62 65 65 6e 20 64 69 73 61 62 6c 65 64 2e 22 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 been.disabled.");...............
3300 20 2f 2f 20 44 65 73 74 72 6f 79 20 45 6e 67 69 6e 65 20 6f 6e 6c 79 20 69 66 20 69 74 20 68 61 .//.Destroy.Engine.only.if.it.ha
3320 73 20 62 65 65 6e 20 69 6e 69 74 69 61 6c 69 7a 65 64 20 61 6c 72 65 61 64 79 0d 0a 20 20 20 20 s.been.initialized.already......
3340 20 20 20 20 20 20 20 20 46 6f 6e 74 45 6e 67 69 6e 65 2e 44 65 73 74 72 6f 79 46 6f 6e 74 45 6e ........FontEngine.DestroyFontEn
3360 67 69 6e 65 28 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 43 6c 65 61 72 47 65 6e 65 gine();................ClearGene
3380 72 61 74 65 64 44 61 74 61 28 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 52 ratedData();................//.R
33a0 65 6d 6f 76 65 20 47 6c 79 70 68 20 52 65 70 6f 72 74 20 69 66 20 6f 6e 65 20 77 61 73 20 63 72 emove.Glyph.Report.if.one.was.cr
33c0 65 61 74 65 64 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 46 69 6c 65 2e 45 78 69 eated...............if.(File.Exi
33e0 73 74 73 28 22 41 73 73 65 74 73 2f 54 65 78 74 4d 65 73 68 20 50 72 6f 2f 47 6c 79 70 68 20 52 sts("Assets/TextMesh.Pro/Glyph.R
3400 65 70 6f 72 74 2e 74 78 74 22 29 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 eport.txt"))..............{.....
3420 20 20 20 20 20 20 20 20 20 20 20 20 20 46 69 6c 65 2e 44 65 6c 65 74 65 28 22 41 73 73 65 74 73 .............File.Delete("Assets
3440 2f 54 65 78 74 4d 65 73 68 20 50 72 6f 2f 47 6c 79 70 68 20 52 65 70 6f 72 74 2e 74 78 74 22 29 /TextMesh.Pro/Glyph.Report.txt")
3460 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 46 69 6c 65 2e 44 65 6c 65 74 65 28 22 ;..................File.Delete("
3480 41 73 73 65 74 73 2f 54 65 78 74 4d 65 73 68 20 50 72 6f 2f 47 6c 79 70 68 20 52 65 70 6f 72 74 Assets/TextMesh.Pro/Glyph.Report
34a0 2e 74 78 74 2e 6d 65 74 61 22 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .txt.meta");....................
34c0 41 73 73 65 74 44 61 74 61 62 61 73 65 2e 52 65 66 72 65 73 68 28 29 3b 0d 0a 20 20 20 20 20 20 AssetDatabase.Refresh();........
34e0 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 53 61 76 65 20 46 ......}................//.Save.F
3500 6f 6e 74 20 41 73 73 65 74 20 43 72 65 61 74 69 6f 6e 20 53 65 74 74 69 6e 67 73 20 49 6e 64 65 ont.Asset.Creation.Settings.Inde
3520 78 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 53 61 76 65 43 72 65 61 74 69 6f 6e 53 65 74 74 69 x..............SaveCreationSetti
3540 6e 67 73 54 6f 45 64 69 74 6f 72 50 72 65 66 73 28 53 61 76 65 46 6f 6e 74 43 72 65 61 74 69 6f ngsToEditorPrefs(SaveFontCreatio
3560 6e 53 65 74 74 69 6e 67 73 28 29 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 45 64 69 74 6f nSettings());..............Edito
3580 72 50 72 65 66 73 2e 53 65 74 49 6e 74 28 6b 5f 46 6f 6e 74 41 73 73 65 74 43 72 65 61 74 69 6f rPrefs.SetInt(k_FontAssetCreatio
35a0 6e 53 65 74 74 69 6e 67 73 43 75 72 72 65 6e 74 49 6e 64 65 78 4b 65 79 2c 20 6d 5f 46 6f 6e 74 nSettingsCurrentIndexKey,.m_Font
35c0 41 73 73 65 74 43 72 65 61 74 69 6f 6e 53 65 74 74 69 6e 67 73 43 75 72 72 65 6e 74 49 6e 64 65 AssetCreationSettingsCurrentInde
35e0 78 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 55 6e 72 65 67 69 73 74 65 72 x);................//.Unregister
3600 20 74 6f 20 65 76 65 6e 74 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 54 4d 50 72 6f 5f 45 76 65 .to.event..............TMPro_Eve
3620 6e 74 4d 61 6e 61 67 65 72 2e 52 45 53 4f 55 52 43 45 5f 4c 4f 41 44 5f 45 56 45 4e 54 2e 52 65 ntManager.RESOURCE_LOAD_EVENT.Re
3640 6d 6f 76 65 28 4f 4e 5f 52 45 53 4f 55 52 43 45 53 5f 4c 4f 41 44 45 44 29 3b 0d 0a 0d 0a 20 20 move(ON_RESOURCES_LOADED);......
3660 20 20 20 20 20 20 20 20 20 20 52 65 73 6f 75 72 63 65 73 2e 55 6e 6c 6f 61 64 55 6e 75 73 65 64 ..........Resources.UnloadUnused
3680 41 73 73 65 74 73 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 0d 0a 20 20 20 20 20 20 Assets();..........}............
36a0 20 20 2f 2f 20 45 76 65 6e 74 20 72 65 63 65 69 76 65 64 20 77 68 65 6e 20 54 4d 50 20 72 65 73 ..//.Event.received.when.TMP.res
36c0 6f 75 72 63 65 73 20 68 61 76 65 20 62 65 65 6e 20 6c 6f 61 64 65 64 2e 0d 0a 20 20 20 20 20 20 ources.have.been.loaded.........
36e0 20 20 76 6f 69 64 20 4f 4e 5f 52 45 53 4f 55 52 43 45 53 5f 4c 4f 41 44 45 44 28 29 0d 0a 20 20 ..void.ON_RESOURCES_LOADED()....
3700 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 54 4d 50 72 6f 5f 45 76 65 6e 74 ......{..............TMPro_Event
3720 4d 61 6e 61 67 65 72 2e 52 45 53 4f 55 52 43 45 5f 4c 4f 41 44 5f 45 56 45 4e 54 2e 52 65 6d 6f Manager.RESOURCE_LOAD_EVENT.Remo
3740 76 65 28 4f 4e 5f 52 45 53 4f 55 52 43 45 53 5f 4c 4f 41 44 45 44 29 3b 0d 0a 0d 0a 20 20 20 20 ve(ON_RESOURCES_LOADED);........
3760 20 20 20 20 20 20 20 20 6d 5f 49 73 47 65 6e 65 72 61 74 69 6f 6e 44 69 73 61 62 6c 65 64 20 3d ........m_IsGenerationDisabled.=
3780 20 66 61 6c 73 65 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 2f 2f .false;..........}............//
37a0 20 4d 61 6b 65 20 73 75 72 65 20 54 4d 50 20 45 73 73 65 6e 74 69 61 6c 20 52 65 73 6f 75 72 63 .Make.sure.TMP.Essential.Resourc
37c0 65 73 20 68 61 76 65 20 62 65 65 6e 20 69 6d 70 6f 72 74 65 64 2e 0d 0a 20 20 20 20 20 20 20 20 es.have.been.imported...........
37e0 76 6f 69 64 20 43 68 65 63 6b 45 73 73 65 6e 74 69 61 6c 52 65 73 6f 75 72 63 65 73 28 29 0d 0a void.CheckEssentialResources()..
3800 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 54 4d 50 5f 53 ........{..............if.(TMP_S
3820 65 74 74 69 6e 67 73 2e 69 6e 73 74 61 6e 63 65 20 3d 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 ettings.instance.==.null).......
3840 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6d 5f .......{..................if.(m_
3860 49 73 47 65 6e 65 72 61 74 69 6f 6e 44 69 73 61 62 6c 65 64 20 3d 3d 20 66 61 6c 73 65 29 0d 0a IsGenerationDisabled.==.false)..
3880 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 54 4d 50 72 6f 5f 45 76 65 6e 74 4d ....................TMPro_EventM
38a0 61 6e 61 67 65 72 2e 52 45 53 4f 55 52 43 45 5f 4c 4f 41 44 5f 45 56 45 4e 54 2e 41 64 64 28 4f anager.RESOURCE_LOAD_EVENT.Add(O
38c0 4e 5f 52 45 53 4f 55 52 43 45 53 5f 4c 4f 41 44 45 44 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 N_RESOURCES_LOADED);............
38e0 20 20 20 20 20 20 20 20 6d 5f 49 73 47 65 6e 65 72 61 74 69 6f 6e 44 69 73 61 62 6c 65 64 20 3d ........m_IsGenerationDisabled.=
3900 20 74 72 75 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 7d .true;..............}..........}
3920 0d 0a 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 76 6f 69 64 20 4f 6e 47 55 49 28 ..............public.void.OnGUI(
3940 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 47 55 49 4c 61 79 )..........{..............GUILay
3960 6f 75 74 2e 42 65 67 69 6e 48 6f 72 69 7a 6f 6e 74 61 6c 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 out.BeginHorizontal();..........
3980 20 20 20 20 44 72 61 77 43 6f 6e 74 72 6f 6c 73 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 ....DrawControls();.............
39a0 20 69 66 20 28 70 6f 73 69 74 69 6f 6e 2e 77 69 64 74 68 20 3e 20 70 6f 73 69 74 69 6f 6e 2e 68 .if.(position.width.>.position.h
39c0 65 69 67 68 74 20 26 26 20 70 6f 73 69 74 69 6f 6e 2e 77 69 64 74 68 20 3e 20 6b 5f 54 77 6f 43 eight.&&.position.width.>.k_TwoC
39e0 6f 6c 75 6d 6e 43 6f 6e 74 72 6f 6c 73 57 69 64 74 68 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 olumnControlsWidth).............
3a00 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 44 72 61 77 50 72 65 76 69 65 77 28 .{..................DrawPreview(
3a20 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 47 );..............}..............G
3a40 55 49 4c 61 79 6f 75 74 2e 45 6e 64 48 6f 72 69 7a 6f 6e 74 61 6c 28 29 3b 0d 0a 20 20 20 20 20 UILayout.EndHorizontal();.......
3a60 20 20 20 7d 0d 0a 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 76 6f 69 64 20 55 70 ...}..............public.void.Up
3a80 64 61 74 65 28 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 date()..........{..............i
3aa0 66 20 28 6d 5f 49 73 52 65 70 61 69 6e 74 4e 65 65 64 65 64 29 0d 0a 20 20 20 20 20 20 20 20 20 f.(m_IsRepaintNeeded)...........
3ac0 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 44 65 62 75 67 2e 4c 6f ...{..................//Debug.Lo
3ae0 67 28 22 52 65 70 61 69 6e 74 69 6e 67 2e 2e 2e 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 g("Repainting...");.............
3b00 20 20 20 20 20 6d 5f 49 73 52 65 70 61 69 6e 74 4e 65 65 64 65 64 20 3d 20 66 61 6c 73 65 3b 0d .....m_IsRepaintNeeded.=.false;.
3b20 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 52 65 70 61 69 6e 74 28 29 3b 0d 0a 20 20 20 .................Repaint();.....
3b40 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 55 70 64 .........}................//.Upd
3b60 61 74 65 20 50 72 6f 67 72 65 73 73 20 62 61 72 20 69 73 20 77 65 20 61 72 65 20 52 65 6e 64 65 ate.Progress.bar.is.we.are.Rende
3b80 72 69 6e 67 20 61 20 46 6f 6e 74 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6d 5f ring.a.Font...............if.(m_
3ba0 49 73 50 72 6f 63 65 73 73 69 6e 67 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 IsProcessing)..............{....
3bc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 41 74 6c 61 73 47 65 6e 65 72 61 74 69 6f 6e 50 ..............m_AtlasGenerationP
3be0 72 6f 67 72 65 73 73 20 3d 20 46 6f 6e 74 45 6e 67 69 6e 65 2e 67 65 6e 65 72 61 74 69 6f 6e 50 rogress.=.FontEngine.generationP
3c00 72 6f 67 72 65 73 73 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 49 73 rogress;....................m_Is
3c20 52 65 70 61 69 6e 74 4e 65 65 64 65 64 20 3d 20 74 72 75 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 RepaintNeeded.=.true;...........
3c40 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 55 70 64 61 74 65 20 46 65 ...}................//.Update.Fe
3c60 65 64 62 61 63 6b 20 57 69 6e 64 6f 77 20 26 20 43 72 65 61 74 65 20 46 6f 6e 74 20 54 65 78 74 edback.Window.&.Create.Font.Text
3c80 75 72 65 20 6f 6e 63 65 20 52 65 6e 64 65 72 69 6e 67 20 69 73 20 64 6f 6e 65 2e 0d 0a 20 20 20 ure.once.Rendering.is.done......
3ca0 20 20 20 20 20 20 20 20 20 69 66 20 28 6d 5f 49 73 52 65 6e 64 65 72 69 6e 67 44 6f 6e 65 29 0d .........if.(m_IsRenderingDone).
3cc0 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .............{..................
3ce0 6d 5f 49 73 50 72 6f 63 65 73 73 69 6e 67 20 3d 20 66 61 6c 73 65 3b 0d 0a 20 20 20 20 20 20 20 m_IsProcessing.=.false;.........
3d00 20 20 20 20 20 20 20 20 20 6d 5f 49 73 52 65 6e 64 65 72 69 6e 67 44 6f 6e 65 20 3d 20 66 61 6c .........m_IsRenderingDone.=.fal
3d20 73 65 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6d 5f 49 73 47 se;....................if.(m_IsG
3d40 65 6e 65 72 61 74 69 6f 6e 43 61 6e 63 65 6c 6c 65 64 20 3d 3d 20 66 61 6c 73 65 29 0d 0a 20 20 enerationCancelled.==.false)....
3d60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..............{.................
3d80 20 20 20 20 20 6d 5f 41 74 6c 61 73 47 65 6e 65 72 61 74 69 6f 6e 50 72 6f 67 72 65 73 73 4c 61 .....m_AtlasGenerationProgressLa
3da0 62 65 6c 20 3d 20 22 47 65 6e 65 72 61 74 69 6f 6e 20 63 6f 6d 70 6c 65 74 65 64 20 69 6e 3a 20 bel.=."Generation.completed.in:.
3dc0 22 20 2b 20 28 6d 5f 47 6c 79 70 68 50 61 63 6b 69 6e 67 47 65 6e 65 72 61 74 69 6f 6e 54 69 6d ".+.(m_GlyphPackingGenerationTim
3de0 65 20 2b 20 6d 5f 47 6c 79 70 68 52 65 6e 64 65 72 69 6e 67 47 65 6e 65 72 61 74 69 6f 6e 54 69 e.+.m_GlyphRenderingGenerationTi
3e00 6d 65 29 2e 54 6f 53 74 72 69 6e 67 28 22 30 2e 30 30 20 6d 73 2e 22 29 3b 0d 0a 0d 0a 20 20 20 me).ToString("0.00.ms.");.......
3e20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 55 70 64 61 74 65 52 65 6e 64 65 72 46 65 65 .................UpdateRenderFee
3e40 64 62 61 63 6b 57 69 6e 64 6f 77 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 dbackWindow();..................
3e60 20 20 20 20 43 72 65 61 74 65 46 6f 6e 74 41 74 6c 61 73 54 65 78 74 75 72 65 28 29 3b 0d 0a 0d ....CreateFontAtlasTexture();...
3e80 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 49 66 20 64 79 6e 61 6d .....................//.If.dynam
3ea0 69 63 20 6d 61 6b 65 20 72 65 61 64 61 62 6c 65 20 2e 2e 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 ic.make.readable................
3ec0 20 20 20 20 20 20 20 20 20 20 6d 5f 46 6f 6e 74 41 74 6c 61 73 54 65 78 74 75 72 65 2e 41 70 70 ..........m_FontAtlasTexture.App
3ee0 6c 79 28 66 61 6c 73 65 2c 20 66 61 6c 73 65 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ly(false,.false);...............
3f00 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 52 65 70 61 69 6e 74 28 29 3b ...}..................Repaint();
3f20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 0d 0a ..............}..........}......
3f40 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 73 75 6d 6d 61 72 79 3e 0d 0a 20 20 20 20 20 20 20 20 2f ........///.<summary>........../
3f60 2f 2f 20 4d 65 74 68 6f 64 20 77 68 69 63 68 20 72 65 74 75 72 6e 73 20 74 68 65 20 63 68 61 72 //.Method.which.returns.the.char
3f80 61 63 74 65 72 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 74 6f 20 61 20 64 65 63 69 6d 61 6c acter.corresponding.to.a.decimal
3fa0 20 76 61 6c 75 65 2e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 2f 73 75 6d 6d 61 72 79 3e 0d .value...........///.</summary>.
3fc0 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 70 61 72 61 6d 20 6e 61 6d 65 3d 22 73 65 71 75 65 6e .........///.<param.name="sequen
3fe0 63 65 22 3e 3c 2f 70 61 72 61 6d 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 72 65 74 75 72 ce"></param>..........///.<retur
4000 6e 73 3e 3c 2f 72 65 74 75 72 6e 73 3e 0d 0a 20 20 20 20 20 20 20 20 73 74 61 74 69 63 20 75 69 ns></returns>..........static.ui
4020 6e 74 5b 5d 20 50 61 72 73 65 4e 75 6d 62 65 72 53 65 71 75 65 6e 63 65 28 73 74 72 69 6e 67 20 nt[].ParseNumberSequence(string.
4040 73 65 71 75 65 6e 63 65 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 sequence)..........{............
4060 20 20 4c 69 73 74 3c 75 69 6e 74 3e 20 75 6e 69 63 6f 64 65 4c 69 73 74 20 3d 20 6e 65 77 20 4c ..List<uint>.unicodeList.=.new.L
4080 69 73 74 3c 75 69 6e 74 3e 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 74 72 69 6e 67 ist<uint>();..............string
40a0 5b 5d 20 73 65 71 75 65 6e 63 65 73 20 3d 20 73 65 71 75 65 6e 63 65 2e 53 70 6c 69 74 28 27 2c [].sequences.=.sequence.Split(',
40c0 27 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 65 61 63 68 20 28 73 74 72 69 ');................foreach.(stri
40e0 6e 67 20 73 65 71 20 69 6e 20 73 65 71 75 65 6e 63 65 73 29 0d 0a 20 20 20 20 20 20 20 20 20 20 ng.seq.in.sequences)............
4100 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 74 72 69 6e 67 5b 5d 20 73 31 ..{..................string[].s1
4120 20 3d 20 73 65 71 2e 53 70 6c 69 74 28 27 2d 27 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 .=.seq.Split('-');..............
4140 20 20 20 20 20 20 69 66 20 28 73 31 2e 4c 65 6e 67 74 68 20 3d 3d 20 31 29 0d 0a 20 20 20 20 20 ......if.(s1.Length.==.1).......
4160 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 72 79 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 ...............try..............
4180 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ........{.......................
41a0 20 20 20 75 6e 69 63 6f 64 65 4c 69 73 74 2e 41 64 64 28 75 69 6e 74 2e 50 61 72 73 65 28 73 31 ...unicodeList.Add(uint.Parse(s1
41c0 5b 30 5d 29 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 [0]));......................}...
41e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 61 74 63 68 0d 0a 20 20 20 20 20 20 ...................catch........
4200 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..............{.................
4220 20 20 20 20 20 20 20 20 20 44 65 62 75 67 2e 4c 6f 67 28 22 4e 6f 20 63 68 61 72 61 63 74 65 72 .........Debug.Log("No.character
4240 73 20 73 65 6c 65 63 74 65 64 20 6f 72 20 69 6e 76 61 6c 69 64 20 66 6f 72 6d 61 74 2e 22 29 3b s.selected.or.invalid.format.");
4260 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 ......................}.........
4280 20 20 20 20 20 20 20 20 20 65 6c 73 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b .........else..................{
42a0 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 28 75 69 6e 74 20 ......................for.(uint.
42c0 6a 20 3d 20 75 69 6e 74 2e 50 61 72 73 65 28 73 31 5b 30 5d 29 3b 20 6a 20 3c 20 75 69 6e 74 2e j.=.uint.Parse(s1[0]);.j.<.uint.
42e0 50 61 72 73 65 28 73 31 5b 31 5d 29 20 2b 20 31 3b 20 6a 2b 2b 29 0d 0a 20 20 20 20 20 20 20 20 Parse(s1[1]).+.1;.j++)..........
4300 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ............{...................
4320 20 20 20 20 20 20 20 75 6e 69 63 6f 64 65 4c 69 73 74 2e 41 64 64 28 6a 29 3b 0d 0a 20 20 20 20 .......unicodeList.Add(j);......
4340 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ................}...............
4360 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 ...}..............}.............
4380 20 20 20 72 65 74 75 72 6e 20 75 6e 69 63 6f 64 65 4c 69 73 74 2e 54 6f 41 72 72 61 79 28 29 3b ...return.unicodeList.ToArray();
43a0 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 73 75 ..........}..............///.<su
43c0 6d 6d 61 72 79 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 4d 65 74 68 6f 64 20 77 68 69 63 68 mmary>..........///.Method.which
43e0 20 72 65 74 75 72 6e 73 20 74 68 65 20 63 68 61 72 61 63 74 65 72 20 28 64 65 63 69 6d 61 6c 20 .returns.the.character.(decimal.
4400 76 61 6c 75 65 29 20 66 72 6f 6d 20 61 20 68 65 78 20 73 65 71 75 65 6e 63 65 2e 0d 0a 20 20 20 value).from.a.hex.sequence......
4420 20 20 20 20 20 2f 2f 2f 20 3c 2f 73 75 6d 6d 61 72 79 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f .....///.</summary>..........///
4440 20 3c 70 61 72 61 6d 20 6e 61 6d 65 3d 22 73 65 71 75 65 6e 63 65 22 3e 3c 2f 70 61 72 61 6d 3e .<param.name="sequence"></param>
4460 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 72 65 74 75 72 6e 73 3e 3c 2f 72 65 74 75 72 6e 73 ..........///.<returns></returns
4480 3e 0d 0a 20 20 20 20 20 20 20 20 73 74 61 74 69 63 20 75 69 6e 74 5b 5d 20 50 61 72 73 65 48 65 >..........static.uint[].ParseHe
44a0 78 4e 75 6d 62 65 72 53 65 71 75 65 6e 63 65 28 73 74 72 69 6e 67 20 73 65 71 75 65 6e 63 65 29 xNumberSequence(string.sequence)
44c0 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 4c 69 73 74 3c 75 69 ..........{..............List<ui
44e0 6e 74 3e 20 75 6e 69 63 6f 64 65 4c 69 73 74 20 3d 20 6e 65 77 20 4c 69 73 74 3c 75 69 6e 74 3e nt>.unicodeList.=.new.List<uint>
4500 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 74 72 69 6e 67 5b 5d 20 73 65 71 75 65 6e ();..............string[].sequen
4520 63 65 73 20 3d 20 73 65 71 75 65 6e 63 65 2e 53 70 6c 69 74 28 27 2c 27 29 3b 0d 0a 0d 0a 20 20 ces.=.sequence.Split(',');......
4540 20 20 20 20 20 20 20 20 20 20 66 6f 72 65 61 63 68 20 28 73 74 72 69 6e 67 20 73 65 71 20 69 6e ..........foreach.(string.seq.in
4560 20 73 65 71 75 65 6e 63 65 73 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 .sequences)..............{......
4580 20 20 20 20 20 20 20 20 20 20 20 20 73 74 72 69 6e 67 5b 5d 20 73 31 20 3d 20 73 65 71 2e 53 70 ............string[].s1.=.seq.Sp
45a0 6c 69 74 28 27 2d 27 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 lit('-');....................if.
45c0 28 73 31 2e 4c 65 6e 67 74 68 20 3d 3d 20 31 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 (s1.Length.==.1)................
45e0 20 20 20 20 20 20 74 72 79 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b ......try......................{
4600 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 75 6e 69 63 6f 64 ..........................unicod
4620 65 4c 69 73 74 2e 41 64 64 28 75 69 6e 74 2e 50 61 72 73 65 28 73 31 5b 30 5d 2c 20 4e 75 6d 62 eList.Add(uint.Parse(s1[0],.Numb
4640 65 72 53 74 79 6c 65 73 2e 41 6c 6c 6f 77 48 65 78 53 70 65 63 69 66 69 65 72 29 29 3b 0d 0a 20 erStyles.AllowHexSpecifier));...
4660 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 ...................}............
4680 20 20 20 20 20 20 20 20 20 20 63 61 74 63 68 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..........catch.................
46a0 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .....{..........................
46c0 44 65 62 75 67 2e 4c 6f 67 28 22 4e 6f 20 63 68 61 72 61 63 74 65 72 73 20 73 65 6c 65 63 74 65 Debug.Log("No.characters.selecte
46e0 64 20 6f 72 20 69 6e 76 61 6c 69 64 20 66 6f 72 6d 61 74 2e 22 29 3b 0d 0a 20 20 20 20 20 20 20 d.or.invalid.format.");.........
4700 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .............}..................
4720 65 6c 73 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 else..................{.........
4740 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 28 75 69 6e 74 20 6a 20 3d 20 75 69 6e 74 2e .............for.(uint.j.=.uint.
4760 50 61 72 73 65 28 73 31 5b 30 5d 2c 20 4e 75 6d 62 65 72 53 74 79 6c 65 73 2e 41 6c 6c 6f 77 48 Parse(s1[0],.NumberStyles.AllowH
4780 65 78 53 70 65 63 69 66 69 65 72 29 3b 20 6a 20 3c 20 75 69 6e 74 2e 50 61 72 73 65 28 73 31 5b exSpecifier);.j.<.uint.Parse(s1[
47a0 31 5d 2c 20 4e 75 6d 62 65 72 53 74 79 6c 65 73 2e 41 6c 6c 6f 77 48 65 78 53 70 65 63 69 66 69 1],.NumberStyles.AllowHexSpecifi
47c0 65 72 29 20 2b 20 31 3b 20 6a 2b 2b 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 er).+.1;.j++)...................
47e0 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 75 6e ...{..........................un
4800 69 63 6f 64 65 4c 69 73 74 2e 41 64 64 28 6a 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 icodeList.Add(j);...............
4820 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 .......}..................}.....
4840 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e .........}................return
4860 20 75 6e 69 63 6f 64 65 4c 69 73 74 2e 54 6f 41 72 72 61 79 28 29 3b 0d 0a 20 20 20 20 20 20 20 .unicodeList.ToArray();.........
4880 20 7d 0d 0a 0d 0a 0d 0a 20 20 20 20 20 20 20 20 76 6f 69 64 20 44 72 61 77 43 6f 6e 74 72 6f 6c .}..............void.DrawControl
48a0 73 28 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 47 55 49 4c s()..........{..............GUIL
48c0 61 79 6f 75 74 2e 53 70 61 63 65 28 35 66 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 ayout.Space(5f);................
48e0 69 66 20 28 70 6f 73 69 74 69 6f 6e 2e 77 69 64 74 68 20 3e 20 70 6f 73 69 74 69 6f 6e 2e 68 65 if.(position.width.>.position.he
4900 69 67 68 74 20 26 26 20 70 6f 73 69 74 69 6f 6e 2e 77 69 64 74 68 20 3e 20 6b 5f 54 77 6f 43 6f ight.&&.position.width.>.k_TwoCo
4920 6c 75 6d 6e 43 6f 6e 74 72 6f 6c 73 57 69 64 74 68 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 lumnControlsWidth)..............
4940 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 53 63 72 6f 6c 6c 50 6f 73 69 74 {..................m_ScrollPosit
4960 69 6f 6e 20 3d 20 45 64 69 74 6f 72 47 55 49 4c 61 79 6f 75 74 2e 42 65 67 69 6e 53 63 72 6f 6c ion.=.EditorGUILayout.BeginScrol
4980 6c 56 69 65 77 28 6d 5f 53 63 72 6f 6c 6c 50 6f 73 69 74 69 6f 6e 2c 20 47 55 49 4c 61 79 6f 75 lView(m_ScrollPosition,.GUILayou
49a0 74 2e 57 69 64 74 68 28 33 31 35 29 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 t.Width(315));..............}...
49c0 20 20 20 20 20 20 20 20 20 20 20 65 6c 73 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a ...........else..............{..
49e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 53 63 72 6f 6c 6c 50 6f 73 69 74 69 6f 6e ................m_ScrollPosition
4a00 20 3d 20 45 64 69 74 6f 72 47 55 49 4c 61 79 6f 75 74 2e 42 65 67 69 6e 53 63 72 6f 6c 6c 56 69 .=.EditorGUILayout.BeginScrollVi
4a20 65 77 28 6d 5f 53 63 72 6f 6c 6c 50 6f 73 69 74 69 6f 6e 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 ew(m_ScrollPosition);...........
4a40 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 ...}............................
4a60 47 55 49 4c 61 79 6f 75 74 2e 53 70 61 63 65 28 35 66 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 GUILayout.Space(5f);............
4a80 20 20 20 20 47 55 49 4c 61 79 6f 75 74 2e 4c 61 62 65 6c 28 6d 5f 53 65 6c 65 63 74 65 64 46 6f ....GUILayout.Label(m_SelectedFo
4aa0 6e 74 41 73 73 65 74 20 21 3d 20 6e 75 6c 6c 20 3f 20 73 74 72 69 6e 67 2e 46 6f 72 6d 61 74 28 ntAsset.!=.null.?.string.Format(
4ac0 22 46 6f 6e 74 20 53 65 74 74 69 6e 67 73 20 5b 7b 30 7d 5d 22 2c 20 6d 5f 53 65 6c 65 63 74 65 "Font.Settings.[{0}]",.m_Selecte
4ae0 64 46 6f 6e 74 41 73 73 65 74 2e 6e 61 6d 65 29 20 3a 20 22 46 6f 6e 74 20 53 65 74 74 69 6e 67 dFontAsset.name).:."Font.Setting
4b00 73 22 2c 20 45 64 69 74 6f 72 53 74 79 6c 65 73 2e 62 6f 6c 64 4c 61 62 65 6c 29 3b 0d 0a 0d 0a s",.EditorStyles.boldLabel);....
4b20 20 20 20 20 20 20 20 20 20 20 20 20 45 64 69 74 6f 72 47 55 49 4c 61 79 6f 75 74 2e 42 65 67 69 ............EditorGUILayout.Begi
4b40 6e 56 65 72 74 69 63 61 6c 28 45 64 69 74 6f 72 53 74 79 6c 65 73 2e 68 65 6c 70 42 6f 78 29 3b nVertical(EditorStyles.helpBox);
4b60 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 45 64 69 74 6f 72 47 55 49 55 74 69 6c 69 74 79 ................EditorGUIUtility
4b80 2e 6c 61 62 65 6c 57 69 64 74 68 20 3d 20 31 32 35 66 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 .labelWidth.=.125f;.............
4ba0 20 45 64 69 74 6f 72 47 55 49 55 74 69 6c 69 74 79 2e 66 69 65 6c 64 57 69 64 74 68 20 3d 20 35 .EditorGUIUtility.fieldWidth.=.5
4bc0 66 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f f;............................//
4be0 20 44 69 73 61 62 6c 65 20 4f 70 74 69 6f 6e 73 20 69 66 20 61 6c 72 65 61 64 79 20 67 65 6e 65 .Disable.Options.if.already.gene
4c00 72 61 74 69 6e 67 20 61 20 66 6f 6e 74 20 61 74 6c 61 73 20 74 65 78 74 75 72 65 2e 0d 0a 20 20 rating.a.font.atlas.texture.....
4c20 20 20 20 20 20 20 20 20 20 20 45 64 69 74 6f 72 47 55 49 2e 42 65 67 69 6e 44 69 73 61 62 6c 65 ..........EditorGUI.BeginDisable
4c40 64 47 72 6f 75 70 28 6d 5f 49 73 50 72 6f 63 65 73 73 69 6e 67 29 3b 0d 0a 20 20 20 20 20 20 20 dGroup(m_IsProcessing);.........
4c60 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 46 4f 4e 54 20 .....{..................//.FONT.
4c80 54 54 46 20 53 45 4c 45 43 54 49 4f 4e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 45 TTF.SELECTION..................E
4ca0 64 69 74 6f 72 47 55 49 2e 42 65 67 69 6e 43 68 61 6e 67 65 43 68 65 63 6b 28 29 3b 0d 0a 20 20 ditorGUI.BeginChangeCheck();....
4cc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 53 6f 75 72 63 65 46 6f 6e 74 46 69 6c 65 20 3d ..............m_SourceFontFile.=
4ce0 20 45 64 69 74 6f 72 47 55 49 4c 61 79 6f 75 74 2e 4f 62 6a 65 63 74 46 69 65 6c 64 28 22 53 6f .EditorGUILayout.ObjectField("So
4d00 75 72 63 65 20 46 6f 6e 74 20 46 69 6c 65 22 2c 20 6d 5f 53 6f 75 72 63 65 46 6f 6e 74 46 69 6c urce.Font.File",.m_SourceFontFil
4d20 65 2c 20 74 79 70 65 6f 66 28 46 6f 6e 74 29 2c 20 66 61 6c 73 65 29 20 61 73 20 46 6f 6e 74 3b e,.typeof(Font),.false).as.Font;
4d40 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 45 64 69 74 6f 72 47 55 49 2e ..................if.(EditorGUI.
4d60 45 6e 64 43 68 61 6e 67 65 43 68 65 63 6b 28 29 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 EndChangeCheck())...............
4d80 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 53 65 6c 65 ...{......................m_Sele
4da0 63 74 65 64 46 6f 6e 74 41 73 73 65 74 20 3d 20 6e 75 6c 6c 3b 0d 0a 20 20 20 20 20 20 20 20 20 ctedFontAsset.=.null;...........
4dc0 20 20 20 20 20 20 20 20 20 20 20 6d 5f 49 73 46 6f 6e 74 41 74 6c 61 73 49 6e 76 61 6c 69 64 20 ...........m_IsFontAtlasInvalid.
4de0 3d 20 74 72 75 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 =.true;..................}......
4e00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 46 4f 4e 54 20 53 49 5a 49 4e 47 0d 0a 20 20 ..............//.FONT.SIZING....
4e20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 45 64 69 74 6f 72 47 55 49 2e 42 65 67 69 6e 43 68 61 ..............EditorGUI.BeginCha
4e40 6e 67 65 43 68 65 63 6b 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 ngeCheck();..................if.
4e60 28 6d 5f 50 6f 69 6e 74 53 69 7a 65 53 61 6d 70 6c 69 6e 67 4d 6f 64 65 20 3d 3d 20 30 29 0d 0a (m_PointSizeSamplingMode.==.0)..
4e80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ................{...............
4ea0 20 20 20 20 20 20 20 6d 5f 50 6f 69 6e 74 53 69 7a 65 53 61 6d 70 6c 69 6e 67 4d 6f 64 65 20 3d .......m_PointSizeSamplingMode.=
4ec0 20 45 64 69 74 6f 72 47 55 49 4c 61 79 6f 75 74 2e 50 6f 70 75 70 28 22 53 61 6d 70 6c 69 6e 67 .EditorGUILayout.Popup("Sampling
4ee0 20 50 6f 69 6e 74 20 53 69 7a 65 22 2c 20 6d 5f 50 6f 69 6e 74 53 69 7a 65 53 61 6d 70 6c 69 6e .Point.Size",.m_PointSizeSamplin
4f00 67 4d 6f 64 65 2c 20 6d 5f 46 6f 6e 74 53 69 7a 69 6e 67 4f 70 74 69 6f 6e 73 29 3b 0d 0a 20 20 gMode,.m_FontSizingOptions);....
4f20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..............}.................
4f40 20 65 6c 73 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 .else..................{........
4f60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 47 55 49 4c 61 79 6f 75 74 2e 42 65 67 69 6e 48 6f 72 ..............GUILayout.BeginHor
4f80 69 7a 6f 6e 74 61 6c 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 izontal();......................
4fa0 6d 5f 50 6f 69 6e 74 53 69 7a 65 53 61 6d 70 6c 69 6e 67 4d 6f 64 65 20 3d 20 45 64 69 74 6f 72 m_PointSizeSamplingMode.=.Editor
4fc0 47 55 49 4c 61 79 6f 75 74 2e 50 6f 70 75 70 28 22 53 61 6d 70 6c 69 6e 67 20 50 6f 69 6e 74 20 GUILayout.Popup("Sampling.Point.
4fe0 53 69 7a 65 22 2c 20 6d 5f 50 6f 69 6e 74 53 69 7a 65 53 61 6d 70 6c 69 6e 67 4d 6f 64 65 2c 20 Size",.m_PointSizeSamplingMode,.
5000 6d 5f 46 6f 6e 74 53 69 7a 69 6e 67 4f 70 74 69 6f 6e 73 2c 20 47 55 49 4c 61 79 6f 75 74 2e 57 m_FontSizingOptions,.GUILayout.W
5020 69 64 74 68 28 32 32 35 29 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 idth(225));.....................
5040 20 6d 5f 50 6f 69 6e 74 53 69 7a 65 20 3d 20 45 64 69 74 6f 72 47 55 49 4c 61 79 6f 75 74 2e 49 .m_PointSize.=.EditorGUILayout.I
5060 6e 74 46 69 65 6c 64 28 6d 5f 50 6f 69 6e 74 53 69 7a 65 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 ntField(m_PointSize);...........
5080 20 20 20 20 20 20 20 20 20 20 20 47 55 49 4c 61 79 6f 75 74 2e 45 6e 64 48 6f 72 69 7a 6f 6e 74 ...........GUILayout.EndHorizont
50a0 61 6c 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 al();..................}........
50c0 20 20 20 20 20 20 20 20 20 20 69 66 20 28 45 64 69 74 6f 72 47 55 49 2e 45 6e 64 43 68 61 6e 67 ..........if.(EditorGUI.EndChang
50e0 65 43 68 65 63 6b 28 29 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 eCheck())..................{....
5100 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 49 73 46 6f 6e 74 41 74 6c 61 73 49 ..................m_IsFontAtlasI
5120 6e 76 61 6c 69 64 20 3d 20 74 72 75 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 nvalid.=.true;..................
5140 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 46 4f 4e 54 20 50 41 44 }....................//.FONT.PAD
5160 44 49 4e 47 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 45 64 69 74 6f 72 47 55 49 2e DING..................EditorGUI.
5180 42 65 67 69 6e 43 68 61 6e 67 65 43 68 65 63 6b 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 BeginChangeCheck();.............
51a0 20 20 20 20 20 6d 5f 50 61 64 64 69 6e 67 20 3d 20 45 64 69 74 6f 72 47 55 49 4c 61 79 6f 75 74 .....m_Padding.=.EditorGUILayout
51c0 2e 49 6e 74 46 69 65 6c 64 28 22 50 61 64 64 69 6e 67 22 2c 20 6d 5f 50 61 64 64 69 6e 67 29 3b .IntField("Padding",.m_Padding);
51e0 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 50 61 64 64 69 6e 67 20 3d 20 28 69 ..................m_Padding.=.(i
5200 6e 74 29 4d 61 74 68 66 2e 43 6c 61 6d 70 28 6d 5f 50 61 64 64 69 6e 67 2c 20 30 66 2c 20 36 34 nt)Mathf.Clamp(m_Padding,.0f,.64
5220 66 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 45 64 69 74 6f 72 47 f);..................if.(EditorG
5240 55 49 2e 45 6e 64 43 68 61 6e 67 65 43 68 65 63 6b 28 29 29 0d 0a 20 20 20 20 20 20 20 20 20 20 UI.EndChangeCheck())............
5260 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 49 ......{......................m_I
5280 73 46 6f 6e 74 41 74 6c 61 73 49 6e 76 61 6c 69 64 20 3d 20 74 72 75 65 3b 0d 0a 20 20 20 20 20 sFontAtlasInvalid.=.true;.......
52a0 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ...........}....................
52c0 2f 2f 20 46 4f 4e 54 20 50 41 43 4b 49 4e 47 20 4d 45 54 48 4f 44 20 53 45 4c 45 43 54 49 4f 4e //.FONT.PACKING.METHOD.SELECTION
52e0 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 45 64 69 74 6f 72 47 55 49 2e 42 65 67 69 ..................EditorGUI.Begi
5300 6e 43 68 61 6e 67 65 43 68 65 63 6b 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 nChangeCheck();.................
5320 20 6d 5f 50 61 63 6b 69 6e 67 4d 6f 64 65 20 3d 20 28 46 6f 6e 74 50 61 63 6b 69 6e 67 4d 6f 64 .m_PackingMode.=.(FontPackingMod
5340 65 73 29 45 64 69 74 6f 72 47 55 49 4c 61 79 6f 75 74 2e 45 6e 75 6d 50 6f 70 75 70 28 22 50 61 es)EditorGUILayout.EnumPopup("Pa
5360 63 6b 69 6e 67 20 4d 65 74 68 6f 64 22 2c 20 6d 5f 50 61 63 6b 69 6e 67 4d 6f 64 65 29 3b 0d 0a cking.Method",.m_PackingMode);..
5380 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 45 64 69 74 6f 72 47 55 49 2e 45 6e ................if.(EditorGUI.En
53a0 64 43 68 61 6e 67 65 43 68 65 63 6b 28 29 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 dChangeCheck()).................
53c0 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 49 73 46 6f 6e 74 .{......................m_IsFont
53e0 41 74 6c 61 73 49 6e 76 61 6c 69 64 20 3d 20 74 72 75 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 AtlasInvalid.=.true;............
5400 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 46 4f ......}....................//.FO
5420 4e 54 20 41 54 4c 41 53 20 52 45 53 4f 4c 55 54 49 4f 4e 20 53 45 4c 45 43 54 49 4f 4e 0d 0a 20 NT.ATLAS.RESOLUTION.SELECTION...
5440 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 47 55 49 4c 61 79 6f 75 74 2e 42 65 67 69 6e 48 6f ...............GUILayout.BeginHo
5460 72 69 7a 6f 6e 74 61 6c 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 47 55 49 rizontal();..................GUI
5480 2e 63 68 61 6e 67 65 64 20 3d 20 66 61 6c 73 65 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 .changed.=.false;...............
54a0 20 20 20 20 20 45 64 69 74 6f 72 47 55 49 2e 42 65 67 69 6e 43 68 61 6e 67 65 43 68 65 63 6b 28 .....EditorGUI.BeginChangeCheck(
54c0 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 45 64 69 74 6f 72 47 55 49 4c 61 79 );..................EditorGUILay
54e0 6f 75 74 2e 50 72 65 66 69 78 4c 61 62 65 6c 28 22 41 74 6c 61 73 20 52 65 73 6f 6c 75 74 69 6f out.PrefixLabel("Atlas.Resolutio
5500 6e 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 41 74 6c 61 73 57 69 64 n");..................m_AtlasWid
5520 74 68 20 3d 20 45 64 69 74 6f 72 47 55 49 4c 61 79 6f 75 74 2e 49 6e 74 50 6f 70 75 70 28 6d 5f th.=.EditorGUILayout.IntPopup(m_
5540 41 74 6c 61 73 57 69 64 74 68 2c 20 6d 5f 46 6f 6e 74 52 65 73 6f 6c 75 74 69 6f 6e 4c 61 62 65 AtlasWidth,.m_FontResolutionLabe
5560 6c 73 2c 20 6d 5f 46 6f 6e 74 41 74 6c 61 73 52 65 73 6f 6c 75 74 69 6f 6e 73 29 3b 0d 0a 20 20 ls,.m_FontAtlasResolutions);....
5580 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 41 74 6c 61 73 48 65 69 67 68 74 20 3d 20 45 64 ..............m_AtlasHeight.=.Ed
55a0 69 74 6f 72 47 55 49 4c 61 79 6f 75 74 2e 49 6e 74 50 6f 70 75 70 28 6d 5f 41 74 6c 61 73 48 65 itorGUILayout.IntPopup(m_AtlasHe
55c0 69 67 68 74 2c 20 6d 5f 46 6f 6e 74 52 65 73 6f 6c 75 74 69 6f 6e 4c 61 62 65 6c 73 2c 20 6d 5f ight,.m_FontResolutionLabels,.m_
55e0 46 6f 6e 74 41 74 6c 61 73 52 65 73 6f 6c 75 74 69 6f 6e 73 29 3b 0d 0a 20 20 20 20 20 20 20 20 FontAtlasResolutions);..........
5600 20 20 20 20 20 20 20 20 69 66 20 28 45 64 69 74 6f 72 47 55 49 2e 45 6e 64 43 68 61 6e 67 65 43 ........if.(EditorGUI.EndChangeC
5620 68 65 63 6b 28 29 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 heck())..................{......
5640 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 49 73 46 6f 6e 74 41 74 6c 61 73 49 6e 76 ................m_IsFontAtlasInv
5660 61 6c 69 64 20 3d 20 74 72 75 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d alid.=.true;..................}.
5680 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 47 55 49 4c 61 79 6f 75 74 2e 45 6e 64 ...................GUILayout.End
56a0 48 6f 72 69 7a 6f 6e 74 61 6c 28 29 3b 0d 0a 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 Horizontal();...................
56c0 20 20 20 2f 2f 20 46 4f 4e 54 20 43 48 41 52 41 43 54 45 52 20 53 45 54 20 53 45 4c 45 43 54 49 ...//.FONT.CHARACTER.SET.SELECTI
56e0 4f 4e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 45 64 69 74 6f 72 47 55 49 2e 42 65 ON..................EditorGUI.Be
5700 67 69 6e 43 68 61 6e 67 65 43 68 65 63 6b 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ginChangeCheck();...............
5720 20 20 20 62 6f 6f 6c 20 68 61 73 53 65 6c 65 63 74 69 6f 6e 43 68 61 6e 67 65 64 20 3d 20 66 61 ...bool.hasSelectionChanged.=.fa
5740 6c 73 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 43 68 61 72 61 63 74 65 lse;..................m_Characte
5760 72 53 65 74 53 65 6c 65 63 74 69 6f 6e 4d 6f 64 65 20 3d 20 45 64 69 74 6f 72 47 55 49 4c 61 79 rSetSelectionMode.=.EditorGUILay
5780 6f 75 74 2e 50 6f 70 75 70 28 22 43 68 61 72 61 63 74 65 72 20 53 65 74 22 2c 20 6d 5f 43 68 61 out.Popup("Character.Set",.m_Cha
57a0 72 61 63 74 65 72 53 65 74 53 65 6c 65 63 74 69 6f 6e 4d 6f 64 65 2c 20 6d 5f 46 6f 6e 74 43 68 racterSetSelectionMode,.m_FontCh
57c0 61 72 61 63 74 65 72 53 65 74 73 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 aracterSets);..................i
57e0 66 20 28 45 64 69 74 6f 72 47 55 49 2e 45 6e 64 43 68 61 6e 67 65 43 68 65 63 6b 28 29 29 0d 0a f.(EditorGUI.EndChangeCheck())..
5800 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ................{...............
5820 20 20 20 20 20 20 20 6d 5f 43 68 61 72 61 63 74 65 72 53 65 71 75 65 6e 63 65 20 3d 20 22 22 3b .......m_CharacterSequence.=."";
5840 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 68 61 73 53 65 6c 65 63 74 69 ......................hasSelecti
5860 6f 6e 43 68 61 6e 67 65 64 20 3d 20 74 72 75 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 onChanged.=.true;...............
5880 20 20 20 20 20 20 20 6d 5f 49 73 46 6f 6e 74 41 74 6c 61 73 49 6e 76 61 6c 69 64 20 3d 20 74 72 .......m_IsFontAtlasInvalid.=.tr
58a0 75 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 ue;..................}..........
58c0 20 20 20 20 20 20 20 20 20 20 73 77 69 74 63 68 20 28 6d 5f 43 68 61 72 61 63 74 65 72 53 65 74 ..........switch.(m_CharacterSet
58e0 53 65 6c 65 63 74 69 6f 6e 4d 6f 64 65 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 SelectionMode)..................
5900 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 61 73 65 20 30 3a 20 2f {......................case.0:./
5920 2f 20 41 53 43 49 49 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 /.ASCII.........................
5940 20 2f 2f 63 68 61 72 61 63 74 65 72 53 65 71 75 65 6e 63 65 20 3d 20 22 33 32 20 2d 20 31 32 36 .//characterSequence.=."32.-.126
5960 2c 20 31 33 30 2c 20 31 33 32 20 2d 20 31 33 35 2c 20 31 33 39 2c 20 31 34 35 20 2d 20 31 35 31 ,.130,.132.-.135,.139,.145.-.151
5980 2c 20 31 35 33 2c 20 31 35 35 2c 20 31 36 31 2c 20 31 36 36 20 2d 20 31 36 37 2c 20 31 36 39 20 ,.153,.155,.161,.166.-.167,.169.
59a0 2d 20 31 37 34 2c 20 31 37 36 2c 20 31 38 31 20 2d 20 31 38 33 2c 20 31 38 36 20 2d 20 31 38 37 -.174,.176,.181.-.183,.186.-.187
59c0 2c 20 31 39 31 2c 20 38 32 31 30 20 2d 20 38 32 32 36 2c 20 38 32 33 30 2c 20 38 32 34 30 2c 20 ,.191,.8210.-.8226,.8230,.8240,.
59e0 38 32 34 32 20 2d 20 38 32 34 34 2c 20 38 32 34 39 20 2d 20 38 32 35 30 2c 20 38 32 35 32 20 2d 8242.-.8244,.8249.-.8250,.8252.-
5a00 20 38 32 35 34 2c 20 38 32 36 30 2c 20 38 32 38 36 22 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 .8254,.8260,.8286";.............
5a20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 43 68 61 72 61 63 74 65 72 53 65 71 75 65 6e 63 65 .............m_CharacterSequence
5a40 20 3d 20 22 33 32 20 2d 20 31 32 36 2c 20 31 36 30 2c 20 38 32 30 33 2c 20 38 32 33 30 2c 20 39 .=."32.-.126,.160,.8203,.8230,.9
5a60 36 33 33 22 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 633";..........................b
5a80 72 65 61 6b 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 61 73 reak;........................cas
5aa0 65 20 31 3a 20 2f 2f 20 45 58 54 45 4e 44 45 44 20 41 53 43 49 49 0d 0a 20 20 20 20 20 20 20 20 e.1:.//.EXTENDED.ASCII..........
5ac0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 43 68 61 72 61 63 74 65 72 53 65 71 75 65 ................m_CharacterSeque
5ae0 6e 63 65 20 3d 20 22 33 32 20 2d 20 31 32 36 2c 20 31 36 30 20 2d 20 32 35 35 2c 20 38 31 39 32 nce.=."32.-.126,.160.-.255,.8192
5b00 20 2d 20 38 33 30 33 2c 20 38 33 36 34 2c 20 38 34 38 32 2c 20 39 36 33 33 22 3b 0d 0a 20 20 20 .-.8303,.8364,.8482,.9633";.....
5b20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 43 6f 75 6c 64 20 61 64 .....................//.Could.ad
5b40 64 20 39 36 33 32 20 66 6f 72 20 6d 69 73 73 69 6e 67 20 67 6c 79 70 68 0d 0a 20 20 20 20 20 20 d.9632.for.missing.glyph........
5b60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0d 0a 0d 0a 20 20 20 20 ..................break;........
5b80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 61 73 65 20 32 3a 20 2f 2f 20 4c 6f 77 65 72 ................case.2:.//.Lower
5ba0 63 61 73 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f case..........................m_
5bc0 43 68 61 72 61 63 74 65 72 53 65 71 75 65 6e 63 65 20 3d 20 22 33 32 20 2d 20 36 34 2c 20 39 31 CharacterSequence.=."32.-.64,.91
5be0 20 2d 20 31 32 36 2c 20 31 36 30 22 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .-.126,.160";...................
5c00 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .......break;...................
5c20 20 20 20 20 20 63 61 73 65 20 33 3a 20 2f 2f 20 55 70 70 65 72 63 61 73 65 0d 0a 20 20 20 20 20 .....case.3:.//.Uppercase.......
5c40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 43 68 61 72 61 63 74 65 72 53 65 ...................m_CharacterSe
5c60 71 75 65 6e 63 65 20 3d 20 22 33 32 20 2d 20 39 36 2c 20 31 32 33 20 2d 20 31 32 36 2c 20 31 36 quence.=."32.-.96,.123.-.126,.16
5c80 30 22 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 72 65 0";..........................bre
5ca0 61 6b 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 61 73 65 20 ak;........................case.
5cc0 34 3a 20 2f 2f 20 4e 75 6d 62 65 72 73 20 26 20 53 79 6d 62 6f 6c 73 0d 0a 20 20 20 20 20 20 20 4:.//.Numbers.&.Symbols.........
5ce0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 43 68 61 72 61 63 74 65 72 53 65 71 75 .................m_CharacterSequ
5d00 65 6e 63 65 20 3d 20 22 33 32 20 2d 20 36 34 2c 20 39 31 20 2d 20 39 36 2c 20 31 32 33 20 2d 20 ence.=."32.-.64,.91.-.96,.123.-.
5d20 31 32 36 2c 20 31 36 30 22 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 126,.160";......................
5d40 20 20 20 20 62 72 65 61 6b 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ....break;......................
5d60 20 20 63 61 73 65 20 35 3a 20 2f 2f 20 43 75 73 74 6f 6d 20 52 61 6e 67 65 0d 0a 20 20 20 20 20 ..case.5:.//.Custom.Range.......
5d80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 45 64 69 74 6f 72 47 55 49 4c 61 79 6f ...................EditorGUILayo
5da0 75 74 2e 42 65 67 69 6e 56 65 72 74 69 63 61 6c 28 45 64 69 74 6f 72 53 74 79 6c 65 73 2e 68 65 ut.BeginVertical(EditorStyles.he
5dc0 6c 70 42 6f 78 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 lpBox);.........................
5de0 20 47 55 49 4c 61 79 6f 75 74 2e 4c 61 62 65 6c 28 22 45 6e 74 65 72 20 61 20 73 65 71 75 65 6e .GUILayout.Label("Enter.a.sequen
5e00 63 65 20 6f 66 20 64 65 63 69 6d 61 6c 20 76 61 6c 75 65 73 20 74 6f 20 64 65 66 69 6e 65 20 74 ce.of.decimal.values.to.define.t
5e20 68 65 20 63 68 61 72 61 63 74 65 72 73 20 74 6f 20 62 65 20 69 6e 63 6c 75 64 65 64 20 69 6e 20 he.characters.to.be.included.in.
5e40 74 68 65 20 66 6f 6e 74 20 61 73 73 65 74 20 6f 72 20 72 65 74 72 69 65 76 65 20 6f 6e 65 20 66 the.font.asset.or.retrieve.one.f
5e60 72 6f 6d 20 61 6e 6f 74 68 65 72 20 66 6f 6e 74 20 61 73 73 65 74 2e 22 2c 20 54 4d 50 5f 55 49 rom.another.font.asset.",.TMP_UI
5e80 53 74 79 6c 65 4d 61 6e 61 67 65 72 2e 6c 61 62 65 6c 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 StyleManager.label);............
5ea0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 47 55 49 4c 61 79 6f 75 74 2e 53 70 61 63 65 28 31 30 ..............GUILayout.Space(10
5ec0 66 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 45 f);............................E
5ee0 64 69 74 6f 72 47 55 49 2e 42 65 67 69 6e 43 68 61 6e 67 65 43 68 65 63 6b 28 29 3b 0d 0a 20 20 ditorGUI.BeginChangeCheck();....
5f00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 52 65 66 65 72 65 6e 63 ......................m_Referenc
5f20 65 64 46 6f 6e 74 41 73 73 65 74 20 3d 20 45 64 69 74 6f 72 47 55 49 4c 61 79 6f 75 74 2e 4f 62 edFontAsset.=.EditorGUILayout.Ob
5f40 6a 65 63 74 46 69 65 6c 64 28 22 53 65 6c 65 63 74 20 46 6f 6e 74 20 41 73 73 65 74 22 2c 20 6d jectField("Select.Font.Asset",.m
5f60 5f 52 65 66 65 72 65 6e 63 65 64 46 6f 6e 74 41 73 73 65 74 2c 20 74 79 70 65 6f 66 28 54 4d 50 _ReferencedFontAsset,.typeof(TMP
5f80 5f 46 6f 6e 74 41 73 73 65 74 29 2c 20 66 61 6c 73 65 29 20 61 73 20 54 4d 50 5f 46 6f 6e 74 41 _FontAsset),.false).as.TMP_FontA
5fa0 73 73 65 74 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 sset;..........................i
5fc0 66 20 28 45 64 69 74 6f 72 47 55 49 2e 45 6e 64 43 68 61 6e 67 65 43 68 65 63 6b 28 29 20 7c 7c f.(EditorGUI.EndChangeCheck().||
5fe0 20 68 61 73 53 65 6c 65 63 74 69 6f 6e 43 68 61 6e 67 65 64 29 0d 0a 20 20 20 20 20 20 20 20 20 .hasSelectionChanged)...........
6000 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ...............{................
6020 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6d 5f 52 65 66 65 72 65 6e 63 65 64 46 6f ..............if.(m_ReferencedFo
6040 6e 74 41 73 73 65 74 20 21 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ntAsset.!=.null)................
6060 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 43 68 61 72 61 63 74 65 72 53 65 71 ..................m_CharacterSeq
6080 75 65 6e 63 65 20 3d 20 54 4d 50 5f 45 64 69 74 6f 72 55 74 69 6c 69 74 79 2e 47 65 74 44 65 63 uence.=.TMP_EditorUtility.GetDec
60a0 69 6d 61 6c 43 68 61 72 61 63 74 65 72 53 65 71 75 65 6e 63 65 28 54 4d 50 5f 46 6f 6e 74 41 73 imalCharacterSequence(TMP_FontAs
60c0 73 65 74 2e 47 65 74 43 68 61 72 61 63 74 65 72 73 41 72 72 61 79 28 6d 5f 52 65 66 65 72 65 6e set.GetCharactersArray(m_Referen
60e0 63 65 64 46 6f 6e 74 41 73 73 65 74 29 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 cedFontAsset));.................
6100 20 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
6120 20 20 20 20 20 20 20 20 20 20 20 6d 5f 49 73 46 6f 6e 74 41 74 6c 61 73 49 6e 76 61 6c 69 64 20 ...........m_IsFontAtlasInvalid.
6140 3d 20 74 72 75 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 =.true;.........................
6160 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f .}............................//
6180 20 46 69 6c 74 65 72 20 6f 75 74 20 75 6e 77 61 6e 74 65 64 20 63 68 61 72 61 63 74 65 72 73 2e .Filter.out.unwanted.characters.
61a0 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 68 61 72 20 63 ..........................char.c
61c0 68 72 20 3d 20 45 76 65 6e 74 2e 63 75 72 72 65 6e 74 2e 63 68 61 72 61 63 74 65 72 3b 0d 0a 20 hr.=.Event.current.character;...
61e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 28 63 68 72 20 .......................if.((chr.
6200 3c 20 27 30 27 20 7c 7c 20 63 68 72 20 3e 20 27 39 27 29 20 26 26 20 28 63 68 72 20 3c 20 27 2c <.'0'.||.chr.>.'9').&&.(chr.<.',
6220 27 20 7c 7c 20 63 68 72 20 3e 20 27 2d 27 29 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 '.||.chr.>.'-'))................
6240 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..........{.....................
6260 20 20 20 20 20 20 20 20 20 45 76 65 6e 74 2e 63 75 72 72 65 6e 74 2e 63 68 61 72 61 63 74 65 72 .........Event.current.character
6280 20 3d 20 27 5c 30 27 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .=.'\0';........................
62a0 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 47 55 49 ..}..........................GUI
62c0 4c 61 79 6f 75 74 2e 4c 61 62 65 6c 28 22 43 68 61 72 61 63 74 65 72 20 53 65 71 75 65 6e 63 65 Layout.Label("Character.Sequence
62e0 20 28 44 65 63 69 6d 61 6c 29 22 2c 20 45 64 69 74 6f 72 53 74 79 6c 65 73 2e 62 6f 6c 64 4c 61 .(Decimal)",.EditorStyles.boldLa
6300 62 65 6c 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 45 bel);..........................E
6320 64 69 74 6f 72 47 55 49 2e 42 65 67 69 6e 43 68 61 6e 67 65 43 68 65 63 6b 28 29 3b 0d 0a 20 20 ditorGUI.BeginChangeCheck();....
6340 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 43 68 61 72 61 63 74 65 ......................m_Characte
6360 72 53 65 71 75 65 6e 63 65 20 3d 20 45 64 69 74 6f 72 47 55 49 4c 61 79 6f 75 74 2e 54 65 78 74 rSequence.=.EditorGUILayout.Text
6380 41 72 65 61 28 6d 5f 43 68 61 72 61 63 74 65 72 53 65 71 75 65 6e 63 65 2c 20 54 4d 50 5f 55 49 Area(m_CharacterSequence,.TMP_UI
63a0 53 74 79 6c 65 4d 61 6e 61 67 65 72 2e 74 65 78 74 41 72 65 61 42 6f 78 57 69 6e 64 6f 77 2c 20 StyleManager.textAreaBoxWindow,.
63c0 47 55 49 4c 61 79 6f 75 74 2e 48 65 69 67 68 74 28 31 32 30 29 2c 20 47 55 49 4c 61 79 6f 75 74 GUILayout.Height(120),.GUILayout
63e0 2e 45 78 70 61 6e 64 57 69 64 74 68 28 74 72 75 65 29 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 .ExpandWidth(true));............
6400 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 45 64 69 74 6f 72 47 55 49 2e 45 6e 64 43 ..............if.(EditorGUI.EndC
6420 68 61 6e 67 65 43 68 65 63 6b 28 29 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 hangeCheck())...................
6440 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .......{........................
6460 20 20 20 20 20 20 6d 5f 49 73 46 6f 6e 74 41 74 6c 61 73 49 6e 76 61 6c 69 64 20 3d 20 74 72 75 ......m_IsFontAtlasInvalid.=.tru
6480 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 e;..........................}...
64a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 ................................
64c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 45 64 69 74 6f 72 47 55 49 4c 61 79 6f 75 74 .................EditorGUILayout
64e0 2e 45 6e 64 56 65 72 74 69 63 61 6c 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .EndVertical();.................
6500 20 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 .........break;.................
6520 20 20 20 20 20 20 20 63 61 73 65 20 36 3a 20 2f 2f 20 55 6e 69 63 6f 64 65 20 48 45 58 20 52 61 .......case.6:.//.Unicode.HEX.Ra
6540 6e 67 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 45 64 69 nge..........................Edi
6560 74 6f 72 47 55 49 4c 61 79 6f 75 74 2e 42 65 67 69 6e 56 65 72 74 69 63 61 6c 28 45 64 69 74 6f torGUILayout.BeginVertical(Edito
6580 72 53 74 79 6c 65 73 2e 68 65 6c 70 42 6f 78 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 rStyles.helpBox);...............
65a0 20 20 20 20 20 20 20 20 20 20 20 47 55 49 4c 61 79 6f 75 74 2e 4c 61 62 65 6c 28 22 45 6e 74 65 ...........GUILayout.Label("Ente
65c0 72 20 61 20 73 65 71 75 65 6e 63 65 20 6f 66 20 55 6e 69 63 6f 64 65 20 28 68 65 78 29 20 76 61 r.a.sequence.of.Unicode.(hex).va
65e0 6c 75 65 73 20 74 6f 20 64 65 66 69 6e 65 20 74 68 65 20 63 68 61 72 61 63 74 65 72 73 20 74 6f lues.to.define.the.characters.to
6600 20 62 65 20 69 6e 63 6c 75 64 65 64 20 69 6e 20 74 68 65 20 66 6f 6e 74 20 61 73 73 65 74 20 6f .be.included.in.the.font.asset.o
6620 72 20 72 65 74 72 69 65 76 65 20 6f 6e 65 20 66 72 6f 6d 20 61 6e 6f 74 68 65 72 20 66 6f 6e 74 r.retrieve.one.from.another.font
6640 20 61 73 73 65 74 2e 22 2c 20 54 4d 50 5f 55 49 53 74 79 6c 65 4d 61 6e 61 67 65 72 2e 6c 61 62 .asset.",.TMP_UIStyleManager.lab
6660 65 6c 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 47 55 el);..........................GU
6680 49 4c 61 79 6f 75 74 2e 53 70 61 63 65 28 31 30 66 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 ILayout.Space(10f);.............
66a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 45 64 69 74 6f 72 47 55 49 2e 42 65 67 69 6e 43 68 ...............EditorGUI.BeginCh
66c0 61 6e 67 65 43 68 65 63 6b 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 angeCheck();....................
66e0 20 20 20 20 20 20 6d 5f 52 65 66 65 72 65 6e 63 65 64 46 6f 6e 74 41 73 73 65 74 20 3d 20 45 64 ......m_ReferencedFontAsset.=.Ed
6700 69 74 6f 72 47 55 49 4c 61 79 6f 75 74 2e 4f 62 6a 65 63 74 46 69 65 6c 64 28 22 53 65 6c 65 63 itorGUILayout.ObjectField("Selec
6720 74 20 46 6f 6e 74 20 41 73 73 65 74 22 2c 20 6d 5f 52 65 66 65 72 65 6e 63 65 64 46 6f 6e 74 41 t.Font.Asset",.m_ReferencedFontA
6740 73 73 65 74 2c 20 74 79 70 65 6f 66 28 54 4d 50 5f 46 6f 6e 74 41 73 73 65 74 29 2c 20 66 61 6c sset,.typeof(TMP_FontAsset),.fal
6760 73 65 29 20 61 73 20 54 4d 50 5f 46 6f 6e 74 41 73 73 65 74 3b 0d 0a 20 20 20 20 20 20 20 20 20 se).as.TMP_FontAsset;...........
6780 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 45 64 69 74 6f 72 47 55 49 2e 45 6e 64 ...............if.(EditorGUI.End
67a0 43 68 61 6e 67 65 43 68 65 63 6b 28 29 20 7c 7c 20 68 61 73 53 65 6c 65 63 74 69 6f 6e 43 68 61 ChangeCheck().||.hasSelectionCha
67c0 6e 67 65 64 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b nged)..........................{
67e0 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 ..............................if
6800 20 28 6d 5f 52 65 66 65 72 65 6e 63 65 64 46 6f 6e 74 41 73 73 65 74 20 21 3d 20 6e 75 6c 6c 29 .(m_ReferencedFontAsset.!=.null)
6820 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
6840 20 20 6d 5f 43 68 61 72 61 63 74 65 72 53 65 71 75 65 6e 63 65 20 3d 20 54 4d 50 5f 45 64 69 74 ..m_CharacterSequence.=.TMP_Edit
6860 6f 72 55 74 69 6c 69 74 79 2e 47 65 74 55 6e 69 63 6f 64 65 43 68 61 72 61 63 74 65 72 53 65 71 orUtility.GetUnicodeCharacterSeq
6880 75 65 6e 63 65 28 54 4d 50 5f 46 6f 6e 74 41 73 73 65 74 2e 47 65 74 43 68 61 72 61 63 74 65 72 uence(TMP_FontAsset.GetCharacter
68a0 73 41 72 72 61 79 28 6d 5f 52 65 66 65 72 65 6e 63 65 64 46 6f 6e 74 41 73 73 65 74 29 29 3b 0d sArray(m_ReferencedFontAsset));.
68c0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a 20 ................................
68e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 49 73 46 ...........................m_IsF
6900 6f 6e 74 41 74 6c 61 73 49 6e 76 61 6c 69 64 20 3d 20 74 72 75 65 3b 0d 0a 20 20 20 20 20 20 20 ontAtlasInvalid.=.true;.........
6920 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 .................}..............
6940 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 46 69 6c 74 65 72 20 6f 75 74 20 75 6e 77 61 ..............//.Filter.out.unwa
6960 6e 74 65 64 20 63 68 61 72 61 63 74 65 72 73 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 nted.characters.................
6980 20 20 20 20 20 20 20 20 20 20 63 68 72 20 3d 20 45 76 65 6e 74 2e 63 75 72 72 65 6e 74 2e 63 68 ..........chr.=.Event.current.ch
69a0 61 72 61 63 74 65 72 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 aracter;........................
69c0 20 20 69 66 20 28 28 63 68 72 20 3c 20 27 30 27 20 7c 7c 20 63 68 72 20 3e 20 27 39 27 29 20 26 ..if.((chr.<.'0'.||.chr.>.'9').&
69e0 26 20 28 63 68 72 20 3c 20 27 61 27 20 7c 7c 20 63 68 72 20 3e 20 27 66 27 29 20 26 26 20 28 63 &.(chr.<.'a'.||.chr.>.'f').&&.(c
6a00 68 72 20 3c 20 27 41 27 20 7c 7c 20 63 68 72 20 3e 20 27 46 27 29 20 26 26 20 28 63 68 72 20 3c hr.<.'A'.||.chr.>.'F').&&.(chr.<
6a20 20 27 2c 27 20 7c 7c 20 63 68 72 20 3e 20 27 2d 27 29 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 .','.||.chr.>.'-')).............
6a40 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .............{..................
6a60 20 20 20 20 20 20 20 20 20 20 20 20 45 76 65 6e 74 2e 63 75 72 72 65 6e 74 2e 63 68 61 72 61 63 ............Event.current.charac
6a80 74 65 72 20 3d 20 27 5c 30 27 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ter.=.'\0';.....................
6aa0 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .....}..........................
6ac0 47 55 49 4c 61 79 6f 75 74 2e 4c 61 62 65 6c 28 22 43 68 61 72 61 63 74 65 72 20 53 65 71 75 65 GUILayout.Label("Character.Seque
6ae0 6e 63 65 20 28 48 65 78 29 22 2c 20 45 64 69 74 6f 72 53 74 79 6c 65 73 2e 62 6f 6c 64 4c 61 62 nce.(Hex)",.EditorStyles.boldLab
6b00 65 6c 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 45 64 el);..........................Ed
6b20 69 74 6f 72 47 55 49 2e 42 65 67 69 6e 43 68 61 6e 67 65 43 68 65 63 6b 28 29 3b 0d 0a 20 20 20 itorGUI.BeginChangeCheck();.....
6b40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 43 68 61 72 61 63 74 65 72 .....................m_Character
6b60 53 65 71 75 65 6e 63 65 20 3d 20 45 64 69 74 6f 72 47 55 49 4c 61 79 6f 75 74 2e 54 65 78 74 41 Sequence.=.EditorGUILayout.TextA
6b80 72 65 61 28 6d 5f 43 68 61 72 61 63 74 65 72 53 65 71 75 65 6e 63 65 2c 20 54 4d 50 5f 55 49 53 rea(m_CharacterSequence,.TMP_UIS
6ba0 74 79 6c 65 4d 61 6e 61 67 65 72 2e 74 65 78 74 41 72 65 61 42 6f 78 57 69 6e 64 6f 77 2c 20 47 tyleManager.textAreaBoxWindow,.G
6bc0 55 49 4c 61 79 6f 75 74 2e 48 65 69 67 68 74 28 31 32 30 29 2c 20 47 55 49 4c 61 79 6f 75 74 2e UILayout.Height(120),.GUILayout.
6be0 45 78 70 61 6e 64 57 69 64 74 68 28 74 72 75 65 29 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 ExpandWidth(true));.............
6c00 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 45 64 69 74 6f 72 47 55 49 2e 45 6e 64 43 68 .............if.(EditorGUI.EndCh
6c20 61 6e 67 65 43 68 65 63 6b 28 29 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 angeCheck())....................
6c40 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ......{.........................
6c60 20 20 20 20 20 6d 5f 49 73 46 6f 6e 74 41 74 6c 61 73 49 6e 76 61 6c 69 64 20 3d 20 74 72 75 65 .....m_IsFontAtlasInvalid.=.true
6c80 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a ;..........................}....
6ca0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 45 64 69 74 6f 72 47 55 ........................EditorGU
6cc0 49 4c 61 79 6f 75 74 2e 45 6e 64 56 65 72 74 69 63 61 6c 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 ILayout.EndVertical();..........
6ce0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0d 0a 0d 0a 20 20 20 20 20 20 ................break;..........
6d00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 61 73 65 20 37 3a 20 2f 2f 20 43 68 61 72 61 63 74 ..............case.7:.//.Charact
6d20 65 72 73 20 66 72 6f 6d 20 46 6f 6e 74 20 41 73 73 65 74 0d 0a 20 20 20 20 20 20 20 20 20 20 20 ers.from.Font.Asset.............
6d40 20 20 20 20 20 20 20 20 20 20 20 20 20 45 64 69 74 6f 72 47 55 49 4c 61 79 6f 75 74 2e 42 65 67 .............EditorGUILayout.Beg
6d60 69 6e 56 65 72 74 69 63 61 6c 28 45 64 69 74 6f 72 53 74 79 6c 65 73 2e 68 65 6c 70 42 6f 78 29 inVertical(EditorStyles.helpBox)
6d80 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 47 55 49 4c 61 ;..........................GUILa
6da0 79 6f 75 74 2e 4c 61 62 65 6c 28 22 54 79 70 65 20 74 68 65 20 63 68 61 72 61 63 74 65 72 73 20 yout.Label("Type.the.characters.
6dc0 74 6f 20 62 65 20 69 6e 63 6c 75 64 65 64 20 69 6e 20 74 68 65 20 66 6f 6e 74 20 61 73 73 65 74 to.be.included.in.the.font.asset
6de0 20 6f 72 20 72 65 74 72 69 65 76 65 20 74 68 65 6d 20 66 72 6f 6d 20 61 6e 6f 74 68 65 72 20 66 .or.retrieve.them.from.another.f
6e00 6f 6e 74 20 61 73 73 65 74 2e 22 2c 20 54 4d 50 5f 55 49 53 74 79 6c 65 4d 61 6e 61 67 65 72 2e ont.asset.",.TMP_UIStyleManager.
6e20 6c 61 62 65 6c 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 label);.........................
6e40 20 47 55 49 4c 61 79 6f 75 74 2e 53 70 61 63 65 28 31 30 66 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 .GUILayout.Space(10f);..........
6e60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 45 64 69 74 6f 72 47 55 49 2e 42 65 67 69 ..................EditorGUI.Begi
6e80 6e 43 68 61 6e 67 65 43 68 65 63 6b 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 nChangeCheck();.................
6ea0 20 20 20 20 20 20 20 20 20 6d 5f 52 65 66 65 72 65 6e 63 65 64 46 6f 6e 74 41 73 73 65 74 20 3d .........m_ReferencedFontAsset.=
6ec0 20 45 64 69 74 6f 72 47 55 49 4c 61 79 6f 75 74 2e 4f 62 6a 65 63 74 46 69 65 6c 64 28 22 53 65 .EditorGUILayout.ObjectField("Se
6ee0 6c 65 63 74 20 46 6f 6e 74 20 41 73 73 65 74 22 2c 20 6d 5f 52 65 66 65 72 65 6e 63 65 64 46 6f lect.Font.Asset",.m_ReferencedFo
6f00 6e 74 41 73 73 65 74 2c 20 74 79 70 65 6f 66 28 54 4d 50 5f 46 6f 6e 74 41 73 73 65 74 29 2c 20 ntAsset,.typeof(TMP_FontAsset),.
6f20 66 61 6c 73 65 29 20 61 73 20 54 4d 50 5f 46 6f 6e 74 41 73 73 65 74 3b 0d 0a 20 20 20 20 20 20 false).as.TMP_FontAsset;........
6f40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 45 64 69 74 6f 72 47 55 49 2e ..................if.(EditorGUI.
6f60 45 6e 64 43 68 61 6e 67 65 43 68 65 63 6b 28 29 20 7c 7c 20 68 61 73 53 65 6c 65 63 74 69 6f 6e EndChangeCheck().||.hasSelection
6f80 43 68 61 6e 67 65 64 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 Changed)........................
6fa0 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..{.............................
6fc0 20 69 66 20 28 6d 5f 52 65 66 65 72 65 6e 63 65 64 46 6f 6e 74 41 73 73 65 74 20 21 3d 20 6e 75 .if.(m_ReferencedFontAsset.!=.nu
6fe0 6c 6c 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ll).............................
7000 20 20 20 20 20 6d 5f 43 68 61 72 61 63 74 65 72 53 65 71 75 65 6e 63 65 20 3d 20 54 4d 50 5f 46 .....m_CharacterSequence.=.TMP_F
7020 6f 6e 74 41 73 73 65 74 2e 47 65 74 43 68 61 72 61 63 74 65 72 73 28 6d 5f 52 65 66 65 72 65 6e ontAsset.GetCharacters(m_Referen
7040 63 65 64 46 6f 6e 74 41 73 73 65 74 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 cedFontAsset);..................
7060 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
7080 20 20 20 20 20 20 20 20 20 20 6d 5f 49 73 46 6f 6e 74 41 74 6c 61 73 49 6e 76 61 6c 69 64 20 3d ..........m_IsFontAtlasInvalid.=
70a0 20 74 72 75 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .true;..........................
70c0 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 45 64 69 }............................Edi
70e0 74 6f 72 47 55 49 2e 69 6e 64 65 6e 74 4c 65 76 65 6c 20 3d 20 30 3b 0d 0a 20 20 20 20 20 20 20 torGUI.indentLevel.=.0;.........
7100 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
7120 20 20 20 20 20 20 20 20 20 20 20 47 55 49 4c 61 79 6f 75 74 2e 4c 61 62 65 6c 28 22 43 75 73 74 ...........GUILayout.Label("Cust
7140 6f 6d 20 43 68 61 72 61 63 74 65 72 20 4c 69 73 74 22 2c 20 45 64 69 74 6f 72 53 74 79 6c 65 73 om.Character.List",.EditorStyles
7160 2e 62 6f 6c 64 4c 61 62 65 6c 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .boldLabel);....................
7180 20 20 20 20 20 20 45 64 69 74 6f 72 47 55 49 2e 42 65 67 69 6e 43 68 61 6e 67 65 43 68 65 63 6b ......EditorGUI.BeginChangeCheck
71a0 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 43 ();..........................m_C
71c0 68 61 72 61 63 74 65 72 53 65 71 75 65 6e 63 65 20 3d 20 45 64 69 74 6f 72 47 55 49 4c 61 79 6f haracterSequence.=.EditorGUILayo
71e0 75 74 2e 54 65 78 74 41 72 65 61 28 6d 5f 43 68 61 72 61 63 74 65 72 53 65 71 75 65 6e 63 65 2c ut.TextArea(m_CharacterSequence,
7200 20 54 4d 50 5f 55 49 53 74 79 6c 65 4d 61 6e 61 67 65 72 2e 74 65 78 74 41 72 65 61 42 6f 78 57 .TMP_UIStyleManager.textAreaBoxW
7220 69 6e 64 6f 77 2c 20 47 55 49 4c 61 79 6f 75 74 2e 48 65 69 67 68 74 28 31 32 30 29 2c 20 47 55 indow,.GUILayout.Height(120),.GU
7240 49 4c 61 79 6f 75 74 2e 45 78 70 61 6e 64 57 69 64 74 68 28 74 72 75 65 29 29 3b 0d 0a 20 20 20 ILayout.ExpandWidth(true));.....
7260 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 45 64 69 74 6f 72 47 .....................if.(EditorG
7280 55 49 2e 45 6e 64 43 68 61 6e 67 65 43 68 65 63 6b 28 29 29 0d 0a 20 20 20 20 20 20 20 20 20 20 UI.EndChangeCheck())............
72a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..............{.................
72c0 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 49 73 46 6f 6e 74 41 74 6c 61 73 49 6e 76 61 6c 69 .............m_IsFontAtlasInvali
72e0 64 20 3d 20 74 72 75 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 d.=.true;.......................
7300 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 45 64 ...}..........................Ed
7320 69 74 6f 72 47 55 49 4c 61 79 6f 75 74 2e 45 6e 64 56 65 72 74 69 63 61 6c 28 29 3b 0d 0a 20 20 itorGUILayout.EndVertical();....
7340 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0d 0a 0d 0a ......................break;....
7360 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 61 73 65 20 38 3a 20 2f 2f 20 43 ....................case.8:.//.C
7380 68 61 72 61 63 74 65 72 20 4c 69 73 74 20 66 72 6f 6d 20 46 69 6c 65 0d 0a 20 20 20 20 20 20 20 haracter.List.from.File.........
73a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 45 64 69 74 6f 72 47 55 49 2e 42 65 67 69 6e .................EditorGUI.Begin
73c0 43 68 61 6e 67 65 43 68 65 63 6b 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ChangeCheck();..................
73e0 20 20 20 20 20 20 20 20 6d 5f 43 68 61 72 61 63 74 65 72 73 46 72 6f 6d 46 69 6c 65 20 3d 20 45 ........m_CharactersFromFile.=.E
7400 64 69 74 6f 72 47 55 49 4c 61 79 6f 75 74 2e 4f 62 6a 65 63 74 46 69 65 6c 64 28 22 43 68 61 72 ditorGUILayout.ObjectField("Char
7420 61 63 74 65 72 20 46 69 6c 65 22 2c 20 6d 5f 43 68 61 72 61 63 74 65 72 73 46 72 6f 6d 46 69 6c acter.File",.m_CharactersFromFil
7440 65 2c 20 74 79 70 65 6f 66 28 54 65 78 74 41 73 73 65 74 29 2c 20 66 61 6c 73 65 29 20 61 73 20 e,.typeof(TextAsset),.false).as.
7460 54 65 78 74 41 73 73 65 74 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 TextAsset;......................
7480 20 20 20 20 69 66 20 28 45 64 69 74 6f 72 47 55 49 2e 45 6e 64 43 68 61 6e 67 65 43 68 65 63 6b ....if.(EditorGUI.EndChangeCheck
74a0 28 29 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a ())..........................{..
74c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 49 73 ............................m_Is
74e0 46 6f 6e 74 41 74 6c 61 73 49 6e 76 61 6c 69 64 20 3d 20 74 72 75 65 3b 0d 0a 20 20 20 20 20 20 FontAtlasInvalid.=.true;........
7500 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 ..................}.............
7520 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6d 5f 43 68 61 72 61 63 74 65 72 73 46 ...............if.(m_CharactersF
7540 72 6f 6d 46 69 6c 65 20 21 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 romFile.!=.null)................
7560 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..........{.....................
7580 20 20 20 20 20 20 20 20 20 52 65 67 65 78 20 72 78 20 3d 20 6e 65 77 20 52 65 67 65 78 28 40 22 .........Regex.rx.=.new.Regex(@"
75a0 28 3f 3c 21 5c 5c 29 28 3f 3a 5c 5c 75 5b 30 2d 39 61 2d 66 41 2d 46 5d 7b 34 7d 7c 5c 5c 55 5b (?<!\\)(?:\\u[0-9a-fA-F]{4}|\\U[
75c0 30 2d 39 61 2d 66 41 2d 46 5d 7b 38 7d 29 22 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 0-9a-fA-F]{8})");...............
75e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 43 68 61 72 61 63 74 65 72 53 65 71 75 .................m_CharacterSequ
7600 65 6e 63 65 20 3d 20 72 78 2e 52 65 70 6c 61 63 65 28 6d 5f 43 68 61 72 61 63 74 65 72 73 46 72 ence.=.rx.Replace(m_CharactersFr
7620 6f 6d 46 69 6c 65 2e 74 65 78 74 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 omFile.text,....................
7640 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 61 74 63 68 20 3d 3e 0d 0a 20 20 20 20 20 20 20 20 ..............match.=>..........
7660 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 ........................{.......
7680 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 ...............................i
76a0 66 20 28 6d 61 74 63 68 2e 56 61 6c 75 65 2e 53 74 61 72 74 73 57 69 74 68 28 22 5c 5c 55 22 29 f.(match.Value.StartsWith("\\U")
76c0 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 )...............................
76e0 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 63 68 61 72 2e 43 6f 6e 76 65 72 74 46 72 ...........return.char.ConvertFr
7700 6f 6d 55 74 66 33 32 28 69 6e 74 2e 50 61 72 73 65 28 6d 61 74 63 68 2e 56 61 6c 75 65 2e 52 65 omUtf32(int.Parse(match.Value.Re
7720 70 6c 61 63 65 28 22 5c 5c 55 22 2c 20 22 22 29 2c 20 4e 75 6d 62 65 72 53 74 79 6c 65 73 2e 48 place("\\U",.""),.NumberStyles.H
7740 65 78 4e 75 6d 62 65 72 29 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 exNumber));.....................
7760 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 63 68 61 72 2e 43 ...................return.char.C
7780 6f 6e 76 65 72 74 46 72 6f 6d 55 74 66 33 32 28 69 6e 74 2e 50 61 72 73 65 28 6d 61 74 63 68 2e onvertFromUtf32(int.Parse(match.
77a0 56 61 6c 75 65 2e 52 65 70 6c 61 63 65 28 22 5c 5c 75 22 2c 20 22 22 29 2c 20 4e 75 6d 62 65 72 Value.Replace("\\u",.""),.Number
77c0 53 74 79 6c 65 73 2e 48 65 78 4e 75 6d 62 65 72 29 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 Styles.HexNumber));.............
77e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 29 3b 0d 0a 20 20 20 20 20 20 .....................});........
7800 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 ..................}.............
7820 20 20 20 20 20 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 .............break;.............
7840 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 46 4f 4e .....}....................//.FON
7860 54 20 53 54 59 4c 45 20 53 45 4c 45 43 54 49 4f 4e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 T.STYLE.SELECTION...............
7880 20 20 20 2f 2f 47 55 49 4c 61 79 6f 75 74 2e 42 65 67 69 6e 48 6f 72 69 7a 6f 6e 74 61 6c 28 29 ...//GUILayout.BeginHorizontal()
78a0 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 45 64 69 74 6f 72 47 55 49 2e 42 ;..................//EditorGUI.B
78c0 65 67 69 6e 43 68 61 6e 67 65 43 68 65 63 6b 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 eginChangeCheck();..............
78e0 20 20 20 20 2f 2f 2f 2f 6d 5f 46 6f 6e 74 53 74 79 6c 65 20 3d 20 28 46 61 63 65 53 74 79 6c 65 ....////m_FontStyle.=.(FaceStyle
7900 73 29 45 64 69 74 6f 72 47 55 49 4c 61 79 6f 75 74 2e 45 6e 75 6d 50 6f 70 75 70 28 22 46 6f 6e s)EditorGUILayout.EnumPopup("Fon
7920 74 20 53 74 79 6c 65 22 2c 20 6d 5f 46 6f 6e 74 53 74 79 6c 65 2c 20 47 55 49 4c 61 79 6f 75 74 t.Style",.m_FontStyle,.GUILayout
7940 2e 57 69 64 74 68 28 32 32 35 29 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f .Width(225));................../
7960 2f 2f 2f 6d 5f 46 6f 6e 74 53 74 79 6c 65 56 61 6c 75 65 20 3d 20 45 64 69 74 6f 72 47 55 49 4c ///m_FontStyleValue.=.EditorGUIL
7980 61 79 6f 75 74 2e 49 6e 74 46 69 65 6c 64 28 28 69 6e 74 29 6d 5f 46 6f 6e 74 53 74 79 6c 65 56 ayout.IntField((int)m_FontStyleV
79a0 61 6c 75 65 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 69 66 20 28 45 64 alue);..................//if.(Ed
79c0 69 74 6f 72 47 55 49 2e 45 6e 64 43 68 61 6e 67 65 43 68 65 63 6b 28 29 29 0d 0a 20 20 20 20 20 itorGUI.EndChangeCheck()).......
79e0 20 20 20 20 20 20 20 20 20 20 20 2f 2f 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ...........//{..................
7a00 2f 2f 20 20 20 20 6d 5f 49 73 46 6f 6e 74 41 74 6c 61 73 49 6e 76 61 6c 69 64 20 3d 20 74 72 75 //....m_IsFontAtlasInvalid.=.tru
7a20 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 7d 0d 0a 20 20 20 20 20 20 20 e;..................//}.........
7a40 20 20 20 20 20 20 20 20 20 2f 2f 47 55 49 4c 61 79 6f 75 74 2e 45 6e 64 48 6f 72 69 7a 6f 6e 74 .........//GUILayout.EndHorizont
7a60 61 6c 28 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 52 65 6e 64 al();....................//.Rend
7a80 65 72 20 4d 6f 64 65 20 53 65 6c 65 63 74 69 6f 6e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 er.Mode.Selection...............
7aa0 20 20 20 43 68 65 63 6b 46 6f 72 4c 65 67 61 63 79 47 6c 79 70 68 52 65 6e 64 65 72 4d 6f 64 65 ...CheckForLegacyGlyphRenderMode
7ac0 28 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 45 64 69 74 6f 72 47 55 49 ();....................EditorGUI
7ae0 2e 42 65 67 69 6e 43 68 61 6e 67 65 43 68 65 63 6b 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 .BeginChangeCheck();............
7b00 20 20 20 20 20 20 6d 5f 47 6c 79 70 68 52 65 6e 64 65 72 4d 6f 64 65 20 3d 20 28 47 6c 79 70 68 ......m_GlyphRenderMode.=.(Glyph
7b20 52 65 6e 64 65 72 4d 6f 64 65 29 45 64 69 74 6f 72 47 55 49 4c 61 79 6f 75 74 2e 45 6e 75 6d 50 RenderMode)EditorGUILayout.EnumP
7b40 6f 70 75 70 28 22 52 65 6e 64 65 72 20 4d 6f 64 65 22 2c 20 6d 5f 47 6c 79 70 68 52 65 6e 64 65 opup("Render.Mode",.m_GlyphRende
7b60 72 4d 6f 64 65 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 45 64 69 rMode);..................if.(Edi
7b80 74 6f 72 47 55 49 2e 45 6e 64 43 68 61 6e 67 65 43 68 65 63 6b 28 29 29 0d 0a 20 20 20 20 20 20 torGUI.EndChangeCheck())........
7ba0 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..........{.....................
7bc0 20 6d 5f 49 73 46 6f 6e 74 41 74 6c 61 73 49 6e 76 61 6c 69 64 20 3d 20 74 72 75 65 3b 0d 0a 20 .m_IsFontAtlasInvalid.=.true;...
7be0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 ...............}................
7c00 20 20 20 20 6d 5f 49 6e 63 6c 75 64 65 46 6f 6e 74 46 65 61 74 75 72 65 73 20 3d 20 45 64 69 74 ....m_IncludeFontFeatures.=.Edit
7c20 6f 72 47 55 49 4c 61 79 6f 75 74 2e 54 6f 67 67 6c 65 28 22 47 65 74 20 4b 65 72 6e 69 6e 67 20 orGUILayout.Toggle("Get.Kerning.
7c40 50 61 69 72 73 22 2c 20 6d 5f 49 6e 63 6c 75 64 65 46 6f 6e 74 46 65 61 74 75 72 65 73 29 3b 0d Pairs",.m_IncludeFontFeatures);.
7c60 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 45 64 69 74 6f 72 47 55 49 4c 61 79 6f ...................EditorGUILayo
7c80 75 74 2e 53 70 61 63 65 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 ut.Space();..............}......
7ca0 20 20 20 20 20 20 20 20 20 20 45 64 69 74 6f 72 47 55 49 2e 45 6e 64 44 69 73 61 62 6c 65 64 47 ..........EditorGUI.EndDisabledG
7cc0 72 6f 75 70 28 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 21 73 74 72 69 roup();................if.(!stri
7ce0 6e 67 2e 49 73 4e 75 6c 6c 4f 72 45 6d 70 74 79 28 6d 5f 57 61 72 6e 69 6e 67 4d 65 73 73 61 67 ng.IsNullOrEmpty(m_WarningMessag
7d00 65 29 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 e))..............{..............
7d20 20 20 20 20 45 64 69 74 6f 72 47 55 49 4c 61 79 6f 75 74 2e 48 65 6c 70 42 6f 78 28 6d 5f 57 61 ....EditorGUILayout.HelpBox(m_Wa
7d40 72 6e 69 6e 67 4d 65 73 73 61 67 65 2c 20 4d 65 73 73 61 67 65 54 79 70 65 2e 57 61 72 6e 69 6e rningMessage,.MessageType.Warnin
7d60 67 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 g);..............}..............
7d80 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 47 55 49 2e 65 6e 61 62 6c 65 64 20 3d 20 6d 5f 53 6f ..............GUI.enabled.=.m_So
7da0 75 72 63 65 46 6f 6e 74 46 69 6c 65 20 21 3d 20 6e 75 6c 6c 20 26 26 20 21 6d 5f 49 73 50 72 6f urceFontFile.!=.null.&&.!m_IsPro
7dc0 63 65 73 73 69 6e 67 20 26 26 20 21 6d 5f 49 73 47 65 6e 65 72 61 74 69 6f 6e 44 69 73 61 62 6c cessing.&&.!m_IsGenerationDisabl
7de0 65 64 3b 20 2f 2f 20 45 6e 61 62 6c 65 20 50 72 65 76 69 65 77 20 69 66 20 77 65 20 61 72 65 20 ed;.//.Enable.Preview.if.we.are.
7e00 6e 6f 74 20 61 6c 72 65 61 64 79 20 72 65 6e 64 65 72 69 6e 67 20 61 20 66 6f 6e 74 2e 0d 0a 20 not.already.rendering.a.font....
7e20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 47 55 49 4c 61 79 6f 75 74 2e 42 75 74 74 6f 6e 28 ...........if.(GUILayout.Button(
7e40 22 47 65 6e 65 72 61 74 65 20 46 6f 6e 74 20 41 74 6c 61 73 22 29 20 26 26 20 47 55 49 2e 65 6e "Generate.Font.Atlas").&&.GUI.en
7e60 61 62 6c 65 64 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 abled)..............{...........
7e80 20 20 20 20 20 20 20 69 66 20 28 21 6d 5f 49 73 50 72 6f 63 65 73 73 69 6e 67 20 26 26 20 6d 5f .......if.(!m_IsProcessing.&&.m_
7ea0 53 6f 75 72 63 65 46 6f 6e 74 46 69 6c 65 20 21 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 SourceFontFile.!=.null).........
7ec0 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .........{......................
7ee0 44 65 73 74 72 6f 79 49 6d 6d 65 64 69 61 74 65 28 6d 5f 46 6f 6e 74 41 74 6c 61 73 54 65 78 74 DestroyImmediate(m_FontAtlasText
7f00 75 72 65 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 46 6f 6e ure);......................m_Fon
7f20 74 41 74 6c 61 73 54 65 78 74 75 72 65 20 3d 20 6e 75 6c 6c 3b 0d 0a 20 20 20 20 20 20 20 20 20 tAtlasTexture.=.null;...........
7f40 20 20 20 20 20 20 20 20 20 20 20 6d 5f 53 61 76 65 64 46 6f 6e 74 41 74 6c 61 73 20 3d 20 6e 75 ...........m_SavedFontAtlas.=.nu
7f60 6c 6c 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 49 6e ll;........................//.In
7f80 69 74 69 61 6c 69 7a 65 20 66 6f 6e 74 20 65 6e 67 69 6e 65 0d 0a 20 20 20 20 20 20 20 20 20 20 itialize.font.engine............
7fa0 20 20 20 20 20 20 20 20 20 20 46 6f 6e 74 45 6e 67 69 6e 65 45 72 72 6f 72 20 65 72 72 6f 72 43 ..........FontEngineError.errorC
7fc0 6f 64 65 20 3d 20 46 6f 6e 74 45 6e 67 69 6e 65 2e 49 6e 69 74 69 61 6c 69 7a 65 46 6f 6e 74 45 ode.=.FontEngine.InitializeFontE
7fe0 6e 67 69 6e 65 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 ngine();......................if
8000 20 28 65 72 72 6f 72 43 6f 64 65 20 21 3d 20 46 6f 6e 74 45 6e 67 69 6e 65 45 72 72 6f 72 2e 53 .(errorCode.!=.FontEngineError.S
8020 75 63 63 65 73 73 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a uccess)......................{..
8040 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 44 65 62 75 67 2e 4c 6f ........................Debug.Lo
8060 67 28 22 46 6f 6e 74 20 41 73 73 65 74 20 43 72 65 61 74 6f 72 20 2d 20 45 72 72 6f 72 20 5b 22 g("Font.Asset.Creator.-.Error.["
8080 20 2b 20 65 72 72 6f 72 43 6f 64 65 20 2b 20 22 5d 20 68 61 73 20 6f 63 63 75 72 72 65 64 20 77 .+.errorCode.+."].has.occurred.w
80a0 68 69 6c 65 20 49 6e 69 74 69 61 6c 69 7a 69 6e 67 20 74 68 65 20 46 72 65 65 54 79 70 65 20 4c hile.Initializing.the.FreeType.L
80c0 69 62 72 61 72 79 2e 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ibrary.");......................
80e0 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 }...............................
8100 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 47 65 74 20 66 69 6c 65 20 70 61 74 68 20 6f 66 .............//.Get.file.path.of
8120 20 74 68 65 20 73 6f 75 72 63 65 20 66 6f 6e 74 20 66 69 6c 65 2e 0d 0a 20 20 20 20 20 20 20 20 .the.source.font.file...........
8140 20 20 20 20 20 20 20 20 20 20 20 20 73 74 72 69 6e 67 20 66 6f 6e 74 50 61 74 68 20 3d 20 41 73 ............string.fontPath.=.As
8160 73 65 74 44 61 74 61 62 61 73 65 2e 47 65 74 41 73 73 65 74 50 61 74 68 28 6d 5f 53 6f 75 72 63 setDatabase.GetAssetPath(m_Sourc
8180 65 46 6f 6e 74 46 69 6c 65 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 eFontFile);.....................
81a0 20 20 20 69 66 20 28 65 72 72 6f 72 43 6f 64 65 20 3d 3d 20 46 6f 6e 74 45 6e 67 69 6e 65 45 72 ...if.(errorCode.==.FontEngineEr
81c0 72 6f 72 2e 53 75 63 63 65 73 73 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ror.Success)....................
81e0 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 72 72 ..{..........................err
8200 6f 72 43 6f 64 65 20 3d 20 46 6f 6e 74 45 6e 67 69 6e 65 2e 4c 6f 61 64 46 6f 6e 74 46 61 63 65 orCode.=.FontEngine.LoadFontFace
8220 28 66 6f 6e 74 50 61 74 68 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 (fontPath);.....................
8240 20 20 20 20 20 20 20 69 66 20 28 65 72 72 6f 72 43 6f 64 65 20 21 3d 20 46 6f 6e 74 45 6e 67 69 .......if.(errorCode.!=.FontEngi
8260 6e 65 45 72 72 6f 72 2e 53 75 63 63 65 73 73 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 neError.Success)................
8280 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..........{.....................
82a0 20 20 20 20 20 20 20 20 20 44 65 62 75 67 2e 4c 6f 67 28 22 46 6f 6e 74 20 41 73 73 65 74 20 43 .........Debug.Log("Font.Asset.C
82c0 72 65 61 74 6f 72 20 2d 20 45 72 72 6f 72 20 43 6f 64 65 20 5b 22 20 2b 20 65 72 72 6f 72 43 6f reator.-.Error.Code.[".+.errorCo
82e0 64 65 20 2b 20 22 5d 20 68 61 73 20 6f 63 63 75 72 72 65 64 20 74 72 79 69 6e 67 20 74 6f 20 6c de.+."].has.occurred.trying.to.l
8300 6f 61 64 20 74 68 65 20 5b 22 20 2b 20 6d 5f 53 6f 75 72 63 65 46 6f 6e 74 46 69 6c 65 2e 6e 61 oad.the.[".+.m_SourceFontFile.na
8320 6d 65 20 2b 20 22 5d 20 66 6f 6e 74 20 66 69 6c 65 2e 20 54 68 69 73 20 74 79 70 69 63 61 6c 6c me.+."].font.file..This.typicall
8340 79 20 72 65 73 75 6c 74 73 20 66 72 6f 6d 20 74 68 65 20 75 73 65 20 6f 66 20 61 6e 20 69 6e 63 y.results.from.the.use.of.an.inc
8360 6f 6d 70 61 74 69 62 6c 65 20 6f 72 20 63 6f 72 72 75 70 74 65 64 20 66 6f 6e 74 20 66 69 6c 65 ompatible.or.corrupted.font.file
8380 2e 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d .");..........................}.
83a0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 0d 0a 20 20 20 20 .....................}..........
83c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 44 65 66 69 6e 65 20 61 6e 20 61 72 72 ................//.Define.an.arr
83e0 61 79 20 63 6f 6e 74 61 69 6e 69 6e 67 20 74 68 65 20 63 68 61 72 61 63 74 65 72 73 20 77 65 20 ay.containing.the.characters.we.
8400 77 69 6c 6c 20 72 65 6e 64 65 72 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 will.render.....................
8420 20 20 69 66 20 28 65 72 72 6f 72 43 6f 64 65 20 3d 3d 20 46 6f 6e 74 45 6e 67 69 6e 65 45 72 72 ..if.(errorCode.==.FontEngineErr
8440 6f 72 2e 53 75 63 63 65 73 73 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 or.Success).....................
8460 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 75 69 6e 74 .{..........................uint
8480 5b 5d 20 63 68 61 72 61 63 74 65 72 53 65 74 20 3d 20 6e 75 6c 6c 3b 0d 0a 0d 0a 20 20 20 20 20 [].characterSet.=.null;.........
84a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 47 65 74 20 6c 69 73 74 20 6f ...................//.Get.list.o
84c0 66 20 63 68 61 72 61 63 74 65 72 73 20 74 68 61 74 20 6e 65 65 64 20 74 6f 20 62 65 20 70 61 63 f.characters.that.need.to.be.pac
84e0 6b 65 64 20 61 6e 64 20 72 65 6e 64 65 72 65 64 20 74 6f 20 74 68 65 20 61 74 6c 61 73 20 74 65 ked.and.rendered.to.the.atlas.te
8500 78 74 75 72 65 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 xture...........................
8520 69 66 20 28 6d 5f 43 68 61 72 61 63 74 65 72 53 65 74 53 65 6c 65 63 74 69 6f 6e 4d 6f 64 65 20 if.(m_CharacterSetSelectionMode.
8540 3d 3d 20 37 20 7c 7c 20 6d 5f 43 68 61 72 61 63 74 65 72 53 65 74 53 65 6c 65 63 74 69 6f 6e 4d ==.7.||.m_CharacterSetSelectionM
8560 6f 64 65 20 3d 3d 20 38 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ode.==.8).......................
8580 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ...{............................
85a0 20 20 4c 69 73 74 3c 75 69 6e 74 3e 20 63 68 61 72 5f 4c 69 73 74 20 3d 20 6e 65 77 20 4c 69 73 ..List<uint>.char_List.=.new.Lis
85c0 74 3c 75 69 6e 74 3e 28 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 t<uint>();......................
85e0 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 28 69 6e 74 20 69 20 3d 20 30 3b 20 69 20 3c 20 6d 5f ..........for.(int.i.=.0;.i.<.m_
8600 43 68 61 72 61 63 74 65 72 53 65 71 75 65 6e 63 65 2e 4c 65 6e 67 74 68 3b 20 69 2b 2b 29 0d 0a CharacterSequence.Length;.i++)..
8620 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 ............................{...
8640 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 75 ...............................u
8660 69 6e 74 20 75 6e 69 63 6f 64 65 20 3d 20 6d 5f 43 68 61 72 61 63 74 65 72 53 65 71 75 65 6e 63 int.unicode.=.m_CharacterSequenc
8680 65 5b 69 5d 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 e[i];...........................
86a0 20 20 20 20 20 20 20 20 20 2f 2f 20 48 61 6e 64 6c 65 20 73 75 72 72 6f 67 61 74 65 20 70 61 69 .........//.Handle.surrogate.pai
86c0 72 73 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 rs..............................
86e0 20 20 20 20 69 66 20 28 69 20 3c 20 6d 5f 43 68 61 72 61 63 74 65 72 53 65 71 75 65 6e 63 65 2e ....if.(i.<.m_CharacterSequence.
8700 4c 65 6e 67 74 68 20 2d 20 31 20 26 26 20 63 68 61 72 2e 49 73 48 69 67 68 53 75 72 72 6f 67 61 Length.-.1.&&.char.IsHighSurroga
8720 74 65 28 28 63 68 61 72 29 75 6e 69 63 6f 64 65 29 20 26 26 20 63 68 61 72 2e 49 73 4c 6f 77 53 te((char)unicode).&&.char.IsLowS
8740 75 72 72 6f 67 61 74 65 28 6d 5f 43 68 61 72 61 63 74 65 72 53 65 71 75 65 6e 63 65 5b 69 20 2b urrogate(m_CharacterSequence[i.+
8760 20 31 5d 29 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .1]))...........................
8780 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .......{........................
87a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 75 6e 69 63 6f 64 65 20 3d 20 28 75 69 6e 74 29 63 68 ..............unicode.=.(uint)ch
87c0 61 72 2e 43 6f 6e 76 65 72 74 54 6f 55 74 66 33 32 28 6d 5f 43 68 61 72 61 63 74 65 72 53 65 71 ar.ConvertToUtf32(m_CharacterSeq
87e0 75 65 6e 63 65 5b 69 5d 2c 20 6d 5f 43 68 61 72 61 63 74 65 72 53 65 71 75 65 6e 63 65 5b 69 20 uence[i],.m_CharacterSequence[i.
8800 2b 20 31 5d 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 +.1]);..........................
8820 20 20 20 20 20 20 20 20 20 20 20 20 69 20 2b 3d 20 31 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 ............i.+=.1;.............
8840 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 .....................}..........
8860 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 43 68 65 ..........................//.Che
8880 63 6b 20 74 6f 20 6d 61 6b 65 20 73 75 72 65 20 77 65 20 64 6f 6e 27 74 20 69 6e 63 6c 75 64 65 ck.to.make.sure.we.don't.include
88a0 20 64 75 70 6c 69 63 61 74 65 73 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .duplicates.....................
88c0 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 63 68 61 72 5f 4c 69 73 74 2e 46 69 6e 64 49 .............if.(char_List.FindI
88e0 6e 64 65 78 28 69 74 65 6d 20 3d 3e 20 69 74 65 6d 20 3d 3d 20 75 6e 69 63 6f 64 65 29 20 3d 3d ndex(item.=>.item.==.unicode).==
8900 20 2d 31 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .-1)............................
8920 20 20 20 20 20 20 20 20 20 20 63 68 61 72 5f 4c 69 73 74 2e 41 64 64 28 75 6e 69 63 6f 64 65 29 ..........char_List.Add(unicode)
8940 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d ;..............................}
8960 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
8980 63 68 61 72 61 63 74 65 72 53 65 74 20 3d 20 63 68 61 72 5f 4c 69 73 74 2e 54 6f 41 72 72 61 79 characterSet.=.char_List.ToArray
89a0 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a ();..........................}..
89c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 6c 73 65 20 69 66 20 ........................else.if.
89e0 28 6d 5f 43 68 61 72 61 63 74 65 72 53 65 74 53 65 6c 65 63 74 69 6f 6e 4d 6f 64 65 20 3d 3d 20 (m_CharacterSetSelectionMode.==.
8a00 36 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 6)..........................{...
8a20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 68 61 72 61 ...........................chara
8a40 63 74 65 72 53 65 74 20 3d 20 50 61 72 73 65 48 65 78 4e 75 6d 62 65 72 53 65 71 75 65 6e 63 65 cterSet.=.ParseHexNumberSequence
8a60 28 6d 5f 43 68 61 72 61 63 74 65 72 53 65 71 75 65 6e 63 65 29 3b 0d 0a 20 20 20 20 20 20 20 20 (m_CharacterSequence);..........
8a80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ................}...............
8aa0 20 20 20 20 20 20 20 20 20 20 20 65 6c 73 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ...........else.................
8ac0 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .........{......................
8ae0 20 20 20 20 20 20 20 20 63 68 61 72 61 63 74 65 72 53 65 74 20 3d 20 50 61 72 73 65 4e 75 6d 62 ........characterSet.=.ParseNumb
8b00 65 72 53 65 71 75 65 6e 63 65 28 6d 5f 43 68 61 72 61 63 74 65 72 53 65 71 75 65 6e 63 65 29 3b erSequence(m_CharacterSequence);
8b20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 ..........................}.....
8b40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 43 68 61 72 61 63 74 .......................m_Charact
8b60 65 72 43 6f 75 6e 74 20 3d 20 63 68 61 72 61 63 74 65 72 53 65 74 2e 4c 65 6e 67 74 68 3b 0d 0a erCount.=.characterSet.Length;..
8b80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 ................................
8ba0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 41 74 6c 61 73 47 65 6e 65 72 61 74 ..................m_AtlasGenerat
8bc0 69 6f 6e 50 72 6f 67 72 65 73 73 20 3d 20 30 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ionProgress.=.0;................
8be0 20 20 20 20 20 20 20 20 20 20 6d 5f 49 73 50 72 6f 63 65 73 73 69 6e 67 20 3d 20 74 72 75 65 3b ..........m_IsProcessing.=.true;
8c00 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 49 73 47 65 ..........................m_IsGe
8c20 6e 65 72 61 74 69 6f 6e 43 61 6e 63 65 6c 6c 65 64 20 3d 20 66 61 6c 73 65 3b 0d 0a 0d 0a 20 20 nerationCancelled.=.false;......
8c40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 47 6c 79 70 68 4c 6f 61 64 46 ......................GlyphLoadF
8c60 6c 61 67 73 20 67 6c 79 70 68 4c 6f 61 64 46 6c 61 67 73 20 3d 20 28 28 47 6c 79 70 68 52 61 73 lags.glyphLoadFlags.=.((GlyphRas
8c80 74 65 72 4d 6f 64 65 73 29 6d 5f 47 6c 79 70 68 52 65 6e 64 65 72 4d 6f 64 65 20 26 20 47 6c 79 terModes)m_GlyphRenderMode.&.Gly
8ca0 70 68 52 61 73 74 65 72 4d 6f 64 65 73 2e 52 41 53 54 45 52 5f 4d 4f 44 45 5f 48 49 4e 54 45 44 phRasterModes.RASTER_MODE_HINTED
8cc0 29 20 3d 3d 20 47 6c 79 70 68 52 61 73 74 65 72 4d 6f 64 65 73 2e 52 41 53 54 45 52 5f 4d 4f 44 ).==.GlyphRasterModes.RASTER_MOD
8ce0 45 5f 48 49 4e 54 45 44 20 3f 20 47 6c 79 70 68 4c 6f 61 64 46 6c 61 67 73 2e 4c 4f 41 44 5f 52 E_HINTED.?.GlyphLoadFlags.LOAD_R
8d00 45 4e 44 45 52 20 3a 20 47 6c 79 70 68 4c 6f 61 64 46 6c 61 67 73 2e 4c 4f 41 44 5f 52 45 4e 44 ENDER.:.GlyphLoadFlags.LOAD_REND
8d20 45 52 20 7c 20 47 6c 79 70 68 4c 6f 61 64 46 6c 61 67 73 2e 4c 4f 41 44 5f 4e 4f 5f 48 49 4e 54 ER.|.GlyphLoadFlags.LOAD_NO_HINT
8d40 49 4e 47 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ING;............................
8d60 2f 2f 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 75 74 //...........................Aut
8d80 6f 52 65 73 65 74 45 76 65 6e 74 20 61 75 74 6f 45 76 65 6e 74 20 3d 20 6e 65 77 20 41 75 74 6f oResetEvent.autoEvent.=.new.Auto
8da0 52 65 73 65 74 45 76 65 6e 74 28 66 61 6c 73 65 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 ResetEvent(false);..............
8dc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 57 6f 72 6b 65 72 20 74 68 72 65 61 64 20 74 ..............//.Worker.thread.t
8de0 6f 20 70 61 63 6b 20 67 6c 79 70 68 73 20 69 6e 20 74 68 65 20 67 69 76 65 6e 20 74 65 78 74 75 o.pack.glyphs.in.the.given.textu
8e00 72 65 20 73 70 61 63 65 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 re.space........................
8e20 20 20 20 54 68 72 65 61 64 50 6f 6f 6c 2e 51 75 65 75 65 55 73 65 72 57 6f 72 6b 49 74 65 6d 28 ...ThreadPool.QueueUserWorkItem(
8e40 50 61 63 6b 47 6c 79 70 68 73 20 3d 3e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 PackGlyphs.=>...................
8e60 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .......{........................
8e80 20 20 20 20 20 20 2f 2f 20 53 74 61 72 74 20 53 74 6f 70 20 57 61 74 63 68 0d 0a 20 20 20 20 20 ......//.Start.Stop.Watch.......
8ea0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 53 74 6f 70 57 61 74 .......................m_StopWat
8ec0 63 68 20 3d 20 53 79 73 74 65 6d 2e 44 69 61 67 6e 6f 73 74 69 63 73 2e 53 74 6f 70 77 61 74 63 ch.=.System.Diagnostics.Stopwatc
8ee0 68 2e 53 74 61 72 74 4e 65 77 28 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 h.StartNew();...................
8f00 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 43 6c 65 61 72 20 74 68 65 20 76 61 72 69 6f 75 .............//.Clear.the.variou
8f20 73 20 6c 69 73 74 73 20 75 73 65 64 20 69 6e 20 74 68 65 20 67 65 6e 65 72 61 74 69 6f 6e 20 70 s.lists.used.in.the.generation.p
8f40 72 6f 63 65 73 73 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 rocess..........................
8f60 20 20 20 20 20 6d 5f 41 76 61 69 6c 61 62 6c 65 47 6c 79 70 68 73 54 6f 41 64 64 2e 43 6c 65 61 .....m_AvailableGlyphsToAdd.Clea
8f80 72 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 r();............................
8fa0 20 20 6d 5f 4d 69 73 73 69 6e 67 43 68 61 72 61 63 74 65 72 73 2e 43 6c 65 61 72 28 29 3b 0d 0a ..m_MissingCharacters.Clear();..
8fc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 45 78 ............................m_Ex
8fe0 63 6c 75 64 65 64 43 68 61 72 61 63 74 65 72 73 2e 43 6c 65 61 72 28 29 3b 0d 0a 20 20 20 20 20 cludedCharacters.Clear();.......
9000 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 43 68 61 72 61 63 74 .......................m_Charact
9020 65 72 4c 6f 6f 6b 75 70 4d 61 70 2e 43 6c 65 61 72 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 erLookupMap.Clear();............
9040 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 47 6c 79 70 68 4c 6f 6f 6b 75 70 4d ..................m_GlyphLookupM
9060 61 70 2e 43 6c 65 61 72 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ap.Clear();.....................
9080 20 20 20 20 20 20 20 20 20 6d 5f 47 6c 79 70 68 73 54 6f 50 61 63 6b 2e 43 6c 65 61 72 28 29 3b .........m_GlyphsToPack.Clear();
90a0 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f ..............................m_
90c0 47 6c 79 70 68 73 50 61 63 6b 65 64 2e 43 6c 65 61 72 28 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 GlyphsPacked.Clear();...........
90e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 43 68 65 63 6b 20 69 66 .....................//.Check.if
9100 20 72 65 71 75 65 73 74 65 64 20 63 68 61 72 61 63 74 65 72 73 20 61 72 65 20 61 76 61 69 6c 61 .requested.characters.are.availa
9120 62 6c 65 20 69 6e 20 74 68 65 20 73 6f 75 72 63 65 20 66 6f 6e 74 20 66 69 6c 65 2e 0d 0a 20 20 ble.in.the.source.font.file.....
9140 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 28 69 ..........................for.(i
9160 6e 74 20 69 20 3d 20 30 3b 20 69 20 3c 20 63 68 61 72 61 63 74 65 72 53 65 74 2e 4c 65 6e 67 74 nt.i.=.0;.i.<.characterSet.Lengt
9180 68 3b 20 69 2b 2b 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 h;.i++).........................
91a0 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .....{..........................
91c0 20 20 20 20 20 20 20 20 75 69 6e 74 20 75 6e 69 63 6f 64 65 20 3d 20 63 68 61 72 61 63 74 65 72 ........uint.unicode.=.character
91e0 53 65 74 5b 69 5d 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 Set[i];.........................
9200 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 46 6f 6e 74 45 6e 67 69 6e 65 2e 54 72 79 47 65 74 ...........if.(FontEngine.TryGet
9220 47 6c 79 70 68 49 6e 64 65 78 28 75 6e 69 63 6f 64 65 2c 20 6f 75 74 20 75 69 6e 74 20 67 6c 79 GlyphIndex(unicode,.out.uint.gly
9240 70 68 49 6e 64 65 78 29 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 phIndex)).......................
9260 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ...........{....................
9280 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 53 6b 69 70 20 6f 76 65 72 20 70 ..................//.Skip.over.p
92a0 6f 74 65 6e 74 69 61 6c 20 64 75 70 6c 69 63 61 74 65 20 63 68 61 72 61 63 74 65 72 73 2e 0d 0a otential.duplicate.characters...
92c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
92e0 20 20 20 20 69 66 20 28 6d 5f 43 68 61 72 61 63 74 65 72 4c 6f 6f 6b 75 70 4d 61 70 2e 43 6f 6e ....if.(m_CharacterLookupMap.Con
9300 74 61 69 6e 73 4b 65 79 28 75 6e 69 63 6f 64 65 29 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 tainsKey(unicode))..............
9320 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 74 ............................cont
9340 69 6e 75 65 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 inue;...........................
9360 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 41 64 64 20 63 68 61 72 61 63 74 65 72 20 74 6f .............//.Add.character.to
9380 20 63 68 61 72 61 63 74 65 72 20 6c 6f 6f 6b 75 70 20 6d 61 70 2e 0d 0a 20 20 20 20 20 20 20 20 .character.lookup.map...........
93a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 43 68 ............................m_Ch
93c0 61 72 61 63 74 65 72 4c 6f 6f 6b 75 70 4d 61 70 2e 41 64 64 28 75 6e 69 63 6f 64 65 2c 20 67 6c aracterLookupMap.Add(unicode,.gl
93e0 79 70 68 49 6e 64 65 78 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 yphIndex);......................
9400 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 53 6b 69 70 20 6f 76 65 72 20 70 ..................//.Skip.over.p
9420 6f 74 65 6e 74 69 61 6c 20 64 75 70 6c 69 63 61 74 65 20 67 6c 79 70 68 20 72 65 66 65 72 65 6e otential.duplicate.glyph.referen
9440 63 65 73 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ces.............................
9460 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6d 5f 47 6c 79 70 68 4c 6f 6f 6b 75 70 4d 61 70 2e 43 ..........if.(m_GlyphLookupMap.C
9480 6f 6e 74 61 69 6e 73 4b 65 79 28 67 6c 79 70 68 49 6e 64 65 78 29 29 0d 0a 20 20 20 20 20 20 20 ontainsKey(glyphIndex)).........
94a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a .............................{..
94c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
94e0 20 20 20 20 20 20 20 20 2f 2f 20 41 64 64 20 61 64 64 69 74 69 6f 6e 61 6c 20 67 6c 79 70 68 20 ........//.Add.additional.glyph.
9500 72 65 66 65 72 65 6e 63 65 20 66 6f 72 20 74 68 69 73 20 63 68 61 72 61 63 74 65 72 2e 0d 0a 20 reference.for.this.character....
9520 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
9540 20 20 20 20 20 20 20 6d 5f 47 6c 79 70 68 4c 6f 6f 6b 75 70 4d 61 70 5b 67 6c 79 70 68 49 6e 64 .......m_GlyphLookupMap[glyphInd
9560 65 78 5d 2e 41 64 64 28 75 6e 69 63 6f 64 65 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ex].Add(unicode);...............
9580 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 74 69 ...........................conti
95a0 6e 75 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 nue;............................
95c0 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..........}.....................
95e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 41 64 64 20 67 6c 79 70 68 20 ...................//.Add.glyph.
9600 72 65 66 65 72 65 6e 63 65 20 74 6f 20 67 6c 79 70 68 20 6c 6f 6f 6b 75 70 20 6d 61 70 2e 0d 0a reference.to.glyph.lookup.map...
9620 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
9640 20 20 20 20 6d 5f 47 6c 79 70 68 4c 6f 6f 6b 75 70 4d 61 70 2e 41 64 64 28 67 6c 79 70 68 49 6e ....m_GlyphLookupMap.Add(glyphIn
9660 64 65 78 2c 20 6e 65 77 20 4c 69 73 74 3c 75 69 6e 74 3e 28 29 20 7b 20 75 6e 69 63 6f 64 65 20 dex,.new.List<uint>().{.unicode.
9680 7d 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 });.............................
96a0 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 41 64 64 20 67 6c 79 70 68 20 69 6e 64 65 78 20 74 6f ...........//.Add.glyph.index.to
96c0 20 6c 69 73 74 20 6f 66 20 67 6c 79 70 68 73 20 74 6f 20 61 64 64 20 74 6f 20 74 65 78 74 75 72 .list.of.glyphs.to.add.to.textur
96e0 65 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 e...............................
9700 20 20 20 20 20 20 20 20 6d 5f 41 76 61 69 6c 61 62 6c 65 47 6c 79 70 68 73 54 6f 41 64 64 2e 41 ........m_AvailableGlyphsToAdd.A
9720 64 64 28 67 6c 79 70 68 49 6e 64 65 78 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 dd(glyphIndex);.................
9740 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 .................}..............
9760 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 6c 73 65 0d 0a 20 20 20 20 20 20 ....................else........
9780 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 ..........................{.....
97a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
97c0 20 2f 2f 20 41 64 64 20 55 6e 69 63 6f 64 65 20 74 6f 20 6c 69 73 74 20 6f 66 20 6d 69 73 73 69 .//.Add.Unicode.to.list.of.missi
97e0 6e 67 20 63 68 61 72 61 63 74 65 72 73 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ng.characters...................
9800 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 4d 69 73 73 69 6e 67 43 68 61 ....................m_MissingCha
9820 72 61 63 74 65 72 73 2e 41 64 64 28 75 6e 69 63 6f 64 65 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 racters.Add(unicode);...........
9840 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 .......................}........
9860 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 ......................}.........
9880 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 50 61 63 6b 20 61 .......................//.Pack.a
98a0 76 61 69 6c 61 62 6c 65 20 67 6c 79 70 68 73 20 69 6e 20 74 68 65 20 70 72 6f 76 69 64 65 64 20 vailable.glyphs.in.the.provided.
98c0 74 65 78 74 75 72 65 20 73 70 61 63 65 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 texture.space...................
98e0 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6d 5f 41 76 61 69 6c 61 62 6c 65 47 6c 79 70 68 ............if.(m_AvailableGlyph
9900 73 54 6f 41 64 64 2e 43 6f 75 6e 74 20 3e 20 30 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 sToAdd.Count.>.0)...............
9920 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ...............{................
9940 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 6e 74 20 70 61 63 6b 69 6e 67 4d 6f 64 ..................int.packingMod
9960 69 66 69 65 72 20 3d 20 28 28 47 6c 79 70 68 52 61 73 74 65 72 4d 6f 64 65 73 29 6d 5f 47 6c 79 ifier.=.((GlyphRasterModes)m_Gly
9980 70 68 52 65 6e 64 65 72 4d 6f 64 65 20 26 20 47 6c 79 70 68 52 61 73 74 65 72 4d 6f 64 65 73 2e phRenderMode.&.GlyphRasterModes.
99a0 52 41 53 54 45 52 5f 4d 4f 44 45 5f 42 49 54 4d 41 50 29 20 3d 3d 20 47 6c 79 70 68 52 61 73 74 RASTER_MODE_BITMAP).==.GlyphRast
99c0 65 72 4d 6f 64 65 73 2e 52 41 53 54 45 52 5f 4d 4f 44 45 5f 42 49 54 4d 41 50 20 3f 20 30 20 3a erModes.RASTER_MODE_BITMAP.?.0.:
99e0 20 31 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .1;.............................
9a00 20 20 20 20 20 20 20 69 66 20 28 6d 5f 50 6f 69 6e 74 53 69 7a 65 53 61 6d 70 6c 69 6e 67 4d 6f .......if.(m_PointSizeSamplingMo
9a20 64 65 20 3d 3d 20 30 29 20 2f 2f 20 41 75 74 6f 2d 53 69 7a 69 6e 67 20 50 6f 69 6e 74 20 53 69 de.==.0).//.Auto-Sizing.Point.Si
9a40 7a 65 20 4d 6f 64 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ze.Mode.........................
9a60 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .........{......................
9a80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 45 73 74 69 6d 61 74 65 20 6d 69 6e 20 ................//.Estimate.min.
9aa0 2f 20 6d 61 78 20 72 61 6e 67 65 20 66 6f 72 20 61 75 74 6f 20 73 69 7a 69 6e 67 20 6f 66 20 70 /.max.range.for.auto.sizing.of.p
9ac0 6f 69 6e 74 20 73 69 7a 65 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 oint.size.......................
9ae0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 6e 74 20 6d 69 6e 50 6f 69 6e 74 53 69 7a 65 ................int.minPointSize
9b00 20 3d 20 30 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .=.0;...........................
9b20 20 20 20 20 20 20 20 20 20 20 20 69 6e 74 20 6d 61 78 50 6f 69 6e 74 53 69 7a 65 20 3d 20 28 69 ...........int.maxPointSize.=.(i
9b40 6e 74 29 4d 61 74 68 66 2e 53 71 72 74 28 28 6d 5f 41 74 6c 61 73 57 69 64 74 68 20 2a 20 6d 5f nt)Mathf.Sqrt((m_AtlasWidth.*.m_
9b60 41 74 6c 61 73 48 65 69 67 68 74 29 20 2f 20 6d 5f 41 76 61 69 6c 61 62 6c 65 47 6c 79 70 68 73 AtlasHeight)./.m_AvailableGlyphs
9b80 54 6f 41 64 64 2e 43 6f 75 6e 74 29 20 2a 20 33 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 ToAdd.Count).*.3;...............
9ba0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 50 6f 69 6e 74 .........................m_Point
9bc0 53 69 7a 65 20 3d 20 28 6d 61 78 50 6f 69 6e 74 53 69 7a 65 20 2b 20 6d 69 6e 50 6f 69 6e 74 53 Size.=.(maxPointSize.+.minPointS
9be0 69 7a 65 29 20 2f 20 32 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ize)./.2;.......................
9c00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 6f 6f 6c 20 6f 70 74 69 6d 75 6d 50 6f 69 .................bool.optimumPoi
9c20 6e 74 53 69 7a 65 46 6f 75 6e 64 20 3d 20 66 61 6c 73 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 ntSizeFound.=.false;............
9c40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 28 69 ..........................for.(i
9c60 6e 74 20 69 74 65 72 61 74 69 6f 6e 20 3d 20 30 3b 20 69 74 65 72 61 74 69 6f 6e 20 3c 20 31 35 nt.iteration.=.0;.iteration.<.15
9c80 20 26 26 20 6f 70 74 69 6d 75 6d 50 6f 69 6e 74 53 69 7a 65 46 6f 75 6e 64 20 3d 3d 20 66 61 6c .&&.optimumPointSizeFound.==.fal
9ca0 73 65 3b 20 69 74 65 72 61 74 69 6f 6e 2b 2b 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 se;.iteration++)................
9cc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 ......................{.........
9ce0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
9d00 20 6d 5f 41 74 6c 61 73 47 65 6e 65 72 61 74 69 6f 6e 50 72 6f 67 72 65 73 73 4c 61 62 65 6c 20 .m_AtlasGenerationProgressLabel.
9d20 3d 20 22 50 61 63 6b 69 6e 67 20 67 6c 79 70 68 73 20 2d 20 50 61 73 73 20 28 22 20 2b 20 69 74 =."Packing.glyphs.-.Pass.(".+.it
9d40 65 72 61 74 69 6f 6e 20 2b 20 22 29 22 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 eration.+.")";..................
9d60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 46 6f 6e 74 45 6e ..........................FontEn
9d80 67 69 6e 65 2e 53 65 74 46 61 63 65 53 69 7a 65 28 6d 5f 50 6f 69 6e 74 53 69 7a 65 29 3b 0d 0a gine.SetFaceSize(m_PointSize);..
9da0 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
9dc0 20 20 20 20 20 20 20 20 20 20 6d 5f 47 6c 79 70 68 73 54 6f 50 61 63 6b 2e 43 6c 65 61 72 28 29 ..........m_GlyphsToPack.Clear()
9de0 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ;...............................
9e00 20 20 20 20 20 20 20 20 20 20 20 6d 5f 47 6c 79 70 68 73 50 61 63 6b 65 64 2e 43 6c 65 61 72 28 ...........m_GlyphsPacked.Clear(
9e20 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 );..............................
9e40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 46 72 65 65 47 6c 79 70 68 52 65 63 74 73 2e 43 ..............m_FreeGlyphRects.C
9e60 6c 65 61 72 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 lear();.........................
9e80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 46 72 65 65 47 6c 79 70 68 52 65 63 74 .................m_FreeGlyphRect
9ea0 73 2e 41 64 64 28 6e 65 77 20 47 6c 79 70 68 52 65 63 74 28 30 2c 20 30 2c 20 6d 5f 41 74 6c 61 s.Add(new.GlyphRect(0,.0,.m_Atla
9ec0 73 57 69 64 74 68 20 2d 20 70 61 63 6b 69 6e 67 4d 6f 64 69 66 69 65 72 2c 20 6d 5f 41 74 6c 61 sWidth.-.packingModifier,.m_Atla
9ee0 73 48 65 69 67 68 74 20 2d 20 70 61 63 6b 69 6e 67 4d 6f 64 69 66 69 65 72 29 29 3b 0d 0a 20 20 sHeight.-.packingModifier));....
9f00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
9f20 20 20 20 20 20 20 6d 5f 55 73 65 64 47 6c 79 70 68 52 65 63 74 73 2e 43 6c 65 61 72 28 29 3b 0d ......m_UsedGlyphRects.Clear();.
9f40 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
9f60 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 28 69 6e 74 20 69 20 3d 20 30 3b 20 69 20 3c 20 6d ...........for.(int.i.=.0;.i.<.m
9f80 5f 41 76 61 69 6c 61 62 6c 65 47 6c 79 70 68 73 54 6f 41 64 64 2e 43 6f 75 6e 74 3b 20 69 2b 2b _AvailableGlyphsToAdd.Count;.i++
9fa0 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 )...............................
9fc0 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ...........{....................
9fe0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 75 69 6e 74 20 67 ..........................uint.g
a000 6c 79 70 68 49 6e 64 65 78 20 3d 20 6d 5f 41 76 61 69 6c 61 62 6c 65 47 6c 79 70 68 73 54 6f 41 lyphIndex.=.m_AvailableGlyphsToA
a020 64 64 5b 69 5d 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 dd[i];..........................
a040 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 46 6f 6e 74 45 6e ......................if.(FontEn
a060 67 69 6e 65 2e 54 72 79 47 65 74 47 6c 79 70 68 57 69 74 68 49 6e 64 65 78 56 61 6c 75 65 28 67 gine.TryGetGlyphWithIndexValue(g
a080 6c 79 70 68 49 6e 64 65 78 2c 20 67 6c 79 70 68 4c 6f 61 64 46 6c 61 67 73 2c 20 6f 75 74 20 47 lyphIndex,.glyphLoadFlags,.out.G
a0a0 6c 79 70 68 20 67 6c 79 70 68 29 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 lyph.glyph))....................
a0c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 ..........................{.....
a0e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
a100 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 67 6c 79 70 68 2e 67 6c 79 70 68 52 65 63 74 .............if.(glyph.glyphRect
a120 2e 77 69 64 74 68 20 3e 20 30 20 26 26 20 67 6c 79 70 68 2e 67 6c 79 70 68 52 65 63 74 2e 68 65 .width.>.0.&&.glyph.glyphRect.he
a140 69 67 68 74 20 3e 20 30 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ight.>.0).......................
a160 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 ...........................{....
a180 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
a1a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 47 6c 79 70 68 73 54 6f 50 61 63 6b ..................m_GlyphsToPack
a1c0 2e 41 64 64 28 67 6c 79 70 68 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .Add(glyph);....................
a1e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d ..............................}.
a200 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
a220 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 6c 73 65 0d 0a 20 20 20 20 20 20 20 20 20 .................else...........
a240 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
a260 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .......{........................
a280 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f ..............................m_
a2a0 47 6c 79 70 68 73 50 61 63 6b 65 64 2e 41 64 64 28 67 6c 79 70 68 29 3b 0d 0a 20 20 20 20 20 20 GlyphsPacked.Add(glyph);........
a2c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
a2e0 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..........}.....................
a300 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 .........................}......
a320 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
a340 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ....}...........................
a360 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 46 6f 6e 74 45 6e 67 69 6e 65 2e 54 72 79 50 .................FontEngine.TryP
a380 61 63 6b 47 6c 79 70 68 73 49 6e 41 74 6c 61 73 28 6d 5f 47 6c 79 70 68 73 54 6f 50 61 63 6b 2c ackGlyphsInAtlas(m_GlyphsToPack,
a3a0 20 6d 5f 47 6c 79 70 68 73 50 61 63 6b 65 64 2c 20 6d 5f 50 61 64 64 69 6e 67 2c 20 28 47 6c 79 .m_GlyphsPacked,.m_Padding,.(Gly
a3c0 70 68 50 61 63 6b 69 6e 67 4d 6f 64 65 29 6d 5f 50 61 63 6b 69 6e 67 4d 6f 64 65 2c 20 6d 5f 47 phPackingMode)m_PackingMode,.m_G
a3e0 6c 79 70 68 52 65 6e 64 65 72 4d 6f 64 65 2c 20 6d 5f 41 74 6c 61 73 57 69 64 74 68 2c 20 6d 5f lyphRenderMode,.m_AtlasWidth,.m_
a400 41 74 6c 61 73 48 65 69 67 68 74 2c 20 6d 5f 46 72 65 65 47 6c 79 70 68 52 65 63 74 73 2c 20 6d AtlasHeight,.m_FreeGlyphRects,.m
a420 5f 55 73 65 64 47 6c 79 70 68 52 65 63 74 73 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 _UsedGlyphRects);...............
a440 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 .............................if.
a460 28 6d 5f 49 73 47 65 6e 65 72 61 74 69 6f 6e 43 61 6e 63 65 6c 6c 65 64 29 0d 0a 20 20 20 20 20 (m_IsGenerationCancelled).......
a480 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
a4a0 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ...{............................
a4c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 44 65 73 74 72 6f 79 49 6d 6d 65 64 69 61 ..................DestroyImmedia
a4e0 74 65 28 6d 5f 46 6f 6e 74 41 74 6c 61 73 54 65 78 74 75 72 65 29 3b 0d 0a 20 20 20 20 20 20 20 te(m_FontAtlasTexture);.........
a500 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
a520 20 20 20 20 20 6d 5f 46 6f 6e 74 41 74 6c 61 73 54 65 78 74 75 72 65 20 3d 20 6e 75 6c 6c 3b 0d .....m_FontAtlasTexture.=.null;.
a540 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
a560 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 .............return;............
a580 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d ..............................}.
a5a0 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
a5c0 20 20 20 20 20 20 20 20 20 20 20 2f 2f 44 65 62 75 67 2e 4c 6f 67 28 22 47 6c 79 70 68 73 20 72 ...........//Debug.Log("Glyphs.r
a5e0 65 6d 61 69 6e 69 6e 67 20 74 6f 20 61 64 64 20 5b 22 20 2b 20 6d 5f 47 6c 79 70 68 73 54 6f 41 emaining.to.add.[".+.m_GlyphsToA
a600 64 64 2e 43 6f 75 6e 74 20 2b 20 22 5d 2e 20 47 6c 79 70 68 73 20 61 64 64 65 64 20 5b 22 20 2b dd.Count.+."]..Glyphs.added.[".+
a620 20 6d 5f 47 6c 79 70 68 73 41 64 64 65 64 2e 43 6f 75 6e 74 20 2b 20 22 5d 2e 22 29 3b 0d 0a 0d .m_GlyphsAdded.Count.+."].");...
a640 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
a660 20 20 20 20 20 20 20 20 20 69 66 20 28 6d 5f 47 6c 79 70 68 73 54 6f 50 61 63 6b 2e 43 6f 75 6e .........if.(m_GlyphsToPack.Coun
a680 74 20 3e 20 30 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 t.>.0)..........................
a6a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ................{...............
a6c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 ...............................i
a6e0 66 20 28 6d 5f 50 6f 69 6e 74 53 69 7a 65 20 3e 20 6d 69 6e 50 6f 69 6e 74 53 69 7a 65 29 0d 0a f.(m_PointSize.>.minPointSize)..
a700 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
a720 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ............{...................
a740 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d ...............................m
a760 61 78 50 6f 69 6e 74 53 69 7a 65 20 3d 20 6d 5f 50 6f 69 6e 74 53 69 7a 65 3b 0d 0a 20 20 20 20 axPointSize.=.m_PointSize;......
a780 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
a7a0 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 50 6f 69 6e 74 53 69 7a 65 20 3d 20 28 6d 5f 50 6f 69 ............m_PointSize.=.(m_Poi
a7c0 6e 74 53 69 7a 65 20 2b 20 6d 69 6e 50 6f 69 6e 74 53 69 7a 65 29 20 2f 20 32 3b 0d 0a 0d 0a 20 ntSize.+.minPointSize)./.2;.....
a7e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
a800 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 44 65 62 75 67 2e 4c 6f 67 28 22 44 65 63 72 ...............//Debug.Log("Decr
a820 65 61 73 69 6e 67 20 70 6f 69 6e 74 20 73 69 7a 65 20 66 72 6f 6d 20 5b 22 20 2b 20 6d 61 78 50 easing.point.size.from.[".+.maxP
a840 6f 69 6e 74 53 69 7a 65 20 2b 20 22 5d 20 74 6f 20 5b 22 20 2b 20 6d 5f 50 6f 69 6e 74 53 69 7a ointSize.+."].to.[".+.m_PointSiz
a860 65 20 2b 20 22 5d 2e 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 e.+."].");......................
a880 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 ........................}.......
a8a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
a8c0 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ...}............................
a8e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 6c 73 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 ..............else..............
a900 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 ............................{...
a920 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
a940 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6d 61 78 50 6f 69 6e 74 53 69 7a 65 20 2d 20 6d 69 ...........if.(maxPointSize.-.mi
a960 6e 50 6f 69 6e 74 53 69 7a 65 20 3e 20 31 20 26 26 20 6d 5f 50 6f 69 6e 74 53 69 7a 65 20 3c 20 nPointSize.>.1.&&.m_PointSize.<.
a980 6d 61 78 50 6f 69 6e 74 53 69 7a 65 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 maxPointSize)...................
a9a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 ...........................{....
a9c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
a9e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 69 6e 50 6f 69 6e 74 53 69 7a 65 20 3d 20 6d 5f 50 ..............minPointSize.=.m_P
aa00 6f 69 6e 74 53 69 7a 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ointSize;.......................
aa20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 50 6f 69 ...........................m_Poi
aa40 6e 74 53 69 7a 65 20 3d 20 28 6d 5f 50 6f 69 6e 74 53 69 7a 65 20 2b 20 6d 61 78 50 6f 69 6e 74 ntSize.=.(m_PointSize.+.maxPoint
aa60 53 69 7a 65 29 20 2f 20 32 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 Size)./.2;......................
aa80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f ..............................//
aaa0 44 65 62 75 67 2e 4c 6f 67 28 22 49 6e 63 72 65 61 73 69 6e 67 20 70 6f 69 6e 74 20 73 69 7a 65 Debug.Log("Increasing.point.size
aac0 20 66 72 6f 6d 20 5b 22 20 2b 20 6d 69 6e 50 6f 69 6e 74 53 69 7a 65 20 2b 20 22 5d 20 74 6f 20 .from.[".+.minPointSize.+."].to.
aae0 5b 22 20 2b 20 6d 5f 50 6f 69 6e 74 53 69 7a 65 20 2b 20 22 5d 2e 22 29 3b 0d 0a 20 20 20 20 20 [".+.m_PointSize.+."].");.......
ab00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
ab20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .......}........................
ab40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 6c 73 65 0d 0a 20 20 20 20 ......................else......
ab60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
ab80 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ........{.......................
aba0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 44 65 62 ...........................//Deb
abc0 75 67 2e 4c 6f 67 28 22 5b 22 20 2b 20 69 74 65 72 61 74 69 6f 6e 20 2b 20 22 5d 20 69 74 65 72 ug.Log("[".+.iteration.+."].iter
abe0 61 74 69 6f 6e 73 20 74 6f 20 66 69 6e 64 20 74 68 65 20 6f 70 74 69 6d 75 6d 20 70 6f 69 6e 74 ations.to.find.the.optimum.point
ac00 20 73 69 7a 65 20 6f 66 20 3a 20 5b 22 20 2b 20 6d 5f 50 6f 69 6e 74 53 69 7a 65 20 2b 20 22 5d .size.of.:.[".+.m_PointSize.+."]
ac20 2e 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .");............................
ac40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6f 70 74 69 6d 75 6d 50 6f 69 ......................optimumPoi
ac60 6e 74 53 69 7a 65 46 6f 75 6e 64 20 3d 20 74 72 75 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 ntSizeFound.=.true;.............
ac80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
aca0 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .}..............................
acc0 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ............}...................
ace0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 ...................}............
ad00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 ......................}.........
ad20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 6c 73 65 20 2f 2f .........................else.//
ad40 20 43 75 73 74 6f 6d 20 50 6f 69 6e 74 20 53 69 7a 65 20 4d 6f 64 65 0d 0a 20 20 20 20 20 20 20 .Custom.Point.Size.Mode.........
ad60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 .........................{......
ad80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
ada0 6d 5f 41 74 6c 61 73 47 65 6e 65 72 61 74 69 6f 6e 50 72 6f 67 72 65 73 73 4c 61 62 65 6c 20 3d m_AtlasGenerationProgressLabel.=
adc0 20 22 50 61 63 6b 69 6e 67 20 67 6c 79 70 68 73 2e 2e 2e 22 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 ."Packing.glyphs...";...........
ade0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 .............................//.
ae00 53 65 74 20 70 6f 69 6e 74 20 73 69 7a 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 Set.point.size..................
ae20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 46 6f 6e 74 45 6e 67 69 6e 65 2e 53 ....................FontEngine.S
ae40 65 74 46 61 63 65 53 69 7a 65 28 6d 5f 50 6f 69 6e 74 53 69 7a 65 29 3b 0d 0a 0d 0a 20 20 20 20 etFaceSize(m_PointSize);........
ae60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
ae80 6d 5f 47 6c 79 70 68 73 54 6f 50 61 63 6b 2e 43 6c 65 61 72 28 29 3b 0d 0a 20 20 20 20 20 20 20 m_GlyphsToPack.Clear();.........
aea0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 47 .............................m_G
aec0 6c 79 70 68 73 50 61 63 6b 65 64 2e 43 6c 65 61 72 28 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 lyphsPacked.Clear();............
aee0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 46 72 ............................m_Fr
af00 65 65 47 6c 79 70 68 52 65 63 74 73 2e 43 6c 65 61 72 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 eeGlyphRects.Clear();...........
af20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 46 72 65 ...........................m_Fre
af40 65 47 6c 79 70 68 52 65 63 74 73 2e 41 64 64 28 6e 65 77 20 47 6c 79 70 68 52 65 63 74 28 30 2c eGlyphRects.Add(new.GlyphRect(0,
af60 20 30 2c 20 6d 5f 41 74 6c 61 73 57 69 64 74 68 20 2d 20 70 61 63 6b 69 6e 67 4d 6f 64 69 66 69 .0,.m_AtlasWidth.-.packingModifi
af80 65 72 2c 20 6d 5f 41 74 6c 61 73 48 65 69 67 68 74 20 2d 20 70 61 63 6b 69 6e 67 4d 6f 64 69 66 er,.m_AtlasHeight.-.packingModif
afa0 69 65 72 29 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ier));..........................
afc0 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 55 73 65 64 47 6c 79 70 68 52 65 63 74 73 2e 43 6c 65 ............m_UsedGlyphRects.Cle
afe0 61 72 28 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ar();...........................
b000 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 28 69 6e 74 20 69 20 3d 20 30 3b 20 69 20 3c .............for.(int.i.=.0;.i.<
b020 20 6d 5f 41 76 61 69 6c 61 62 6c 65 47 6c 79 70 68 73 54 6f 41 64 64 2e 43 6f 75 6e 74 3b 20 69 .m_AvailableGlyphsToAdd.Count;.i
b040 2b 2b 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ++).............................
b060 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .........{......................
b080 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 75 69 6e 74 20 67 6c 79 70 68 49 6e ....................uint.glyphIn
b0a0 64 65 78 20 3d 20 6d 5f 41 76 61 69 6c 61 62 6c 65 47 6c 79 70 68 73 54 6f 41 64 64 5b 69 5d 3b dex.=.m_AvailableGlyphsToAdd[i];
b0c0 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
b0e0 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 46 6f 6e 74 45 6e 67 69 6e 65 2e 54 72 79 47 65 ............if.(FontEngine.TryGe
b100 74 47 6c 79 70 68 57 69 74 68 49 6e 64 65 78 56 61 6c 75 65 28 67 6c 79 70 68 49 6e 64 65 78 2c tGlyphWithIndexValue(glyphIndex,
b120 20 67 6c 79 70 68 4c 6f 61 64 46 6c 61 67 73 2c 20 6f 75 74 20 47 6c 79 70 68 20 67 6c 79 70 68 .glyphLoadFlags,.out.Glyph.glyph
b140 29 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ))..............................
b160 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ............{...................
b180 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 67 ...........................if.(g
b1a0 6c 79 70 68 2e 67 6c 79 70 68 52 65 63 74 2e 77 69 64 74 68 20 3e 20 30 20 26 26 20 67 6c 79 70 lyph.glyphRect.width.>.0.&&.glyp
b1c0 68 2e 67 6c 79 70 68 52 65 63 74 2e 68 65 69 67 68 74 20 3e 20 30 29 0d 0a 20 20 20 20 20 20 20 h.glyphRect.height.>.0).........
b1e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
b200 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .....{..........................
b220 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 47 6c 79 70 68 73 ........................m_Glyphs
b240 54 6f 50 61 63 6b 2e 41 64 64 28 67 6c 79 70 68 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 ToPack.Add(glyph);..............
b260 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
b280 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 }...............................
b2a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 6c 73 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20 ...............else.............
b2c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
b2e0 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .{..............................
b300 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 47 6c 79 70 68 73 50 61 63 6b ....................m_GlyphsPack
b320 65 64 2e 41 64 64 28 67 6c 79 70 68 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ed.Add(glyph);..................
b340 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 ............................}...
b360 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
b380 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .......}........................
b3a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ..............}.................
b3c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 46 6f 6e 74 45 6e 67 69 6e .......................FontEngin
b3e0 65 2e 54 72 79 50 61 63 6b 47 6c 79 70 68 73 49 6e 41 74 6c 61 73 28 6d 5f 47 6c 79 70 68 73 54 e.TryPackGlyphsInAtlas(m_GlyphsT
b400 6f 50 61 63 6b 2c 20 6d 5f 47 6c 79 70 68 73 50 61 63 6b 65 64 2c 20 6d 5f 50 61 64 64 69 6e 67 oPack,.m_GlyphsPacked,.m_Padding
b420 2c 20 28 47 6c 79 70 68 50 61 63 6b 69 6e 67 4d 6f 64 65 29 6d 5f 50 61 63 6b 69 6e 67 4d 6f 64 ,.(GlyphPackingMode)m_PackingMod
b440 65 2c 20 6d 5f 47 6c 79 70 68 52 65 6e 64 65 72 4d 6f 64 65 2c 20 6d 5f 41 74 6c 61 73 57 69 64 e,.m_GlyphRenderMode,.m_AtlasWid
b460 74 68 2c 20 6d 5f 41 74 6c 61 73 48 65 69 67 68 74 2c 20 6d 5f 46 72 65 65 47 6c 79 70 68 52 65 th,.m_AtlasHeight,.m_FreeGlyphRe
b480 63 74 73 2c 20 6d 5f 55 73 65 64 47 6c 79 70 68 52 65 63 74 73 29 3b 0d 0a 0d 0a 20 20 20 20 20 cts,.m_UsedGlyphRects);.........
b4a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 ...............................i
b4c0 66 20 28 6d 5f 49 73 47 65 6e 65 72 61 74 69 6f 6e 43 61 6e 63 65 6c 6c 65 64 29 0d 0a 20 20 20 f.(m_IsGenerationCancelled).....
b4e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
b500 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .{..............................
b520 20 20 20 20 20 20 20 20 20 20 20 20 44 65 73 74 72 6f 79 49 6d 6d 65 64 69 61 74 65 28 6d 5f 46 ............DestroyImmediate(m_F
b540 6f 6e 74 41 74 6c 61 73 54 65 78 74 75 72 65 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ontAtlasTexture);...............
b560 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 46 6f 6e ...........................m_Fon
b580 74 41 74 6c 61 73 54 65 78 74 75 72 65 20 3d 20 6e 75 6c 6c 3b 0d 0a 20 20 20 20 20 20 20 20 20 tAtlasTexture.=.null;...........
b5a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 ...............................r
b5c0 65 74 75 72 6e 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 eturn;..........................
b5e0 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ............}...................
b600 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 44 65 62 75 67 2e 4c 6f 67 28 22 ...................//Debug.Log("
b620 47 6c 79 70 68 73 20 72 65 6d 61 69 6e 69 6e 67 20 74 6f 20 61 64 64 20 5b 22 20 2b 20 6d 5f 47 Glyphs.remaining.to.add.[".+.m_G
b640 6c 79 70 68 73 54 6f 41 64 64 2e 43 6f 75 6e 74 20 2b 20 22 5d 2e 20 47 6c 79 70 68 73 20 61 64 lyphsToAdd.Count.+."]..Glyphs.ad
b660 64 65 64 20 5b 22 20 2b 20 6d 5f 47 6c 79 70 68 73 41 64 64 65 64 2e 43 6f 75 6e 74 20 2b 20 22 ded.[".+.m_GlyphsAdded.Count.+."
b680 5d 2e 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ].");...........................
b6a0 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .......}........................
b6c0 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ........}.......................
b6e0 20 20 20 20 20 20 20 65 6c 73 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .......else.....................
b700 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .........{......................
b720 20 20 20 20 20 20 20 20 20 20 20 20 69 6e 74 20 70 61 63 6b 69 6e 67 4d 6f 64 69 66 69 65 72 20 ............int.packingModifier.
b740 3d 20 28 28 47 6c 79 70 68 52 61 73 74 65 72 4d 6f 64 65 73 29 6d 5f 47 6c 79 70 68 52 65 6e 64 =.((GlyphRasterModes)m_GlyphRend
b760 65 72 4d 6f 64 65 20 26 20 47 6c 79 70 68 52 61 73 74 65 72 4d 6f 64 65 73 2e 52 41 53 54 45 52 erMode.&.GlyphRasterModes.RASTER
b780 5f 4d 4f 44 45 5f 42 49 54 4d 41 50 29 20 3d 3d 20 47 6c 79 70 68 52 61 73 74 65 72 4d 6f 64 65 _MODE_BITMAP).==.GlyphRasterMode
b7a0 73 2e 52 41 53 54 45 52 5f 4d 4f 44 45 5f 42 49 54 4d 41 50 20 3f 20 30 20 3a 20 31 3b 0d 0a 0d s.RASTER_MODE_BITMAP.?.0.:.1;...
b7c0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
b7e0 20 46 6f 6e 74 45 6e 67 69 6e 65 2e 53 65 74 46 61 63 65 53 69 7a 65 28 6d 5f 50 6f 69 6e 74 53 .FontEngine.SetFaceSize(m_PointS
b800 69 7a 65 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ize);...........................
b820 20 20 20 20 20 20 20 20 20 6d 5f 47 6c 79 70 68 73 54 6f 50 61 63 6b 2e 43 6c 65 61 72 28 29 3b .........m_GlyphsToPack.Clear();
b840 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
b860 20 20 6d 5f 47 6c 79 70 68 73 50 61 63 6b 65 64 2e 43 6c 65 61 72 28 29 3b 0d 0a 0d 0a 20 20 20 ..m_GlyphsPacked.Clear();.......
b880 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 46 .............................m_F
b8a0 72 65 65 47 6c 79 70 68 52 65 63 74 73 2e 43 6c 65 61 72 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 reeGlyphRects.Clear();..........
b8c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 46 72 65 65 47 6c ........................m_FreeGl
b8e0 79 70 68 52 65 63 74 73 2e 41 64 64 28 6e 65 77 20 47 6c 79 70 68 52 65 63 74 28 30 2c 20 30 2c yphRects.Add(new.GlyphRect(0,.0,
b900 20 6d 5f 41 74 6c 61 73 57 69 64 74 68 20 2d 20 70 61 63 6b 69 6e 67 4d 6f 64 69 66 69 65 72 2c .m_AtlasWidth.-.packingModifier,
b920 20 6d 5f 41 74 6c 61 73 48 65 69 67 68 74 20 2d 20 70 61 63 6b 69 6e 67 4d 6f 64 69 66 69 65 72 .m_AtlasHeight.-.packingModifier
b940 29 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ));.............................
b960 20 20 20 20 20 6d 5f 55 73 65 64 47 6c 79 70 68 52 65 63 74 73 2e 43 6c 65 61 72 28 29 3b 0d 0a .....m_UsedGlyphRects.Clear();..
b980 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d ............................}...
b9a0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 53 .............................//S
b9c0 74 6f 70 20 53 74 6f 70 57 61 74 63 68 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 top.StopWatch...................
b9e0 20 20 20 20 20 20 20 20 20 20 20 6d 5f 53 74 6f 70 57 61 74 63 68 2e 53 74 6f 70 28 29 3b 0d 0a ...........m_StopWatch.Stop();..
ba00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 47 6c ............................m_Gl
ba20 79 70 68 50 61 63 6b 69 6e 67 47 65 6e 65 72 61 74 69 6f 6e 54 69 6d 65 20 3d 20 6d 5f 53 74 6f yphPackingGenerationTime.=.m_Sto
ba40 70 57 61 74 63 68 2e 45 6c 61 70 73 65 64 2e 54 6f 74 61 6c 4d 69 6c 6c 69 73 65 63 6f 6e 64 73 pWatch.Elapsed.TotalMilliseconds
ba60 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 44 ;..............................D
ba80 65 62 75 67 2e 4c 6f 67 28 22 47 6c 79 70 68 20 70 61 63 6b 69 6e 67 20 63 6f 6d 70 6c 65 74 65 ebug.Log("Glyph.packing.complete
baa0 64 20 69 6e 3a 20 22 20 2b 20 6d 5f 47 6c 79 70 68 50 61 63 6b 69 6e 67 47 65 6e 65 72 61 74 69 d.in:.".+.m_GlyphPackingGenerati
bac0 6f 6e 54 69 6d 65 2e 54 6f 53 74 72 69 6e 67 28 22 30 2e 30 30 30 20 6d 73 2e 22 29 29 3b 0d 0a onTime.ToString("0.000.ms."));..
bae0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 53 74 ............................m_St
bb00 6f 70 57 61 74 63 68 2e 52 65 73 65 74 28 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 opWatch.Reset();................
bb20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 46 6f 6e 74 43 68 61 72 61 63 74 65 72 54 ................m_FontCharacterT
bb40 61 62 6c 65 2e 43 6c 65 61 72 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 able.Clear();...................
bb60 20 20 20 20 20 20 20 20 20 20 20 6d 5f 46 6f 6e 74 47 6c 79 70 68 54 61 62 6c 65 2e 43 6c 65 61 ...........m_FontGlyphTable.Clea
bb80 72 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 r();............................
bba0 20 20 6d 5f 47 6c 79 70 68 73 54 6f 52 65 6e 64 65 72 2e 43 6c 65 61 72 28 29 3b 0d 0a 0d 0a 20 ..m_GlyphsToRender.Clear();.....
bbc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 41 64 ...........................//.Ad
bbe0 64 20 67 6c 79 70 68 73 20 61 6e 64 20 63 68 61 72 61 63 74 65 72 73 20 73 75 63 63 65 73 73 66 d.glyphs.and.characters.successf
bc00 75 6c 6c 79 20 61 64 64 65 64 20 74 6f 20 74 65 78 74 75 72 65 20 74 6f 20 74 68 65 69 72 20 72 ully.added.to.texture.to.their.r
bc20 65 73 70 65 63 74 69 76 65 20 66 6f 6e 74 20 74 61 62 6c 65 73 2e 0d 0a 20 20 20 20 20 20 20 20 espective.font.tables...........
bc40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 65 61 63 68 20 28 47 6c 79 ....................foreach.(Gly
bc60 70 68 20 67 6c 79 70 68 20 69 6e 20 6d 5f 47 6c 79 70 68 73 50 61 63 6b 65 64 29 0d 0a 20 20 20 ph.glyph.in.m_GlyphsPacked).....
bc80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 .........................{......
bca0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 75 69 6e 74 ............................uint
bcc0 20 67 6c 79 70 68 49 6e 64 65 78 20 3d 20 67 6c 79 70 68 2e 69 6e 64 65 78 3b 0d 0a 0d 0a 20 20 .glyphIndex.=.glyph.index;......
bce0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f ..............................m_
bd00 46 6f 6e 74 47 6c 79 70 68 54 61 62 6c 65 2e 41 64 64 28 67 6c 79 70 68 29 3b 0d 0a 0d 0a 20 20 FontGlyphTable.Add(glyph);......
bd20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f ..............................//
bd40 20 41 64 64 20 67 6c 79 70 68 73 20 74 6f 20 6c 69 73 74 20 6f 66 20 67 6c 79 70 68 73 20 74 68 .Add.glyphs.to.list.of.glyphs.th
bd60 61 74 20 6e 65 65 64 20 74 6f 20 62 65 20 72 65 6e 64 65 72 65 64 2e 0d 0a 20 20 20 20 20 20 20 at.need.to.be.rendered..........
bd80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 67 6c 79 .........................if.(gly
bda0 70 68 2e 67 6c 79 70 68 52 65 63 74 2e 77 69 64 74 68 20 3e 20 30 20 26 26 20 67 6c 79 70 68 2e ph.glyphRect.width.>.0.&&.glyph.
bdc0 67 6c 79 70 68 52 65 63 74 2e 68 65 69 67 68 74 20 3e 20 30 29 0d 0a 20 20 20 20 20 20 20 20 20 glyphRect.height.>.0)...........
bde0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 47 6c 79 ...........................m_Gly
be00 70 68 73 54 6f 52 65 6e 64 65 72 2e 41 64 64 28 67 6c 79 70 68 29 3b 0d 0a 20 20 20 20 20 20 20 phsToRender.Add(glyph);.........
be20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
be40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 65 61 63 68 20 28 75 69 6e 74 ...................foreach.(uint
be60 20 75 6e 69 63 6f 64 65 20 69 6e 20 6d 5f 47 6c 79 70 68 4c 6f 6f 6b 75 70 4d 61 70 5b 67 6c 79 .unicode.in.m_GlyphLookupMap[gly
be80 70 68 49 6e 64 65 78 5d 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 phIndex]).......................
bea0 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ...........{....................
bec0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 43 72 65 61 74 65 20 6e 65 77 20 ..................//.Create.new.
bee0 43 68 61 72 61 63 74 65 72 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 Character.......................
bf00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 46 6f 6e 74 43 68 61 72 61 63 74 65 72 54 61 ...............m_FontCharacterTa
bf20 62 6c 65 2e 41 64 64 28 6e 65 77 20 54 4d 50 5f 43 68 61 72 61 63 74 65 72 28 75 6e 69 63 6f 64 ble.Add(new.TMP_Character(unicod
bf40 65 2c 20 67 6c 79 70 68 29 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 e,.glyph));.....................
bf60 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .............}..................
bf80 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ............}...................
bfa0 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .............//.................
bfc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 65 61 63 68 20 28 47 6c 79 70 68 20 67 6c 79 ..............foreach.(Glyph.gly
bfe0 70 68 20 69 6e 20 6d 5f 47 6c 79 70 68 73 54 6f 50 61 63 6b 29 0d 0a 20 20 20 20 20 20 20 20 20 ph.in.m_GlyphsToPack)...........
c000 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 ...................{............
c020 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 65 61 63 68 20 28 75 ......................foreach.(u
c040 69 6e 74 20 75 6e 69 63 6f 64 65 20 69 6e 20 6d 5f 47 6c 79 70 68 4c 6f 6f 6b 75 70 4d 61 70 5b int.unicode.in.m_GlyphLookupMap[
c060 67 6c 79 70 68 2e 69 6e 64 65 78 5d 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 glyph.index])...................
c080 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ...............{................
c0a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 45 78 63 6c 75 64 65 64 ......................m_Excluded
c0c0 43 68 61 72 61 63 74 65 72 73 2e 41 64 64 28 75 6e 69 63 6f 64 65 29 3b 0d 0a 20 20 20 20 20 20 Characters.Add(unicode);........
c0e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 ..........................}.....
c100 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 .........................}......
c120 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 47 65 74 ..........................//.Get
c140 20 74 68 65 20 66 61 63 65 20 69 6e 66 6f 20 66 6f 72 20 74 68 65 20 63 75 72 72 65 6e 74 20 73 .the.face.info.for.the.current.s
c160 61 6d 70 6c 69 6e 67 20 70 6f 69 6e 74 20 73 69 7a 65 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 ampling.point.size..............
c180 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 46 61 63 65 49 6e 66 6f 20 3d 20 46 6f .................m_FaceInfo.=.Fo
c1a0 6e 74 45 6e 67 69 6e 65 2e 47 65 74 46 61 63 65 49 6e 66 6f 28 29 3b 0d 0a 0d 0a 20 20 20 20 20 ntEngine.GetFaceInfo();.........
c1c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 75 74 6f 45 76 65 6e 74 .......................autoEvent
c1e0 2e 53 65 74 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .Set();.........................
c200 20 7d 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .});............................
c220 2f 2f 20 57 6f 72 6b 65 72 20 74 68 72 65 61 64 20 74 6f 20 72 65 6e 64 65 72 20 67 6c 79 70 68 //.Worker.thread.to.render.glyph
c240 73 20 69 6e 20 74 65 78 74 75 72 65 20 62 75 66 66 65 72 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 s.in.texture.buffer.............
c260 20 20 20 20 20 20 20 20 20 20 20 20 20 20 54 68 72 65 61 64 50 6f 6f 6c 2e 51 75 65 75 65 55 73 ..............ThreadPool.QueueUs
c280 65 72 57 6f 72 6b 49 74 65 6d 28 52 65 6e 64 65 72 47 6c 79 70 68 73 20 3d 3e 0d 0a 20 20 20 20 erWorkItem(RenderGlyphs.=>......
c2a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 ....................{...........
c2c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 75 74 6f 45 76 65 6e 74 2e 57 61 69 ...................autoEvent.Wai
c2e0 74 4f 6e 65 28 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 tOne();.........................
c300 20 20 20 20 20 20 20 2f 2f 20 53 74 61 72 74 20 53 74 6f 70 20 57 61 74 63 68 0d 0a 20 20 20 20 .......//.Start.Stop.Watch......
c320 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 53 74 6f 70 57 61 ........................m_StopWa
c340 74 63 68 20 3d 20 53 79 73 74 65 6d 2e 44 69 61 67 6e 6f 73 74 69 63 73 2e 53 74 6f 70 77 61 74 tch.=.System.Diagnostics.Stopwat
c360 63 68 2e 53 74 61 72 74 4e 65 77 28 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ch.StartNew();..................
c380 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 49 73 52 65 6e 64 65 72 69 6e 67 44 6f 6e 65 20 ..............m_IsRenderingDone.
c3a0 3d 20 66 61 6c 73 65 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 =.false;........................
c3c0 20 20 20 20 20 20 20 20 2f 2f 20 41 6c 6c 6f 63 61 74 65 20 74 65 78 74 75 72 65 20 64 61 74 61 ........//.Allocate.texture.data
c3e0 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f ..............................m_
c400 41 74 6c 61 73 54 65 78 74 75 72 65 42 75 66 66 65 72 20 3d 20 6e 65 77 20 62 79 74 65 5b 6d 5f AtlasTextureBuffer.=.new.byte[m_
c420 41 74 6c 61 73 57 69 64 74 68 20 2a 20 6d 5f 41 74 6c 61 73 48 65 69 67 68 74 5d 3b 0d 0a 0d 0a AtlasWidth.*.m_AtlasHeight];....
c440 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 41 74 ............................m_At
c460 6c 61 73 47 65 6e 65 72 61 74 69 6f 6e 50 72 6f 67 72 65 73 73 4c 61 62 65 6c 20 3d 20 22 52 65 lasGenerationProgressLabel.=."Re
c480 6e 64 65 72 69 6e 67 20 67 6c 79 70 68 73 2e 2e 2e 22 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 ndering.glyphs...";.............
c4a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 52 65 6e 64 65 72 20 61 6e 64 ...................//.Render.and
c4c0 20 61 64 64 20 67 6c 79 70 68 73 20 74 6f 20 74 68 65 20 67 69 76 65 6e 20 61 74 6c 61 73 20 74 .add.glyphs.to.the.given.atlas.t
c4e0 65 78 74 75 72 65 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 exture..........................
c500 20 20 20 20 20 69 66 20 28 6d 5f 47 6c 79 70 68 73 54 6f 52 65 6e 64 65 72 2e 43 6f 75 6e 74 20 .....if.(m_GlyphsToRender.Count.
c520 3e 20 30 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 >.0)............................
c540 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..{.............................
c560 20 20 20 20 20 46 6f 6e 74 45 6e 67 69 6e 65 2e 52 65 6e 64 65 72 47 6c 79 70 68 73 54 6f 54 65 .....FontEngine.RenderGlyphsToTe
c580 78 74 75 72 65 28 6d 5f 47 6c 79 70 68 73 54 6f 52 65 6e 64 65 72 2c 20 6d 5f 50 61 64 64 69 6e xture(m_GlyphsToRender,.m_Paddin
c5a0 67 2c 20 6d 5f 47 6c 79 70 68 52 65 6e 64 65 72 4d 6f 64 65 2c 20 6d 5f 41 74 6c 61 73 54 65 78 g,.m_GlyphRenderMode,.m_AtlasTex
c5c0 74 75 72 65 42 75 66 66 65 72 2c 20 6d 5f 41 74 6c 61 73 57 69 64 74 68 2c 20 6d 5f 41 74 6c 61 tureBuffer,.m_AtlasWidth,.m_Atla
c5e0 73 48 65 69 67 68 74 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 sHeight);.......................
c600 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .......}........................
c620 20 20 20 20 20 20 20 20 6d 5f 49 73 52 65 6e 64 65 72 69 6e 67 44 6f 6e 65 20 3d 20 74 72 75 65 ........m_IsRenderingDone.=.true
c640 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ;...............................
c660 20 2f 2f 20 53 74 6f 70 20 53 74 6f 70 57 61 74 63 68 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 .//.Stop.StopWatch..............
c680 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 53 74 6f 70 57 61 74 63 68 2e 53 74 6f 70 ................m_StopWatch.Stop
c6a0 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ();.............................
c6c0 20 6d 5f 47 6c 79 70 68 52 65 6e 64 65 72 69 6e 67 47 65 6e 65 72 61 74 69 6f 6e 54 69 6d 65 20 .m_GlyphRenderingGenerationTime.
c6e0 3d 20 6d 5f 53 74 6f 70 57 61 74 63 68 2e 45 6c 61 70 73 65 64 2e 54 6f 74 61 6c 4d 69 6c 6c 69 =.m_StopWatch.Elapsed.TotalMilli
c700 73 65 63 6f 6e 64 73 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 seconds;........................
c720 20 20 20 20 20 20 44 65 62 75 67 2e 4c 6f 67 28 22 46 6f 6e 74 20 41 74 6c 61 73 20 67 65 6e 65 ......Debug.Log("Font.Atlas.gene
c740 72 61 74 69 6f 6e 20 63 6f 6d 70 6c 65 74 65 64 20 69 6e 3a 20 22 20 2b 20 6d 5f 47 6c 79 70 68 ration.completed.in:.".+.m_Glyph
c760 52 65 6e 64 65 72 69 6e 67 47 65 6e 65 72 61 74 69 6f 6e 54 69 6d 65 2e 54 6f 53 74 72 69 6e 67 RenderingGenerationTime.ToString
c780 28 22 30 2e 30 30 30 20 6d 73 2e 22 29 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ("0.000.ms."));.................
c7a0 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 53 74 6f 70 57 61 74 63 68 2e 52 65 73 65 74 28 29 .............m_StopWatch.Reset()
c7c0 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 29 3b 0d 0a ;..........................});..
c7e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 ....................}...........
c800 20 20 20 20 20 20 20 20 20 20 20 20 20 53 61 76 65 43 72 65 61 74 69 6f 6e 53 65 74 74 69 6e 67 .............SaveCreationSetting
c820 73 54 6f 45 64 69 74 6f 72 50 72 65 66 73 28 53 61 76 65 46 6f 6e 74 43 72 65 61 74 69 6f 6e 53 sToEditorPrefs(SaveFontCreationS
c840 65 74 74 69 6e 67 73 28 29 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a ettings());..................}..
c860 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 ............}................//.
c880 46 4f 4e 54 20 52 45 4e 44 45 52 49 4e 47 20 50 52 4f 47 52 45 53 53 20 42 41 52 0d 0a 20 20 20 FONT.RENDERING.PROGRESS.BAR.....
c8a0 20 20 20 20 20 20 20 20 20 47 55 49 4c 61 79 6f 75 74 2e 53 70 61 63 65 28 31 29 3b 0d 0a 20 20 .........GUILayout.Space(1);....
c8c0 20 20 20 20 20 20 20 20 20 20 52 65 63 74 20 70 72 6f 67 72 65 73 73 52 65 63 74 20 3d 20 45 64 ..........Rect.progressRect.=.Ed
c8e0 69 74 6f 72 47 55 49 4c 61 79 6f 75 74 2e 47 65 74 43 6f 6e 74 72 6f 6c 52 65 63 74 28 66 61 6c itorGUILayout.GetControlRect(fal
c900 73 65 2c 20 32 30 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 47 55 49 2e 65 6e 61 62 se,.20);................GUI.enab
c920 6c 65 64 20 3d 20 74 72 75 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 70 72 6f 67 72 65 73 led.=.true;..............progres
c940 73 52 65 63 74 2e 77 69 64 74 68 20 2d 3d 20 32 32 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 sRect.width.-=.22;..............
c960 45 64 69 74 6f 72 47 55 49 2e 50 72 6f 67 72 65 73 73 42 61 72 28 70 72 6f 67 72 65 73 73 52 65 EditorGUI.ProgressBar(progressRe
c980 63 74 2c 20 4d 61 74 68 66 2e 4d 61 78 28 30 2e 30 31 66 2c 20 6d 5f 41 74 6c 61 73 47 65 6e 65 ct,.Mathf.Max(0.01f,.m_AtlasGene
c9a0 72 61 74 69 6f 6e 50 72 6f 67 72 65 73 73 29 2c 20 6d 5f 41 74 6c 61 73 47 65 6e 65 72 61 74 69 rationProgress),.m_AtlasGenerati
c9c0 6f 6e 50 72 6f 67 72 65 73 73 4c 61 62 65 6c 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 70 onProgressLabel);..............p
c9e0 72 6f 67 72 65 73 73 52 65 63 74 2e 78 20 3d 20 70 72 6f 67 72 65 73 73 52 65 63 74 2e 78 20 2b rogressRect.x.=.progressRect.x.+
ca00 20 70 72 6f 67 72 65 73 73 52 65 63 74 2e 77 69 64 74 68 20 2b 20 32 3b 0d 0a 20 20 20 20 20 20 .progressRect.width.+.2;........
ca20 20 20 20 20 20 20 70 72 6f 67 72 65 73 73 52 65 63 74 2e 79 20 2d 3d 20 31 3b 0d 0a 20 20 20 20 ......progressRect.y.-=.1;......
ca40 20 20 20 20 20 20 20 20 70 72 6f 67 72 65 73 73 52 65 63 74 2e 77 69 64 74 68 20 3d 20 32 30 3b ........progressRect.width.=.20;
ca60 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 70 72 6f 67 72 65 73 73 52 65 63 74 2e 68 65 69 67 68 ..............progressRect.heigh
ca80 74 20 3d 20 32 30 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 47 55 49 2e 65 6e 61 62 6c t.=.20;................GUI.enabl
caa0 65 64 20 3d 20 6d 5f 49 73 50 72 6f 63 65 73 73 69 6e 67 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 ed.=.m_IsProcessing;............
cac0 20 20 69 66 20 28 47 55 49 2e 42 75 74 74 6f 6e 28 70 72 6f 67 72 65 73 73 52 65 63 74 2c 20 22 ..if.(GUI.Button(progressRect,."
cae0 58 22 29 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 X"))..............{.............
cb00 20 20 20 20 20 46 6f 6e 74 45 6e 67 69 6e 65 2e 53 65 6e 64 43 61 6e 63 65 6c 6c 61 74 69 6f 6e .....FontEngine.SendCancellation
cb20 52 65 71 75 65 73 74 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 41 74 Request();..................m_At
cb40 6c 61 73 47 65 6e 65 72 61 74 69 6f 6e 50 72 6f 67 72 65 73 73 20 3d 20 30 3b 0d 0a 20 20 20 20 lasGenerationProgress.=.0;......
cb60 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 49 73 50 72 6f 63 65 73 73 69 6e 67 20 3d 20 66 61 6c ............m_IsProcessing.=.fal
cb80 73 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 49 73 47 65 6e 65 72 61 74 se;..................m_IsGenerat
cba0 69 6f 6e 43 61 6e 63 65 6c 6c 65 64 20 3d 20 74 72 75 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 ionCancelled.=.true;............
cbc0 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 47 55 49 4c 61 79 6f 75 74 2e 53 70 61 63 65 ..}..............GUILayout.Space
cbe0 28 35 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 46 4f 4e 54 20 53 54 41 54 (5);................//.FONT.STAT
cc00 55 53 20 26 20 49 4e 46 4f 52 4d 41 54 49 4f 4e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 47 55 US.&.INFORMATION..............GU
cc20 49 2e 65 6e 61 62 6c 65 64 20 3d 20 74 72 75 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 0d I.enabled.=.true;...............
cc40 0a 20 20 20 20 20 20 20 20 20 20 20 20 47 55 49 4c 61 79 6f 75 74 2e 42 65 67 69 6e 56 65 72 74 .............GUILayout.BeginVert
cc60 69 63 61 6c 28 45 64 69 74 6f 72 53 74 79 6c 65 73 2e 68 65 6c 70 42 6f 78 2c 20 47 55 49 4c 61 ical(EditorStyles.helpBox,.GUILa
cc80 79 6f 75 74 2e 48 65 69 67 68 74 28 32 30 30 29 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 yout.Height(200));..............
cca0 6d 5f 4f 75 74 70 75 74 53 63 72 6f 6c 6c 50 6f 73 69 74 69 6f 6e 20 3d 20 45 64 69 74 6f 72 47 m_OutputScrollPosition.=.EditorG
ccc0 55 49 4c 61 79 6f 75 74 2e 42 65 67 69 6e 53 63 72 6f 6c 6c 56 69 65 77 28 6d 5f 4f 75 74 70 75 UILayout.BeginScrollView(m_Outpu
cce0 74 53 63 72 6f 6c 6c 50 6f 73 69 74 69 6f 6e 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 45 tScrollPosition);..............E
cd00 64 69 74 6f 72 47 55 49 4c 61 79 6f 75 74 2e 4c 61 62 65 6c 46 69 65 6c 64 28 6d 5f 4f 75 74 70 ditorGUILayout.LabelField(m_Outp
cd20 75 74 46 65 65 64 62 61 63 6b 2c 20 54 4d 50 5f 55 49 53 74 79 6c 65 4d 61 6e 61 67 65 72 2e 6c utFeedback,.TMP_UIStyleManager.l
cd40 61 62 65 6c 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 45 64 69 74 6f 72 47 55 49 4c 61 79 abel);..............EditorGUILay
cd60 6f 75 74 2e 45 6e 64 53 63 72 6f 6c 6c 56 69 65 77 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 out.EndScrollView();............
cd80 20 20 47 55 49 4c 61 79 6f 75 74 2e 45 6e 64 56 65 72 74 69 63 61 6c 28 29 3b 0d 0a 0d 0a 20 20 ..GUILayout.EndVertical();......
cda0 20 20 20 20 20 20 20 20 20 20 2f 2f 20 53 41 56 45 20 54 45 58 54 55 52 45 20 26 20 43 52 45 41 ..........//.SAVE.TEXTURE.&.CREA
cdc0 54 45 20 61 6e 64 20 53 41 56 45 20 46 4f 4e 54 20 58 4d 4c 20 46 49 4c 45 0d 0a 20 20 20 20 20 TE.and.SAVE.FONT.XML.FILE.......
cde0 20 20 20 20 20 20 20 47 55 49 2e 65 6e 61 62 6c 65 64 20 3d 20 6d 5f 46 6f 6e 74 41 74 6c 61 73 .......GUI.enabled.=.m_FontAtlas
ce00 54 65 78 74 75 72 65 20 21 3d 20 6e 75 6c 6c 20 26 26 20 21 6d 5f 49 73 50 72 6f 63 65 73 73 69 Texture.!=.null.&&.!m_IsProcessi
ce20 6e 67 3b 20 20 20 20 2f 2f 20 45 6e 61 62 6c 65 20 53 61 76 65 20 42 75 74 74 6f 6e 20 69 66 20 ng;....//.Enable.Save.Button.if.
ce40 66 6f 6e 74 5f 41 74 6c 61 73 20 69 73 20 6e 6f 74 20 4e 75 6c 6c 2e 0d 0a 20 20 20 20 20 20 20 font_Atlas.is.not.Null..........
ce60 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 45 64 69 74 6f 72 47 55 49 4c 61 79 6f ...................EditorGUILayo
ce80 75 74 2e 42 65 67 69 6e 48 6f 72 69 7a 6f 6e 74 61 6c 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 ut.BeginHorizontal();...........
cea0 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 47 55 49 4c 61 79 6f .....................if.(GUILayo
cec0 75 74 2e 42 75 74 74 6f 6e 28 22 53 61 76 65 22 29 20 26 26 20 47 55 49 2e 65 6e 61 62 6c 65 64 ut.Button("Save").&&.GUI.enabled
cee0 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 )..............{................
cf00 20 20 69 66 20 28 6d 5f 53 65 6c 65 63 74 65 64 46 6f 6e 74 41 73 73 65 74 20 3d 3d 20 6e 75 6c ..if.(m_SelectedFontAsset.==.nul
cf20 6c 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 l)..................{...........
cf40 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6d 5f 4c 65 67 61 63 79 46 6f 6e 74 41 73 73 65 74 ...........if.(m_LegacyFontAsset
cf60 20 21 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .!=.null).......................
cf80 20 20 20 53 61 76 65 4e 65 77 46 6f 6e 74 41 73 73 65 74 57 69 74 68 53 61 6d 65 4e 61 6d 65 28 ...SaveNewFontAssetWithSameName(
cfa0 6d 5f 4c 65 67 61 63 79 46 6f 6e 74 41 73 73 65 74 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 m_LegacyFontAsset);.............
cfc0 20 20 20 20 20 20 20 20 20 65 6c 73 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .........else...................
cfe0 20 20 20 20 20 20 20 53 61 76 65 4e 65 77 46 6f 6e 74 41 73 73 65 74 28 6d 5f 53 6f 75 72 63 65 .......SaveNewFontAsset(m_Source
d000 46 6f 6e 74 46 69 6c 65 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 FontFile);..................}...
d020 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 6c 73 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20 ...............else.............
d040 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 53 .....{......................//.S
d060 61 76 65 20 6f 76 65 72 20 65 78 69 74 69 6e 67 20 46 6f 6e 74 20 41 73 73 65 74 0d 0a 20 20 20 ave.over.exiting.Font.Asset.....
d080 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 74 72 69 6e 67 20 66 69 6c 65 50 61 74 68 .................string.filePath
d0a0 20 3d 20 50 61 74 68 2e 47 65 74 46 75 6c 6c 50 61 74 68 28 41 73 73 65 74 44 61 74 61 62 61 73 .=.Path.GetFullPath(AssetDatabas
d0c0 65 2e 47 65 74 41 73 73 65 74 50 61 74 68 28 6d 5f 53 65 6c 65 63 74 65 64 46 6f 6e 74 41 73 73 e.GetAssetPath(m_SelectedFontAss
d0e0 65 74 29 29 2e 52 65 70 6c 61 63 65 28 27 5c 5c 27 2c 20 27 2f 27 29 3b 0d 0a 0d 0a 20 20 20 20 et)).Replace('\\',.'/');........
d100 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 28 28 47 6c 79 70 68 52 61 73 74 65 ................if.(((GlyphRaste
d120 72 4d 6f 64 65 73 29 6d 5f 47 6c 79 70 68 52 65 6e 64 65 72 4d 6f 64 65 20 26 20 47 6c 79 70 68 rModes)m_GlyphRenderMode.&.Glyph
d140 52 61 73 74 65 72 4d 6f 64 65 73 2e 52 41 53 54 45 52 5f 4d 4f 44 45 5f 42 49 54 4d 41 50 29 20 RasterModes.RASTER_MODE_BITMAP).
d160 3d 3d 20 47 6c 79 70 68 52 61 73 74 65 72 4d 6f 64 65 73 2e 52 41 53 54 45 52 5f 4d 4f 44 45 5f ==.GlyphRasterModes.RASTER_MODE_
d180 42 49 54 4d 41 50 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 BITMAP).........................
d1a0 20 20 20 20 20 53 61 76 65 5f 42 69 74 6d 61 70 5f 46 6f 6e 74 41 73 73 65 74 28 66 69 6c 65 50 .....Save_Bitmap_FontAsset(fileP
d1c0 61 74 68 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 ath);..........................e
d1e0 6c 73 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 53 61 76 lse..........................Sav
d200 65 5f 53 44 46 5f 46 6f 6e 74 41 73 73 65 74 28 66 69 6c 65 50 61 74 68 29 3b 0d 0a 20 20 20 20 e_SDF_FontAsset(filePath);......
d220 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 ............}..............}....
d240 20 20 20 20 20 20 20 20 20 20 69 66 20 28 47 55 49 4c 61 79 6f 75 74 2e 42 75 74 74 6f 6e 28 22 ..........if.(GUILayout.Button("
d260 53 61 76 65 20 61 73 2e 2e 2e 22 29 20 26 26 20 47 55 49 2e 65 6e 61 62 6c 65 64 29 0d 0a 20 20 Save.as...").&&.GUI.enabled)....
d280 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 ..........{..................if.
d2a0 28 6d 5f 53 65 6c 65 63 74 65 64 46 6f 6e 74 41 73 73 65 74 20 3d 3d 20 6e 75 6c 6c 29 0d 0a 20 (m_SelectedFontAsset.==.null)...
d2c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ...............{................
d2e0 20 20 20 20 20 20 53 61 76 65 4e 65 77 46 6f 6e 74 41 73 73 65 74 28 6d 5f 53 6f 75 72 63 65 46 ......SaveNewFontAsset(m_SourceF
d300 6f 6e 74 46 69 6c 65 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 ontFile);..................}....
d320 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 6c 73 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 ..............else..............
d340 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 53 61 76 65 4e ....{......................SaveN
d360 65 77 46 6f 6e 74 41 73 73 65 74 57 69 74 68 53 61 6d 65 4e 61 6d 65 28 6d 5f 53 65 6c 65 63 74 ewFontAssetWithSameName(m_Select
d380 65 64 46 6f 6e 74 41 73 73 65 74 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d edFontAsset);..................}
d3a0 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..............}.................
d3c0 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 45 64 69 74 6f 72 47 55 49 4c 61 79 6f 75 74 2e 45 ...............EditorGUILayout.E
d3e0 6e 64 48 6f 72 69 7a 6f 6e 74 61 6c 28 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 45 ndHorizontal();................E
d400 64 69 74 6f 72 47 55 49 4c 61 79 6f 75 74 2e 53 70 61 63 65 28 29 3b 0d 0a 0d 0a 20 20 20 20 20 ditorGUILayout.Space();.........
d420 20 20 20 20 20 20 20 45 64 69 74 6f 72 47 55 49 4c 61 79 6f 75 74 2e 45 6e 64 56 65 72 74 69 63 .......EditorGUILayout.EndVertic
d440 61 6c 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 al();...........................
d460 20 47 55 49 2e 65 6e 61 62 6c 65 64 20 3d 20 74 72 75 65 3b 20 2f 2f 20 52 65 2d 65 6e 61 62 6c .GUI.enabled.=.true;.//.Re-enabl
d480 65 20 47 55 49 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 70 6f 73 69 74 69 6f e.GUI................if.(positio
d4a0 6e 2e 68 65 69 67 68 74 20 3e 20 70 6f 73 69 74 69 6f 6e 2e 77 69 64 74 68 20 7c 7c 20 70 6f 73 n.height.>.position.width.||.pos
d4c0 69 74 69 6f 6e 2e 77 69 64 74 68 20 3c 20 6b 5f 54 77 6f 43 6f 6c 75 6d 6e 43 6f 6e 74 72 6f 6c ition.width.<.k_TwoColumnControl
d4e0 73 57 69 64 74 68 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 sWidth)..............{..........
d500 20 20 20 20 20 20 20 20 44 72 61 77 50 72 65 76 69 65 77 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 ........DrawPreview();..........
d520 20 20 20 20 20 20 20 20 47 55 49 4c 61 79 6f 75 74 2e 53 70 61 63 65 28 35 29 3b 0d 0a 20 20 20 ........GUILayout.Space(5);.....
d540 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 .........}......................
d560 20 20 20 20 20 20 45 64 69 74 6f 72 47 55 49 4c 61 79 6f 75 74 2e 45 6e 64 53 63 72 6f 6c 6c 56 ......EditorGUILayout.EndScrollV
d580 69 65 77 28 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6d 5f 49 73 46 6f iew();................if.(m_IsFo
d5a0 6e 74 41 74 6c 61 73 49 6e 76 61 6c 69 64 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ntAtlasInvalid).................
d5c0 20 43 6c 65 61 72 47 65 6e 65 72 61 74 65 64 44 61 74 61 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 .ClearGeneratedData();..........
d5e0 7d 0d 0a 0d 0a 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 73 75 6d 6d 61 72 79 3e 0d 0a 20 20 }..............///.<summary>....
d600 20 20 20 20 20 20 2f 2f 2f 20 43 6c 65 61 72 20 74 68 65 20 70 72 65 76 69 6f 75 73 6c 79 20 67 ......///.Clear.the.previously.g
d620 65 6e 65 72 61 74 65 64 20 64 61 74 61 2e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 2f 73 75 enerated.data...........///.</su
d640 6d 6d 61 72 79 3e 0d 0a 20 20 20 20 20 20 20 20 76 6f 69 64 20 43 6c 65 61 72 47 65 6e 65 72 61 mmary>..........void.ClearGenera
d660 74 65 64 44 61 74 61 28 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 tedData()..........{............
d680 20 20 6d 5f 49 73 46 6f 6e 74 41 74 6c 61 73 49 6e 76 61 6c 69 64 20 3d 20 66 61 6c 73 65 3b 0d ..m_IsFontAtlasInvalid.=.false;.
d6a0 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6d 5f 46 6f 6e 74 41 74 6c 61 73 54 65 ...............if.(m_FontAtlasTe
d6c0 78 74 75 72 65 20 21 3d 20 6e 75 6c 6c 20 26 26 20 21 45 64 69 74 6f 72 55 74 69 6c 69 74 79 2e xture.!=.null.&&.!EditorUtility.
d6e0 49 73 50 65 72 73 69 73 74 65 6e 74 28 6d 5f 46 6f 6e 74 41 74 6c 61 73 54 65 78 74 75 72 65 29 IsPersistent(m_FontAtlasTexture)
d700 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 )..............{................
d720 20 20 44 65 73 74 72 6f 79 49 6d 6d 65 64 69 61 74 65 28 6d 5f 46 6f 6e 74 41 74 6c 61 73 54 65 ..DestroyImmediate(m_FontAtlasTe
d740 78 74 75 72 65 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 46 6f 6e 74 41 xture);..................m_FontA
d760 74 6c 61 73 54 65 78 74 75 72 65 20 3d 20 6e 75 6c 6c 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 tlasTexture.=.null;.............
d780 20 7d 0d 0a 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 41 74 6c 61 .}........................m_Atla
d7a0 73 47 65 6e 65 72 61 74 69 6f 6e 50 72 6f 67 72 65 73 73 4c 61 62 65 6c 20 3d 20 73 74 72 69 6e sGenerationProgressLabel.=.strin
d7c0 67 2e 45 6d 70 74 79 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 41 74 6c 61 73 47 65 6e g.Empty;..............m_AtlasGen
d7e0 65 72 61 74 69 6f 6e 50 72 6f 67 72 65 73 73 20 3d 20 30 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 erationProgress.=.0;............
d800 20 20 6d 5f 53 61 76 65 64 46 6f 6e 74 41 74 6c 61 73 20 3d 20 6e 75 6c 6c 3b 0d 0a 0d 0a 20 20 ..m_SavedFontAtlas.=.null;......
d820 20 20 20 20 20 20 20 20 20 20 6d 5f 4f 75 74 70 75 74 46 65 65 64 62 61 63 6b 20 3d 20 73 74 72 ..........m_OutputFeedback.=.str
d840 69 6e 67 2e 45 6d 70 74 79 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 57 61 72 6e 69 6e ing.Empty;..............m_Warnin
d860 67 4d 65 73 73 61 67 65 20 3d 20 73 74 72 69 6e 67 2e 45 6d 70 74 79 3b 0d 0a 20 20 20 20 20 20 gMessage.=.string.Empty;........
d880 20 20 7d 0d 0a 0d 0a 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 73 75 6d 6d 61 72 79 3e 0d 0a ..}..............///.<summary>..
d8a0 20 20 20 20 20 20 20 20 2f 2f 2f 20 46 75 6e 63 74 69 6f 6e 20 74 6f 20 75 70 64 61 74 65 20 74 ........///.Function.to.update.t
d8c0 68 65 20 66 65 65 64 62 61 63 6b 20 77 69 6e 64 6f 77 20 73 68 6f 77 69 6e 67 20 74 68 65 20 72 he.feedback.window.showing.the.r
d8e0 65 73 75 6c 74 73 20 6f 66 20 74 68 65 20 6c 61 74 65 73 74 20 67 65 6e 65 72 61 74 69 6f 6e 2e esults.of.the.latest.generation.
d900 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 2f 73 75 6d 6d 61 72 79 3e 0d 0a 20 20 20 20 20 20 ..........///.</summary>........
d920 20 20 76 6f 69 64 20 55 70 64 61 74 65 52 65 6e 64 65 72 46 65 65 64 62 61 63 6b 57 69 6e 64 6f ..void.UpdateRenderFeedbackWindo
d940 77 28 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 50 6f w()..........{..............m_Po
d960 69 6e 74 53 69 7a 65 20 3d 20 6d 5f 46 61 63 65 49 6e 66 6f 2e 70 6f 69 6e 74 53 69 7a 65 3b 0d intSize.=.m_FaceInfo.pointSize;.
d980 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 74 72 69 6e 67 20 6d 69 73 73 69 6e 67 47 6c 79 ...............string.missingGly
d9a0 70 68 52 65 70 6f 72 74 20 3d 20 73 74 72 69 6e 67 2e 45 6d 70 74 79 3b 0d 0a 0d 0a 20 20 20 20 phReport.=.string.Empty;........
d9c0 20 20 20 20 20 20 20 20 2f 2f 73 74 72 69 6e 67 20 63 6f 6c 6f 72 54 61 67 20 3d 20 6d 5f 46 6f ........//string.colorTag.=.m_Fo
d9e0 6e 74 43 68 61 72 61 63 74 65 72 54 61 62 6c 65 2e 43 6f 75 6e 74 20 3d 3d 20 6d 5f 43 68 61 72 ntCharacterTable.Count.==.m_Char
da00 61 63 74 65 72 43 6f 75 6e 74 20 3f 20 22 3c 63 6f 6c 6f 72 3d 23 43 30 66 66 66 66 3e 22 20 3a acterCount.?."<color=#C0ffff>".:
da20 20 22 3c 63 6f 6c 6f 72 3d 23 66 66 66 66 30 30 3e 22 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 ."<color=#ffff00>";.............
da40 20 73 74 72 69 6e 67 20 63 6f 6c 6f 72 54 61 67 32 20 3d 20 22 3c 63 6f 6c 6f 72 3d 23 43 30 66 .string.colorTag2.=."<color=#C0f
da60 66 66 66 3e 22 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 6d 69 73 73 69 6e 67 47 6c 79 fff>";................missingGly
da80 70 68 52 65 70 6f 72 74 20 3d 20 22 46 6f 6e 74 3a 20 3c 62 3e 22 20 2b 20 63 6f 6c 6f 72 54 61 phReport.=."Font:.<b>".+.colorTa
daa0 67 32 20 2b 20 6d 5f 46 61 63 65 49 6e 66 6f 2e 66 61 6d 69 6c 79 4e 61 6d 65 20 2b 20 22 3c 2f g2.+.m_FaceInfo.familyName.+."</
dac0 63 6f 6c 6f 72 3e 3c 2f 62 3e 20 20 53 74 79 6c 65 3a 20 3c 62 3e 22 20 2b 20 63 6f 6c 6f 72 54 color></b>..Style:.<b>".+.colorT
dae0 61 67 32 20 2b 20 6d 5f 46 61 63 65 49 6e 66 6f 2e 73 74 79 6c 65 4e 61 6d 65 20 2b 20 22 3c 2f ag2.+.m_FaceInfo.styleName.+."</
db00 63 6f 6c 6f 72 3e 3c 2f 62 3e 22 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 6d 69 73 73 color></b>";................miss
db20 69 6e 67 47 6c 79 70 68 52 65 70 6f 72 74 20 2b 3d 20 22 5c 6e 50 6f 69 6e 74 20 53 69 7a 65 3a ingGlyphReport.+=."\nPoint.Size:
db40 20 3c 62 3e 22 20 2b 20 63 6f 6c 6f 72 54 61 67 32 20 2b 20 6d 5f 46 61 63 65 49 6e 66 6f 2e 70 .<b>".+.colorTag2.+.m_FaceInfo.p
db60 6f 69 6e 74 53 69 7a 65 20 2b 20 22 3c 2f 63 6f 6c 6f 72 3e 3c 2f 62 3e 20 20 20 53 50 2f 50 44 ointSize.+."</color></b>...SP/PD
db80 20 52 61 74 69 6f 3a 20 3c 62 3e 22 20 2b 20 63 6f 6c 6f 72 54 61 67 32 20 2b 20 20 28 28 66 6c .Ratio:.<b>".+.colorTag2.+..((fl
dba0 6f 61 74 29 6d 5f 50 61 64 64 69 6e 67 20 2f 20 6d 5f 46 61 63 65 49 6e 66 6f 2e 70 6f 69 6e 74 oat)m_Padding./.m_FaceInfo.point
dbc0 53 69 7a 65 29 2e 54 6f 53 74 72 69 6e 67 28 22 30 2e 30 25 22 20 2b 20 22 3c 2f 63 6f 6c 6f 72 Size).ToString("0.0%".+."</color
dbe0 3e 3c 2f 62 3e 22 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 6d 69 73 73 69 6e 67 47 ></b>");................missingG
dc00 6c 79 70 68 52 65 70 6f 72 74 20 2b 3d 20 22 5c 6e 5c 6e 43 68 61 72 61 63 74 65 72 73 20 69 6e lyphReport.+=."\n\nCharacters.in
dc20 63 6c 75 64 65 64 3a 20 3c 63 6f 6c 6f 72 3d 23 66 66 66 66 30 30 3e 3c 62 3e 22 20 2b 20 6d 5f cluded:.<color=#ffff00><b>".+.m_
dc40 46 6f 6e 74 43 68 61 72 61 63 74 65 72 54 61 62 6c 65 2e 43 6f 75 6e 74 20 2b 20 22 2f 22 20 2b FontCharacterTable.Count.+."/".+
dc60 20 6d 5f 43 68 61 72 61 63 74 65 72 43 6f 75 6e 74 20 2b 20 22 3c 2f 62 3e 3c 2f 63 6f 6c 6f 72 .m_CharacterCount.+."</b></color
dc80 3e 22 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 6d 69 73 73 69 6e 67 47 6c 79 70 68 52 65 70 >";..............missingGlyphRep
dca0 6f 72 74 20 2b 3d 20 22 5c 6e 4d 69 73 73 69 6e 67 20 63 68 61 72 61 63 74 65 72 73 3a 20 3c 63 ort.+=."\nMissing.characters:.<c
dcc0 6f 6c 6f 72 3d 23 66 66 66 66 30 30 3e 3c 62 3e 22 20 2b 20 6d 5f 4d 69 73 73 69 6e 67 43 68 61 olor=#ffff00><b>".+.m_MissingCha
dce0 72 61 63 74 65 72 73 2e 43 6f 75 6e 74 20 2b 20 22 3c 2f 62 3e 3c 2f 63 6f 6c 6f 72 3e 22 3b 0d racters.Count.+."</b></color>";.
dd00 0a 20 20 20 20 20 20 20 20 20 20 20 20 6d 69 73 73 69 6e 67 47 6c 79 70 68 52 65 70 6f 72 74 20 .............missingGlyphReport.
dd20 2b 3d 20 22 5c 6e 45 78 63 6c 75 64 65 64 20 63 68 61 72 61 63 74 65 72 73 3a 20 3c 63 6f 6c 6f +=."\nExcluded.characters:.<colo
dd40 72 3d 23 66 66 66 66 30 30 3e 3c 62 3e 22 20 2b 20 6d 5f 45 78 63 6c 75 64 65 64 43 68 61 72 61 r=#ffff00><b>".+.m_ExcludedChara
dd60 63 74 65 72 73 2e 43 6f 75 6e 74 20 2b 20 22 3c 2f 62 3e 3c 2f 63 6f 6c 6f 72 3e 22 3b 0d 0a 0d cters.Count.+."</b></color>";...
dd80 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 52 65 70 6f 72 74 20 63 68 61 72 61 63 74 65 72 .............//.Report.character
dda0 73 20 6d 69 73 73 69 6e 67 20 66 72 6f 6d 20 66 6f 6e 74 20 66 69 6c 65 0d 0a 20 20 20 20 20 20 s.missing.from.font.file........
ddc0 20 20 20 20 20 20 6d 69 73 73 69 6e 67 47 6c 79 70 68 52 65 70 6f 72 74 20 2b 3d 20 22 5c 6e 5c ......missingGlyphReport.+=."\n\
dde0 6e 3c 62 3e 3c 63 6f 6c 6f 72 3d 23 66 66 66 66 30 30 3e 43 68 61 72 61 63 74 65 72 73 20 6d 69 n<b><color=#ffff00>Characters.mi
de00 73 73 69 6e 67 20 66 72 6f 6d 20 66 6f 6e 74 20 66 69 6c 65 3a 3c 2f 63 6f 6c 6f 72 3e 3c 2f 62 ssing.from.font.file:</color></b
de20 3e 22 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 6d 69 73 73 69 6e 67 47 6c 79 70 68 52 65 70 >";..............missingGlyphRep
de40 6f 72 74 20 2b 3d 20 22 5c 6e 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ort.+=."\n----------------------
de60 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 22 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 ------------------";............
de80 20 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 4f 75 74 70 75 74 46 65 65 64 62 61 63 6b ................m_OutputFeedback
dea0 20 3d 20 6d 69 73 73 69 6e 67 47 6c 79 70 68 52 65 70 6f 72 74 3b 0d 0a 0d 0a 20 20 20 20 20 20 .=.missingGlyphReport;..........
dec0 20 20 20 20 20 20 66 6f 72 20 28 69 6e 74 20 69 20 3d 20 30 3b 20 69 20 3c 20 6d 5f 4d 69 73 73 ......for.(int.i.=.0;.i.<.m_Miss
dee0 69 6e 67 43 68 61 72 61 63 74 65 72 73 2e 43 6f 75 6e 74 3b 20 69 2b 2b 29 0d 0a 20 20 20 20 20 ingCharacters.Count;.i++).......
df00 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 69 73 73 69 6e .......{..................missin
df20 67 47 6c 79 70 68 52 65 70 6f 72 74 20 2b 3d 20 22 5c 6e 49 44 3a 20 3c 63 6f 6c 6f 72 3d 23 43 gGlyphReport.+=."\nID:.<color=#C
df40 30 66 66 66 66 3e 22 20 2b 20 6d 5f 4d 69 73 73 69 6e 67 43 68 61 72 61 63 74 65 72 73 5b 69 5d 0ffff>".+.m_MissingCharacters[i]
df60 20 2b 20 22 5c 74 3c 2f 63 6f 6c 6f 72 3e 48 65 78 3a 20 3c 63 6f 6c 6f 72 3d 23 43 30 66 66 66 .+."\t</color>Hex:.<color=#C0fff
df80 66 3e 22 20 2b 20 6d 5f 4d 69 73 73 69 6e 67 43 68 61 72 61 63 74 65 72 73 5b 69 5d 2e 54 6f 53 f>".+.m_MissingCharacters[i].ToS
dfa0 74 72 69 6e 67 28 22 58 22 29 20 2b 20 22 5c 74 3c 2f 63 6f 6c 6f 72 3e 43 68 61 72 20 5b 3c 63 tring("X").+."\t</color>Char.[<c
dfc0 6f 6c 6f 72 3d 23 43 30 66 66 66 66 3e 22 20 2b 20 28 63 68 61 72 29 6d 5f 4d 69 73 73 69 6e 67 olor=#C0ffff>".+.(char)m_Missing
dfe0 43 68 61 72 61 63 74 65 72 73 5b 69 5d 20 2b 20 22 3c 2f 63 6f 6c 6f 72 3e 5d 22 3b 0d 0a 0d 0a Characters[i].+."</color>]";....
e000 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6d 69 73 73 69 6e 67 47 6c 79 70 68 ................if.(missingGlyph
e020 52 65 70 6f 72 74 2e 4c 65 6e 67 74 68 20 3c 20 31 36 33 30 30 29 0d 0a 20 20 20 20 20 20 20 20 Report.Length.<.16300)..........
e040 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 4f 75 74 70 75 74 46 65 65 64 62 61 63 6b 20 3d 20 6d ............m_OutputFeedback.=.m
e060 69 73 73 69 6e 67 47 6c 79 70 68 52 65 70 6f 72 74 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 issingGlyphReport;..............
e080 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 52 65 70 6f 72 74 20 63 68 61 72 61 }................//.Report.chara
e0a0 63 74 65 72 73 20 74 68 61 74 20 64 69 64 20 6e 6f 74 20 66 69 74 20 69 6e 20 74 68 65 20 61 74 cters.that.did.not.fit.in.the.at
e0c0 6c 61 73 20 74 65 78 74 75 72 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 6d 69 73 73 69 6e 67 las.texture..............missing
e0e0 47 6c 79 70 68 52 65 70 6f 72 74 20 2b 3d 20 22 5c 6e 5c 6e 3c 62 3e 3c 63 6f 6c 6f 72 3d 23 66 GlyphReport.+=."\n\n<b><color=#f
e100 66 66 66 30 30 3e 43 68 61 72 61 63 74 65 72 73 20 65 78 63 6c 75 64 65 64 20 66 72 6f 6d 20 70 fff00>Characters.excluded.from.p
e120 61 63 6b 69 6e 67 3a 3c 2f 63 6f 6c 6f 72 3e 3c 2f 62 3e 22 3b 0d 0a 20 20 20 20 20 20 20 20 20 acking:</color></b>";...........
e140 20 20 20 6d 69 73 73 69 6e 67 47 6c 79 70 68 52 65 70 6f 72 74 20 2b 3d 20 22 5c 6e 2d 2d 2d 2d ...missingGlyphReport.+=."\n----
e160 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d --------------------------------
e180 2d 2d 2d 2d 22 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 28 69 6e 74 20 69 ----";................for.(int.i
e1a0 20 3d 20 30 3b 20 69 20 3c 20 6d 5f 45 78 63 6c 75 64 65 64 43 68 61 72 61 63 74 65 72 73 2e 43 .=.0;.i.<.m_ExcludedCharacters.C
e1c0 6f 75 6e 74 3b 20 69 2b 2b 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 ount;.i++)..................{...
e1e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 69 73 73 69 6e 67 47 6c 79 70 68 52 65 70 6f 72 ...............missingGlyphRepor
e200 74 20 2b 3d 20 22 5c 6e 49 44 3a 20 3c 63 6f 6c 6f 72 3d 23 43 30 66 66 66 66 3e 22 20 2b 20 6d t.+=."\nID:.<color=#C0ffff>".+.m
e220 5f 45 78 63 6c 75 64 65 64 43 68 61 72 61 63 74 65 72 73 5b 69 5d 20 2b 20 22 5c 74 3c 2f 63 6f _ExcludedCharacters[i].+."\t</co
e240 6c 6f 72 3e 48 65 78 3a 20 3c 63 6f 6c 6f 72 3d 23 43 30 66 66 66 66 3e 22 20 2b 20 6d 5f 45 78 lor>Hex:.<color=#C0ffff>".+.m_Ex
e260 63 6c 75 64 65 64 43 68 61 72 61 63 74 65 72 73 5b 69 5d 2e 54 6f 53 74 72 69 6e 67 28 22 58 22 cludedCharacters[i].ToString("X"
e280 29 20 2b 20 22 5c 74 3c 2f 63 6f 6c 6f 72 3e 43 68 61 72 20 5b 3c 63 6f 6c 6f 72 3d 23 43 30 66 ).+."\t</color>Char.[<color=#C0f
e2a0 66 66 66 3e 22 20 2b 20 28 63 68 61 72 29 6d 5f 45 78 63 6c 75 64 65 64 43 68 61 72 61 63 74 65 fff>".+.(char)m_ExcludedCharacte
e2c0 72 73 5b 69 5d 20 2b 20 22 3c 2f 63 6f 6c 6f 72 3e 5d 22 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 rs[i].+."</color>]";............
e2e0 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6d 69 73 73 69 6e 67 47 6c 79 70 68 52 65 70 6f ............if.(missingGlyphRepo
e300 72 74 2e 4c 65 6e 67 74 68 20 3c 20 31 36 33 30 30 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 rt.Length.<.16300)..............
e320 20 20 20 20 20 20 20 20 6d 5f 4f 75 74 70 75 74 46 65 65 64 62 61 63 6b 20 3d 20 6d 69 73 73 69 ........m_OutputFeedback.=.missi
e340 6e 67 47 6c 79 70 68 52 65 70 6f 72 74 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d ngGlyphReport;..............}...
e360 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6d 69 73 73 69 6e 67 47 6c 79 70 68 52 65 70 .............if.(missingGlyphRep
e380 6f 72 74 2e 4c 65 6e 67 74 68 20 3e 20 31 36 33 30 30 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 ort.Length.>.16300).............
e3a0 20 20 20 20 20 6d 5f 4f 75 74 70 75 74 46 65 65 64 62 61 63 6b 20 2b 3d 20 22 5c 6e 5c 6e 3c 63 .....m_OutputFeedback.+=."\n\n<c
e3c0 6f 6c 6f 72 3d 23 66 66 66 66 30 30 3e 52 65 70 6f 72 74 20 74 72 75 6e 63 61 74 65 64 2e 3c 2f olor=#ffff00>Report.truncated.</
e3e0 63 6f 6c 6f 72 3e 5c 6e 3c 63 6f 6c 6f 72 3d 23 63 30 66 66 66 66 3e 53 65 65 3c 2f 63 6f 6c 6f color>\n<color=#c0ffff>See</colo
e400 72 3e 20 5c 22 54 65 78 74 4d 65 73 68 20 50 72 6f 5c 5c 47 6c 79 70 68 20 52 65 70 6f 72 74 2e r>.\"TextMesh.Pro\\Glyph.Report.
e420 74 78 74 5c 22 22 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 53 61 76 65 20 4d txt\"";................//.Save.M
e440 69 73 73 69 6e 67 20 47 6c 79 70 68 20 52 65 70 6f 72 74 20 66 69 6c 65 0d 0a 20 20 20 20 20 20 issing.Glyph.Report.file........
e460 20 20 20 20 20 20 69 66 20 28 44 69 72 65 63 74 6f 72 79 2e 45 78 69 73 74 73 28 22 41 73 73 65 ......if.(Directory.Exists("Asse
e480 74 73 2f 54 65 78 74 4d 65 73 68 20 50 72 6f 22 29 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 ts/TextMesh.Pro"))..............
e4a0 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 69 73 73 69 6e 67 47 6c 79 70 68 52 {..................missingGlyphR
e4c0 65 70 6f 72 74 20 3d 20 53 79 73 74 65 6d 2e 54 65 78 74 2e 52 65 67 75 6c 61 72 45 78 70 72 65 eport.=.System.Text.RegularExpre
e4e0 73 73 69 6f 6e 73 2e 52 65 67 65 78 2e 52 65 70 6c 61 63 65 28 6d 69 73 73 69 6e 67 47 6c 79 70 ssions.Regex.Replace(missingGlyp
e500 68 52 65 70 6f 72 74 2c 20 40 22 3c 5b 5e 3e 5d 2a 3e 22 2c 20 73 74 72 69 6e 67 2e 45 6d 70 74 hReport,.@"<[^>]*>",.string.Empt
e520 79 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 46 69 6c 65 2e 57 72 69 74 65 41 y);..................File.WriteA
e540 6c 6c 54 65 78 74 28 22 41 73 73 65 74 73 2f 54 65 78 74 4d 65 73 68 20 50 72 6f 2f 47 6c 79 70 llText("Assets/TextMesh.Pro/Glyp
e560 68 20 52 65 70 6f 72 74 2e 74 78 74 22 2c 20 6d 69 73 73 69 6e 67 47 6c 79 70 68 52 65 70 6f 72 h.Report.txt",.missingGlyphRepor
e580 74 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 73 73 65 74 44 61 74 61 62 61 t);..................AssetDataba
e5a0 73 65 2e 52 65 66 72 65 73 68 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 se.Refresh();..............}....
e5c0 20 20 20 20 20 20 7d 0d 0a 0d 0a 0d 0a 20 20 20 20 20 20 20 20 76 6f 69 64 20 43 72 65 61 74 65 ......}..............void.Create
e5e0 46 6f 6e 74 41 74 6c 61 73 54 65 78 74 75 72 65 28 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 FontAtlasTexture()..........{...
e600 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6d 5f 46 6f 6e 74 41 74 6c 61 73 54 65 78 74 75 72 ...........if.(m_FontAtlasTextur
e620 65 20 21 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 44 65 73 74 e.!=.null)..................Dest
e640 72 6f 79 49 6d 6d 65 64 69 61 74 65 28 6d 5f 46 6f 6e 74 41 74 6c 61 73 54 65 78 74 75 72 65 29 royImmediate(m_FontAtlasTexture)
e660 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 46 6f 6e 74 41 74 6c 61 73 54 65 78 74 ;................m_FontAtlasText
e680 75 72 65 20 3d 20 6e 65 77 20 54 65 78 74 75 72 65 32 44 28 6d 5f 41 74 6c 61 73 57 69 64 74 68 ure.=.new.Texture2D(m_AtlasWidth
e6a0 2c 20 6d 5f 41 74 6c 61 73 48 65 69 67 68 74 2c 20 54 65 78 74 75 72 65 46 6f 72 6d 61 74 2e 41 ,.m_AtlasHeight,.TextureFormat.A
e6c0 6c 70 68 61 38 2c 20 66 61 6c 73 65 2c 20 74 72 75 65 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 lpha8,.false,.true);............
e6e0 20 20 20 20 43 6f 6c 6f 72 33 32 5b 5d 20 63 6f 6c 6f 72 73 20 3d 20 6e 65 77 20 43 6f 6c 6f 72 ....Color32[].colors.=.new.Color
e700 33 32 5b 6d 5f 41 74 6c 61 73 57 69 64 74 68 20 2a 20 6d 5f 41 74 6c 61 73 48 65 69 67 68 74 5d 32[m_AtlasWidth.*.m_AtlasHeight]
e720 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 28 69 6e 74 20 69 20 3d 20 30 3b ;................for.(int.i.=.0;
e740 20 69 20 3c 20 63 6f 6c 6f 72 73 2e 4c 65 6e 67 74 68 3b 20 69 2b 2b 29 0d 0a 20 20 20 20 20 20 .i.<.colors.Length;.i++)........
e760 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 79 74 65 20 63 20 ......{..................byte.c.
e780 3d 20 6d 5f 41 74 6c 61 73 54 65 78 74 75 72 65 42 75 66 66 65 72 5b 69 5d 3b 0d 0a 20 20 20 20 =.m_AtlasTextureBuffer[i];......
e7a0 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 73 5b 69 5d 20 3d 20 6e 65 77 20 43 6f 6c 6f ............colors[i].=.new.Colo
e7c0 72 33 32 28 63 2c 20 63 2c 20 63 2c 20 63 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d r32(c,.c,.c,.c);..............}.
e7e0 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 43 6c 65 61 72 20 61 6c 6c 6f 63 61 74 69 ...............//.Clear.allocati
e800 6f 6e 20 6f 66 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 41 74 6c 61 73 54 65 78 74 75 on.of...............m_AtlasTextu
e820 72 65 42 75 66 66 65 72 20 3d 20 6e 75 6c 6c 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 reBuffer.=.null;................
e840 69 66 20 28 28 6d 5f 47 6c 79 70 68 52 65 6e 64 65 72 4d 6f 64 65 20 26 20 47 6c 79 70 68 52 65 if.((m_GlyphRenderMode.&.GlyphRe
e860 6e 64 65 72 4d 6f 64 65 2e 52 41 53 54 45 52 29 20 3d 3d 20 47 6c 79 70 68 52 65 6e 64 65 72 4d nderMode.RASTER).==.GlyphRenderM
e880 6f 64 65 2e 52 41 53 54 45 52 20 7c 7c 20 28 6d 5f 47 6c 79 70 68 52 65 6e 64 65 72 4d 6f 64 65 ode.RASTER.||.(m_GlyphRenderMode
e8a0 20 26 20 47 6c 79 70 68 52 65 6e 64 65 72 4d 6f 64 65 2e 52 41 53 54 45 52 5f 48 49 4e 54 45 44 .&.GlyphRenderMode.RASTER_HINTED
e8c0 29 20 3d 3d 20 47 6c 79 70 68 52 65 6e 64 65 72 4d 6f 64 65 2e 52 41 53 54 45 52 5f 48 49 4e 54 ).==.GlyphRenderMode.RASTER_HINT
e8e0 45 44 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 46 6f 6e 74 41 74 6c 61 73 ED)..................m_FontAtlas
e900 54 65 78 74 75 72 65 2e 66 69 6c 74 65 72 4d 6f 64 65 20 3d 20 46 69 6c 74 65 72 4d 6f 64 65 2e Texture.filterMode.=.FilterMode.
e920 50 6f 69 6e 74 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 46 6f 6e 74 41 74 6c 61 Point;................m_FontAtla
e940 73 54 65 78 74 75 72 65 2e 53 65 74 50 69 78 65 6c 73 33 32 28 63 6f 6c 6f 72 73 2c 20 30 29 3b sTexture.SetPixels32(colors,.0);
e960 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 46 6f 6e 74 41 74 6c 61 73 54 65 78 74 75 72 65 ..............m_FontAtlasTexture
e980 2e 41 70 70 6c 79 28 66 61 6c 73 65 2c 20 66 61 6c 73 65 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 .Apply(false,.false);...........
e9a0 20 20 20 20 20 2f 2f 20 53 61 76 69 6e 67 20 46 69 6c 65 20 66 6f 72 20 44 65 62 75 67 0d 0a 20 .....//.Saving.File.for.Debug...
e9c0 20 20 20 20 20 20 20 20 20 20 20 2f 2f 76 61 72 20 70 6e 67 44 61 74 61 20 3d 20 6d 5f 46 6f 6e ...........//var.pngData.=.m_Fon
e9e0 74 41 74 6c 61 73 54 65 78 74 75 72 65 2e 45 6e 63 6f 64 65 54 6f 50 4e 47 28 29 3b 0d 0a 20 20 tAtlasTexture.EncodeToPNG();....
ea00 20 20 20 20 20 20 20 20 20 20 2f 2f 46 69 6c 65 2e 57 72 69 74 65 41 6c 6c 42 79 74 65 73 28 22 ..........//File.WriteAllBytes("
ea20 41 73 73 65 74 73 2f 54 65 78 74 75 72 65 73 2f 44 65 62 75 67 20 46 6f 6e 74 20 54 65 78 74 75 Assets/Textures/Debug.Font.Textu
ea40 72 65 2e 70 6e 67 22 2c 20 70 6e 67 44 61 74 61 29 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d re.png",.pngData);..........}...
ea60 0a 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 73 75 6d 6d 61 72 79 3e 0d 0a 20 20 20 20 20 20 ...........///.<summary>........
ea80 20 20 2f 2f 2f 20 4f 70 65 6e 20 53 61 76 65 20 44 69 61 6c 6f 67 20 74 6f 20 70 72 6f 76 69 64 ..///.Open.Save.Dialog.to.provid
eaa0 65 20 74 68 65 20 6f 70 74 69 6f 6e 20 73 61 76 65 20 74 68 65 20 66 6f 6e 74 20 61 73 73 65 74 e.the.option.save.the.font.asset
eac0 20 75 73 69 6e 67 20 74 68 65 20 6e 61 6d 65 20 6f 66 20 74 68 65 20 73 6f 75 72 63 65 20 66 6f .using.the.name.of.the.source.fo
eae0 6e 74 20 66 69 6c 65 2e 20 54 68 69 73 20 61 6c 73 6f 20 61 70 70 65 6e 64 73 20 53 44 46 20 74 nt.file..This.also.appends.SDF.t
eb00 6f 20 74 68 65 20 6e 61 6d 65 20 69 66 20 75 73 69 6e 67 20 61 6e 79 20 6f 66 20 74 68 65 20 53 o.the.name.if.using.any.of.the.S
eb20 44 46 20 46 6f 6e 74 20 41 73 73 65 74 20 63 72 65 61 74 69 6f 6e 20 6d 6f 64 65 73 2e 0d 0a 20 DF.Font.Asset.creation.modes....
eb40 20 20 20 20 20 20 20 2f 2f 2f 20 3c 2f 73 75 6d 6d 61 72 79 3e 0d 0a 20 20 20 20 20 20 20 20 2f .......///.</summary>........../
eb60 2f 2f 20 3c 70 61 72 61 6d 20 6e 61 6d 65 3d 22 73 6f 75 72 63 65 4f 62 6a 65 63 74 22 3e 3c 2f //.<param.name="sourceObject"></
eb80 70 61 72 61 6d 3e 0d 0a 20 20 20 20 20 20 20 20 76 6f 69 64 20 53 61 76 65 4e 65 77 46 6f 6e 74 param>..........void.SaveNewFont
eba0 41 73 73 65 74 28 4f 62 6a 65 63 74 20 73 6f 75 72 63 65 4f 62 6a 65 63 74 29 0d 0a 20 20 20 20 Asset(Object.sourceObject)......
ebc0 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 74 72 69 6e 67 20 66 69 6c 65 50 61 ....{..............string.filePa
ebe0 74 68 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f th;............................/
ec00 2f 20 53 61 76 65 20 6e 65 77 20 46 6f 6e 74 20 41 73 73 65 74 20 61 6e 64 20 6f 70 65 6e 20 73 /.Save.new.Font.Asset.and.open.s
ec20 61 76 65 20 66 69 6c 65 20 72 65 71 75 65 73 74 65 72 20 61 74 20 53 6f 75 72 63 65 20 46 6f 6e ave.file.requester.at.Source.Fon
ec40 74 20 46 69 6c 65 20 6c 6f 63 61 74 69 6f 6e 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 74 t.File.location...............st
ec60 72 69 6e 67 20 73 61 76 65 44 69 72 65 63 74 6f 72 79 20 3d 20 6e 65 77 20 46 69 6c 65 49 6e 66 ring.saveDirectory.=.new.FileInf
ec80 6f 28 41 73 73 65 74 44 61 74 61 62 61 73 65 2e 47 65 74 41 73 73 65 74 50 61 74 68 28 73 6f 75 o(AssetDatabase.GetAssetPath(sou
eca0 72 63 65 4f 62 6a 65 63 74 29 29 2e 44 69 72 65 63 74 6f 72 79 4e 61 6d 65 3b 0d 0a 0d 0a 20 20 rceObject)).DirectoryName;......
ecc0 20 20 20 20 20 20 20 20 20 20 69 66 20 28 28 28 47 6c 79 70 68 52 61 73 74 65 72 4d 6f 64 65 73 ..........if.(((GlyphRasterModes
ece0 29 6d 5f 47 6c 79 70 68 52 65 6e 64 65 72 4d 6f 64 65 20 26 20 47 6c 79 70 68 52 61 73 74 65 72 )m_GlyphRenderMode.&.GlyphRaster
ed00 4d 6f 64 65 73 2e 52 41 53 54 45 52 5f 4d 4f 44 45 5f 42 49 54 4d 41 50 29 20 3d 3d 20 47 6c 79 Modes.RASTER_MODE_BITMAP).==.Gly
ed20 70 68 52 61 73 74 65 72 4d 6f 64 65 73 2e 52 41 53 54 45 52 5f 4d 4f 44 45 5f 42 49 54 4d 41 50 phRasterModes.RASTER_MODE_BITMAP
ed40 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 )..............{................
ed60 20 20 66 69 6c 65 50 61 74 68 20 3d 20 45 64 69 74 6f 72 55 74 69 6c 69 74 79 2e 53 61 76 65 46 ..filePath.=.EditorUtility.SaveF
ed80 69 6c 65 50 61 6e 65 6c 28 22 53 61 76 65 20 54 65 78 74 4d 65 73 68 20 50 72 6f 21 20 46 6f 6e ilePanel("Save.TextMesh.Pro!.Fon
eda0 74 20 41 73 73 65 74 20 46 69 6c 65 22 2c 20 73 61 76 65 44 69 72 65 63 74 6f 72 79 2c 20 73 6f t.Asset.File",.saveDirectory,.so
edc0 75 72 63 65 4f 62 6a 65 63 74 2e 6e 61 6d 65 2c 20 22 61 73 73 65 74 22 29 3b 0d 0a 0d 0a 20 20 urceObject.name,."asset");......
ede0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 66 69 6c 65 50 61 74 68 2e 4c 65 6e 67 74 ..............if.(filePath.Lengt
ee00 68 20 3d 3d 20 30 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 h.==.0)......................ret
ee20 75 72 6e 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 53 61 76 65 5f 42 69 74 urn;....................Save_Bit
ee40 6d 61 70 5f 46 6f 6e 74 41 73 73 65 74 28 66 69 6c 65 50 61 74 68 29 3b 0d 0a 20 20 20 20 20 20 map_FontAsset(filePath);........
ee60 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 65 6c 73 65 0d 0a 20 20 20 20 20 ......}..............else.......
ee80 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 69 6c 65 50 61 .......{..................filePa
eea0 74 68 20 3d 20 45 64 69 74 6f 72 55 74 69 6c 69 74 79 2e 53 61 76 65 46 69 6c 65 50 61 6e 65 6c th.=.EditorUtility.SaveFilePanel
eec0 28 22 53 61 76 65 20 54 65 78 74 4d 65 73 68 20 50 72 6f 21 20 46 6f 6e 74 20 41 73 73 65 74 20 ("Save.TextMesh.Pro!.Font.Asset.
eee0 46 69 6c 65 22 2c 20 73 61 76 65 44 69 72 65 63 74 6f 72 79 2c 20 73 6f 75 72 63 65 4f 62 6a 65 File",.saveDirectory,.sourceObje
ef00 63 74 2e 6e 61 6d 65 20 2b 20 22 20 53 44 46 22 2c 20 22 61 73 73 65 74 22 29 3b 0d 0a 0d 0a 20 ct.name.+.".SDF",."asset");.....
ef20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 66 69 6c 65 50 61 74 68 2e 4c 65 6e 67 ...............if.(filePath.Leng
ef40 74 68 20 3d 3d 20 30 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 th.==.0)......................re
ef60 74 75 72 6e 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 53 61 76 65 5f 53 44 turn;....................Save_SD
ef80 46 5f 46 6f 6e 74 41 73 73 65 74 28 66 69 6c 65 50 61 74 68 29 3b 0d 0a 20 20 20 20 20 20 20 20 F_FontAsset(filePath);..........
efa0 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 0d 0a 20 20 20 20 20 20 20 20 2f 2f ....}..........}..............//
efc0 2f 20 3c 73 75 6d 6d 61 72 79 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 4f 70 65 6e 20 53 61 /.<summary>..........///.Open.Sa
efe0 76 65 20 44 69 61 6c 6f 67 20 74 6f 20 70 72 6f 76 69 64 65 20 74 68 65 20 6f 70 74 69 6f 6e 20 ve.Dialog.to.provide.the.option.
f000 74 6f 20 73 61 76 65 20 74 68 65 20 66 6f 6e 74 20 61 73 73 65 74 20 75 6e 64 65 72 20 74 68 65 to.save.the.font.asset.under.the
f020 20 73 61 6d 65 20 6e 61 6d 65 2e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 2f 73 75 6d 6d 61 .same.name...........///.</summa
f040 72 79 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 70 61 72 61 6d 20 6e 61 6d 65 3d 22 73 6f ry>..........///.<param.name="so
f060 75 72 63 65 4f 62 6a 65 63 74 22 3e 3c 2f 70 61 72 61 6d 3e 0d 0a 20 20 20 20 20 20 20 20 76 6f urceObject"></param>..........vo
f080 69 64 20 53 61 76 65 4e 65 77 46 6f 6e 74 41 73 73 65 74 57 69 74 68 53 61 6d 65 4e 61 6d 65 28 id.SaveNewFontAssetWithSameName(
f0a0 4f 62 6a 65 63 74 20 73 6f 75 72 63 65 4f 62 6a 65 63 74 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d Object.sourceObject)..........{.
f0c0 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 74 72 69 6e 67 20 66 69 6c 65 50 61 74 68 3b 0d 0a 0d .............string.filePath;...
f0e0 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 53 61 76 65 20 6e 65 77 20 46 6f 6e 74 20 41 73 .............//.Save.new.Font.As
f100 73 65 74 20 61 6e 64 20 6f 70 65 6e 20 73 61 76 65 20 66 69 6c 65 20 72 65 71 75 65 73 74 65 72 set.and.open.save.file.requester
f120 20 61 74 20 53 6f 75 72 63 65 20 46 6f 6e 74 20 46 69 6c 65 20 6c 6f 63 61 74 69 6f 6e 2e 0d 0a .at.Source.Font.File.location...
f140 20 20 20 20 20 20 20 20 20 20 20 20 73 74 72 69 6e 67 20 73 61 76 65 44 69 72 65 63 74 6f 72 79 ............string.saveDirectory
f160 20 3d 20 6e 65 77 20 46 69 6c 65 49 6e 66 6f 28 41 73 73 65 74 44 61 74 61 62 61 73 65 2e 47 65 .=.new.FileInfo(AssetDatabase.Ge
f180 74 41 73 73 65 74 50 61 74 68 28 73 6f 75 72 63 65 4f 62 6a 65 63 74 29 29 2e 44 69 72 65 63 74 tAssetPath(sourceObject)).Direct
f1a0 6f 72 79 4e 61 6d 65 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 66 69 6c 65 50 61 74 68 oryName;................filePath
f1c0 20 3d 20 45 64 69 74 6f 72 55 74 69 6c 69 74 79 2e 53 61 76 65 46 69 6c 65 50 61 6e 65 6c 28 22 .=.EditorUtility.SaveFilePanel("
f1e0 53 61 76 65 20 54 65 78 74 4d 65 73 68 20 50 72 6f 21 20 46 6f 6e 74 20 41 73 73 65 74 20 46 69 Save.TextMesh.Pro!.Font.Asset.Fi
f200 6c 65 22 2c 20 73 61 76 65 44 69 72 65 63 74 6f 72 79 2c 20 73 6f 75 72 63 65 4f 62 6a 65 63 74 le",.saveDirectory,.sourceObject
f220 2e 6e 61 6d 65 2c 20 22 61 73 73 65 74 22 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 .name,."asset");................
f240 69 66 20 28 66 69 6c 65 50 61 74 68 2e 4c 65 6e 67 74 68 20 3d 3d 20 30 29 0d 0a 20 20 20 20 20 if.(filePath.Length.==.0).......
f260 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 ...........return;..............
f280 20 20 69 66 20 28 28 28 47 6c 79 70 68 52 61 73 74 65 72 4d 6f 64 65 73 29 6d 5f 47 6c 79 70 68 ..if.(((GlyphRasterModes)m_Glyph
f2a0 52 65 6e 64 65 72 4d 6f 64 65 20 26 20 47 6c 79 70 68 52 61 73 74 65 72 4d 6f 64 65 73 2e 52 41 RenderMode.&.GlyphRasterModes.RA
f2c0 53 54 45 52 5f 4d 4f 44 45 5f 42 49 54 4d 41 50 29 20 3d 3d 20 47 6c 79 70 68 52 61 73 74 65 72 STER_MODE_BITMAP).==.GlyphRaster
f2e0 4d 6f 64 65 73 2e 52 41 53 54 45 52 5f 4d 4f 44 45 5f 42 49 54 4d 41 50 29 0d 0a 20 20 20 20 20 Modes.RASTER_MODE_BITMAP).......
f300 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 53 61 76 65 5f 42 .......{..................Save_B
f320 69 74 6d 61 70 5f 46 6f 6e 74 41 73 73 65 74 28 66 69 6c 65 50 61 74 68 29 3b 0d 0a 20 20 20 20 itmap_FontAsset(filePath);......
f340 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 65 6c 73 65 0d 0a 20 20 20 ........}..............else.....
f360 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 53 61 76 65 .........{..................Save
f380 5f 53 44 46 5f 46 6f 6e 74 41 73 73 65 74 28 66 69 6c 65 50 61 74 68 29 3b 0d 0a 20 20 20 20 20 _SDF_FontAsset(filePath);.......
f3a0 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 0d 0a 20 20 20 20 20 20 20 .......}..........}.............
f3c0 20 76 6f 69 64 20 53 61 76 65 5f 42 69 74 6d 61 70 5f 46 6f 6e 74 41 73 73 65 74 28 73 74 72 69 .void.Save_Bitmap_FontAsset(stri
f3e0 6e 67 20 66 69 6c 65 50 61 74 68 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 ng.filePath)..........{.........
f400 20 20 20 20 20 66 69 6c 65 50 61 74 68 20 3d 20 66 69 6c 65 50 61 74 68 2e 53 75 62 73 74 72 69 .....filePath.=.filePath.Substri
f420 6e 67 28 30 2c 20 66 69 6c 65 50 61 74 68 2e 4c 65 6e 67 74 68 20 2d 20 36 29 3b 20 2f 2f 20 54 ng(0,.filePath.Length.-.6);.//.T
f440 72 69 6d 20 66 69 6c 65 20 65 78 74 65 6e 73 69 6f 6e 20 66 72 6f 6d 20 66 69 6c 65 50 61 74 68 rim.file.extension.from.filePath
f460 2e 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 74 72 69 6e 67 20 64 61 74 61 50 61 74 68 .................string.dataPath
f480 20 3d 20 41 70 70 6c 69 63 61 74 69 6f 6e 2e 64 61 74 61 50 61 74 68 3b 0d 0a 0d 0a 20 20 20 20 .=.Application.dataPath;........
f4a0 20 20 20 20 20 20 20 20 69 66 20 28 66 69 6c 65 50 61 74 68 2e 49 6e 64 65 78 4f 66 28 64 61 74 ........if.(filePath.IndexOf(dat
f4c0 61 50 61 74 68 2c 20 53 79 73 74 65 6d 2e 53 74 72 69 6e 67 43 6f 6d 70 61 72 69 73 6f 6e 2e 49 aPath,.System.StringComparison.I
f4e0 6e 76 61 72 69 61 6e 74 43 75 6c 74 75 72 65 49 67 6e 6f 72 65 43 61 73 65 29 20 3d 3d 20 2d 31 nvariantCultureIgnoreCase).==.-1
f500 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 )..............{................
f520 20 20 44 65 62 75 67 2e 4c 6f 67 45 72 72 6f 72 28 22 59 6f 75 27 72 65 20 73 61 76 69 6e 67 20 ..Debug.LogError("You're.saving.
f540 74 68 65 20 66 6f 6e 74 20 61 73 73 65 74 20 69 6e 20 61 20 64 69 72 65 63 74 6f 72 79 20 6f 75 the.font.asset.in.a.directory.ou
f560 74 73 69 64 65 20 6f 66 20 74 68 69 73 20 70 72 6f 6a 65 63 74 20 66 6f 6c 64 65 72 2e 20 54 68 tside.of.this.project.folder..Th
f580 69 73 20 69 73 20 6e 6f 74 20 73 75 70 70 6f 72 74 65 64 2e 20 50 6c 65 61 73 65 20 73 65 6c 65 is.is.not.supported..Please.sele
f5a0 63 74 20 61 20 64 69 72 65 63 74 6f 72 79 20 75 6e 64 65 72 20 5c 22 22 20 2b 20 64 61 74 61 50 ct.a.directory.under.\"".+.dataP
f5c0 61 74 68 20 2b 20 22 5c 22 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 ath.+."\"");..................re
f5e0 74 75 72 6e 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 turn;..............}............
f600 20 20 20 20 73 74 72 69 6e 67 20 72 65 6c 61 74 69 76 65 41 73 73 65 74 50 61 74 68 20 3d 20 66 ....string.relativeAssetPath.=.f
f620 69 6c 65 50 61 74 68 2e 53 75 62 73 74 72 69 6e 67 28 64 61 74 61 50 61 74 68 2e 4c 65 6e 67 74 ilePath.Substring(dataPath.Lengt
f640 68 20 2d 20 36 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 74 72 69 6e 67 20 74 65 78 5f h.-.6);..............string.tex_
f660 44 69 72 4e 61 6d 65 20 3d 20 50 61 74 68 2e 47 65 74 44 69 72 65 63 74 6f 72 79 4e 61 6d 65 28 DirName.=.Path.GetDirectoryName(
f680 72 65 6c 61 74 69 76 65 41 73 73 65 74 50 61 74 68 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 relativeAssetPath);.............
f6a0 20 73 74 72 69 6e 67 20 74 65 78 5f 46 69 6c 65 4e 61 6d 65 20 3d 20 50 61 74 68 2e 47 65 74 46 .string.tex_FileName.=.Path.GetF
f6c0 69 6c 65 4e 61 6d 65 57 69 74 68 6f 75 74 45 78 74 65 6e 73 69 6f 6e 28 72 65 6c 61 74 69 76 65 ileNameWithoutExtension(relative
f6e0 41 73 73 65 74 50 61 74 68 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 74 72 69 6e 67 20 AssetPath);..............string.
f700 74 65 78 5f 50 61 74 68 5f 4e 6f 45 78 74 20 3d 20 74 65 78 5f 44 69 72 4e 61 6d 65 20 2b 20 22 tex_Path_NoExt.=.tex_DirName.+."
f720 2f 22 20 2b 20 74 65 78 5f 46 69 6c 65 4e 61 6d 65 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 /".+.tex_FileName;..............
f740 20 20 2f 2f 20 43 68 65 63 6b 20 69 66 20 54 65 78 74 4d 65 73 68 50 72 6f 20 66 6f 6e 74 20 61 ..//.Check.if.TextMeshPro.font.a
f760 73 73 65 74 20 61 6c 72 65 61 64 79 20 65 78 69 73 74 73 2e 20 49 66 20 6e 6f 74 2c 20 63 72 65 sset.already.exists..If.not,.cre
f780 61 74 65 20 61 20 6e 65 77 20 6f 6e 65 2e 20 4f 74 68 65 72 77 69 73 65 20 75 70 64 61 74 65 20 ate.a.new.one..Otherwise.update.
f7a0 74 68 65 20 65 78 69 73 74 69 6e 67 20 6f 6e 65 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 54 the.existing.one...............T
f7c0 4d 50 5f 46 6f 6e 74 41 73 73 65 74 20 66 6f 6e 74 41 73 73 65 74 20 3d 20 41 73 73 65 74 44 61 MP_FontAsset.fontAsset.=.AssetDa
f7e0 74 61 62 61 73 65 2e 4c 6f 61 64 41 73 73 65 74 41 74 50 61 74 68 28 74 65 78 5f 50 61 74 68 5f tabase.LoadAssetAtPath(tex_Path_
f800 4e 6f 45 78 74 20 2b 20 22 2e 61 73 73 65 74 22 2c 20 74 79 70 65 6f 66 28 54 4d 50 5f 46 6f 6e NoExt.+.".asset",.typeof(TMP_Fon
f820 74 41 73 73 65 74 29 29 20 61 73 20 54 4d 50 5f 46 6f 6e 74 41 73 73 65 74 3b 0d 0a 20 20 20 20 tAsset)).as.TMP_FontAsset;......
f840 20 20 20 20 20 20 20 20 69 66 20 28 66 6f 6e 74 41 73 73 65 74 20 3d 3d 20 6e 75 6c 6c 29 0d 0a ........if.(fontAsset.==.null)..
f860 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f ............{................../
f880 2f 44 65 62 75 67 2e 4c 6f 67 28 22 43 72 65 61 74 69 6e 67 20 54 65 78 74 4d 65 73 68 50 72 6f /Debug.Log("Creating.TextMeshPro
f8a0 20 66 6f 6e 74 20 61 73 73 65 74 21 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .font.asset!");.................
f8c0 20 66 6f 6e 74 41 73 73 65 74 20 3d 20 53 63 72 69 70 74 61 62 6c 65 4f 62 6a 65 63 74 2e 43 72 .fontAsset.=.ScriptableObject.Cr
f8e0 65 61 74 65 49 6e 73 74 61 6e 63 65 3c 54 4d 50 5f 46 6f 6e 74 41 73 73 65 74 3e 28 29 3b 20 2f eateInstance<TMP_FontAsset>();./
f900 2f 20 43 72 65 61 74 65 20 6e 65 77 20 54 65 78 74 4d 65 73 68 50 72 6f 20 46 6f 6e 74 20 41 73 /.Create.new.TextMeshPro.Font.As
f920 73 65 74 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 73 73 65 74 44 61 74 61 62 set...................AssetDatab
f940 61 73 65 2e 43 72 65 61 74 65 41 73 73 65 74 28 66 6f 6e 74 41 73 73 65 74 2c 20 74 65 78 5f 50 ase.CreateAsset(fontAsset,.tex_P
f960 61 74 68 5f 4e 6f 45 78 74 20 2b 20 22 2e 61 73 73 65 74 22 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 ath_NoExt.+.".asset");..........
f980 20 20 20 20 20 20 20 20 20 20 2f 2f 20 53 65 74 20 76 65 72 73 69 6f 6e 20 6e 75 6d 62 65 72 20 ..........//.Set.version.number.
f9a0 6f 66 20 66 6f 6e 74 20 61 73 73 65 74 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 of.font.asset..................f
f9c0 6f 6e 74 41 73 73 65 74 2e 76 65 72 73 69 6f 6e 20 3d 20 22 31 2e 31 2e 30 22 3b 0d 0a 0d 0a 20 ontAsset.version.=."1.1.0";.....
f9e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 53 65 74 20 46 6f 6e 74 20 41 73 73 65 74 20 ...............//Set.Font.Asset.
fa00 54 79 70 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 6e 74 41 73 73 65 74 2e Type..................fontAsset.
fa20 61 74 6c 61 73 52 65 6e 64 65 72 4d 6f 64 65 20 3d 20 6d 5f 47 6c 79 70 68 52 65 6e 64 65 72 4d atlasRenderMode.=.m_GlyphRenderM
fa40 6f 64 65 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 52 65 66 65 72 ode;....................//.Refer
fa60 65 6e 63 65 20 74 6f 20 74 68 65 20 73 6f 75 72 63 65 20 66 6f 6e 74 20 66 69 6c 65 20 47 55 49 ence.to.the.source.font.file.GUI
fa80 44 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 6e 74 41 73 73 65 74 2e 6d 5f D...................fontAsset.m_
faa0 53 6f 75 72 63 65 46 6f 6e 74 46 69 6c 65 47 55 49 44 20 3d 20 41 73 73 65 74 44 61 74 61 62 61 SourceFontFileGUID.=.AssetDataba
fac0 73 65 2e 41 73 73 65 74 50 61 74 68 54 6f 47 55 49 44 28 41 73 73 65 74 44 61 74 61 62 61 73 65 se.AssetPathToGUID(AssetDatabase
fae0 2e 47 65 74 41 73 73 65 74 50 61 74 68 28 6d 5f 53 6f 75 72 63 65 46 6f 6e 74 46 69 6c 65 29 29 .GetAssetPath(m_SourceFontFile))
fb00 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 41 64 64 20 46 61 63 65 ;....................//.Add.Face
fb20 49 6e 66 6f 20 74 6f 20 46 6f 6e 74 20 41 73 73 65 74 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 Info.to.Font.Asset..............
fb40 20 20 20 20 66 6f 6e 74 41 73 73 65 74 2e 66 61 63 65 49 6e 66 6f 20 3d 20 6d 5f 46 61 63 65 49 ....fontAsset.faceInfo.=.m_FaceI
fb60 6e 66 6f 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 41 64 64 20 47 nfo;....................//.Add.G
fb80 6c 79 70 68 49 6e 66 6f 5b 5d 20 74 6f 20 46 6f 6e 74 20 41 73 73 65 74 0d 0a 20 20 20 20 20 20 lyphInfo[].to.Font.Asset........
fba0 20 20 20 20 20 20 20 20 20 20 66 6f 6e 74 41 73 73 65 74 2e 67 6c 79 70 68 54 61 62 6c 65 20 3d ..........fontAsset.glyphTable.=
fbc0 20 6d 5f 46 6f 6e 74 47 6c 79 70 68 54 61 62 6c 65 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 .m_FontGlyphTable;..............
fbe0 20 20 20 20 20 20 2f 2f 20 41 64 64 20 43 68 61 72 61 63 74 65 72 54 61 62 6c 65 5b 5d 20 74 6f ......//.Add.CharacterTable[].to
fc00 20 66 6f 6e 74 20 61 73 73 65 74 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f .font.asset...................fo
fc20 6e 74 41 73 73 65 74 2e 63 68 61 72 61 63 74 65 72 54 61 62 6c 65 20 3d 20 6d 5f 46 6f 6e 74 43 ntAsset.characterTable.=.m_FontC
fc40 68 61 72 61 63 74 65 72 54 61 62 6c 65 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 haracterTable;..................
fc60 20 20 2f 2f 20 53 6f 72 74 20 67 6c 79 70 68 20 61 6e 64 20 63 68 61 72 61 63 74 65 72 20 74 61 ..//.Sort.glyph.and.character.ta
fc80 62 6c 65 73 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 6e 74 41 73 73 65 74 bles...................fontAsset
fca0 2e 53 6f 72 74 47 6c 79 70 68 41 6e 64 43 68 61 72 61 63 74 65 72 54 61 62 6c 65 73 28 29 3b 0d .SortGlyphAndCharacterTables();.
fcc0 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 47 65 74 20 61 6e 64 20 41 64 ...................//.Get.and.Ad
fce0 64 20 4b 65 72 6e 69 6e 67 20 50 61 69 72 73 20 74 6f 20 46 6f 6e 74 20 41 73 73 65 74 0d 0a 20 d.Kerning.Pairs.to.Font.Asset...
fd00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6d 5f 49 6e 63 6c 75 64 65 46 6f 6e 74 ...............if.(m_IncludeFont
fd20 46 65 61 74 75 72 65 73 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 Features)......................f
fd40 6f 6e 74 41 73 73 65 74 2e 66 6f 6e 74 46 65 61 74 75 72 65 54 61 62 6c 65 20 3d 20 47 65 74 4b ontAsset.fontFeatureTable.=.GetK
fd60 65 72 6e 69 6e 67 54 61 62 6c 65 28 29 3b 0d 0a 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 erningTable();..................
fd80 20 20 20 20 2f 2f 20 41 64 64 20 46 6f 6e 74 20 41 74 6c 61 73 20 61 73 20 53 75 62 2d 41 73 73 ....//.Add.Font.Atlas.as.Sub-Ass
fda0 65 74 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 6e 74 41 73 73 65 74 2e 61 74 et..................fontAsset.at
fdc0 6c 61 73 54 65 78 74 75 72 65 73 20 3d 20 6e 65 77 20 54 65 78 74 75 72 65 32 44 5b 5d 20 7b 20 lasTextures.=.new.Texture2D[].{.
fde0 6d 5f 46 6f 6e 74 41 74 6c 61 73 54 65 78 74 75 72 65 20 7d 3b 0d 0a 20 20 20 20 20 20 20 20 20 m_FontAtlasTexture.};...........
fe00 20 20 20 20 20 20 20 6d 5f 46 6f 6e 74 41 74 6c 61 73 54 65 78 74 75 72 65 2e 6e 61 6d 65 20 3d .......m_FontAtlasTexture.name.=
fe20 20 74 65 78 5f 46 69 6c 65 4e 61 6d 65 20 2b 20 22 20 41 74 6c 61 73 22 3b 0d 0a 20 20 20 20 20 .tex_FileName.+.".Atlas";.......
fe40 20 20 20 20 20 20 20 20 20 20 20 66 6f 6e 74 41 73 73 65 74 2e 61 74 6c 61 73 57 69 64 74 68 20 ...........fontAsset.atlasWidth.
fe60 3d 20 6d 5f 41 74 6c 61 73 57 69 64 74 68 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 =.m_AtlasWidth;.................
fe80 20 66 6f 6e 74 41 73 73 65 74 2e 61 74 6c 61 73 48 65 69 67 68 74 20 3d 20 6d 5f 41 74 6c 61 73 .fontAsset.atlasHeight.=.m_Atlas
fea0 48 65 69 67 68 74 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 6e 74 41 73 73 Height;..................fontAss
fec0 65 74 2e 61 74 6c 61 73 50 61 64 64 69 6e 67 20 3d 20 6d 5f 50 61 64 64 69 6e 67 3b 0d 0a 0d 0a et.atlasPadding.=.m_Padding;....
fee0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 73 73 65 74 44 61 74 61 62 61 73 65 2e 41 64 ................AssetDatabase.Ad
ff00 64 4f 62 6a 65 63 74 54 6f 41 73 73 65 74 28 6d 5f 46 6f 6e 74 41 74 6c 61 73 54 65 78 74 75 72 dObjectToAsset(m_FontAtlasTextur
ff20 65 2c 20 66 6f 6e 74 41 73 73 65 74 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 e,.fontAsset);..................
ff40 20 20 2f 2f 20 43 72 65 61 74 65 20 6e 65 77 20 4d 61 74 65 72 69 61 6c 20 61 6e 64 20 41 64 64 ..//.Create.new.Material.and.Add
ff60 20 69 74 20 61 73 20 53 75 62 2d 41 73 73 65 74 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .it.as.Sub-Asset................
ff80 20 20 53 68 61 64 65 72 20 64 65 66 61 75 6c 74 5f 53 68 61 64 65 72 20 3d 20 53 68 61 64 65 72 ..Shader.default_Shader.=.Shader
ffa0 2e 46 69 6e 64 28 22 54 65 78 74 4d 65 73 68 50 72 6f 2f 42 69 74 6d 61 70 22 29 3b 20 2f 2f 20 .Find("TextMeshPro/Bitmap");.//.
ffc0 6d 5f 73 68 61 64 65 72 53 65 6c 65 63 74 69 6f 6e 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 m_shaderSelection;..............
ffe0 20 20 20 20 4d 61 74 65 72 69 61 6c 20 74 6d 70 5f 6d 61 74 65 72 69 61 6c 20 3d 20 6e 65 77 20 ....Material.tmp_material.=.new.
10000 4d 61 74 65 72 69 61 6c 28 64 65 66 61 75 6c 74 5f 53 68 61 64 65 72 29 3b 0d 0a 20 20 20 20 20 Material(default_Shader);.......
10020 20 20 20 20 20 20 20 20 20 20 20 74 6d 70 5f 6d 61 74 65 72 69 61 6c 2e 6e 61 6d 65 20 3d 20 74 ...........tmp_material.name.=.t
10040 65 78 5f 46 69 6c 65 4e 61 6d 65 20 2b 20 22 20 4d 61 74 65 72 69 61 6c 22 3b 0d 0a 20 20 20 20 ex_FileName.+.".Material";......
10060 20 20 20 20 20 20 20 20 20 20 20 20 74 6d 70 5f 6d 61 74 65 72 69 61 6c 2e 53 65 74 54 65 78 74 ............tmp_material.SetText
10080 75 72 65 28 53 68 61 64 65 72 55 74 69 6c 69 74 69 65 73 2e 49 44 5f 4d 61 69 6e 54 65 78 2c 20 ure(ShaderUtilities.ID_MainTex,.
100a0 6d 5f 46 6f 6e 74 41 74 6c 61 73 54 65 78 74 75 72 65 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 m_FontAtlasTexture);............
100c0 20 20 20 20 20 20 66 6f 6e 74 41 73 73 65 74 2e 6d 61 74 65 72 69 61 6c 20 3d 20 74 6d 70 5f 6d ......fontAsset.material.=.tmp_m
100e0 61 74 65 72 69 61 6c 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 73 73 65 aterial;....................Asse
10100 74 44 61 74 61 62 61 73 65 2e 41 64 64 4f 62 6a 65 63 74 54 6f 41 73 73 65 74 28 74 6d 70 5f 6d tDatabase.AddObjectToAsset(tmp_m
10120 61 74 65 72 69 61 6c 2c 20 66 6f 6e 74 41 73 73 65 74 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 aterial,.fontAsset);............
10140 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 65 6c 73 65 0d 0a 20 20 20 20 20 20 20 ....}..............else.........
10160 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 46 69 6e 64 20 .....{..................//.Find.
10180 61 6c 6c 20 4d 61 74 65 72 69 61 6c 73 20 72 65 66 65 72 65 6e 63 69 6e 67 20 74 68 69 73 20 66 all.Materials.referencing.this.f
101a0 6f 6e 74 20 61 74 6c 61 73 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 4d 61 74 65 ont.atlas...................Mate
101c0 72 69 61 6c 5b 5d 20 6d 61 74 65 72 69 61 6c 5f 72 65 66 65 72 65 6e 63 65 73 20 3d 20 54 4d 50 rial[].material_references.=.TMP
101e0 5f 45 64 69 74 6f 72 55 74 69 6c 69 74 79 2e 46 69 6e 64 4d 61 74 65 72 69 61 6c 52 65 66 65 72 _EditorUtility.FindMaterialRefer
10200 65 6e 63 65 73 28 66 6f 6e 74 41 73 73 65 74 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 ences(fontAsset);...............
10220 20 20 20 20 20 2f 2f 20 53 65 74 20 76 65 72 73 69 6f 6e 20 6e 75 6d 62 65 72 20 6f 66 20 66 6f .....//.Set.version.number.of.fo
10240 6e 74 20 61 73 73 65 74 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 6e 74 41 73 nt.asset..................fontAs
10260 73 65 74 2e 76 65 72 73 69 6f 6e 20 3d 20 22 31 2e 31 2e 30 22 3b 0d 0a 0d 0a 20 20 20 20 20 20 set.version.=."1.1.0";..........
10280 20 20 20 20 20 20 20 20 20 20 2f 2f 20 53 70 65 63 69 61 6c 20 68 61 6e 64 6c 69 6e 67 20 74 6f ..........//.Special.handling.to
102a0 20 72 65 6d 6f 76 65 20 6c 65 67 61 63 79 20 66 6f 6e 74 20 61 73 73 65 74 20 64 61 74 61 0d 0a .remove.legacy.font.asset.data..
102c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 66 6f 6e 74 41 73 73 65 74 2e 6d 5f ................if.(fontAsset.m_
102e0 67 6c 79 70 68 49 6e 66 6f 4c 69 73 74 20 21 3d 20 6e 75 6c 6c 20 26 26 20 66 6f 6e 74 41 73 73 glyphInfoList.!=.null.&&.fontAss
10300 65 74 2e 6d 5f 67 6c 79 70 68 49 6e 66 6f 4c 69 73 74 2e 43 6f 75 6e 74 20 3e 20 30 29 0d 0a 20 et.m_glyphInfoList.Count.>.0)...
10320 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 6e 74 41 73 73 65 74 2e 6d 5f 67 ...................fontAsset.m_g
10340 6c 79 70 68 49 6e 66 6f 4c 69 73 74 20 3d 20 6e 75 6c 6c 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 lyphInfoList.=.null;............
10360 20 20 20 20 20 20 20 20 2f 2f 20 44 65 73 74 72 6f 79 20 41 73 73 65 74 73 20 74 68 61 74 20 77 ........//.Destroy.Assets.that.w
10380 69 6c 6c 20 62 65 20 72 65 70 6c 61 63 65 64 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ill.be.replaced.................
103a0 20 20 69 66 20 28 66 6f 6e 74 41 73 73 65 74 2e 61 74 6c 61 73 54 65 78 74 75 72 65 73 20 21 3d ..if.(fontAsset.atlasTextures.!=
103c0 20 6e 75 6c 6c 20 26 26 20 66 6f 6e 74 41 73 73 65 74 2e 61 74 6c 61 73 54 65 78 74 75 72 65 73 .null.&&.fontAsset.atlasTextures
103e0 2e 4c 65 6e 67 74 68 20 3e 20 30 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .Length.>.0)....................
10400 20 20 44 65 73 74 72 6f 79 49 6d 6d 65 64 69 61 74 65 28 66 6f 6e 74 41 73 73 65 74 2e 61 74 6c ..DestroyImmediate(fontAsset.atl
10420 61 73 54 65 78 74 75 72 65 73 5b 30 5d 2c 20 74 72 75 65 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 asTextures[0],.true);...........
10440 20 20 20 20 20 20 20 20 20 2f 2f 53 65 74 20 46 6f 6e 74 20 41 73 73 65 74 20 54 79 70 65 0d 0a .........//Set.Font.Asset.Type..
10460 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 6e 74 41 73 73 65 74 2e 61 74 6c 61 73 52 ................fontAsset.atlasR
10480 65 6e 64 65 72 4d 6f 64 65 20 3d 20 6d 5f 47 6c 79 70 68 52 65 6e 64 65 72 4d 6f 64 65 3b 0d 0a enderMode.=.m_GlyphRenderMode;..
104a0 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 41 64 64 20 46 61 63 65 49 6e 66 ..................//.Add.FaceInf
104c0 6f 20 74 6f 20 46 6f 6e 74 20 41 73 73 65 74 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 o.to.Font.Asset.................
104e0 20 66 6f 6e 74 41 73 73 65 74 2e 66 61 63 65 49 6e 66 6f 20 3d 20 6d 5f 46 61 63 65 49 6e 66 6f .fontAsset.faceInfo.=.m_FaceInfo
10500 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 41 64 64 20 47 6c 79 70 ;....................//.Add.Glyp
10520 68 49 6e 66 6f 5b 5d 20 74 6f 20 46 6f 6e 74 20 41 73 73 65 74 0d 0a 20 20 20 20 20 20 20 20 20 hInfo[].to.Font.Asset...........
10540 20 20 20 20 20 20 20 66 6f 6e 74 41 73 73 65 74 2e 67 6c 79 70 68 54 61 62 6c 65 20 3d 20 6d 5f .......fontAsset.glyphTable.=.m_
10560 46 6f 6e 74 47 6c 79 70 68 54 61 62 6c 65 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 FontGlyphTable;.................
10580 20 20 20 2f 2f 20 41 64 64 20 43 68 61 72 61 63 74 65 72 54 61 62 6c 65 5b 5d 20 74 6f 20 66 6f ...//.Add.CharacterTable[].to.fo
105a0 6e 74 20 61 73 73 65 74 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 6e 74 41 nt.asset...................fontA
105c0 73 73 65 74 2e 63 68 61 72 61 63 74 65 72 54 61 62 6c 65 20 3d 20 6d 5f 46 6f 6e 74 43 68 61 72 sset.characterTable.=.m_FontChar
105e0 61 63 74 65 72 54 61 62 6c 65 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f acterTable;..................../
10600 2f 20 53 6f 72 74 20 67 6c 79 70 68 20 61 6e 64 20 63 68 61 72 61 63 74 65 72 20 74 61 62 6c 65 /.Sort.glyph.and.character.table
10620 73 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 6e 74 41 73 73 65 74 2e 53 6f s...................fontAsset.So
10640 72 74 47 6c 79 70 68 41 6e 64 43 68 61 72 61 63 74 65 72 54 61 62 6c 65 73 28 29 3b 0d 0a 0d 0a rtGlyphAndCharacterTables();....
10660 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 47 65 74 20 61 6e 64 20 41 64 64 20 4b ................//.Get.and.Add.K
10680 65 72 6e 69 6e 67 20 50 61 69 72 73 20 74 6f 20 46 6f 6e 74 20 41 73 73 65 74 0d 0a 20 20 20 20 erning.Pairs.to.Font.Asset......
106a0 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6d 5f 49 6e 63 6c 75 64 65 46 6f 6e 74 46 65 61 ............if.(m_IncludeFontFea
106c0 74 75 72 65 73 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 6e 74 tures)......................font
106e0 41 73 73 65 74 2e 66 6f 6e 74 46 65 61 74 75 72 65 54 61 62 6c 65 20 3d 20 47 65 74 4b 65 72 6e Asset.fontFeatureTable.=.GetKern
10700 69 6e 67 54 61 62 6c 65 28 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f ingTable();..................../
10720 2f 20 41 64 64 20 46 6f 6e 74 20 41 74 6c 61 73 20 61 73 20 53 75 62 2d 41 73 73 65 74 0d 0a 20 /.Add.Font.Atlas.as.Sub-Asset...
10740 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 6e 74 41 73 73 65 74 2e 61 74 6c 61 73 54 65 ...............fontAsset.atlasTe
10760 78 74 75 72 65 73 20 3d 20 6e 65 77 20 54 65 78 74 75 72 65 32 44 5b 5d 20 7b 20 6d 5f 46 6f 6e xtures.=.new.Texture2D[].{.m_Fon
10780 74 41 74 6c 61 73 54 65 78 74 75 72 65 20 7d 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 tAtlasTexture.};................
107a0 20 20 6d 5f 46 6f 6e 74 41 74 6c 61 73 54 65 78 74 75 72 65 2e 6e 61 6d 65 20 3d 20 74 65 78 5f ..m_FontAtlasTexture.name.=.tex_
107c0 46 69 6c 65 4e 61 6d 65 20 2b 20 22 20 41 74 6c 61 73 22 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 FileName.+.".Atlas";............
107e0 20 20 20 20 20 20 66 6f 6e 74 41 73 73 65 74 2e 61 74 6c 61 73 57 69 64 74 68 20 3d 20 6d 5f 41 ......fontAsset.atlasWidth.=.m_A
10800 74 6c 61 73 57 69 64 74 68 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 6e 74 tlasWidth;..................font
10820 41 73 73 65 74 2e 61 74 6c 61 73 48 65 69 67 68 74 20 3d 20 6d 5f 41 74 6c 61 73 48 65 69 67 68 Asset.atlasHeight.=.m_AtlasHeigh
10840 74 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 6e 74 41 73 73 65 74 2e 61 74 t;..................fontAsset.at
10860 6c 61 73 50 61 64 64 69 6e 67 20 3d 20 6d 5f 50 61 64 64 69 6e 67 3b 0d 0a 0d 0a 20 20 20 20 20 lasPadding.=.m_Padding;.........
10880 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 53 70 65 63 69 61 6c 20 68 61 6e 64 6c 69 6e 67 20 64 ...........//.Special.handling.d
108a0 75 65 20 74 6f 20 61 20 62 75 67 20 69 6e 20 65 61 72 6c 69 65 72 20 76 65 72 73 69 6f 6e 73 20 ue.to.a.bug.in.earlier.versions.
108c0 6f 66 20 55 6e 69 74 79 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 46 6f 6e of.Unity...................m_Fon
108e0 74 41 74 6c 61 73 54 65 78 74 75 72 65 2e 68 69 64 65 46 6c 61 67 73 20 3d 20 48 69 64 65 46 6c tAtlasTexture.hideFlags.=.HideFl
10900 61 67 73 2e 4e 6f 6e 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 6e 74 41 ags.None;..................fontA
10920 73 73 65 74 2e 6d 61 74 65 72 69 61 6c 2e 68 69 64 65 46 6c 61 67 73 20 3d 20 48 69 64 65 46 6c sset.material.hideFlags.=.HideFl
10940 61 67 73 2e 4e 6f 6e 65 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 73 73 ags.None;....................Ass
10960 65 74 44 61 74 61 62 61 73 65 2e 41 64 64 4f 62 6a 65 63 74 54 6f 41 73 73 65 74 28 6d 5f 46 6f etDatabase.AddObjectToAsset(m_Fo
10980 6e 74 41 74 6c 61 73 54 65 78 74 75 72 65 2c 20 66 6f 6e 74 41 73 73 65 74 29 3b 0d 0a 0d 0a 20 ntAtlasTexture,.fontAsset);.....
109a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 41 73 73 69 67 6e 20 6e 65 77 20 66 6f 6e ...............//.Assign.new.fon
109c0 74 20 61 74 6c 61 73 20 74 65 78 74 75 72 65 20 74 6f 20 74 68 65 20 65 78 69 73 74 69 6e 67 20 t.atlas.texture.to.the.existing.
109e0 6d 61 74 65 72 69 61 6c 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 6e 74 41 material...................fontA
10a00 73 73 65 74 2e 6d 61 74 65 72 69 61 6c 2e 53 65 74 54 65 78 74 75 72 65 28 53 68 61 64 65 72 55 sset.material.SetTexture(ShaderU
10a20 74 69 6c 69 74 69 65 73 2e 49 44 5f 4d 61 69 6e 54 65 78 2c 20 66 6f 6e 74 41 73 73 65 74 2e 61 tilities.ID_MainTex,.fontAsset.a
10a40 74 6c 61 73 54 65 78 74 75 72 65 73 5b 30 5d 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 tlasTextures[0]);...............
10a60 20 20 20 20 20 2f 2f 20 55 70 64 61 74 65 20 74 68 65 20 54 65 78 74 75 72 65 20 72 65 66 65 72 .....//.Update.the.Texture.refer
10a80 65 6e 63 65 20 6f 6e 20 74 68 65 20 4d 61 74 65 72 69 61 6c 0d 0a 20 20 20 20 20 20 20 20 20 20 ence.on.the.Material............
10aa0 20 20 20 20 20 20 66 6f 72 20 28 69 6e 74 20 69 20 3d 20 30 3b 20 69 20 3c 20 6d 61 74 65 72 69 ......for.(int.i.=.0;.i.<.materi
10ac0 61 6c 5f 72 65 66 65 72 65 6e 63 65 73 2e 4c 65 6e 67 74 68 3b 20 69 2b 2b 29 0d 0a 20 20 20 20 al_references.Length;.i++)......
10ae0 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ............{...................
10b00 20 20 20 6d 61 74 65 72 69 61 6c 5f 72 65 66 65 72 65 6e 63 65 73 5b 69 5d 2e 53 65 74 54 65 78 ...material_references[i].SetTex
10b20 74 75 72 65 28 53 68 61 64 65 72 55 74 69 6c 69 74 69 65 73 2e 49 44 5f 4d 61 69 6e 54 65 78 2c ture(ShaderUtilities.ID_MainTex,
10b40 20 6d 5f 46 6f 6e 74 41 74 6c 61 73 54 65 78 74 75 72 65 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 .m_FontAtlasTexture);...........
10b60 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 .......}..............}.........
10b80 20 20 20 20 20 20 20 2f 2f 20 41 64 64 20 6c 69 73 74 20 6f 66 20 47 6c 79 70 68 52 65 63 74 73 .......//.Add.list.of.GlyphRects
10ba0 20 74 6f 20 66 6f 6e 74 20 61 73 73 65 74 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 6e .to.font.asset...............fon
10bc0 74 41 73 73 65 74 2e 66 72 65 65 47 6c 79 70 68 52 65 63 74 73 20 3d 20 6d 5f 46 72 65 65 47 6c tAsset.freeGlyphRects.=.m_FreeGl
10be0 79 70 68 52 65 63 74 73 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 6e 74 41 73 73 65 74 yphRects;..............fontAsset
10c00 2e 75 73 65 64 47 6c 79 70 68 52 65 63 74 73 20 3d 20 6d 5f 55 73 65 64 47 6c 79 70 68 52 65 63 .usedGlyphRects.=.m_UsedGlyphRec
10c20 74 73 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 53 61 76 65 20 46 6f 6e 74 20 ts;................//.Save.Font.
10c40 41 73 73 65 74 20 63 72 65 61 74 69 6f 6e 20 73 65 74 74 69 6e 67 73 0d 0a 20 20 20 20 20 20 20 Asset.creation.settings.........
10c60 20 20 20 20 20 6d 5f 53 65 6c 65 63 74 65 64 46 6f 6e 74 41 73 73 65 74 20 3d 20 66 6f 6e 74 41 .....m_SelectedFontAsset.=.fontA
10c80 73 73 65 74 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 4c 65 67 61 63 79 46 6f 6e 74 41 sset;..............m_LegacyFontA
10ca0 73 73 65 74 20 3d 20 6e 75 6c 6c 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 6e 74 41 73 sset.=.null;..............fontAs
10cc0 73 65 74 2e 63 72 65 61 74 69 6f 6e 53 65 74 74 69 6e 67 73 20 3d 20 53 61 76 65 46 6f 6e 74 43 set.creationSettings.=.SaveFontC
10ce0 72 65 61 74 69 6f 6e 53 65 74 74 69 6e 67 73 28 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 reationSettings();..............
10d00 20 20 41 73 73 65 74 44 61 74 61 62 61 73 65 2e 53 61 76 65 41 73 73 65 74 73 28 29 3b 0d 0a 0d ..AssetDatabase.SaveAssets();...
10d20 0a 20 20 20 20 20 20 20 20 20 20 20 20 41 73 73 65 74 44 61 74 61 62 61 73 65 2e 49 6d 70 6f 72 .............AssetDatabase.Impor
10d40 74 41 73 73 65 74 28 41 73 73 65 74 44 61 74 61 62 61 73 65 2e 47 65 74 41 73 73 65 74 50 61 74 tAsset(AssetDatabase.GetAssetPat
10d60 68 28 66 6f 6e 74 41 73 73 65 74 29 29 3b 20 20 2f 2f 20 52 65 2d 69 6d 70 6f 72 74 20 66 6f 6e h(fontAsset));..//.Re-import.fon
10d80 74 20 61 73 73 65 74 20 74 6f 20 67 65 74 20 74 68 65 20 6e 65 77 20 75 70 64 61 74 65 64 20 76 t.asset.to.get.the.new.updated.v
10da0 65 72 73 69 6f 6e 2e 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 45 64 69 74 6f 72 55 ersion.................//EditorU
10dc0 74 69 6c 69 74 79 2e 53 65 74 44 69 72 74 79 28 66 6f 6e 74 5f 61 73 73 65 74 29 3b 0d 0a 20 20 tility.SetDirty(font_asset);....
10de0 20 20 20 20 20 20 20 20 20 20 66 6f 6e 74 41 73 73 65 74 2e 52 65 61 64 46 6f 6e 74 41 73 73 65 ..........fontAsset.ReadFontAsse
10e00 74 44 65 66 69 6e 69 74 69 6f 6e 28 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 41 73 tDefinition();................As
10e20 73 65 74 44 61 74 61 62 61 73 65 2e 52 65 66 72 65 73 68 28 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 setDatabase.Refresh();..........
10e40 20 20 20 20 20 20 6d 5f 46 6f 6e 74 41 74 6c 61 73 54 65 78 74 75 72 65 20 3d 20 6e 75 6c 6c 3b ......m_FontAtlasTexture.=.null;
10e60 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 4e 45 45 44 20 54 4f 20 47 45 4e 45 52 ................//.NEED.TO.GENER
10e80 41 54 45 20 41 4e 20 45 56 45 4e 54 20 54 4f 20 46 4f 52 43 45 20 41 20 52 45 44 52 41 57 20 4f ATE.AN.EVENT.TO.FORCE.A.REDRAW.O
10ea0 46 20 41 4e 59 20 54 45 58 54 4d 45 53 48 50 52 4f 20 49 4e 53 54 41 4e 43 45 53 20 54 48 41 54 F.ANY.TEXTMESHPRO.INSTANCES.THAT
10ec0 20 4d 49 47 48 54 20 42 45 20 55 53 49 4e 47 20 54 48 49 53 20 46 4f 4e 54 20 41 53 53 45 54 0d .MIGHT.BE.USING.THIS.FONT.ASSET.
10ee0 0a 20 20 20 20 20 20 20 20 20 20 20 20 54 4d 50 72 6f 5f 45 76 65 6e 74 4d 61 6e 61 67 65 72 2e .............TMPro_EventManager.
10f00 4f 4e 5f 46 4f 4e 54 5f 50 52 4f 50 45 52 54 59 5f 43 48 41 4e 47 45 44 28 74 72 75 65 2c 20 66 ON_FONT_PROPERTY_CHANGED(true,.f
10f20 6f 6e 74 41 73 73 65 74 29 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 0d 0a 20 20 20 20 20 ontAsset);..........}...........
10f40 20 20 20 76 6f 69 64 20 53 61 76 65 5f 53 44 46 5f 46 6f 6e 74 41 73 73 65 74 28 73 74 72 69 6e ...void.Save_SDF_FontAsset(strin
10f60 67 20 66 69 6c 65 50 61 74 68 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 g.filePath)..........{..........
10f80 20 20 20 20 66 69 6c 65 50 61 74 68 20 3d 20 66 69 6c 65 50 61 74 68 2e 53 75 62 73 74 72 69 6e ....filePath.=.filePath.Substrin
10fa0 67 28 30 2c 20 66 69 6c 65 50 61 74 68 2e 4c 65 6e 67 74 68 20 2d 20 36 29 3b 20 2f 2f 20 54 72 g(0,.filePath.Length.-.6);.//.Tr
10fc0 69 6d 20 66 69 6c 65 20 65 78 74 65 6e 73 69 6f 6e 20 66 72 6f 6d 20 66 69 6c 65 50 61 74 68 2e im.file.extension.from.filePath.
10fe0 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 74 72 69 6e 67 20 64 61 74 61 50 61 74 68 20 ................string.dataPath.
11000 3d 20 41 70 70 6c 69 63 61 74 69 6f 6e 2e 64 61 74 61 50 61 74 68 3b 0d 0a 0d 0a 20 20 20 20 20 =.Application.dataPath;.........
11020 20 20 20 20 20 20 20 69 66 20 28 66 69 6c 65 50 61 74 68 2e 49 6e 64 65 78 4f 66 28 64 61 74 61 .......if.(filePath.IndexOf(data
11040 50 61 74 68 2c 20 53 79 73 74 65 6d 2e 53 74 72 69 6e 67 43 6f 6d 70 61 72 69 73 6f 6e 2e 49 6e Path,.System.StringComparison.In
11060 76 61 72 69 61 6e 74 43 75 6c 74 75 72 65 49 67 6e 6f 72 65 43 61 73 65 29 20 3d 3d 20 2d 31 29 variantCultureIgnoreCase).==.-1)
11080 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..............{.................
110a0 20 44 65 62 75 67 2e 4c 6f 67 45 72 72 6f 72 28 22 59 6f 75 27 72 65 20 73 61 76 69 6e 67 20 74 .Debug.LogError("You're.saving.t
110c0 68 65 20 66 6f 6e 74 20 61 73 73 65 74 20 69 6e 20 61 20 64 69 72 65 63 74 6f 72 79 20 6f 75 74 he.font.asset.in.a.directory.out
110e0 73 69 64 65 20 6f 66 20 74 68 69 73 20 70 72 6f 6a 65 63 74 20 66 6f 6c 64 65 72 2e 20 54 68 69 side.of.this.project.folder..Thi
11100 73 20 69 73 20 6e 6f 74 20 73 75 70 70 6f 72 74 65 64 2e 20 50 6c 65 61 73 65 20 73 65 6c 65 63 s.is.not.supported..Please.selec
11120 74 20 61 20 64 69 72 65 63 74 6f 72 79 20 75 6e 64 65 72 20 5c 22 22 20 2b 20 64 61 74 61 50 61 t.a.directory.under.\"".+.dataPa
11140 74 68 20 2b 20 22 5c 22 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 th.+."\"");..................ret
11160 75 72 6e 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 urn;..............}.............
11180 20 20 20 73 74 72 69 6e 67 20 72 65 6c 61 74 69 76 65 41 73 73 65 74 50 61 74 68 20 3d 20 66 69 ...string.relativeAssetPath.=.fi
111a0 6c 65 50 61 74 68 2e 53 75 62 73 74 72 69 6e 67 28 64 61 74 61 50 61 74 68 2e 4c 65 6e 67 74 68 lePath.Substring(dataPath.Length
111c0 20 2d 20 36 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 74 72 69 6e 67 20 74 65 78 5f 44 .-.6);..............string.tex_D
111e0 69 72 4e 61 6d 65 20 3d 20 50 61 74 68 2e 47 65 74 44 69 72 65 63 74 6f 72 79 4e 61 6d 65 28 72 irName.=.Path.GetDirectoryName(r
11200 65 6c 61 74 69 76 65 41 73 73 65 74 50 61 74 68 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 elativeAssetPath);..............
11220 73 74 72 69 6e 67 20 74 65 78 5f 46 69 6c 65 4e 61 6d 65 20 3d 20 50 61 74 68 2e 47 65 74 46 69 string.tex_FileName.=.Path.GetFi
11240 6c 65 4e 61 6d 65 57 69 74 68 6f 75 74 45 78 74 65 6e 73 69 6f 6e 28 72 65 6c 61 74 69 76 65 41 leNameWithoutExtension(relativeA
11260 73 73 65 74 50 61 74 68 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 74 72 69 6e 67 20 74 ssetPath);..............string.t
11280 65 78 5f 50 61 74 68 5f 4e 6f 45 78 74 20 3d 20 74 65 78 5f 44 69 72 4e 61 6d 65 20 2b 20 22 2f ex_Path_NoExt.=.tex_DirName.+."/
112a0 22 20 2b 20 74 65 78 5f 46 69 6c 65 4e 61 6d 65 3b 0d 0a 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 ".+.tex_FileName;...............
112c0 20 20 20 2f 2f 20 43 68 65 63 6b 20 69 66 20 54 65 78 74 4d 65 73 68 50 72 6f 20 66 6f 6e 74 20 ...//.Check.if.TextMeshPro.font.
112e0 61 73 73 65 74 20 61 6c 72 65 61 64 79 20 65 78 69 73 74 73 2e 20 49 66 20 6e 6f 74 2c 20 63 72 asset.already.exists..If.not,.cr
11300 65 61 74 65 20 61 20 6e 65 77 20 6f 6e 65 2e 20 4f 74 68 65 72 77 69 73 65 20 75 70 64 61 74 65 eate.a.new.one..Otherwise.update
11320 20 74 68 65 20 65 78 69 73 74 69 6e 67 20 6f 6e 65 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 .the.existing.one...............
11340 54 4d 50 5f 46 6f 6e 74 41 73 73 65 74 20 66 6f 6e 74 41 73 73 65 74 20 3d 20 41 73 73 65 74 44 TMP_FontAsset.fontAsset.=.AssetD
11360 61 74 61 62 61 73 65 2e 4c 6f 61 64 41 73 73 65 74 41 74 50 61 74 68 3c 54 4d 50 5f 46 6f 6e 74 atabase.LoadAssetAtPath<TMP_Font
11380 41 73 73 65 74 3e 28 74 65 78 5f 50 61 74 68 5f 4e 6f 45 78 74 20 2b 20 22 2e 61 73 73 65 74 22 Asset>(tex_Path_NoExt.+.".asset"
113a0 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 66 6f 6e 74 41 73 73 65 74 20 3d 3d );..............if.(fontAsset.==
113c0 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 .null)..............{...........
113e0 20 20 20 20 20 20 20 2f 2f 44 65 62 75 67 2e 4c 6f 67 28 22 43 72 65 61 74 69 6e 67 20 54 65 78 .......//Debug.Log("Creating.Tex
11400 74 4d 65 73 68 50 72 6f 20 66 6f 6e 74 20 61 73 73 65 74 21 22 29 3b 0d 0a 20 20 20 20 20 20 20 tMeshPro.font.asset!");.........
11420 20 20 20 20 20 20 20 20 20 66 6f 6e 74 41 73 73 65 74 20 3d 20 53 63 72 69 70 74 61 62 6c 65 4f .........fontAsset.=.ScriptableO
11440 62 6a 65 63 74 2e 43 72 65 61 74 65 49 6e 73 74 61 6e 63 65 3c 54 4d 50 5f 46 6f 6e 74 41 73 73 bject.CreateInstance<TMP_FontAss
11460 65 74 3e 28 29 3b 20 2f 2f 20 43 72 65 61 74 65 20 6e 65 77 20 54 65 78 74 4d 65 73 68 50 72 6f et>();.//.Create.new.TextMeshPro
11480 20 46 6f 6e 74 20 41 73 73 65 74 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 73 .Font.Asset...................As
114a0 73 65 74 44 61 74 61 62 61 73 65 2e 43 72 65 61 74 65 41 73 73 65 74 28 66 6f 6e 74 41 73 73 65 setDatabase.CreateAsset(fontAsse
114c0 74 2c 20 74 65 78 5f 50 61 74 68 5f 4e 6f 45 78 74 20 2b 20 22 2e 61 73 73 65 74 22 29 3b 0d 0a t,.tex_Path_NoExt.+.".asset");..
114e0 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 53 65 74 20 76 65 72 73 69 6f 6e ..................//.Set.version
11500 20 6e 75 6d 62 65 72 20 6f 66 20 66 6f 6e 74 20 61 73 73 65 74 0d 0a 20 20 20 20 20 20 20 20 20 .number.of.font.asset...........
11520 20 20 20 20 20 20 20 66 6f 6e 74 41 73 73 65 74 2e 76 65 72 73 69 6f 6e 20 3d 20 22 31 2e 31 2e .......fontAsset.version.=."1.1.
11540 30 22 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 52 65 66 65 72 65 0";....................//.Refere
11560 6e 63 65 20 74 6f 20 73 6f 75 72 63 65 20 66 6f 6e 74 20 66 69 6c 65 20 47 55 49 44 2e 0d 0a 20 nce.to.source.font.file.GUID....
11580 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 6e 74 41 73 73 65 74 2e 6d 5f 53 6f 75 72 63 ...............fontAsset.m_Sourc
115a0 65 46 6f 6e 74 46 69 6c 65 47 55 49 44 20 3d 20 41 73 73 65 74 44 61 74 61 62 61 73 65 2e 41 73 eFontFileGUID.=.AssetDatabase.As
115c0 73 65 74 50 61 74 68 54 6f 47 55 49 44 28 41 73 73 65 74 44 61 74 61 62 61 73 65 2e 47 65 74 41 setPathToGUID(AssetDatabase.GetA
115e0 73 73 65 74 50 61 74 68 28 6d 5f 53 6f 75 72 63 65 46 6f 6e 74 46 69 6c 65 29 29 3b 0d 0a 0d 0a ssetPath(m_SourceFontFile));....
11600 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 53 65 74 20 46 6f 6e 74 20 41 73 73 65 74 ................//Set.Font.Asset
11620 20 54 79 70 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 6e 74 41 73 73 65 74 .Type..................fontAsset
11640 2e 61 74 6c 61 73 52 65 6e 64 65 72 4d 6f 64 65 20 3d 20 6d 5f 47 6c 79 70 68 52 65 6e 64 65 72 .atlasRenderMode.=.m_GlyphRender
11660 4d 6f 64 65 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 41 64 64 20 Mode;....................//.Add.
11680 46 61 63 65 49 6e 66 6f 20 74 6f 20 46 6f 6e 74 20 41 73 73 65 74 0d 0a 20 20 20 20 20 20 20 20 FaceInfo.to.Font.Asset..........
116a0 20 20 20 20 20 20 20 20 66 6f 6e 74 41 73 73 65 74 2e 66 61 63 65 49 6e 66 6f 20 3d 20 6d 5f 46 ........fontAsset.faceInfo.=.m_F
116c0 61 63 65 49 6e 66 6f 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 41 aceInfo;....................//.A
116e0 64 64 20 47 6c 79 70 68 49 6e 66 6f 5b 5d 20 74 6f 20 46 6f 6e 74 20 41 73 73 65 74 0d 0a 20 20 dd.GlyphInfo[].to.Font.Asset....
11700 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 6e 74 41 73 73 65 74 2e 67 6c 79 70 68 54 61 62 ..............fontAsset.glyphTab
11720 6c 65 20 3d 20 6d 5f 46 6f 6e 74 47 6c 79 70 68 54 61 62 6c 65 3b 0d 0a 0d 0a 20 20 20 20 20 20 le.=.m_FontGlyphTable;..........
11740 20 20 20 20 20 20 20 20 20 20 2f 2f 20 41 64 64 20 43 68 61 72 61 63 74 65 72 54 61 62 6c 65 5b ..........//.Add.CharacterTable[
11760 5d 20 74 6f 20 66 6f 6e 74 20 61 73 73 65 74 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ].to.font.asset.................
11780 20 20 66 6f 6e 74 41 73 73 65 74 2e 63 68 61 72 61 63 74 65 72 54 61 62 6c 65 20 3d 20 6d 5f 46 ..fontAsset.characterTable.=.m_F
117a0 6f 6e 74 43 68 61 72 61 63 74 65 72 54 61 62 6c 65 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 ontCharacterTable;..............
117c0 20 20 20 20 20 20 2f 2f 20 53 6f 72 74 20 67 6c 79 70 68 20 61 6e 64 20 63 68 61 72 61 63 74 65 ......//.Sort.glyph.and.characte
117e0 72 20 74 61 62 6c 65 73 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 6e 74 41 r.tables...................fontA
11800 73 73 65 74 2e 53 6f 72 74 47 6c 79 70 68 41 6e 64 43 68 61 72 61 63 74 65 72 54 61 62 6c 65 73 sset.SortGlyphAndCharacterTables
11820 28 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 47 65 74 20 61 6e ();....................//.Get.an
11840 64 20 41 64 64 20 4b 65 72 6e 69 6e 67 20 50 61 69 72 73 20 74 6f 20 46 6f 6e 74 20 41 73 73 65 d.Add.Kerning.Pairs.to.Font.Asse
11860 74 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6d 5f 49 6e 63 6c 75 64 65 t..................if.(m_Include
11880 46 6f 6e 74 46 65 61 74 75 72 65 73 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 FontFeatures)...................
118a0 20 20 20 66 6f 6e 74 41 73 73 65 74 2e 66 6f 6e 74 46 65 61 74 75 72 65 54 61 62 6c 65 20 3d 20 ...fontAsset.fontFeatureTable.=.
118c0 47 65 74 4b 65 72 6e 69 6e 67 54 61 62 6c 65 28 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 GetKerningTable();..............
118e0 20 20 20 20 20 20 2f 2f 20 41 64 64 20 46 6f 6e 74 20 41 74 6c 61 73 20 61 73 20 53 75 62 2d 41 ......//.Add.Font.Atlas.as.Sub-A
11900 73 73 65 74 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 6e 74 41 73 73 65 74 2e sset..................fontAsset.
11920 61 74 6c 61 73 54 65 78 74 75 72 65 73 20 3d 20 6e 65 77 20 54 65 78 74 75 72 65 32 44 5b 5d 20 atlasTextures.=.new.Texture2D[].
11940 7b 20 6d 5f 46 6f 6e 74 41 74 6c 61 73 54 65 78 74 75 72 65 20 7d 3b 0d 0a 20 20 20 20 20 20 20 {.m_FontAtlasTexture.};.........
11960 20 20 20 20 20 20 20 20 20 6d 5f 46 6f 6e 74 41 74 6c 61 73 54 65 78 74 75 72 65 2e 6e 61 6d 65 .........m_FontAtlasTexture.name
11980 20 3d 20 74 65 78 5f 46 69 6c 65 4e 61 6d 65 20 2b 20 22 20 41 74 6c 61 73 22 3b 0d 0a 20 20 20 .=.tex_FileName.+.".Atlas";.....
119a0 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 6e 74 41 73 73 65 74 2e 61 74 6c 61 73 57 69 64 74 .............fontAsset.atlasWidt
119c0 68 20 3d 20 6d 5f 41 74 6c 61 73 57 69 64 74 68 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 h.=.m_AtlasWidth;...............
119e0 20 20 20 66 6f 6e 74 41 73 73 65 74 2e 61 74 6c 61 73 48 65 69 67 68 74 20 3d 20 6d 5f 41 74 6c ...fontAsset.atlasHeight.=.m_Atl
11a00 61 73 48 65 69 67 68 74 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 6e 74 41 asHeight;..................fontA
11a20 73 73 65 74 2e 61 74 6c 61 73 50 61 64 64 69 6e 67 20 3d 20 6d 5f 50 61 64 64 69 6e 67 3b 0d 0a sset.atlasPadding.=.m_Padding;..
11a40 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 73 73 65 74 44 61 74 61 62 61 73 65 2e ..................AssetDatabase.
11a60 41 64 64 4f 62 6a 65 63 74 54 6f 41 73 73 65 74 28 6d 5f 46 6f 6e 74 41 74 6c 61 73 54 65 78 74 AddObjectToAsset(m_FontAtlasText
11a80 75 72 65 2c 20 66 6f 6e 74 41 73 73 65 74 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 ure,.fontAsset);................
11aa0 20 20 20 20 2f 2f 20 43 72 65 61 74 65 20 6e 65 77 20 4d 61 74 65 72 69 61 6c 20 61 6e 64 20 41 ....//.Create.new.Material.and.A
11ac0 64 64 20 69 74 20 61 73 20 53 75 62 2d 41 73 73 65 74 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 dd.it.as.Sub-Asset..............
11ae0 20 20 20 20 53 68 61 64 65 72 20 64 65 66 61 75 6c 74 5f 53 68 61 64 65 72 20 3d 20 53 68 61 64 ....Shader.default_Shader.=.Shad
11b00 65 72 2e 46 69 6e 64 28 22 54 65 78 74 4d 65 73 68 50 72 6f 2f 44 69 73 74 61 6e 63 65 20 46 69 er.Find("TextMeshPro/Distance.Fi
11b20 65 6c 64 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 4d 61 74 65 72 69 61 6c eld");..................Material
11b40 20 74 6d 70 5f 6d 61 74 65 72 69 61 6c 20 3d 20 6e 65 77 20 4d 61 74 65 72 69 61 6c 28 64 65 66 .tmp_material.=.new.Material(def
11b60 61 75 6c 74 5f 53 68 61 64 65 72 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ault_Shader);...................
11b80 20 74 6d 70 5f 6d 61 74 65 72 69 61 6c 2e 6e 61 6d 65 20 3d 20 74 65 78 5f 46 69 6c 65 4e 61 6d .tmp_material.name.=.tex_FileNam
11ba0 65 20 2b 20 22 20 4d 61 74 65 72 69 61 6c 22 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 e.+.".Material";................
11bc0 20 20 74 6d 70 5f 6d 61 74 65 72 69 61 6c 2e 53 65 74 54 65 78 74 75 72 65 28 53 68 61 64 65 72 ..tmp_material.SetTexture(Shader
11be0 55 74 69 6c 69 74 69 65 73 2e 49 44 5f 4d 61 69 6e 54 65 78 2c 20 6d 5f 46 6f 6e 74 41 74 6c 61 Utilities.ID_MainTex,.m_FontAtla
11c00 73 54 65 78 74 75 72 65 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 6d 70 5f sTexture);..................tmp_
11c20 6d 61 74 65 72 69 61 6c 2e 53 65 74 46 6c 6f 61 74 28 53 68 61 64 65 72 55 74 69 6c 69 74 69 65 material.SetFloat(ShaderUtilitie
11c40 73 2e 49 44 5f 54 65 78 74 75 72 65 57 69 64 74 68 2c 20 6d 5f 46 6f 6e 74 41 74 6c 61 73 54 65 s.ID_TextureWidth,.m_FontAtlasTe
11c60 78 74 75 72 65 2e 77 69 64 74 68 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 xture.width);..................t
11c80 6d 70 5f 6d 61 74 65 72 69 61 6c 2e 53 65 74 46 6c 6f 61 74 28 53 68 61 64 65 72 55 74 69 6c 69 mp_material.SetFloat(ShaderUtili
11ca0 74 69 65 73 2e 49 44 5f 54 65 78 74 75 72 65 48 65 69 67 68 74 2c 20 6d 5f 46 6f 6e 74 41 74 6c ties.ID_TextureHeight,.m_FontAtl
11cc0 61 73 54 65 78 74 75 72 65 2e 68 65 69 67 68 74 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 asTexture.height);..............
11ce0 20 20 20 20 20 20 69 6e 74 20 73 70 72 65 61 64 20 3d 20 6d 5f 50 61 64 64 69 6e 67 20 2b 20 31 ......int.spread.=.m_Padding.+.1
11d00 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 6d 70 5f 6d 61 74 65 72 69 61 6c 2e ;..................tmp_material.
11d20 53 65 74 46 6c 6f 61 74 28 53 68 61 64 65 72 55 74 69 6c 69 74 69 65 73 2e 49 44 5f 47 72 61 64 SetFloat(ShaderUtilities.ID_Grad
11d40 69 65 6e 74 53 63 61 6c 65 2c 20 73 70 72 65 61 64 29 3b 20 2f 2f 20 53 70 72 65 61 64 20 3d 20 ientScale,.spread);.//.Spread.=.
11d60 50 61 64 64 69 6e 67 20 66 6f 72 20 42 72 75 74 65 20 46 6f 72 63 65 20 53 44 46 2e 0d 0a 0d 0a Padding.for.Brute.Force.SDF.....
11d80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 6d 70 5f 6d 61 74 65 72 69 61 6c 2e 53 65 74 ................tmp_material.Set
11da0 46 6c 6f 61 74 28 53 68 61 64 65 72 55 74 69 6c 69 74 69 65 73 2e 49 44 5f 57 65 69 67 68 74 4e Float(ShaderUtilities.ID_WeightN
11dc0 6f 72 6d 61 6c 2c 20 66 6f 6e 74 41 73 73 65 74 2e 6e 6f 72 6d 61 6c 53 74 79 6c 65 29 3b 0d 0a ormal,.fontAsset.normalStyle);..
11de0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 6d 70 5f 6d 61 74 65 72 69 61 6c 2e 53 65 74 ................tmp_material.Set
11e00 46 6c 6f 61 74 28 53 68 61 64 65 72 55 74 69 6c 69 74 69 65 73 2e 49 44 5f 57 65 69 67 68 74 42 Float(ShaderUtilities.ID_WeightB
11e20 6f 6c 64 2c 20 66 6f 6e 74 41 73 73 65 74 2e 62 6f 6c 64 53 74 79 6c 65 29 3b 0d 0a 0d 0a 20 20 old,.fontAsset.boldStyle);......
11e40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 6e 74 41 73 73 65 74 2e 6d 61 74 65 72 69 61 6c ..............fontAsset.material
11e60 20 3d 20 74 6d 70 5f 6d 61 74 65 72 69 61 6c 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 .=.tmp_material;................
11e80 20 20 20 20 41 73 73 65 74 44 61 74 61 62 61 73 65 2e 41 64 64 4f 62 6a 65 63 74 54 6f 41 73 73 ....AssetDatabase.AddObjectToAss
11ea0 65 74 28 74 6d 70 5f 6d 61 74 65 72 69 61 6c 2c 20 66 6f 6e 74 41 73 73 65 74 29 3b 0d 0a 0d 0a et(tmp_material,.fontAsset);....
11ec0 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 65 6c 73 65 0d ............}..............else.
11ee0 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .............{..................
11f00 2f 2f 20 46 69 6e 64 20 61 6c 6c 20 4d 61 74 65 72 69 61 6c 73 20 72 65 66 65 72 65 6e 63 69 6e //.Find.all.Materials.referencin
11f20 67 20 74 68 69 73 20 66 6f 6e 74 20 61 74 6c 61 73 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 g.this.font.atlas...............
11f40 20 20 20 20 4d 61 74 65 72 69 61 6c 5b 5d 20 6d 61 74 65 72 69 61 6c 5f 72 65 66 65 72 65 6e 63 ....Material[].material_referenc
11f60 65 73 20 3d 20 54 4d 50 5f 45 64 69 74 6f 72 55 74 69 6c 69 74 79 2e 46 69 6e 64 4d 61 74 65 72 es.=.TMP_EditorUtility.FindMater
11f80 69 61 6c 52 65 66 65 72 65 6e 63 65 73 28 66 6f 6e 74 41 73 73 65 74 29 3b 0d 0a 0d 0a 20 20 20 ialReferences(fontAsset);.......
11fa0 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 44 65 73 74 72 6f 79 20 41 73 73 65 74 73 20 74 .............//.Destroy.Assets.t
11fc0 68 61 74 20 77 69 6c 6c 20 62 65 20 72 65 70 6c 61 63 65 64 2e 0d 0a 20 20 20 20 20 20 20 20 20 hat.will.be.replaced............
11fe0 20 20 20 20 20 20 20 69 66 20 28 66 6f 6e 74 41 73 73 65 74 2e 61 74 6c 61 73 54 65 78 74 75 72 .......if.(fontAsset.atlasTextur
12000 65 73 20 21 3d 20 6e 75 6c 6c 20 26 26 20 66 6f 6e 74 41 73 73 65 74 2e 61 74 6c 61 73 54 65 78 es.!=.null.&&.fontAsset.atlasTex
12020 74 75 72 65 73 2e 4c 65 6e 67 74 68 20 3e 20 30 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 tures.Length.>.0)...............
12040 20 20 20 20 20 20 20 44 65 73 74 72 6f 79 49 6d 6d 65 64 69 61 74 65 28 66 6f 6e 74 41 73 73 65 .......DestroyImmediate(fontAsse
12060 74 2e 61 74 6c 61 73 54 65 78 74 75 72 65 73 5b 30 5d 2c 20 74 72 75 65 29 3b 0d 0a 0d 0a 20 20 t.atlasTextures[0],.true);......
12080 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 53 65 74 20 76 65 72 73 69 6f 6e 20 6e 75 6d ..............//.Set.version.num
120a0 62 65 72 20 6f 66 20 66 6f 6e 74 20 61 73 73 65 74 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ber.of.font.asset...............
120c0 20 20 20 66 6f 6e 74 41 73 73 65 74 2e 76 65 72 73 69 6f 6e 20 3d 20 22 31 2e 31 2e 30 22 3b 0d ...fontAsset.version.=."1.1.0";.
120e0 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 53 70 65 63 69 61 6c 20 68 61 ...................//.Special.ha
12100 6e 64 6c 69 6e 67 20 74 6f 20 72 65 6d 6f 76 65 20 6c 65 67 61 63 79 20 66 6f 6e 74 20 61 73 73 ndling.to.remove.legacy.font.ass
12120 65 74 20 64 61 74 61 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 66 6f 6e et.data..................if.(fon
12140 74 41 73 73 65 74 2e 6d 5f 67 6c 79 70 68 49 6e 66 6f 4c 69 73 74 20 21 3d 20 6e 75 6c 6c 20 26 tAsset.m_glyphInfoList.!=.null.&
12160 26 20 66 6f 6e 74 41 73 73 65 74 2e 6d 5f 67 6c 79 70 68 49 6e 66 6f 4c 69 73 74 2e 43 6f 75 6e &.fontAsset.m_glyphInfoList.Coun
12180 74 20 3e 20 30 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 6e 74 t.>.0)......................font
121a0 41 73 73 65 74 2e 6d 5f 67 6c 79 70 68 49 6e 66 6f 4c 69 73 74 20 3d 20 6e 75 6c 6c 3b 0d 0a 0d Asset.m_glyphInfoList.=.null;...
121c0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 53 65 74 20 46 6f 6e 74 20 41 73 73 65 .................//Set.Font.Asse
121e0 74 20 54 79 70 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 6e 74 41 73 73 65 t.Type..................fontAsse
12200 74 2e 61 74 6c 61 73 52 65 6e 64 65 72 4d 6f 64 65 20 3d 20 6d 5f 47 6c 79 70 68 52 65 6e 64 65 t.atlasRenderMode.=.m_GlyphRende
12220 72 4d 6f 64 65 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 41 64 64 rMode;....................//.Add
12240 20 46 61 63 65 49 6e 66 6f 20 74 6f 20 46 6f 6e 74 20 41 73 73 65 74 20 20 0d 0a 20 20 20 20 20 .FaceInfo.to.Font.Asset.........
12260 20 20 20 20 20 20 20 20 20 20 20 66 6f 6e 74 41 73 73 65 74 2e 66 61 63 65 49 6e 66 6f 20 3d 20 ...........fontAsset.faceInfo.=.
12280 6d 5f 46 61 63 65 49 6e 66 6f 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f m_FaceInfo;..................../
122a0 2f 20 41 64 64 20 47 6c 79 70 68 49 6e 66 6f 5b 5d 20 74 6f 20 46 6f 6e 74 20 41 73 73 65 74 0d /.Add.GlyphInfo[].to.Font.Asset.
122c0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 6e 74 41 73 73 65 74 2e 67 6c 79 70 68 .................fontAsset.glyph
122e0 54 61 62 6c 65 20 3d 20 6d 5f 46 6f 6e 74 47 6c 79 70 68 54 61 62 6c 65 3b 0d 0a 0d 0a 20 20 20 Table.=.m_FontGlyphTable;.......
12300 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 41 64 64 20 43 68 61 72 61 63 74 65 72 54 61 62 .............//.Add.CharacterTab
12320 6c 65 5b 5d 20 74 6f 20 66 6f 6e 74 20 61 73 73 65 74 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 le[].to.font.asset..............
12340 20 20 20 20 20 66 6f 6e 74 41 73 73 65 74 2e 63 68 61 72 61 63 74 65 72 54 61 62 6c 65 20 3d 20 .....fontAsset.characterTable.=.
12360 6d 5f 46 6f 6e 74 43 68 61 72 61 63 74 65 72 54 61 62 6c 65 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 m_FontCharacterTable;...........
12380 20 20 20 20 20 20 20 20 20 2f 2f 20 53 6f 72 74 20 67 6c 79 70 68 20 61 6e 64 20 63 68 61 72 61 .........//.Sort.glyph.and.chara
123a0 63 74 65 72 20 74 61 62 6c 65 73 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f cter.tables...................fo
123c0 6e 74 41 73 73 65 74 2e 53 6f 72 74 47 6c 79 70 68 41 6e 64 43 68 61 72 61 63 74 65 72 54 61 62 ntAsset.SortGlyphAndCharacterTab
123e0 6c 65 73 28 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 47 65 74 les();....................//.Get
12400 20 61 6e 64 20 41 64 64 20 4b 65 72 6e 69 6e 67 20 50 61 69 72 73 20 74 6f 20 46 6f 6e 74 20 41 .and.Add.Kerning.Pairs.to.Font.A
12420 73 73 65 74 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 54 4f 44 4f 3a 20 43 sset..................//.TODO:.C
12440 68 65 63 6b 20 61 6e 64 20 70 72 65 73 65 72 76 65 20 65 78 69 73 74 69 6e 67 20 61 64 6a 75 73 heck.and.preserve.existing.adjus
12460 74 6d 65 6e 74 20 70 61 69 72 73 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 tment.pairs...................if
12480 20 28 6d 5f 49 6e 63 6c 75 64 65 46 6f 6e 74 46 65 61 74 75 72 65 73 29 0d 0a 20 20 20 20 20 20 .(m_IncludeFontFeatures)........
124a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 6e 74 41 73 73 65 74 2e 66 6f 6e 74 46 65 61 74 ..............fontAsset.fontFeat
124c0 75 72 65 54 61 62 6c 65 20 3d 20 47 65 74 4b 65 72 6e 69 6e 67 54 61 62 6c 65 28 29 3b 0d 0a 0d ureTable.=.GetKerningTable();...
124e0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 41 64 64 20 46 6f 6e 74 20 41 74 6c .................//.Add.Font.Atl
12500 61 73 20 61 73 20 53 75 62 2d 41 73 73 65 74 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 as.as.Sub-Asset.................
12520 20 66 6f 6e 74 41 73 73 65 74 2e 61 74 6c 61 73 54 65 78 74 75 72 65 73 20 3d 20 6e 65 77 20 54 .fontAsset.atlasTextures.=.new.T
12540 65 78 74 75 72 65 32 44 5b 5d 20 7b 20 6d 5f 46 6f 6e 74 41 74 6c 61 73 54 65 78 74 75 72 65 20 exture2D[].{.m_FontAtlasTexture.
12560 7d 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 46 6f 6e 74 41 74 6c 61 73 54 };..................m_FontAtlasT
12580 65 78 74 75 72 65 2e 6e 61 6d 65 20 3d 20 74 65 78 5f 46 69 6c 65 4e 61 6d 65 20 2b 20 22 20 41 exture.name.=.tex_FileName.+.".A
125a0 74 6c 61 73 22 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 6e 74 41 73 73 65 tlas";..................fontAsse
125c0 74 2e 61 74 6c 61 73 57 69 64 74 68 20 3d 20 6d 5f 41 74 6c 61 73 57 69 64 74 68 3b 0d 0a 20 20 t.atlasWidth.=.m_AtlasWidth;....
125e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 6e 74 41 73 73 65 74 2e 61 74 6c 61 73 48 65 69 ..............fontAsset.atlasHei
12600 67 68 74 20 3d 20 6d 5f 41 74 6c 61 73 48 65 69 67 68 74 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 ght.=.m_AtlasHeight;............
12620 20 20 20 20 20 20 66 6f 6e 74 41 73 73 65 74 2e 61 74 6c 61 73 50 61 64 64 69 6e 67 20 3d 20 6d ......fontAsset.atlasPadding.=.m
12640 5f 50 61 64 64 69 6e 67 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 _Padding;....................//.
12660 53 70 65 63 69 61 6c 20 68 61 6e 64 6c 69 6e 67 20 64 75 65 20 74 6f 20 61 20 62 75 67 20 69 6e Special.handling.due.to.a.bug.in
12680 20 65 61 72 6c 69 65 72 20 76 65 72 73 69 6f 6e 73 20 6f 66 20 55 6e 69 74 79 2e 0d 0a 20 20 20 .earlier.versions.of.Unity......
126a0 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 46 6f 6e 74 41 74 6c 61 73 54 65 78 74 75 72 65 2e .............m_FontAtlasTexture.
126c0 68 69 64 65 46 6c 61 67 73 20 3d 20 48 69 64 65 46 6c 61 67 73 2e 4e 6f 6e 65 3b 0d 0a 20 20 20 hideFlags.=.HideFlags.None;.....
126e0 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 6e 74 41 73 73 65 74 2e 6d 61 74 65 72 69 61 6c 2e .............fontAsset.material.
12700 68 69 64 65 46 6c 61 67 73 20 3d 20 48 69 64 65 46 6c 61 67 73 2e 4e 6f 6e 65 3b 0d 0a 0d 0a 20 hideFlags.=.HideFlags.None;.....
12720 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 73 73 65 74 44 61 74 61 62 61 73 65 2e 41 64 64 ...............AssetDatabase.Add
12740 4f 62 6a 65 63 74 54 6f 41 73 73 65 74 28 6d 5f 46 6f 6e 74 41 74 6c 61 73 54 65 78 74 75 72 65 ObjectToAsset(m_FontAtlasTexture
12760 2c 20 66 6f 6e 74 41 73 73 65 74 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ,.fontAsset);...................
12780 20 2f 2f 20 41 73 73 69 67 6e 20 6e 65 77 20 66 6f 6e 74 20 61 74 6c 61 73 20 74 65 78 74 75 72 .//.Assign.new.font.atlas.textur
127a0 65 20 74 6f 20 74 68 65 20 65 78 69 73 74 69 6e 67 20 6d 61 74 65 72 69 61 6c 2e 0d 0a 20 20 20 e.to.the.existing.material......
127c0 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 6e 74 41 73 73 65 74 2e 6d 61 74 65 72 69 61 6c 2e .............fontAsset.material.
127e0 53 65 74 54 65 78 74 75 72 65 28 53 68 61 64 65 72 55 74 69 6c 69 74 69 65 73 2e 49 44 5f 4d 61 SetTexture(ShaderUtilities.ID_Ma
12800 69 6e 54 65 78 2c 20 66 6f 6e 74 41 73 73 65 74 2e 61 74 6c 61 73 54 65 78 74 75 72 65 73 5b 30 inTex,.fontAsset.atlasTextures[0
12820 5d 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 55 70 64 61 74 65 ]);....................//.Update
12840 20 74 68 65 20 54 65 78 74 75 72 65 20 72 65 66 65 72 65 6e 63 65 20 6f 6e 20 74 68 65 20 4d 61 .the.Texture.reference.on.the.Ma
12860 74 65 72 69 61 6c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 28 69 6e 74 terial..................for.(int
12880 20 69 20 3d 20 30 3b 20 69 20 3c 20 6d 61 74 65 72 69 61 6c 5f 72 65 66 65 72 65 6e 63 65 73 2e .i.=.0;.i.<.material_references.
128a0 4c 65 6e 67 74 68 3b 20 69 2b 2b 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d Length;.i++)..................{.
128c0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 61 74 65 72 69 61 6c 5f 72 65 .....................material_re
128e0 66 65 72 65 6e 63 65 73 5b 69 5d 2e 53 65 74 54 65 78 74 75 72 65 28 53 68 61 64 65 72 55 74 69 ferences[i].SetTexture(ShaderUti
12900 6c 69 74 69 65 73 2e 49 44 5f 4d 61 69 6e 54 65 78 2c 20 6d 5f 46 6f 6e 74 41 74 6c 61 73 54 65 lities.ID_MainTex,.m_FontAtlasTe
12920 78 74 75 72 65 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 61 74 xture);......................mat
12940 65 72 69 61 6c 5f 72 65 66 65 72 65 6e 63 65 73 5b 69 5d 2e 53 65 74 46 6c 6f 61 74 28 53 68 61 erial_references[i].SetFloat(Sha
12960 64 65 72 55 74 69 6c 69 74 69 65 73 2e 49 44 5f 54 65 78 74 75 72 65 57 69 64 74 68 2c 20 6d 5f derUtilities.ID_TextureWidth,.m_
12980 46 6f 6e 74 41 74 6c 61 73 54 65 78 74 75 72 65 2e 77 69 64 74 68 29 3b 0d 0a 20 20 20 20 20 20 FontAtlasTexture.width);........
129a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 61 74 65 72 69 61 6c 5f 72 65 66 65 72 65 6e 63 65 ..............material_reference
129c0 73 5b 69 5d 2e 53 65 74 46 6c 6f 61 74 28 53 68 61 64 65 72 55 74 69 6c 69 74 69 65 73 2e 49 44 s[i].SetFloat(ShaderUtilities.ID
129e0 5f 54 65 78 74 75 72 65 48 65 69 67 68 74 2c 20 6d 5f 46 6f 6e 74 41 74 6c 61 73 54 65 78 74 75 _TextureHeight,.m_FontAtlasTextu
12a00 72 65 2e 68 65 69 67 68 74 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 re.height);.....................
12a20 20 20 20 69 6e 74 20 73 70 72 65 61 64 20 3d 20 6d 5f 50 61 64 64 69 6e 67 20 2b 20 31 3b 0d 0a ...int.spread.=.m_Padding.+.1;..
12a40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 61 74 65 72 69 61 6c 5f 72 65 66 ....................material_ref
12a60 65 72 65 6e 63 65 73 5b 69 5d 2e 53 65 74 46 6c 6f 61 74 28 53 68 61 64 65 72 55 74 69 6c 69 74 erences[i].SetFloat(ShaderUtilit
12a80 69 65 73 2e 49 44 5f 47 72 61 64 69 65 6e 74 53 63 61 6c 65 2c 20 73 70 72 65 61 64 29 3b 20 2f ies.ID_GradientScale,.spread);./
12aa0 2f 20 53 70 72 65 61 64 20 3d 20 50 61 64 64 69 6e 67 20 66 6f 72 20 42 72 75 74 65 20 46 6f 72 /.Spread.=.Padding.for.Brute.For
12ac0 63 65 20 53 44 46 2e 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d ce.SDF.........................m
12ae0 61 74 65 72 69 61 6c 5f 72 65 66 65 72 65 6e 63 65 73 5b 69 5d 2e 53 65 74 46 6c 6f 61 74 28 53 aterial_references[i].SetFloat(S
12b00 68 61 64 65 72 55 74 69 6c 69 74 69 65 73 2e 49 44 5f 57 65 69 67 68 74 4e 6f 72 6d 61 6c 2c 20 haderUtilities.ID_WeightNormal,.
12b20 66 6f 6e 74 41 73 73 65 74 2e 6e 6f 72 6d 61 6c 53 74 79 6c 65 29 3b 0d 0a 20 20 20 20 20 20 20 fontAsset.normalStyle);.........
12b40 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 61 74 65 72 69 61 6c 5f 72 65 66 65 72 65 6e 63 65 73 .............material_references
12b60 5b 69 5d 2e 53 65 74 46 6c 6f 61 74 28 53 68 61 64 65 72 55 74 69 6c 69 74 69 65 73 2e 49 44 5f [i].SetFloat(ShaderUtilities.ID_
12b80 57 65 69 67 68 74 42 6f 6c 64 2c 20 66 6f 6e 74 41 73 73 65 74 2e 62 6f 6c 64 53 74 79 6c 65 29 WeightBold,.fontAsset.boldStyle)
12ba0 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 ;..................}............
12bc0 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 53 61 76 69 6e 67 20 46 69 6c ..}................//.Saving.Fil
12be0 65 20 66 6f 72 20 44 65 62 75 67 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 76 61 72 20 70 e.for.Debug..............//var.p
12c00 6e 67 44 61 74 61 20 3d 20 64 65 73 74 69 6e 61 74 69 6f 6e 5f 41 74 6c 61 73 2e 45 6e 63 6f 64 ngData.=.destination_Atlas.Encod
12c20 65 54 6f 50 4e 47 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 46 69 6c 65 2e 57 72 eToPNG();..............//File.Wr
12c40 69 74 65 41 6c 6c 42 79 74 65 73 28 22 41 73 73 65 74 73 2f 54 65 78 74 75 72 65 73 2f 44 65 62 iteAllBytes("Assets/Textures/Deb
12c60 75 67 20 44 69 73 74 61 6e 63 65 20 46 69 65 6c 64 2e 70 6e 67 22 2c 20 70 6e 67 44 61 74 61 29 ug.Distance.Field.png",.pngData)
12c80 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 41 64 64 20 6c 69 73 74 20 6f 66 20 ;................//.Add.list.of.
12ca0 47 6c 79 70 68 52 65 63 74 73 20 74 6f 20 66 6f 6e 74 20 61 73 73 65 74 2e 0d 0a 20 20 20 20 20 GlyphRects.to.font.asset........
12cc0 20 20 20 20 20 20 20 66 6f 6e 74 41 73 73 65 74 2e 66 72 65 65 47 6c 79 70 68 52 65 63 74 73 20 .......fontAsset.freeGlyphRects.
12ce0 3d 20 6d 5f 46 72 65 65 47 6c 79 70 68 52 65 63 74 73 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 =.m_FreeGlyphRects;.............
12d00 20 66 6f 6e 74 41 73 73 65 74 2e 75 73 65 64 47 6c 79 70 68 52 65 63 74 73 20 3d 20 6d 5f 55 73 .fontAsset.usedGlyphRects.=.m_Us
12d20 65 64 47 6c 79 70 68 52 65 63 74 73 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 edGlyphRects;................//.
12d40 53 61 76 65 20 46 6f 6e 74 20 41 73 73 65 74 20 63 72 65 61 74 69 6f 6e 20 73 65 74 74 69 6e 67 Save.Font.Asset.creation.setting
12d60 73 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 53 65 6c 65 63 74 65 64 46 6f 6e 74 41 73 73 s..............m_SelectedFontAss
12d80 65 74 20 3d 20 66 6f 6e 74 41 73 73 65 74 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 4c et.=.fontAsset;..............m_L
12da0 65 67 61 63 79 46 6f 6e 74 41 73 73 65 74 20 3d 20 6e 75 6c 6c 3b 0d 0a 20 20 20 20 20 20 20 20 egacyFontAsset.=.null;..........
12dc0 20 20 20 20 66 6f 6e 74 41 73 73 65 74 2e 63 72 65 61 74 69 6f 6e 53 65 74 74 69 6e 67 73 20 3d ....fontAsset.creationSettings.=
12de0 20 53 61 76 65 46 6f 6e 74 43 72 65 61 74 69 6f 6e 53 65 74 74 69 6e 67 73 28 29 3b 0d 0a 0d 0a .SaveFontCreationSettings();....
12e00 20 20 20 20 20 20 20 20 20 20 20 20 41 73 73 65 74 44 61 74 61 62 61 73 65 2e 53 61 76 65 41 73 ............AssetDatabase.SaveAs
12e20 73 65 74 73 28 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 41 73 73 65 74 44 61 74 61 sets();................AssetData
12e40 62 61 73 65 2e 49 6d 70 6f 72 74 41 73 73 65 74 28 41 73 73 65 74 44 61 74 61 62 61 73 65 2e 47 base.ImportAsset(AssetDatabase.G
12e60 65 74 41 73 73 65 74 50 61 74 68 28 66 6f 6e 74 41 73 73 65 74 29 29 3b 20 20 2f 2f 20 52 65 2d etAssetPath(fontAsset));..//.Re-
12e80 69 6d 70 6f 72 74 20 66 6f 6e 74 20 61 73 73 65 74 20 74 6f 20 67 65 74 20 74 68 65 20 6e 65 77 import.font.asset.to.get.the.new
12ea0 20 75 70 64 61 74 65 64 20 76 65 72 73 69 6f 6e 2e 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 .updated.version................
12ec0 20 66 6f 6e 74 41 73 73 65 74 2e 52 65 61 64 46 6f 6e 74 41 73 73 65 74 44 65 66 69 6e 69 74 69 .fontAsset.ReadFontAssetDefiniti
12ee0 6f 6e 28 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 41 73 73 65 74 44 61 74 61 62 61 on();................AssetDataba
12f00 73 65 2e 52 65 66 72 65 73 68 28 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 46 se.Refresh();................m_F
12f20 6f 6e 74 41 74 6c 61 73 54 65 78 74 75 72 65 20 3d 20 6e 75 6c 6c 3b 0d 0a 0d 0a 20 20 20 20 20 ontAtlasTexture.=.null;.........
12f40 20 20 20 20 20 20 20 2f 2f 20 4e 45 45 44 20 54 4f 20 47 45 4e 45 52 41 54 45 20 41 4e 20 45 56 .......//.NEED.TO.GENERATE.AN.EV
12f60 45 4e 54 20 54 4f 20 46 4f 52 43 45 20 41 20 52 45 44 52 41 57 20 4f 46 20 41 4e 59 20 54 45 58 ENT.TO.FORCE.A.REDRAW.OF.ANY.TEX
12f80 54 4d 45 53 48 50 52 4f 20 49 4e 53 54 41 4e 43 45 53 20 54 48 41 54 20 4d 49 47 48 54 20 42 45 TMESHPRO.INSTANCES.THAT.MIGHT.BE
12fa0 20 55 53 49 4e 47 20 54 48 49 53 20 46 4f 4e 54 20 41 53 53 45 54 0d 0a 20 20 20 20 20 20 20 20 .USING.THIS.FONT.ASSET..........
12fc0 20 20 20 20 54 4d 50 72 6f 5f 45 76 65 6e 74 4d 61 6e 61 67 65 72 2e 4f 4e 5f 46 4f 4e 54 5f 50 ....TMPro_EventManager.ON_FONT_P
12fe0 52 4f 50 45 52 54 59 5f 43 48 41 4e 47 45 44 28 74 72 75 65 2c 20 66 6f 6e 74 41 73 73 65 74 29 ROPERTY_CHANGED(true,.fontAsset)
13000 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 73 ;..........}..............///.<s
13020 75 6d 6d 61 72 79 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 49 6e 74 65 72 6e 61 6c 20 6d 65 ummary>..........///.Internal.me
13040 74 68 6f 64 20 74 6f 20 73 61 76 65 20 74 68 65 20 46 6f 6e 74 20 41 73 73 65 74 20 43 72 65 61 thod.to.save.the.Font.Asset.Crea
13060 74 69 6f 6e 20 53 65 74 74 69 6e 67 73 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 2f 73 75 6d tion.Settings..........///.</sum
13080 6d 61 72 79 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 72 65 74 75 72 6e 73 3e 3c 2f 72 65 mary>..........///.<returns></re
130a0 74 75 72 6e 73 3e 0d 0a 20 20 20 20 20 20 20 20 46 6f 6e 74 41 73 73 65 74 43 72 65 61 74 69 6f turns>..........FontAssetCreatio
130c0 6e 53 65 74 74 69 6e 67 73 20 53 61 76 65 46 6f 6e 74 43 72 65 61 74 69 6f 6e 53 65 74 74 69 6e nSettings.SaveFontCreationSettin
130e0 67 73 28 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 46 6f 6e gs()..........{..............Fon
13100 74 41 73 73 65 74 43 72 65 61 74 69 6f 6e 53 65 74 74 69 6e 67 73 20 73 65 74 74 69 6e 67 73 20 tAssetCreationSettings.settings.
13120 3d 20 6e 65 77 20 46 6f 6e 74 41 73 73 65 74 43 72 65 61 74 69 6f 6e 53 65 74 74 69 6e 67 73 28 =.new.FontAssetCreationSettings(
13140 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 73 65 74 74 69 6e 67 73 2e 73 6f 75 );................//settings.sou
13160 72 63 65 46 6f 6e 74 46 69 6c 65 4e 61 6d 65 20 3d 20 6d 5f 53 6f 75 72 63 65 46 6f 6e 74 46 69 rceFontFileName.=.m_SourceFontFi
13180 6c 65 2e 6e 61 6d 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 65 74 74 69 6e 67 73 2e 73 le.name;..............settings.s
131a0 6f 75 72 63 65 46 6f 6e 74 46 69 6c 65 47 55 49 44 20 3d 20 41 73 73 65 74 44 61 74 61 62 61 73 ourceFontFileGUID.=.AssetDatabas
131c0 65 2e 41 73 73 65 74 50 61 74 68 54 6f 47 55 49 44 28 41 73 73 65 74 44 61 74 61 62 61 73 65 2e e.AssetPathToGUID(AssetDatabase.
131e0 47 65 74 41 73 73 65 74 50 61 74 68 28 6d 5f 53 6f 75 72 63 65 46 6f 6e 74 46 69 6c 65 29 29 3b GetAssetPath(m_SourceFontFile));
13200 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 65 74 74 69 6e 67 73 2e 70 6f 69 6e 74 53 69 7a 65 ..............settings.pointSize
13220 53 61 6d 70 6c 69 6e 67 4d 6f 64 65 20 3d 20 6d 5f 50 6f 69 6e 74 53 69 7a 65 53 61 6d 70 6c 69 SamplingMode.=.m_PointSizeSampli
13240 6e 67 4d 6f 64 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 65 74 74 69 6e 67 73 2e 70 6f ngMode;..............settings.po
13260 69 6e 74 53 69 7a 65 20 3d 20 6d 5f 50 6f 69 6e 74 53 69 7a 65 3b 0d 0a 20 20 20 20 20 20 20 20 intSize.=.m_PointSize;..........
13280 20 20 20 20 73 65 74 74 69 6e 67 73 2e 70 61 64 64 69 6e 67 20 3d 20 6d 5f 50 61 64 64 69 6e 67 ....settings.padding.=.m_Padding
132a0 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 65 74 74 69 6e 67 73 2e 70 61 63 6b 69 6e 67 4d ;..............settings.packingM
132c0 6f 64 65 20 3d 20 28 69 6e 74 29 6d 5f 50 61 63 6b 69 6e 67 4d 6f 64 65 3b 0d 0a 20 20 20 20 20 ode.=.(int)m_PackingMode;.......
132e0 20 20 20 20 20 20 20 73 65 74 74 69 6e 67 73 2e 61 74 6c 61 73 57 69 64 74 68 20 3d 20 6d 5f 41 .......settings.atlasWidth.=.m_A
13300 74 6c 61 73 57 69 64 74 68 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 65 74 74 69 6e 67 73 tlasWidth;..............settings
13320 2e 61 74 6c 61 73 48 65 69 67 68 74 20 3d 20 6d 5f 41 74 6c 61 73 48 65 69 67 68 74 3b 0d 0a 20 .atlasHeight.=.m_AtlasHeight;...
13340 20 20 20 20 20 20 20 20 20 20 20 73 65 74 74 69 6e 67 73 2e 63 68 61 72 61 63 74 65 72 53 65 74 ...........settings.characterSet
13360 53 65 6c 65 63 74 69 6f 6e 4d 6f 64 65 20 3d 20 6d 5f 43 68 61 72 61 63 74 65 72 53 65 74 53 65 SelectionMode.=.m_CharacterSetSe
13380 6c 65 63 74 69 6f 6e 4d 6f 64 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 65 74 74 69 6e lectionMode;..............settin
133a0 67 73 2e 63 68 61 72 61 63 74 65 72 53 65 71 75 65 6e 63 65 20 3d 20 6d 5f 43 68 61 72 61 63 74 gs.characterSequence.=.m_Charact
133c0 65 72 53 65 71 75 65 6e 63 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 65 74 74 69 6e 67 erSequence;..............setting
133e0 73 2e 72 65 66 65 72 65 6e 63 65 64 46 6f 6e 74 41 73 73 65 74 47 55 49 44 20 3d 20 41 73 73 65 s.referencedFontAssetGUID.=.Asse
13400 74 44 61 74 61 62 61 73 65 2e 41 73 73 65 74 50 61 74 68 54 6f 47 55 49 44 28 41 73 73 65 74 44 tDatabase.AssetPathToGUID(AssetD
13420 61 74 61 62 61 73 65 2e 47 65 74 41 73 73 65 74 50 61 74 68 28 6d 5f 52 65 66 65 72 65 6e 63 65 atabase.GetAssetPath(m_Reference
13440 64 46 6f 6e 74 41 73 73 65 74 29 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 65 74 74 69 dFontAsset));..............setti
13460 6e 67 73 2e 72 65 66 65 72 65 6e 63 65 64 54 65 78 74 41 73 73 65 74 47 55 49 44 20 3d 20 41 73 ngs.referencedTextAssetGUID.=.As
13480 73 65 74 44 61 74 61 62 61 73 65 2e 41 73 73 65 74 50 61 74 68 54 6f 47 55 49 44 28 41 73 73 65 setDatabase.AssetPathToGUID(Asse
134a0 74 44 61 74 61 62 61 73 65 2e 47 65 74 41 73 73 65 74 50 61 74 68 28 6d 5f 43 68 61 72 61 63 74 tDatabase.GetAssetPath(m_Charact
134c0 65 72 73 46 72 6f 6d 46 69 6c 65 29 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 73 65 ersFromFile));..............//se
134e0 74 74 69 6e 67 73 2e 66 6f 6e 74 53 74 79 6c 65 20 3d 20 28 69 6e 74 29 6d 5f 46 6f 6e 74 53 74 ttings.fontStyle.=.(int)m_FontSt
13500 79 6c 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 73 65 74 74 69 6e 67 73 2e 66 6f 6e yle;..............//settings.fon
13520 74 53 74 79 6c 65 4d 6f 64 69 66 69 65 72 20 3d 20 6d 5f 46 6f 6e 74 53 74 79 6c 65 56 61 6c 75 tStyleModifier.=.m_FontStyleValu
13540 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 65 74 74 69 6e 67 73 2e 72 65 6e 64 65 72 4d e;..............settings.renderM
13560 6f 64 65 20 3d 20 28 69 6e 74 29 6d 5f 47 6c 79 70 68 52 65 6e 64 65 72 4d 6f 64 65 3b 0d 0a 20 ode.=.(int)m_GlyphRenderMode;...
13580 20 20 20 20 20 20 20 20 20 20 20 73 65 74 74 69 6e 67 73 2e 69 6e 63 6c 75 64 65 46 6f 6e 74 46 ...........settings.includeFontF
135a0 65 61 74 75 72 65 73 20 3d 20 6d 5f 49 6e 63 6c 75 64 65 46 6f 6e 74 46 65 61 74 75 72 65 73 3b eatures.=.m_IncludeFontFeatures;
135c0 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 73 65 74 74 69 6e 67 73 3b ................return.settings;
135e0 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 73 75 ..........}..............///.<su
13600 6d 6d 61 72 79 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 49 6e 74 65 72 6e 61 6c 20 6d 65 74 mmary>..........///.Internal.met
13620 68 6f 64 20 74 6f 20 6c 6f 61 64 20 74 68 65 20 46 6f 6e 74 20 41 73 73 65 74 20 43 72 65 61 74 hod.to.load.the.Font.Asset.Creat
13640 69 6f 6e 20 53 65 74 74 69 6e 67 73 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 2f 73 75 6d 6d ion.Settings..........///.</summ
13660 61 72 79 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 70 61 72 61 6d 20 6e 61 6d 65 3d 22 73 ary>..........///.<param.name="s
13680 65 74 74 69 6e 67 73 22 3e 3c 2f 70 61 72 61 6d 3e 0d 0a 20 20 20 20 20 20 20 20 76 6f 69 64 20 ettings"></param>..........void.
136a0 4c 6f 61 64 46 6f 6e 74 43 72 65 61 74 69 6f 6e 53 65 74 74 69 6e 67 73 28 46 6f 6e 74 41 73 73 LoadFontCreationSettings(FontAss
136c0 65 74 43 72 65 61 74 69 6f 6e 53 65 74 74 69 6e 67 73 20 73 65 74 74 69 6e 67 73 29 0d 0a 20 20 etCreationSettings.settings)....
136e0 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 53 6f 75 72 63 65 46 6f 6e ......{..............m_SourceFon
13700 74 46 69 6c 65 20 3d 20 41 73 73 65 74 44 61 74 61 62 61 73 65 2e 4c 6f 61 64 41 73 73 65 74 41 tFile.=.AssetDatabase.LoadAssetA
13720 74 50 61 74 68 3c 46 6f 6e 74 3e 28 41 73 73 65 74 44 61 74 61 62 61 73 65 2e 47 55 49 44 54 6f tPath<Font>(AssetDatabase.GUIDTo
13740 41 73 73 65 74 50 61 74 68 28 73 65 74 74 69 6e 67 73 2e 73 6f 75 72 63 65 46 6f 6e 74 46 69 6c AssetPath(settings.sourceFontFil
13760 65 47 55 49 44 29 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 50 6f 69 6e 74 53 69 7a eGUID));..............m_PointSiz
13780 65 53 61 6d 70 6c 69 6e 67 4d 6f 64 65 20 20 3d 20 73 65 74 74 69 6e 67 73 2e 70 6f 69 6e 74 53 eSamplingMode..=.settings.pointS
137a0 69 7a 65 53 61 6d 70 6c 69 6e 67 4d 6f 64 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f izeSamplingMode;..............m_
137c0 50 6f 69 6e 74 53 69 7a 65 20 3d 20 73 65 74 74 69 6e 67 73 2e 70 6f 69 6e 74 53 69 7a 65 3b 0d PointSize.=.settings.pointSize;.
137e0 0a 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 50 61 64 64 69 6e 67 20 3d 20 73 65 74 74 69 6e 67 .............m_Padding.=.setting
13800 73 2e 70 61 64 64 69 6e 67 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 50 61 63 6b 69 6e s.padding;..............m_Packin
13820 67 4d 6f 64 65 20 3d 20 28 46 6f 6e 74 50 61 63 6b 69 6e 67 4d 6f 64 65 73 29 73 65 74 74 69 6e gMode.=.(FontPackingModes)settin
13840 67 73 2e 70 61 63 6b 69 6e 67 4d 6f 64 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 41 gs.packingMode;..............m_A
13860 74 6c 61 73 57 69 64 74 68 20 3d 20 73 65 74 74 69 6e 67 73 2e 61 74 6c 61 73 57 69 64 74 68 3b tlasWidth.=.settings.atlasWidth;
13880 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 41 74 6c 61 73 48 65 69 67 68 74 20 3d 20 73 65 ..............m_AtlasHeight.=.se
138a0 74 74 69 6e 67 73 2e 61 74 6c 61 73 48 65 69 67 68 74 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 ttings.atlasHeight;.............
138c0 20 6d 5f 43 68 61 72 61 63 74 65 72 53 65 74 53 65 6c 65 63 74 69 6f 6e 4d 6f 64 65 20 3d 20 73 .m_CharacterSetSelectionMode.=.s
138e0 65 74 74 69 6e 67 73 2e 63 68 61 72 61 63 74 65 72 53 65 74 53 65 6c 65 63 74 69 6f 6e 4d 6f 64 ettings.characterSetSelectionMod
13900 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 43 68 61 72 61 63 74 65 72 53 65 71 75 65 e;..............m_CharacterSeque
13920 6e 63 65 20 3d 20 73 65 74 74 69 6e 67 73 2e 63 68 61 72 61 63 74 65 72 53 65 71 75 65 6e 63 65 nce.=.settings.characterSequence
13940 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 52 65 66 65 72 65 6e 63 65 64 46 6f 6e 74 41 ;..............m_ReferencedFontA
13960 73 73 65 74 20 3d 20 41 73 73 65 74 44 61 74 61 62 61 73 65 2e 4c 6f 61 64 41 73 73 65 74 41 74 sset.=.AssetDatabase.LoadAssetAt
13980 50 61 74 68 3c 54 4d 50 5f 46 6f 6e 74 41 73 73 65 74 3e 28 41 73 73 65 74 44 61 74 61 62 61 73 Path<TMP_FontAsset>(AssetDatabas
139a0 65 2e 47 55 49 44 54 6f 41 73 73 65 74 50 61 74 68 28 73 65 74 74 69 6e 67 73 2e 72 65 66 65 72 e.GUIDToAssetPath(settings.refer
139c0 65 6e 63 65 64 46 6f 6e 74 41 73 73 65 74 47 55 49 44 29 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 encedFontAssetGUID));...........
139e0 20 20 20 6d 5f 43 68 61 72 61 63 74 65 72 73 46 72 6f 6d 46 69 6c 65 20 3d 20 41 73 73 65 74 44 ...m_CharactersFromFile.=.AssetD
13a00 61 74 61 62 61 73 65 2e 4c 6f 61 64 41 73 73 65 74 41 74 50 61 74 68 3c 54 65 78 74 41 73 73 65 atabase.LoadAssetAtPath<TextAsse
13a20 74 3e 28 41 73 73 65 74 44 61 74 61 62 61 73 65 2e 47 55 49 44 54 6f 41 73 73 65 74 50 61 74 68 t>(AssetDatabase.GUIDToAssetPath
13a40 28 73 65 74 74 69 6e 67 73 2e 72 65 66 65 72 65 6e 63 65 64 54 65 78 74 41 73 73 65 74 47 55 49 (settings.referencedTextAssetGUI
13a60 44 29 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 6d 5f 46 6f 6e 74 53 74 79 6c 65 20 D));..............//m_FontStyle.
13a80 3d 20 28 46 61 63 65 53 74 79 6c 65 73 29 73 65 74 74 69 6e 67 73 2e 66 6f 6e 74 53 74 79 6c 65 =.(FaceStyles)settings.fontStyle
13aa0 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 6d 5f 46 6f 6e 74 53 74 79 6c 65 56 61 6c 75 ;..............//m_FontStyleValu
13ac0 65 20 3d 20 73 65 74 74 69 6e 67 73 2e 66 6f 6e 74 53 74 79 6c 65 4d 6f 64 69 66 69 65 72 3b 0d e.=.settings.fontStyleModifier;.
13ae0 0a 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 47 6c 79 70 68 52 65 6e 64 65 72 4d 6f 64 65 20 3d .............m_GlyphRenderMode.=
13b00 20 28 47 6c 79 70 68 52 65 6e 64 65 72 4d 6f 64 65 29 73 65 74 74 69 6e 67 73 2e 72 65 6e 64 65 .(GlyphRenderMode)settings.rende
13b20 72 4d 6f 64 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 49 6e 63 6c 75 64 65 46 6f 6e rMode;..............m_IncludeFon
13b40 74 46 65 61 74 75 72 65 73 20 3d 20 73 65 74 74 69 6e 67 73 2e 69 6e 63 6c 75 64 65 46 6f 6e 74 tFeatures.=.settings.includeFont
13b60 46 65 61 74 75 72 65 73 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 0d 0a 20 20 20 20 20 20 Features;..........}............
13b80 20 20 2f 2f 2f 20 3c 73 75 6d 6d 61 72 79 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 53 61 76 ..///.<summary>..........///.Sav
13ba0 65 20 74 68 65 20 6c 61 74 65 73 74 20 66 6f 6e 74 20 61 73 73 65 74 20 63 72 65 61 74 69 6f 6e e.the.latest.font.asset.creation
13bc0 20 73 65 74 74 69 6e 67 73 20 74 6f 20 45 64 69 74 6f 72 50 72 65 66 73 2e 0d 0a 20 20 20 20 20 .settings.to.EditorPrefs........
13be0 20 20 20 2f 2f 2f 20 3c 2f 73 75 6d 6d 61 72 79 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c ...///.</summary>..........///.<
13c00 70 61 72 61 6d 20 6e 61 6d 65 3d 22 73 65 74 74 69 6e 67 73 22 3e 3c 2f 70 61 72 61 6d 3e 0d 0a param.name="settings"></param>..
13c20 20 20 20 20 20 20 20 20 76 6f 69 64 20 53 61 76 65 43 72 65 61 74 69 6f 6e 53 65 74 74 69 6e 67 ........void.SaveCreationSetting
13c40 73 54 6f 45 64 69 74 6f 72 50 72 65 66 73 28 46 6f 6e 74 41 73 73 65 74 43 72 65 61 74 69 6f 6e sToEditorPrefs(FontAssetCreation
13c60 53 65 74 74 69 6e 67 73 20 73 65 74 74 69 6e 67 73 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 Settings.settings)..........{...
13c80 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 43 72 65 61 74 65 20 6e 65 77 20 6c 69 73 74 20 69 66 ...........//.Create.new.list.if
13ca0 20 6f 6e 65 20 64 6f 65 73 20 6e 6f 74 20 61 6c 72 65 61 64 79 20 65 78 69 73 74 0d 0a 20 20 20 .one.does.not.already.exist.....
13cc0 20 20 20 20 20 20 20 20 20 69 66 20 28 6d 5f 46 6f 6e 74 41 73 73 65 74 43 72 65 61 74 69 6f 6e .........if.(m_FontAssetCreation
13ce0 53 65 74 74 69 6e 67 73 43 6f 6e 74 61 69 6e 65 72 20 3d 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 SettingsContainer.==.null)......
13d00 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 46 6f 6e ........{..................m_Fon
13d20 74 41 73 73 65 74 43 72 65 61 74 69 6f 6e 53 65 74 74 69 6e 67 73 43 6f 6e 74 61 69 6e 65 72 20 tAssetCreationSettingsContainer.
13d40 3d 20 6e 65 77 20 46 6f 6e 74 41 73 73 65 74 43 72 65 61 74 69 6f 6e 53 65 74 74 69 6e 67 73 43 =.new.FontAssetCreationSettingsC
13d60 6f 6e 74 61 69 6e 65 72 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 46 ontainer();..................m_F
13d80 6f 6e 74 41 73 73 65 74 43 72 65 61 74 69 6f 6e 53 65 74 74 69 6e 67 73 43 6f 6e 74 61 69 6e 65 ontAssetCreationSettingsContaine
13da0 72 2e 66 6f 6e 74 41 73 73 65 74 43 72 65 61 74 69 6f 6e 53 65 74 74 69 6e 67 73 20 3d 20 6e 65 r.fontAssetCreationSettings.=.ne
13dc0 77 20 4c 69 73 74 3c 46 6f 6e 74 41 73 73 65 74 43 72 65 61 74 69 6f 6e 53 65 74 74 69 6e 67 73 w.List<FontAssetCreationSettings
13de0 3e 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 >();..............}.............
13e00 20 20 20 2f 2f 20 41 64 64 20 6e 65 77 20 63 72 65 61 74 69 6f 6e 20 73 65 74 74 69 6e 67 73 20 ...//.Add.new.creation.settings.
13e20 74 6f 20 74 68 65 20 6c 69 73 74 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 46 6f 6e 74 41 to.the.list..............m_FontA
13e40 73 73 65 74 43 72 65 61 74 69 6f 6e 53 65 74 74 69 6e 67 73 43 6f 6e 74 61 69 6e 65 72 2e 66 6f ssetCreationSettingsContainer.fo
13e60 6e 74 41 73 73 65 74 43 72 65 61 74 69 6f 6e 53 65 74 74 69 6e 67 73 2e 41 64 64 28 73 65 74 74 ntAssetCreationSettings.Add(sett
13e80 69 6e 67 73 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 53 69 6e 63 65 20 6c ings);................//.Since.l
13ea0 69 73 74 20 73 68 6f 75 6c 64 20 6f 6e 6c 79 20 63 6f 6e 74 61 69 6e 20 74 68 65 20 6d 6f 73 74 ist.should.only.contain.the.most
13ec0 20 34 20 72 65 63 65 6e 74 20 73 65 74 74 69 6e 67 73 2c 20 77 65 20 72 65 6d 6f 76 65 20 74 68 .4.recent.settings,.we.remove.th
13ee0 65 20 66 69 72 73 74 20 65 6c 65 6d 65 6e 74 20 69 66 20 6c 69 73 74 20 65 78 63 65 65 64 73 20 e.first.element.if.list.exceeds.
13f00 34 20 65 6c 65 6d 65 6e 74 73 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6d 5f 46 4.elements...............if.(m_F
13f20 6f 6e 74 41 73 73 65 74 43 72 65 61 74 69 6f 6e 53 65 74 74 69 6e 67 73 43 6f 6e 74 61 69 6e 65 ontAssetCreationSettingsContaine
13f40 72 2e 66 6f 6e 74 41 73 73 65 74 43 72 65 61 74 69 6f 6e 53 65 74 74 69 6e 67 73 2e 43 6f 75 6e r.fontAssetCreationSettings.Coun
13f60 74 20 3e 20 34 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 46 6f 6e 74 41 73 t.>.4)..................m_FontAs
13f80 73 65 74 43 72 65 61 74 69 6f 6e 53 65 74 74 69 6e 67 73 43 6f 6e 74 61 69 6e 65 72 2e 66 6f 6e setCreationSettingsContainer.fon
13fa0 74 41 73 73 65 74 43 72 65 61 74 69 6f 6e 53 65 74 74 69 6e 67 73 2e 52 65 6d 6f 76 65 41 74 28 tAssetCreationSettings.RemoveAt(
13fc0 30 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 46 6f 6e 74 41 73 73 65 74 43 72 0);................m_FontAssetCr
13fe0 65 61 74 69 6f 6e 53 65 74 74 69 6e 67 73 43 75 72 72 65 6e 74 49 6e 64 65 78 20 3d 20 6d 5f 46 eationSettingsCurrentIndex.=.m_F
14000 6f 6e 74 41 73 73 65 74 43 72 65 61 74 69 6f 6e 53 65 74 74 69 6e 67 73 43 6f 6e 74 61 69 6e 65 ontAssetCreationSettingsContaine
14020 72 2e 66 6f 6e 74 41 73 73 65 74 43 72 65 61 74 69 6f 6e 53 65 74 74 69 6e 67 73 2e 43 6f 75 6e r.fontAssetCreationSettings.Coun
14040 74 20 2d 20 31 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 53 65 72 69 61 6c 69 t.-.1;................//.Seriali
14060 7a 65 20 6c 69 73 74 20 74 6f 20 4a 53 4f 4e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 74 72 ze.list.to.JSON..............str
14080 69 6e 67 20 73 65 72 69 61 6c 69 7a 65 64 53 65 74 74 69 6e 67 73 20 3d 20 4a 73 6f 6e 55 74 69 ing.serializedSettings.=.JsonUti
140a0 6c 69 74 79 2e 54 6f 4a 73 6f 6e 28 6d 5f 46 6f 6e 74 41 73 73 65 74 43 72 65 61 74 69 6f 6e 53 lity.ToJson(m_FontAssetCreationS
140c0 65 74 74 69 6e 67 73 43 6f 6e 74 61 69 6e 65 72 2c 20 74 72 75 65 29 3b 0d 0a 0d 0a 20 20 20 20 ettingsContainer,.true);........
140e0 20 20 20 20 20 20 20 20 45 64 69 74 6f 72 50 72 65 66 73 2e 53 65 74 53 74 72 69 6e 67 28 6b 5f ........EditorPrefs.SetString(k_
14100 46 6f 6e 74 41 73 73 65 74 43 72 65 61 74 69 6f 6e 53 65 74 74 69 6e 67 73 43 6f 6e 74 61 69 6e FontAssetCreationSettingsContain
14120 65 72 4b 65 79 2c 20 73 65 72 69 61 6c 69 7a 65 64 53 65 74 74 69 6e 67 73 29 3b 0d 0a 20 20 20 erKey,.serializedSettings);.....
14140 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 76 6f 69 64 20 44 72 61 77 50 72 65 76 69 .....}............void.DrawPrevi
14160 65 77 28 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 52 65 63 ew()..........{..............Rec
14180 74 20 70 69 78 65 6c 52 65 63 74 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 70 6f t.pixelRect;..............if.(po
141a0 73 69 74 69 6f 6e 2e 77 69 64 74 68 20 3e 20 70 6f 73 69 74 69 6f 6e 2e 68 65 69 67 68 74 20 26 sition.width.>.position.height.&
141c0 26 20 70 6f 73 69 74 69 6f 6e 2e 77 69 64 74 68 20 3e 20 6b 5f 54 77 6f 43 6f 6c 75 6d 6e 43 6f &.position.width.>.k_TwoColumnCo
141e0 6e 74 72 6f 6c 73 57 69 64 74 68 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 ntrolsWidth)..............{.....
14200 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6c 6f 61 74 20 6d 69 6e 53 69 64 65 20 3d 20 4d 61 74 .............float.minSide.=.Mat
14220 68 66 2e 4d 69 6e 28 70 6f 73 69 74 69 6f 6e 2e 68 65 69 67 68 74 20 2d 20 31 35 66 2c 20 70 6f hf.Min(position.height.-.15f,.po
14240 73 69 74 69 6f 6e 2e 77 69 64 74 68 20 2d 20 6b 5f 54 77 6f 43 6f 6c 75 6d 6e 43 6f 6e 74 72 6f sition.width.-.k_TwoColumnContro
14260 6c 73 57 69 64 74 68 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 45 64 69 lsWidth);....................Edi
14280 74 6f 72 47 55 49 4c 61 79 6f 75 74 2e 42 65 67 69 6e 56 65 72 74 69 63 61 6c 28 45 64 69 74 6f torGUILayout.BeginVertical(Edito
142a0 72 53 74 79 6c 65 73 2e 68 65 6c 70 42 6f 78 2c 20 47 55 49 4c 61 79 6f 75 74 2e 4d 61 78 57 69 rStyles.helpBox,.GUILayout.MaxWi
142c0 64 74 68 28 6d 69 6e 53 69 64 65 29 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 dth(minSide));..................
142e0 20 20 70 69 78 65 6c 52 65 63 74 20 3d 20 47 55 49 4c 61 79 6f 75 74 55 74 69 6c 69 74 79 2e 47 ..pixelRect.=.GUILayoutUtility.G
14300 65 74 52 65 63 74 28 6d 69 6e 53 69 64 65 2c 20 6d 69 6e 53 69 64 65 2c 20 47 55 49 4c 61 79 6f etRect(minSide,.minSide,.GUILayo
14320 75 74 2e 45 78 70 61 6e 64 48 65 69 67 68 74 28 66 61 6c 73 65 29 2c 20 47 55 49 4c 61 79 6f 75 ut.ExpandHeight(false),.GUILayou
14340 74 2e 45 78 70 61 6e 64 57 69 64 74 68 28 66 61 6c 73 65 29 29 3b 0d 0a 20 20 20 20 20 20 20 20 t.ExpandWidth(false));..........
14360 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 65 6c 73 65 0d 0a 20 20 20 20 20 20 20 ....}..............else.........
14380 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 45 64 69 74 6f 72 47 55 .....{..................EditorGU
143a0 49 4c 61 79 6f 75 74 2e 42 65 67 69 6e 56 65 72 74 69 63 61 6c 28 45 64 69 74 6f 72 53 74 79 6c ILayout.BeginVertical(EditorStyl
143c0 65 73 2e 68 65 6c 70 42 6f 78 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 es.helpBox);....................
143e0 70 69 78 65 6c 52 65 63 74 20 3d 20 47 55 49 4c 61 79 6f 75 74 55 74 69 6c 69 74 79 2e 47 65 74 pixelRect.=.GUILayoutUtility.Get
14400 41 73 70 65 63 74 52 65 63 74 28 31 66 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a AspectRect(1f);..............}..
14420 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6d 5f ..........................if.(m_
14440 46 6f 6e 74 41 74 6c 61 73 54 65 78 74 75 72 65 20 21 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 FontAtlasTexture.!=.null).......
14460 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 45 64 69 74 6f 72 .......{..................Editor
14480 47 55 49 2e 44 72 61 77 54 65 78 74 75 72 65 41 6c 70 68 61 28 70 69 78 65 6c 52 65 63 74 2c 20 GUI.DrawTextureAlpha(pixelRect,.
144a0 6d 5f 46 6f 6e 74 41 74 6c 61 73 54 65 78 74 75 72 65 2c 20 53 63 61 6c 65 4d 6f 64 65 2e 53 74 m_FontAtlasTexture,.ScaleMode.St
144c0 72 65 74 63 68 54 6f 46 69 6c 6c 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 retchToFill);..............}....
144e0 20 20 20 20 20 20 20 20 20 20 65 6c 73 65 20 69 66 20 28 6d 5f 53 61 76 65 64 46 6f 6e 74 41 74 ..........else.if.(m_SavedFontAt
14500 6c 61 73 20 21 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 las.!=.null)..............{.....
14520 20 20 20 20 20 20 20 20 20 20 20 20 20 45 64 69 74 6f 72 47 55 49 2e 44 72 61 77 54 65 78 74 75 .............EditorGUI.DrawTextu
14540 72 65 41 6c 70 68 61 28 70 69 78 65 6c 52 65 63 74 2c 20 6d 5f 53 61 76 65 64 46 6f 6e 74 41 74 reAlpha(pixelRect,.m_SavedFontAt
14560 6c 61 73 2c 20 53 63 61 6c 65 4d 6f 64 65 2e 53 74 72 65 74 63 68 54 6f 46 69 6c 6c 29 3b 0d 0a las,.ScaleMode.StretchToFill);..
14580 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 45 64 69 ............}................Edi
145a0 74 6f 72 47 55 49 4c 61 79 6f 75 74 2e 45 6e 64 56 65 72 74 69 63 61 6c 28 29 3b 0d 0a 20 20 20 torGUILayout.EndVertical();.....
145c0 20 20 20 20 20 7d 0d 0a 0d 0a 0d 0a 20 20 20 20 20 20 20 20 76 6f 69 64 20 43 68 65 63 6b 46 6f .....}..............void.CheckFo
145e0 72 4c 65 67 61 63 79 47 6c 79 70 68 52 65 6e 64 65 72 4d 6f 64 65 28 29 0d 0a 20 20 20 20 20 20 rLegacyGlyphRenderMode()........
14600 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 53 70 65 63 69 61 6c 20 68 61 6e 64 ..{..............//.Special.hand
14620 6c 69 6e 67 20 66 6f 72 20 6c 65 67 61 63 79 20 67 6c 79 70 68 20 72 65 6e 64 65 72 20 6d 6f 64 ling.for.legacy.glyph.render.mod
14640 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 28 69 6e 74 29 6d 5f 47 6c 79 70 68 52 e..............if.((int)m_GlyphR
14660 65 6e 64 65 72 4d 6f 64 65 20 3c 20 30 78 31 30 30 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 enderMode.<.0x100)..............
14680 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 77 69 74 63 68 20 28 28 69 6e 74 29 {..................switch.((int)
146a0 6d 5f 47 6c 79 70 68 52 65 6e 64 65 72 4d 6f 64 65 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 m_GlyphRenderMode)..............
146c0 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 61 73 65 20 ....{......................case.
146e0 30 3a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 47 6c 0:..........................m_Gl
14700 79 70 68 52 65 6e 64 65 72 4d 6f 64 65 20 3d 20 47 6c 79 70 68 52 65 6e 64 65 72 4d 6f 64 65 2e yphRenderMode.=.GlyphRenderMode.
14720 53 4d 4f 4f 54 48 5f 48 49 4e 54 45 44 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 SMOOTH_HINTED;..................
14740 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ........break;..................
14760 20 20 20 20 63 61 73 65 20 31 3a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ....case.1:.....................
14780 20 20 20 20 20 6d 5f 47 6c 79 70 68 52 65 6e 64 65 72 4d 6f 64 65 20 3d 20 47 6c 79 70 68 52 65 .....m_GlyphRenderMode.=.GlyphRe
147a0 6e 64 65 72 4d 6f 64 65 2e 53 4d 4f 4f 54 48 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 nderMode.SMOOTH;................
147c0 20 20 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..........break;................
147e0 20 20 20 20 20 20 63 61 73 65 20 32 3a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ......case.2:...................
14800 20 20 20 20 20 20 20 6d 5f 47 6c 79 70 68 52 65 6e 64 65 72 4d 6f 64 65 20 3d 20 47 6c 79 70 68 .......m_GlyphRenderMode.=.Glyph
14820 52 65 6e 64 65 72 4d 6f 64 65 2e 52 41 53 54 45 52 5f 48 49 4e 54 45 44 3b 0d 0a 20 20 20 20 20 RenderMode.RASTER_HINTED;.......
14840 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0d 0a 20 20 20 20 20 ...................break;.......
14860 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 61 73 65 20 33 3a 0d 0a 20 20 20 20 20 20 20 20 ...............case.3:..........
14880 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 47 6c 79 70 68 52 65 6e 64 65 72 4d 6f 64 ................m_GlyphRenderMod
148a0 65 20 3d 20 47 6c 79 70 68 52 65 6e 64 65 72 4d 6f 64 65 2e 52 41 53 54 45 52 3b 0d 0a 20 20 20 e.=.GlyphRenderMode.RASTER;.....
148c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0d 0a 20 20 20 .....................break;.....
148e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 61 73 65 20 36 3a 0d 0a 20 20 20 20 20 20 .................case.6:........
14900 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 61 73 65 20 37 3a 0d 0a 20 20 20 20 20 20 20 20 20 ..............case.7:...........
14920 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 47 6c 79 70 68 52 65 6e 64 65 72 4d 6f 64 65 ...............m_GlyphRenderMode
14940 20 3d 20 47 6c 79 70 68 52 65 6e 64 65 72 4d 6f 64 65 2e 53 44 46 41 41 3b 0d 0a 20 20 20 20 20 .=.GlyphRenderMode.SDFAA;.......
14960 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0d 0a 20 20 20 20 20 ...................break;.......
14980 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 ...........}..............}.....
149a0 20 20 20 20 20 7d 0d 0a 0d 0a 0d 0a 20 20 20 20 20 20 20 20 2f 2f 20 47 65 74 20 4b 65 72 6e 69 .....}..............//.Get.Kerni
149c0 6e 67 20 50 61 69 72 73 0d 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 54 4d 50 5f 46 6f 6e ng.Pairs..........public.TMP_Fon
149e0 74 46 65 61 74 75 72 65 54 61 62 6c 65 20 47 65 74 4b 65 72 6e 69 6e 67 54 61 62 6c 65 28 29 0d tFeatureTable.GetKerningTable().
14a00 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 47 6c 79 70 68 50 61 69 .........{..............GlyphPai
14a20 72 41 64 6a 75 73 74 6d 65 6e 74 52 65 63 6f 72 64 5b 5d 20 61 64 6a 75 73 74 6d 65 6e 74 52 65 rAdjustmentRecord[].adjustmentRe
14a40 63 6f 72 64 73 20 3d 20 46 6f 6e 74 45 6e 67 69 6e 65 2e 47 65 74 47 6c 79 70 68 50 61 69 72 41 cords.=.FontEngine.GetGlyphPairA
14a60 64 6a 75 73 74 6d 65 6e 74 54 61 62 6c 65 28 6d 5f 41 76 61 69 6c 61 62 6c 65 47 6c 79 70 68 73 djustmentTable(m_AvailableGlyphs
14a80 54 6f 41 64 64 2e 54 6f 41 72 72 61 79 28 29 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 ToAdd.ToArray());...............
14aa0 20 69 66 20 28 61 64 6a 75 73 74 6d 65 6e 74 52 65 63 6f 72 64 73 20 3d 3d 20 6e 75 6c 6c 29 0d .if.(adjustmentRecords.==.null).
14ac0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 6e 75 6c 6c 3b 0d 0a 0d .................return.null;...
14ae0 0a 20 20 20 20 20 20 20 20 20 20 20 20 54 4d 50 5f 46 6f 6e 74 46 65 61 74 75 72 65 54 61 62 6c .............TMP_FontFeatureTabl
14b00 65 20 66 6f 6e 74 46 65 61 74 75 72 65 54 61 62 6c 65 20 3d 20 6e 65 77 20 54 4d 50 5f 46 6f 6e e.fontFeatureTable.=.new.TMP_Fon
14b20 74 46 65 61 74 75 72 65 54 61 62 6c 65 28 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 tFeatureTable();................
14b40 66 6f 72 20 28 69 6e 74 20 69 20 3d 20 30 3b 20 69 20 3c 20 61 64 6a 75 73 74 6d 65 6e 74 52 65 for.(int.i.=.0;.i.<.adjustmentRe
14b60 63 6f 72 64 73 2e 4c 65 6e 67 74 68 3b 20 69 2b 2b 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 cords.Length;.i++)..............
14b80 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 6e 74 46 65 61 74 75 72 65 54 61 {..................fontFeatureTa
14ba0 62 6c 65 2e 67 6c 79 70 68 50 61 69 72 41 64 6a 75 73 74 6d 65 6e 74 52 65 63 6f 72 64 73 2e 41 ble.glyphPairAdjustmentRecords.A
14bc0 64 64 28 6e 65 77 20 54 4d 50 5f 47 6c 79 70 68 50 61 69 72 41 64 6a 75 73 74 6d 65 6e 74 52 65 dd(new.TMP_GlyphPairAdjustmentRe
14be0 63 6f 72 64 28 61 64 6a 75 73 74 6d 65 6e 74 52 65 63 6f 72 64 73 5b 69 5d 29 29 3b 0d 0a 20 20 cord(adjustmentRecords[i]));....
14c00 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 6e 74 46 ..........}................fontF
14c20 65 61 74 75 72 65 54 61 62 6c 65 2e 53 6f 72 74 47 6c 79 70 68 50 61 69 72 41 64 6a 75 73 74 6d eatureTable.SortGlyphPairAdjustm
14c40 65 6e 74 52 65 63 6f 72 64 73 28 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 entRecords();................ret
14c60 75 72 6e 20 66 6f 6e 74 46 65 61 74 75 72 65 54 61 62 6c 65 3b 0d 0a 20 20 20 20 20 20 20 20 7d urn.fontFeatureTable;..........}
14c80 0d 0a 20 20 20 20 7d 0d 0a 7d 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ......}..}......................
14ca0 1c 00 00 00 54 4d 50 72 6f 5f 46 6f 6e 74 41 73 73 65 74 43 72 65 61 74 6f 72 57 69 6e 64 6f 77 ....TMPro_FontAssetCreatorWindow
14cc0 15 00 00 00 54 4d 50 72 6f 2e 45 64 69 74 6f 72 55 74 69 6c 69 74 69 65 73 00 00 00 ....TMPro.EditorUtilities...