Ich habe ein Problem mit Farbauswahl und Antialiasing in OpenGL. Wenn AA aktiviert ist, sind die Ergebnisse von glReadPixels offensichtlich falsch an Objektkanten und Objektschnittpunkten. Zum Beispiel:
Ich rendere eine Box #28 (RGBA: 28, 0, 0, 0) neben einer Box #32 (RGBA: 32, 0, 0, 0). Mit AA kann ich einen falschen ReadPixel-Wert (z.B. 30) erhalten, wo der Würfel und das Dreieck überlappen, oder einen Wert von 14 auf Boxen Rand, aufgrund der AA-Algorithmus.
Ich habe ~4000 tausend Objekte, die ich auswählen können muss (es ist ein Puzzlespiel). Es ist wichtig, Objekte nach Form auswählen zu können.
Ich habe versucht, AA mit glDisable(GL_MULTISAMPLE) zu deaktivieren, aber es funktioniert nicht mit bestimmten AA-Modi (ich habe gelesen, dass es von der AA-Implementierung abhängt - SS, MS, CS )
Wie wähle ich also ein zugrunde liegendes Objekt aus?
- Eine Möglichkeit, AA vorübergehend zu deaktivieren?
- Verwenden Sie einen anderen Puffer oder sogar einen anderen Rendering-Kontext?
- Haben Sie einen anderen Vorschlag?