Frage

Ich habe ein OpenGL-Viewer-Steuerelement aufgebaut, die einfach auf ein Windows-Formular abgelegt werden kann (zur Entwurfszeit) und eine OpenGL-Anzeigeliste (zur Laufzeit) zugeordnet ist.

Der Betrachter Steuergriffe Navigation, Anzeigeoptionen (zum Beispiel Hintergrundfarbe), etc. Es ist auch verantwortlich für die Erstellung und Zerstörung Rendering und Gerätekontexte wie nötig.

Offensichtlich jeder Betrachter Kontrollinstanz hat seinen eigenen Gerätekontext, das ‚Fenster‘ in dem das Bild gezeichnet wird.

Fragen:

  • Wie sollte jeder Betrachter Steuerungsinstanz verwalten Renderkontexte?
  • Should jede Instanz einen eigenen Kontext oder einen globalen Rendering-Kontext teilen?

Ich bin vor allem darum, wie dies wirkt sich WGL Schrifterstellung ( wglUseFontBitmaps und WglUseFontOutlines ), die einen Wiedergabe-Kontext erfordert (was auch immer der aktuelle Kontext ist) und einen Gerätekontext.

  • Muss ich jede WGL Schriftart für jede Rendering / Gerätekontext Kombination schaffen?

Vielleicht ist mein Ansatz fehlerhaft ist.

War es hilfreich?

Lösung

würde ich mit dem Kontext pro Steuerungsansatz gehen. Sie haben die Erweiterungen erinnern, sind kontextbasierte, damit Sie sie für jeden binden müssen werden Sie machen (ich benutze glew_MX zu handhaben).

Sie können aber auch Anzeigelisten über Kontexte teilen (solange sie auf dem gleichen gpu ist) und die WGL Schrifterstellung schafft Anzeigelisten so sollten Sie in Ordnung sein.

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