Files |  Tutorials |  Articles |  Links |  Home |  Team |  Forum |  Wiki |  Impressum

Aktuelle Zeit: Do Mär 28, 2024 22:41

Foren-Übersicht » Programmierung » OpenGL
Unbeantwortete Themen | Aktive Themen



Ein neues Thema erstellen Auf das Thema antworten  [ 3 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: OpenGL und Textausgabe
BeitragVerfasst: So Sep 09, 2018 20:14 
Offline
DGL Member

Registriert: Fr Sep 07, 2018 16:36
Beiträge: 2
Programmiersprache: Delphi XE3
Hallo, mein erster Beitrag hier

ich hatte mir dieses "Tutorial" mal angeschaut und umgesetzt: https://wiki.delphigl.com/index.php/Text_ausgeben
Nun zeichne ich für jeden Buchstaben ein Quad und lege über die TexCoords einen Buchstaben un meiner Textur fest (übrigens mit diesm Tool gemacht: http://www.lmnopc.com/bitmapfontbuilder/)
Die Größe variiere ich, indem ich die Quads um den Größenfaktor X multipliziere. Das Zeichnen passiert mithilfe von Alpha-Test.
Nun hab ich das Problem, dass die Schrift zwar wunderbar (überhaupt) angezeigt wird, jedoch ziemlich 'verschmiert' aussieht. Es werden Pixel dazugedichtet, die da nicht sein sollten, wodurch eckige L's auf einmal ründliche Ecken haben. um dem Problem auf die Schliche zu kommen, habe ich es mal mit Blending versucht, mit interessanten Ergebissen. Die Textur hat auf einmal wieder Abstufungen im Alpha-Wert. Wo ich vorher extra darauf geachtet habe, dass es nur 0 und 1 gibt, gibt es an Kanten nun auch weiche Übergänge, die da garnicht hin sollen... Ein wenig wie bilineares Bilder vergrößern. Nur warum? Ist das eine Eigenschaft beim größe ändern der Quads? Beachte ich was wichtiges nicht? Sonstige Tipps zum Text ausgeben (vllt jedes Zeichen in einer seperaten Textur haben)?

MfG tumo123


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: OpenGL und Textausgabe
BeitragVerfasst: So Sep 09, 2018 22:58 
Offline
DGL Member
Benutzeravatar

Registriert: Mi Aug 14, 2013 21:17
Beiträge: 587
Programmiersprache: C++
Hallo und willkommen im Forum! Wenn du die Textur(en) auf die Grafikkarte hochlädst, rufst du sicherlich irgendwo
Code:
  1. glTexParameter(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
auf. Dies bewirkt, dass linear zwischen den einzelnen Texeln der Textur interpoliert wird, wenn diese vergrößert auf dem Bildschirm dargestellt wird. Das gilt nicht nur für die RGB-Werte, sondern auch für den Alpha-Kanal. Wenn also zwei nebeneinander liegende Texel die Alpha-Werte 0.0 und 1.0 haben, kann durch Interpolation ein Pixel erzeugt werden, der irgendwo dazwischen liegt. Daher kommen die weichen Übergänge.

PS: Dein erster Link ist defekt. Sollte bestimmt so aussehen: Text_ausgeben

_________________
So aktivierst du Syntaxhighlighting im Forum: [code=pascal ][/code], [code=cpp ][/code], [code=java ][/code] oder [code=glsl ][/code] (ohne die Leerzeichen)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: OpenGL und Textausgabe
BeitragVerfasst: Mo Sep 10, 2018 16:34 
Offline
DGL Member

Registriert: Fr Sep 07, 2018 16:36
Beiträge: 2
Programmiersprache: Delphi XE3
Hallo,

danke für die schnelle Antwort. Nein, diese Zeile rufe ich meines Wissens nach nie auf. Gut zu wissen, dass es die gibt/geben sollte.
Nun dachte ich, ich muss nur den Typ auf GL_NEAREST setzen, nur sieht die Schrift noch immer etwas angeschlagen aus...

MfG tumo123


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 3 Beiträge ] 
Foren-Übersicht » Programmierung » OpenGL


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 20 Gäste


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.

Suche nach:
Gehe zu:  
cron
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.092s | 19 Queries | GZIP : On ]