Java-Gaming.org Hi !
Featured games (91)
games approved by the League of Dukes
Games in Showcase (761)
Games in Android Showcase (229)
games submitted by our members
Games in WIP (845)
games currently in development
News: Read the Java Gaming Resources, or peek at the official Java tutorials
 
    Home     Help   Search   Login   Register   
Pages: [1]
  ignore  |  Print  
  Best way to create/load and render fonts?  (Read 688 times)
0 Members and 1 Guest are viewing this topic.
Offline BitCrack

Innocent Bystander


Exp: 1-3 months



« Posted 2018-01-12 15:24:39 »

I am using LWJGL 3.1.5 with that OpenGL, STB
I wonder how to render fonts (also strings) in places where the string will change.

I tried searching but I've only found tutorials/snippets for C++  Undecided
Thankies  Smiley
Offline DesertCoockie
« Reply #1 - Posted 2018-01-13 13:30:08 »

I've always used BitMap fonts to do this.
Basically, I used awt.Graphics2D to draw every character I need to an image file while storing the pixel coordinates in a text file (you also just could use a freely available bitmap font program). I then just have to load this file and every time I want to render a character, I look up its position in the texture, bind this part and render it.

(If you want, I could post my files here, but they are quite large and currently undocumented.)
Offline quew8

JGO Knight


Medals: 53



« Reply #2 - Posted 2018-01-16 17:30:10 »

You can render fonts completely dynamically at runtime with LWJGL3. Basically STB is a wonderful library that provides two ways to render fonts - drawing the geometry directly (EasyFont) and generating bitmap textures and providing texture coords (Truetype). I'd recommend the latter as being slightly more complicated but better and far easier to work into an existing render pipeline.

Check out the LWJGL demos (which are also wonderful and kept remarkably up to date) for examples of both: https://github.com/LWJGL/lwjgl3/tree/master/modules/core/src/test/java/org/lwjgl/demo/stb
EasyFont.java does the geometry base rendering.
Truetype.java does the bitmap based rendering.
FontDemo is the superclass for both demos which you'll probably have to refer to.
Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline Damocles
« Reply #3 - Posted 2018-01-16 19:30:50 »

Here is a nice Tool to create Font Bitmaps

Codehead’s Bitmap Font Generator
http://www.codehead.co.uk/cbfg/
Pages: [1]
  ignore  |  Print  
 
 

 
EgonOlsen (348 views)
2018-06-10 19:43:48

EgonOlsen (342 views)
2018-06-10 19:43:44

EgonOlsen (290 views)
2018-06-10 19:43:20

DesertCoockie (514 views)
2018-05-13 18:23:11

nelsongames (788 views)
2018-04-24 18:15:36

nelsongames (775 views)
2018-04-24 18:14:32

ivj94 (1230 views)
2018-03-24 14:47:39

ivj94 (393 views)
2018-03-24 14:46:31

ivj94 (1057 views)
2018-03-24 14:43:53

Solater (412 views)
2018-03-17 05:04:08
Java Gaming Resources
by philfrei
2017-12-05 19:38:37

Java Gaming Resources
by philfrei
2017-12-05 19:37:39

Java Gaming Resources
by philfrei
2017-12-05 19:36:10

Java Gaming Resources
by philfrei
2017-12-05 19:33:10

List of Learning Resources
by elect
2017-03-13 14:05:44

List of Learning Resources
by elect
2017-03-13 14:04:45

SF/X Libraries
by philfrei
2017-03-02 08:45:19

SF/X Libraries
by philfrei
2017-03-02 08:44:05
java-gaming.org is not responsible for the content posted by its members, including references to external websites, and other references that may or may not have a relation with our primarily gaming and game production oriented community. inquiries and complaints can be sent via email to the info‑account of the company managing the website of java‑gaming.org
Powered by MySQL Powered by PHP Powered by SMF 1.1.18 | SMF © 2013, Simple Machines | Managed by Enhanced Four Valid XHTML 1.0! Valid CSS!