OpenGL-transparente Bilder enthalten Schwarz

Ich arbeite an einem Spiel für Android und habe mich gefragt, warum immer, wenn ich Bilder mit Transparenz zeichne, den transparenten Teilen etwas Schwarzes hinzugefügt wird. Dies passiert überall und lässt einige meiner Effekte seltsam aussehen.

Hier ist ein Beispiel. Die beiden Kreise sind nur weiße Bilder mit einer Unschärfe, aber Sie können sehen, wenn einer den anderen überlappt, hat er einen Schatten. Wenn ich zwei der Kreise in Inkscape überlappe, bekomme ich reines Weiß, wo sie sich überlappen.

ich benutze

<code>GLES20.glEnable(GLES20.GL_BLEND);
GLES20.glBlendFunc(GLES20.GL_SRC_ALPHA, GLES20.GL_ONE_MINUS_SRC_ALPHA);
</code>

für meine Mischung.

Irgendeine Idee, warum dies passiert und wie ich es vermeiden kann?

Bearbeiten: Das einzige, was mir einfällt, ist, dass die beiden Bilder dasselbe z haben. Vermischen sie sich also möglicherweise nur mit dem Hintergrund und nicht miteinander?

Edit: Ich habe mich verändert

<code>GLES20.glBlendFunc(GLES20.GL_SRC_ALPHA, GLES20.GL_ONE_MINUS_SRC_ALPHA);
</code>

zu

<code>GLES20.glBlendFunc(GLES20.GL_SRC_ALPHA, GLES20.GL_DST_ALPHA);
</code>

Hier ist das Ergebnis, das ich gesucht habe.

Das Einzige, was ich jetzt tun kann, ist, dass die transparenten Bilder, die ein transparentes Schwarz enthalten, ignoriert werden. Das ist sinnvoll, weil ich denke, dass das Ziel Alpha 1 ist. Warum würde One minus source dieses Grau hinzufügen?

Antworten auf die Frage(4)

Ihre Antwort auf die Frage