Texte skalieren mit veränderter Resolution um auch bei kleineren Anzeigegrößen noch lesbar zu sein und gut auszusehen.
Dies geschieht durch vorher definierte Textgrößen, und Meilensteine wo diese sich ändern.
hier sind auch Variationen zu den Texten wenn die Originalveränderung zu groß ist.
Es ist hier außerdem eine Originalgröße vermerkt, welche immer gleich bleibt, die Konstante (const)
Die eigentliche Rechnung erfolgt hier, die Konstante der Originalgröße wird mal der Temporären Schriftgröße gerechnet.
Die Temporäre Schriftgröße ist eine Float der Prozentualen Veränderung der Bildschirmgröße.
die Meilensteine werden nur benutzt wenn diese wirklich benötigt werden, wenn zum Beispiel der Text bei einer Resolution von 800×600 zu klein wäre, kann man die Variablen über den BildschirmSkalierer direkt ansteuern und verwenden.
Diese Methode ist allerdings nicht Dynamisch, und sollte nur in Notfällen verwendet werden.
Die Funktion angewandt sieht dann so aus, die Rechnung wird im BildschirmSkalierer Modul ausgeführt, wenn dieses in der Szene mit eingebunden wurde, ansonsten muss die _fontSizeRechner() Funktion im _Process ausgeführt werden.
So verwende ich in meinem Game Dynamische Text-Skalierung, hier ist der code für die Funktionen:
Die FontSizeRechner Funktion selbst (Die Rechnung):
func _fontSizeRechner():
var tempFontSize: float = DisplayGroesse.x / REFDISPLAYWIDTH
HeaderText = HEADER * tempFontSize
VarriationHeaderText = VHEADER * tempFontSize
ContentText = CTEXT * tempFontSize
VarriationContentText = VCTEXT * tempFontSize
Die Variablen und Constanten:
const REFDISPLAYWIDTH: float = 1920
var HeaderText = 70
const HEADER = 70
var VarriationHeaderText = 60
const VHEADER = 60
var ContentText = 40
const CTEXT = 40
var VarriationContentText = 30
const VCTEXT = 30