nachdem ich es endlich vollbracht habe, Koordinatenachsen des dreidimensionalen Koordinatensystems im Canvas des Browsers zu vsualisieren, stellt sich mir die Frage, wie ich diese beschriften kann. Gibt es eine gängige oder einfache Möglichkeit, Texte mit WebGL darzustellen? Nach einigem Suchen habe ich nichts derartiges für Webgl oder Opengl es 2.0 gefunden.
Ich habe das bei mir so gelöst das ich einen 2D-Canvas transparent über den WebGL-Canvas drüber gelegt habe. Der 2D-Canvas von HTML5 kann nämlich Text.
Für Texte die sich nicht jedes Frame ändern kannst du natürlich auch einfach HTML-Elemente nehmen die über dem Canvas drüber liegen. Z.B. die Menüs in UltimateConquest sind einfach nur via CSS transparent und rund gemachte HTML-Elemente.
Sicherlich eine gute Lösung mit dem Canvas 2D, jedoch -das hätte ich wohl gleich mit angeben sollen- erfahren die drei mit WebGL gezeichneten Achsen eine Rotation. Das heißt, ich müsste den Text auf irgendeine Weise mitrotieren, was mit der Canvas Api nicht geht, da dort Transformationen nur im 2D-Raum durchgeführt werden können.
Das heißt, ich müsste den Text auf irgendeine Weise mitrotieren, was mit der Canvas Api nicht geht, da dort Transformationen nur im 2D-Raum durchgeführt werden können.
Was mit dem 2D-Canvas möglich ist: 1. Du kannst z.B. den Mittelpunkt des Textes von Hand dreidimensional transformieren. Der Text ist dann weiterhin 2D, steht aber an der richtigen Stelle. 2. Der 2D-Canvas erlaubt beliebige 2D-Transformationen. Also auch Rotationen, Skalierung und Scherungen. Ggf. kannst du damit was bauen was deinen Ansprüchen genügt.
Zitat:
Mit einer Textur ist es nicht zu lösen?
Wenn es nur einige Wörter sind kannst du einfach eine Textur anlegen wo die jeweiligen Wörter drauf stehen. Du renderst dann zwei Dreiecke mit der Textur drauf. Wenn der Text dynamisch sein soll wird es kompliziert. Du brauchst eine Textur in der jeder Buchstabe drin ist, es gibt Tools die sowas erstellen können. Für jeden Buchstaben renderst du dann zwei Dreiecke bei denen die Texturkoordinaten so gesetzt sind, dass genau der Buchstabe zu sehen ist. Es sollte möglich sein einen Shader zu bauen dem du dann den Text als Uniform übergibst. Die Texturkoordinaten und Vertexposition wird dann automatisch vom Shader berechnet.
Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast
Du darfst keine neuen Themen in diesem Forum erstellen. Du darfst keine Antworten zu Themen in diesem Forum erstellen. Du darfst deine Beiträge in diesem Forum nicht ändern. Du darfst deine Beiträge in diesem Forum nicht löschen. Du darfst keine Dateianhänge in diesem Forum erstellen.