Performantes Hooking von OpenGL zum Zeichnen eines Overlays - Probleme mit mehreren Kontexten

Wie andere in früheren Fragen, versuche ich, eine beliebige OpenGL-Anwendung anzuhängen, um ein Overlay darauf zu zeichnen. Ich habe SwapBuffers angehängt und beim ersten Aufruf einen separaten Kontext zum Zeichnen erstellt. Sehendiese SO Frage / Antwort für die allgemeine Idee.

Es gibt zwei große Probleme, die ich treffe. Erstens zerstören die Aufrufe von wglMakeCurrent zum Festlegen / Wiederherstellen des Kontexts vor / nach dem Zeichnen die Leistung. Wird das erwartet? Ich muss mich eingehender mit der Verwendung von _ARB_context_flush_control befassen, wie von @datenwolf in einem Kommentar zu @ erwähndiese SO Frage die Antwort.

Second, das Overlay funktioniert nur auf einer meiner beiden Maschinen. Auf meinem Computer mit einer AMD-Grafikkarte flackert das Overlay, da es nur in einigen Frames vorhanden ist. Die verwendete Technik ist die gleiche wie die imMumble VOIP-Client-Server-Projekt, und dieses Projekt weist dasselbe Problem mit Überlagerungsflimmern auf. Irgendwelche Ideen, was das verursachen könnte?

Antworten auf die Frage(0)

Ihre Antwort auf die Frage