Heim > Backend-Entwicklung > C++ > Hauptteil

Wie zeichne ich mit OpenGL skalierte Einzelpixellinien?

Mary-Kate Olsen
Freigeben: 2024-11-04 05:25:30
Original
805 Leute haben es durchsucht

How to Draw Scaled Single-Pixel Lines with OpenGL?

Zeichnen Sie skalierte Einzelpixellinien mit OpenGL

Problem:

Beim Rendern einer 320x240-OpenGL-Szene mit höherer Skalierung Auflösung (z. B. 960 x 720) erscheinen Linien dünner als beabsichtigt, da sie auf der skalierten Ausgabe-Leinwand und nicht auf der internen 320 x 240-Leinwand gezeichnet werden.

Antwort:

Das Missverständnis liegt in der Annahme, dass es eine separate 320x240 OpenGL-Leinwand gibt. Das gesamte Ansichtsfenster entspricht der physischen Fensterauflösung (in diesem Fall 960 x 720).

Lösung:

Um pixelige Linien mit der richtigen Dicke zu zeichnen, sollte das Rendering durchgeführt werden einen separaten 320x240-Bildpuffer, und dann sollte das Bild als skalierte Textur auf den Bildschirm gezeichnet werden.

Schritte:

  1. Erstellen Sie eine 320x240-Textur.
  2. Erstellen Sie ein Framebuffer-Objekt (FBO) und hängen Sie die Textur daran an.
  3. Binden Sie das FBO zum Rendern.
  4. Stellen Sie den Ansichtsbereich auf die Bildgröße (320x240) ein.
  5. Rendern Sie die Szene im FBO.
  6. Entbinden Sie das FBO.
  7. Stellen Sie das Ansichtsfenster auf die Fenstergröße (960 x 720) ein.
  8. Zeichnen Sie die Textur in das Fenster als skaliertes Bild.

Das obige ist der detaillierte Inhalt vonWie zeichne ich mit OpenGL skalierte Einzelpixellinien?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage