Ich versuche ein symmetrisches 4-Wege-Programm zu erstellen, bei dem 1 Kamera eine bestimmte Szene anzeigt, aber nur die Ansicht der Kamera für jedes der 4 Felder gedreht wird.LIBGDX: Wie kann man eine Kameraansicht horizontal/vertikal spiegeln?
Zum Beispiel: symmetry
Quadrant 1 würde die regelmäßige Ausrichtung der Welt mit positiv x nach rechts und positivem y nach oben. Quadrant 2 wäre positiv x nach links und positiv y nach oben und so weiter.
Ich habe eine Möglichkeit gefunden, die gleiche Kameraansicht in mehrere Panels zu zeichnen, indem ich mein Sprite - Batch mehrere Male starte und beende (nicht sicher, ob dies eine schlechte Sache ist, aber es ist die Art und Weise, wie ich es funktionierte) glViewport von jedem Panel.
batch.setProjectionMatrix(cam.combined);
batch.begin();
Gdx.gl.glViewport(0,Gdx.graphics.getHeight()/2,Gdx.graphics.getWidth()/2,Gdx.graphics.getHeight()/2);
batch.draw(img, 0, 0);
batch.end();
batch.begin();
Gdx.gl.glViewport(0,0,Gdx.graphics.getWidth()/2,Gdx.graphics.getHeight()/2);
batch.draw(img, 0, 0);
batch.end();
batch.begin();
Gdx.gl.glViewport(Gdx.graphics.getWidth()/2,0,Gdx.graphics.getWidth()/2,Gdx.graphics.getHeight()/2);
batch.draw(img, 0, 0);
batch.end();
batch.begin();
Gdx.gl.glViewport(Gdx.graphics.getWidth()/2,Gdx.graphics.getHeight()/2,Gdx.graphics.getWidth()/2,Gdx.graphics.getHeight()/2);
batch.draw(img, 0, 0);
batch.end();
Ich denke, eine lineare Transformation es tun würde, aber ich habe nicht mit Libgdx oder linearen Algebra genug, um zu sehen, eine sofortige klare Antwort gearbeitet.
Jede Hilfe wäre willkommen. Vielen Dank.