Tôi hiện đang trong quá trình triển khai kết xuất văn bản trong công cụ trò chơi của mình và tôi đã quyết định sử dụng BMfont của AngelCode để tạo họa tiết phông chữ, và sau đó có các hình tứ giác kết cấu OpenGL cho mỗi nhân vật. Điều này hoạt động rất tốt, ngay cả khi kết xuất mọi glyph duy nhất được FreeFont hỗ trợ (cụ thể là FreeMono), cho đến khi tôi cố gắng kết xuất tiếng Nhật (Phông chữ tiếng Nhật của tôi là Noto, do Google cung cấp).
Kết xuất mọi glyph duy nhất được FreeMono hỗ trợ ở 16px dẫn đến kết cấu 8 bit 1024x1024, hoàn toàn hợp lý khi xem xét có bao nhiêu ngôn ngữ được bao phủ bởi nó. Kết xuất mọi thứ được hỗ trợ bởi Noto Nhật Bản, ở cùng kích thước, dẫn đến số lượng kết cấu gấp 13 lần và ở kích thước này, hầu hết các glyphs quá chật chội không thể đọc được (tôi không thể đọc được tiếng Nhật, nhưng nếu tôi có thể nghĩ thì tôi sẽ vẫn còn nhiều rắc rối khi đọc văn bản này).
Câu hỏi của tôi có hai mặt:
1) Làm thế nào để trò chơi, hoặc ứng dụng di động, xử lý văn bản tiếng Nhật nhỏ? Họ có dính vào một tập hợp con của chữ Hán, sử dụng một phông chữ đặc biệt hoặc có kích thước phông chữ tối thiểu không?
2) Làm thế nào để các trò chơi thường xử lý số lượng glyphs khổng lồ theo yêu cầu của tiếng Nhật, tiếng Trung, tiếng Hàn và các ngôn ngữ khác? Họ có sử dụng FreeType (hoặc một cái gì đó tương tự) để hiển thị văn bản đang hoạt động không?
Lưu ý: Tôi cố gắng Meiryo (mà tôi không có giấy phép sử dụng trong trò chơi của tôi) và kết quả là xa hơn có thể đọc được ở 16px (vẫn còn chật chội dù), nhưng vẫn yêu cầu 14 textures để phù hợp với tất cả mọi thứ.