If i remember a fast way to do text/2d over 3d in b3d is to have a 3d quad (or a flat cube would do) attached to the camera as a child and with "in-front" entityorder() set. Then scale it so it perfectly fits the camera viewport. Or just the area you need to print to.
Then texture the quad with a createtexture(1024,1024) (for example or just 512x512 for a small screen area :)
Then render the text to the quads texturebuffer rather than to the front/backbuffer. This way you avoid the old 2d over 3d problem on some cards.
It doesnt look as good as 2D on 3D but is much faster and is great for simple scoreboards/debug etc.
Check out the radar and meters in these screens, they use 2 separate 'hud' quads. The score text is just a bitmap font similar to described by the others above:
Then texture the quad with a createtexture(1024,1024) (for example or just 512x512 for a small screen area :)
Then render the text to the quads texturebuffer rather than to the front/backbuffer. This way you avoid the old 2d over 3d problem on some cards.
It doesnt look as good as 2D on 3D but is much faster and is great for simple scoreboards/debug etc.
Check out the radar and meters in these screens, they use 2 separate 'hud' quads. The score text is just a bitmap font similar to described by the others above: