はい、私が知っている2つがあります。秘訣は、Quartz(CGContext *関数)を使用してテクスチャにレンダリングしてから、ユーザーが表示できるようにそのテクスチャをレンダリングする必要があることです。
パフォーマンスが心配な場合は、Quartzを使用してテクスチャアトラスを生成することもできます。
フォントのレンダリングの基本を理解すれば、テクスチャ生成ツール(xCode)を作成するのはかなり簡単です。
あなたがしなければならないのは、有効なCGContextを持っていることだけです。このテクスチャローダーには、非常に優れたサンプルコードがいくつかあります。
基本的に、コードは次のようになります。
// Create the cgcontext as shown by links above
// Now to render text into the cg context,
// the drop the raw data behind the cgcontext
// to opengl. 2 ways to do this:
// 1) CG* way: (advantage: easy to use color)
CGContextSelectFont(cgContext, "Arial", 24, kCGEncodingMacRoman);
// set color to yellow text
CGContextSetRGBFillColor(cgContext, 1, 1, 0, 1) ; // Be sure to use FILL not stroke!
// draw it in there
CGContextShowTextAtPoint(cgContext, 20, 20, "HI THERE", strlen("HI THERE") ) ;
/*
// WAY #2: this way it's always black and white
// DRAW SOME TEXT IN IT
// that works ok but let's try cg to control color
UIGraphicsPushContext(cgContext);
UIFont *helv = [UIFont fontWithName:@"Helvetica" size:[UIFont systemFontSize]];
NSString* msg = @"Hi hello" ;
[msg drawInRect:CGRectMake(0,0,pow2Width,pow2Height) withFont:helv] ;
UIGraphicsPopContext();
*/
// put imData into OpenGL's memory
glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, pow2Width, pow2Height, 0, GL_RGBA, GL_UNSIGNED_BYTE, imData);
CHECK_GL ;
見栄えがよく、アンチエイリアス処理された状態で表示されます。
iOSフォントのリストはここにあり、プリレンダーはここにあります