I recently spent a few days shoring up the localization support on the game I'm working on, and came across the rather interesting case of handling multiple languages (and their fonts) simultaneously in the UI.
We allow the user to launch the game in one of our supported languages, and that's the language used to display all text. However when it comes to input, we use the active input locale for character conversion, which may or may not be identical to the launch language. The issue we're having is when the user launches the game in one language, like English, but switches their input locale at run-time to be another language that has a unique set of glyphs, like Korean, the currently loaded font(s) don't have all the necessary glyphs.
The most obvious solution would be One Font To Rule Them All, containing every glyph for every supported language, but the publisher has already locked in our font set so that's a non-starter. The *next* most obvious solution would be to dynamically load and use the proper font(s) on input fields when the input locale changes, however we've run into an edge case I'm not sure how to handle: the user begins typing in one language, switches to another language mid-sentence, and continues typing in that new language. I'm not sure how to handle that situation short of enabling HTML on the text fields, but that in and of itself would have its own host of issues and fallout.
Does anyone have any experience in this area of UI localization? I imagine that most popular online games handle this situation gracefully and that there is a (hopefully) "elegant" solution still available to me?