Có rất nhiều cách - tùy thuộc vào những gì bạn muốn ... Giống như mọi nơi khác, không có gì giống như "giải pháp tốt nhất". Plattform nào là mục tiêu của bạn? Bạn đang sử dụng ngôn ngữ nào Điều gì về thay đổi kích thước văn bản / xoay - có cần thiết không? Bạn có cần hiển thị TrueTypeFonts không? Có gì về đa ngôn ngữ / Unicode? Làm thế nào để bạn muốn lưu trữ văn bản của bạn (mã hóa, vv)?
Trước đây tôi cũng đã sử dụng FTGL, cũng như freetype thuần túy (http://www.freetype.org/ FTGL dựa trên điều này), các loại phông chữ bitmap khác nhau, phông chữ phác thảo ... Bây giờ tôi hầu như nghiện bitmap phông chữ, nhưng đó chỉ là sở thích cá nhân của tôi. Bởi vì tôi không muốn đối phó với các bộ ký tự khác nhau, mã hóa và những thứ tương tự nữa - và việc cấp phép cho bitmapfonts cũng dễ dàng hơn và rẻ hơn so với TrueTypeFonts. Và nó có thể sử dụng trên mọi plattform có thể tải hình ảnh. Tôi chỉ đơn giản sử dụng một quad trong openGL và ánh xạ một phần kết cấu của tôi lên nó. Mặt khác là: Phông chữ sẽ chỉ có thể thay đổi kích thước sạch ở hệ số khoảng +/- 50%. Nếu bạn có thể sống với điều đó, tôi sẽ đề nghị sử dụng bitmapfont.
Nếu bạn cũng phải đối phó với các bảng mã / bảng mã khác nhau, bạn nên tìm cách tải và sử dụng TrueTypeFonts (như với freetype, sử dụng thư viện khác hoặc với sự cấy ghép của riêng bạn) ...
Cũng có một cái nhìn về các hướng dẫn khác nhau về chủ đề này:
http://nehe.gamedev.net/data/lessons/lesson.asp?lesson=13 Phông chữ Bitmap
http://nehe.gamedev.net/data/lessons/lesson.asp?lesson=14 Phông chữ phác thảo
http://nehe.gamedev.net/data/lessons/lesson.asp?lesson=15 Phông chữ phác thảo kết cấu
http://nehe.gamedev.net/data/lessons/lesson.asp?lesson=17 Phông chữ kết cấu 2D
Chúc may mắn!