Splitten von OpenGL-Bildschirm



  • Das Programm läuft unter SDL und OpenGL. Ich suche nun nach einer Möglichkeit, den Bildschirm aufzuteilen, so dass sich z.B. die OpenGL-Szene links abspielt, die Statusanzeigen (etwa Geschwindigkeit, Zeit usw.) in einer Spalte rechts davon. Oder es sollen zeitgleich zwei Spielabläufe übereinander dargestellt werden. Kann mir jemand einen Tipp geben, wie man sowas prinzipiell anpackt? Alternierende Viewports? Oder gibt es die Möglichkeit, außerhalb des Viewports etwas darzustellen?


  • Mod

    ja, mit glviewport geht das eigentlich gut.



  • Du könntest auch den nicht benötigten Teil per StencilBuffer maskieren.

    Das steht zu glViewport in nem GPU-Guide von nVidia:

    Avoid rendering to only a section of the frame using methods such as glViewport() or glScissor(). This disables load balancing with the SFR mode and hurts performance with the AFR method.

    Ich weis aber nicht, ob der Stencil-Test da jetzt schneller ist. Soll nur ein Hinweise/alternativer Vorschlag sein.
    Kannst ja mal testen und hier posten 🤡



  • Man kann auch in Framebuffer Objects reinrendern. Ich weiß aber nicht, wie performant das im Vergleich ist.


Anmelden zum Antworten