FreeType2 - Mehrere TTF in einem FontAtlas

Programmiersprachen, APIs, Bibliotheken, Open Source Engines, Debugging, Quellcode Fehler und alles was mit praktischer Programmierung zu tun hat.
Antworten
Raven280438
Establishment
Beiträge: 140
Registriert: 03.10.2010, 20:14

FreeType2 - Mehrere TTF in einem FontAtlas

Beitrag von Raven280438 »

Hi,

ich arbeite gerade an einer kleinen Font-Engine in OpenGL auf Grundlage von FreeType2.

Rein Interesse-halber: wenn ich in meinem Spiel mit mehreren verschiedenen Schriftarten arbeite, würde es dann Sinn machen, wenn ich mehrere TTF-Files in einen FontAtlas übertrage und damit nur einen Großen habe?
Oder doch lieber mehrere kleinere Font-Atlase nehmen, und beim Rendern immer wechseln?


Gruß
Benutzeravatar
Jonathan
Establishment
Beiträge: 2373
Registriert: 04.08.2004, 20:06
Kontaktdaten:

Re: FreeType2 - Mehrere TTF in einem FontAtlas

Beitrag von Jonathan »

Würde ich schon so sagen. Ich mache es so, dass ich eine Textur erstelle und alle Fonts in allen Größen die ich benutzen will da rein packe. Allerdings mache ich momentan noch nicht so wirklich viel mit Text, von daher weiß ich noch nicht, wie das langfristig aussehen wird. Eins ist jedenfalls klar: Wenn man die Glyphen geschickt anordnet, passen eine ganze Menge in eine Textur.

Ich habe vor kurzem ein bisschen was über Textrendering geschrieben, vielleicht ist das ja inspirierend:
http://zfx.info/viewtopic.php?f=11&t=35 ... 750#p44750

Auf jeden Fall ist auf der Seite von FreeTypeGL auch der Algorithmus verlinkt, mit dem der Glyphenatlas erstellt wird.

Letztendlich ist es natürlich immer gut, möglichst wenig Einstellungen beim Rendern wechseln zu müssen. Ich mach es so, dass alle Texte zentral gerendert werden, ichb rauch also nur einmal die Textur und die Shader zu setzen und kann dann alle Vertexbuffer mit Text drin nacheinander wegrendern. Ist aus meiner Sicht ziemlich effizient. Wobei man ja in der Regel nicht unglaublich viel Text hat, man muss sich also schon relativ dusselig anstellen, damit Textrendering überhaupt ein Flaschenhals wird.
Lieber dumm fragen, als dumm bleiben!
https://jonathank.de/games/
Antworten