本帖最后由 shane007 于 2011-2-15 11:31 编辑
9 j2 _& |' W) d! x4 |, S
8 n. J" p1 K5 V9 v9 Y. n" o假设游戏共用到10种字体,为字体1 - 字体10。
$ Y8 x, H' ?/ ]& H b; F假设游戏字幕所有不重复字符为2000个。3 B' d; j( m7 @( D7 G( V, g% p
则目前的字体文件定义方式,在游戏启动初期,载入内存的字体数为2000 X 10 个,即20000个。, X+ M8 O- l5 c5 `
很明显,其中有冗余。5 n) o. [3 o% h* w
我们假设- `. |, D; V+ t" F( E' m" P8 o3 S
使用字体1的字幕中包含的不重复的字符数是a个
6 j# U$ ~* {! s: n使用字体2的字幕中包含的不重复的字符数是b个
4 x7 p8 |4 T% n8 B+ m* \。。
g! ?" H- J9 g4 ] s% R) w使用字体10的字幕中包含的不重复的字符数是j个% V% L2 q4 s- E0 _! D/ |
! K' z- C4 }8 T# J
2000<a+b+c+d+e+f+g+h+i+j<20000.
" x( V, T) M t, ^
5 m2 w) _" k5 Q很明显,我们只要找到各条字幕所对应字体,就能使游戏启动初期,载入内存的字体数降低为7 i) y3 T4 m( l/ E# [" g
a+b+c+d+e+f+g+h+i+j个。
0 j6 j* I! ~6 F2 i- ~8 D
# v. u4 ]4 O& }: S' O' o* ?0 g! T% k% Y; w
|