Frage

Während ich das grundlegende Wissen von OpenGL habe, beginne ich nur mit libgdx.

Meine Frage ist: Warum, den gleichen Code mit dem gleichen Code, sondern nur von orthographischen Camera in PerspectiveCamera wechselt, dass keine meiner Spritebatches mehr angezeigt wird?

Hier ist der Code, den ich verwende:

Die Create () -Methode: generasacodicetagpre.

und das Render () -Methode: generasacodicetagpre.

Jetzt, wenn in meiner Größe (Int Width, Int Height) -Methode ich die Kamera wie so einrichten: generasacodicetagpre.

Ich erhalte folgendes:

Bildbeschreibung hier eingeben

aber wenn ich den Kameratyp wechsle: generasacodicetagpre.

Ich erhalte folgendes:

Bildbeschreibung hier eingeben

Der Grund, warum ich frage, ist, dass Libgdx wirklich gefallen hat, die Fähigkeit in der Fähigkeit, Text (Schriftart) in OpenGL zu zeichnen. In ihren Beispielen verwenden sie jedoch ein Spritebatch, das sie zum Pfad zum Schriftsteinen auf den Weg, und sie verwenden auch die ortho-Kamera. Ich würde es gerne wissen, wenn SpriteBatch und Font-Zeichnungsfunktionalität mit PerspectiveCamera arbeitet.

War es hilfreich?

Lösung

Nun, ok, ich habe es gelöst:

kurze Antwort:

spriteBatch verwendet intern ein orthogonalperspektriert. Wenn Sie PerspektiveCamera verwenden, müssen Sie eine benutzerdefinierte Ansichtsmatrix an das Spritebatch bestehen. Sie können das in der Größe der Größe (...) tun: generasacodicetagpre.

Und dann besteht keine Notwendigkeit, etwas anderes mit der Projektionsmatrix von Sprite zu tun (es sei denn, Sie möchten ändern, wie der Sprite auf dem Bildschirm angezeigt wird): generasacodicetagpre.

lange Antwort: Da mein endgültiges Ziel sollte, ein Spritebatch verwenden zu können, um Text zu zeichnen, während ich mit der oben genannten Änderung in meinem Code das tun kann, kann ich das in dem Sinne tun, in dem auch der Text auf dem Sprite und dem Netz mit Die Textur ist jetzt sichtbar, ich habe bemerkt, dass, wenn ich keine Farbe für die Scheitelpunkte meines Netzes angibt, die Scheitelpunkte die Farbe, die ich für den Text verwende. Mit anderen Worten, mit einem strukturierten Netz, das so erklärt wurde, wie so: generasacodicetagpre.

Mit diesem Code in meiner Render-Methode (...) kann das Mesh rot getönt werden: generasacodicetagpre.

Der Fix dazu ist, Farben auf den Scheitelpunkten Ihres Netzs von Anfang an zu setzen: generasacodicetagpre.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top