28. September 2022

Neue Schriftart- und Textfunktion

Bild zu Schriftarten in Evergine

In diesem Release unterstützt Evergine Schriftarten und Texte ohne externe Bibliotheken. Früher mussten Sie Bibliotheken wie NoesisGUI oder ImGui verwenden, um Text in einem Evergine-Projekt darzustellen. Das ist jetzt nicht mehr nötig, da diese neue Funktion den Evergine-Bibliotheken und Evergine Studio hinzugefügt wurde.

Evergine verwendet die Multi-Channel-Signed-Distance-Field-Technik, um aus der ursprünglichen Schriftartdatei einen vorgerenderten Sprite-Font-Atlas zu erzeugen. Ein Font-Atlas wird in der Regel im Texturspeicher abgelegt und zum Zeichnen von Text in Echtzeit-Rendering-Kontexten verwendet. Das Hauptproblem herkömmlicher Sprite-Atlanten besteht darin, dass die Glyphen in einer festgelegten Auflösung vorgerendert werden. Wenn Sie einen solchen Sprite-Atlas verwenden, um größeren Text zu rendern, oder sich die Kamera nahe am Text befindet, können Auflösungsverluste und Aliasing am Text sichtbar werden. Multi-Channel Signed Distance Fields ermöglichen es, Schriftglyphen bei unterschiedlichen Schriftgrößen und selbst bei geringem Kameraabstand zum Text mit minimalem Auflösungsverlust zu rendern.

Multi-Channel Signed Distance Field ist eine verbesserte Technik auf Basis der bekannten Distance-Field-Technik von Valve. Diese verbesserte Technik wurde von Viktor Chlumsky entwickelt. Weitere Informationen finden Sie in seinem Paper.

Bild zum Multi-Channel Distance Field

Evergine ermöglicht das Einbinden von TrueType-Schriftarten (.ttf) oder OpenType-Schriftarten (.otf). Wenn Sie diese Dateien in Evergine Studio ziehen, wird automatisch ein neues Schriftart-Asset erstellt.

Bild zu TrueType und OpenType in Evergine

Evergine Studio wurde um einen neuen Font-Editor erweitert, der sich per Doppelklick auf ein Schriftart-Asset öffnet. Dieser neue Editor bietet eine schnelle Möglichkeit zu testen, wie ein Text mit einer bestimmten Schriftart gerendert wird, und Sie können den für den erzeugten Sprite-Font-Atlas verwendeten Zeichensatz anpassen und dem Standardzeichensatz zusätzliche Sonderzeichen hinzufügen.

Bild zum Font-Editor in Evergine

Um das Hinzufügen von Text zu Ihrer Evergine-Szene zu erleichtern, wurde ein neues Menü hinzugefügt, mit dem Sie eine Entity mit den neuen Textkomponenten erstellen können: Text3DMesh und Text3DRenderer.

Bild zum Menü der Entity-Hierarchie in Evergine

Die Komponente Text3DRenderer enthält einen Debug-Modus, mit dem Sie die Textkonfiguration wie Textausrichtung, Umbruch, Ursprung usw. besser nachvollziehen können.

Bild zum Debug-Modus für Schriftarten und Text in Evergine

 

Weitere Informationen zur Verwendung dieser neuen Funktion finden Sie im neuen Dokumentationsabschnitt zu Schriftarten und Texten.

Jorge Canton
Autor
Jorge Cantón
Plain Concepts Research