Attualmente sto implementando il rendering del testo nel mio motore di gioco e ho deciso di utilizzare BMfont di AngelCode per generare trame dei caratteri, e quindi avere quads con texture di rendering OpenGL per ogni personaggio. Funzionava alla grande, anche quando eseguivo il rendering di ogni singolo glifo supportato da FreeFont (in particolare FreeMono), fino a quando non ho provato a renderizzare il giapponese (il mio font giapponese preferito è Noto, fornito da Google).
Il rendering di ogni singolo glifo supportato da FreeMono a 16px ha prodotto una singola trama a 10 bit 1024x1024, perfettamente ragionevole considerando quante lingue sono coperte da esso. Il rendering di tutto ciò che è supportato da Noto Japanese, alla stessa dimensione, ha comportato 13 volte più trame, e a questa dimensione la maggior parte dei glifi è troppo stretta per essere leggibile (non riesco a leggere il giapponese, ma se potessi penso che lo farei ho ancora molti problemi a leggere questo testo).
La mia domanda è duplice:
1) In che modo i giochi o le app mobili gestiscono il piccolo testo giapponese? Si attaccano a un sottoinsieme del kanji, usano un carattere speciale o c'è una dimensione minima del carattere?
2) In che modo i giochi in genere gestiscono il numero assurdamente enorme di glifi richiesti da giapponese, cinese, coreano e altre lingue? Usano FreeType (o qualcosa di simile) per rendere il testo al volo?
Nota: ho provato Meiryo (che non ho la licenza da usare nel mio gioco) e il risultato era molto più leggibile a 16px (comunque ancora angusto), ma richiedevo comunque 14 trame per adattarsi a tutto.