LibGdx-Textur als Inverse dessen gezeichnet, was #getTextureData @ gi

Ich habe versucht, dieses Problem mit der korrekten Anzeige einer Textur in meinem libgdx-Desktop-Programm zu beheben.

Ich habe eine orthografische Kamera, mit der ich Folgendes einstelle:

camera.setOrtho(false);

Ich bekomme dieses Bild:

Und wenn ich es so einstelle:

camera.setOrtho(true);

Ich bekomme dieses Bild:

Das rote Bild wird mit einem SpriteBatch gezeichnet:

batch.draw(texture, x, y, width, height);

Während das weiße Bild aus einzelnen Punkten gezeichnet wird, die basierend auf dem Alpha-Wert 1 dargestellt wurden.

TextureData td = texture.getTextureData();
td.prepare;
Pixmap map = td.consumePixmap();
for (int i = 0; i < map.getWidth(); i++)
            for (int j = 0; j < map.getHeight(); j++)
                if (new Color(map.getPixel(i, j)).a == 1)
                    points.add(new Point(i, j));

Above ist der Code, mit dem alle nicht transparenten Pixel abgerufen werden. Sie werden als weißes Bild angezeigt und scheinen die Umkehrung der ursprünglichen Textur zu sein.

Die eingezeichneten Punkte und das Bild selbst sind jedoch immer gegensätzlich.

Gibt es eine Möglichkeit, dieses Problem zu beheben?

Vielen Dank

PS: Ich habe mehrere Möglichkeiten ausprobiert, dies zu beheben:

Verwenden Sie Sprites und spiegeln Sie sie umUsing TextureRegions und spiegeln sie

Absolut nichts scheint zu funktionieren.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage