Chinese glyphs show up in Animate, missing in game

I’m using Scaleform and a shared font library. I think I set everything up correctly. All of the English and Japanese glyphs show up in the game. My problem is that a lot of the Chinese glyphs are missing, even though the font appears to have those glyphs, and I seem to be exporting/importing all of the glyphs.

  1. When I copy/paste some Chinese text into Animate, into a text box with my desired font (embedded or not, it shows up the same because it’s static text), and then run the Scaleform launcher, all of the Chinese text displays correctly. This tells me that the font has all of the necessary Chinese glyphs.
  2. The next step is embedding all of the necessary fonts with their glyphs in gfxfontlib.swf. In gfxfontlib.fla, in the Font Properties window, I make sure to embed “All” for the character range. And for good measure, I check all of the other checkboxes too. Then I save and export the file as gfxfontlib.swf. Then in my menu fla, I import the font, and once again I go into the Font Properties window and check “All” and just to be doubly sure, I check all of the other boxes too.
  3. Because you can’t test swf files with font sharing in the Scaleform launcher, I have to trust that everything is working well at that point.
  4. When I start my game, I change the language to English, and all the glyphs are there. I change the language to Japanese, and all the glyphs are there. I change the language to Chinese, and about 2/3 of the glyphs are there. They were all there in step 1, so I don’t think it’s a problem with the font not having the glyphs. I think there’s a problem with how the fonts get embedded or loaded.

Any ideas how to fix this?

I also tried experimenting with a different font. But I don’t see an easy way to change the font based on the game’s language. I thought it would be as easy as editing gfxui.chn to point to a different FontLib file that uses a different font. But that doesn’t seem to have any effect. I think all of the individual menu swfs already look for their fonts in the designated font library swf when they’re exported. Anyone know of a way to test with a different font without editing and reimporting all of my menu files?

Well, I found something…

I just kept trying random Chinese fonts. I embedded them in gfxfontlib.swf, exported for runtime sharing (and the font map swf and gfxui.[language]). Then I tried running the game to see how it looked. Some fonts did not include any Chinese characters. Some included some Chinese characters. And it looks like 微軟正黑體 and 微软雅黑 include all the Chinese characters I need. I have no idea why all of the fonts looked fine in Animate, and why only some of them actually work when exported for runtime sharing. But it seems those are my only two options so far. I’ll keep looking, because they’re kind of ugly monospaced fonts.

Edit: OK, there are a couple of Chinese fonts that don’t look terrible. 宋体 is a font that looks a little more like brush-stroke calligraphy and it works with runtime font sharing. 微软雅黑 is fine for small unadorned text. I wish I knew why some fonts work and some don’t. I could have saved an entire day of work if I just picked a font that worked.

found this not sure if it will help. All about udk fonts