[LWJGL] mehrere Displays?

T

Turakar

Gast
Hallo,
ich schreibe momentan an einer Modifikation für ein LWJGL Spiel, und wollte mehrere Displays benutzen, also unterschiedliche Sichten auf die Welt gleichzeitig darstellen. Wie geht das? Bisher kenn ich nur setParent und create. Weiß da irgendeiner mehr?
 

Marco13

Top Contributor
Ja. Eine spontane Lösung wußte ich nicht, und eine schnelle Websuche brachte erstaunlich wenige Ergebnisse. Aber da in Display alles static ist, kommt man da wohl nicht weit. Der erste Ansatz den ich mal probieren würde, wäre, einfach mehrere AWTGLCanvas (LWJGL API) zu erstellen...
 
T

Turakar

Gast
Danke für die Antwort.

Ich weis leider nicht so viel über JBlubBlub weswegen ich dich fragen wollte, ob du weist wie ich das Bild das angezeigt wird in ein BufferedImage kriege.
 

Marco13

Top Contributor
Auch wenn du nicht gesagt hast, was du eigentlich willst: Damit wirst du vermutlich (!) nicht weit kommen. Ich vermute (!) du willst etwas, wo du die Szene in einen FrameBuffer renderst, der dann als Bild vorliegt. Etwas aufwändiger, aber ... eben nur eine Vermutung.
 
T

Turakar

Gast
Was ist ein Frame Buffer? Der Effekt soll nachher einer Überwachungskamera nah kommen.
 

Kr0e

Gesperrter Benutzer
Langsam :D

Ein FBO (Framebuffer Object) benutzt eine OpenGL Texture als Rendertarget. Das heißt mit anderen Worten:

Mit dem FBO kannst du OGL sagen "Ab jetzt rendere nicht auf den Monitor sondern in eine Textur".
Du kannst einen FBO binden und unbinden. Code der dazwischen liegt (Also Renderbefehle) operieren auf der Textur.

Du solltest jetzt natürlich wissen, wie man eine Textur in OGL auf eine Geometry klebt. Willst du eine Texture als PNG oder was auch immer abspeichern, brauchst du die Pixeldaten der GRafikkarte. Das geht glaub ich mit glReadPixels oder so. Habs noch nie gebraucht.

Auf jeden fall musst du dieses Pixelarray dann als Bildabspeichern. Java hat ImageIO für solche Zwecke. Ist allerdings ein gar nicht mal sooo komplexes Problem. Google liefert da ne Menge.


2 LWJGL Fenster gehen leider nicht. Technisch möglich, aber LWJGL ist da leider limitiert. Ich vermute weil LWJGL auf GLUT oder sowas basiert und die wiederum ein 2tes Fenster nicht erlauben.

Du könntest einen 2ten Prozess starten, aber das is natürlich nicht unbedingt, was man will.
 

Kr0e

Gesperrter Benutzer
Wie das mit Texturen geht, hängt davon ab, wie dein Programm programmiert ist.

Benutzt du Shader ? Wenn ja, musst im Fragment-Shader das selbst machen.

Falls nicht, is es sogar ziemlich trivial. Du bindest die Texture-Id und setzt für jeden Vertex die Texture-Coords.

Hier is ein Beispiel für Shader:

The Quad textured - LWJGL


Shader sind auhc die zukunft, den alten Kram sollte man nicht mehr verwenden.
 
T

Turakar

Gast
Ich könnte das ganze auch auf BufferedImages rendern, wäre das komplizierter?

Das Programm benutzt shader.
 

Marco13

Top Contributor
Versuch' nochmal genauer zu beschreiben, was du eigentlich willst... :noe:
- Mehrere Ansichten rendern?
- In ein BufferedImage rein-rendern?
- Ein BufferedImage als Textur verwenden?
- Einen FrameBuffer als Textur verwenden?
- Mehrere Ansichten mit FrameBuffers in ein BufferedImage rendern, das dann als Textur verwendet wird? :D
...
 
T

Turakar

Gast
Wenn man sich eine Kamera vorstellt, die dauerhaft auf eine Szene gerichtet ist und die ihr Bild in ein BufferedImage ablegt, hat man das was ich mein.
 

Marco13

Top Contributor
Soll/darf das Bild auf dem Bildschirm sichtbar sein? Wenn ja, kann man mit der (eigentlich veralteten) glReadPixels-Funktion die Pixel auslesen (das ist dann relativ leicht). Wenn nicht (oder wenn man NICHT veraltete Funktionen verwenden will) muss man ein FBO erstellen und da reinrendern. Das hat dann mit Texturen erstmal nichts zu tun :bahnhof: Den Buffer des FBO kann man dann auslesen. Das ist dann alles etwas frickeliger, bis man den FBO richtig aufgesetzt hat und so... aber mit sowas wie dem verlinkten Beispiel sollte das zu machen sein.....
 

Marco13

Top Contributor
Wenn man in einen FBO rendert, ist das erstmal NICHT auf dem Bildschirm sichtbar, aber da (SEHR stark abstrahiert!) der Ablauf nur ist
Java:
aktiviereFBO();
rendereAlles();
deaktiviereFBO();
kann man das konzeptuell(!) durch ein Hinzufügen eines zweiten Aufrufs von 'rendereAlles' auch auf den Bildschirm bringen.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
E 3D-Grafik Java Fatal error bei LWJGL AWT, Swing, JavaFX & SWT 2
R 2D-Grafik Buttons mit Slick2D und LWJGL AWT, Swing, JavaFX & SWT 2
B Pong Projekt mit LWJGL Klassen exportieren AWT, Swing, JavaFX & SWT 14
X AWT Graphics2D zum LWJGL Display hinzufügen aber wie? AWT, Swing, JavaFX & SWT 4
E 3D-Grafik LWJGl OpenGL Version vor Erstellung des Displays abfragen AWT, Swing, JavaFX & SWT 2
B OpenGl lwjgl Verständnisproblem AWT, Swing, JavaFX & SWT 5
B Text auf Display ausgeben [LWJGL] AWT, Swing, JavaFX & SWT 2
Luk10 [LWJGL] VBOs und deprecated GL15 AWT, Swing, JavaFX & SWT 11
T [LWJGL] Depth-Test? AWT, Swing, JavaFX & SWT 2
Luk10 (LWJGL) Problem mit dem .frag Shader AWT, Swing, JavaFX & SWT 5
Luk10 (LWJGL) Fragen zu VBOs AWT, Swing, JavaFX & SWT 21
T Swing Mehrere Ausgaben in JTextArea AWT, Swing, JavaFX & SWT 2
H Mehrere Panels auf JFrame AWT, Swing, JavaFX & SWT 8
S Mehrere Tabellen Zellen gleichzeitig färben AWT, Swing, JavaFX & SWT 5
Apfelbaum2005 Swing JFrame mehrere JPanels mit unterschiedlichen Formen hinzufügen AWT, Swing, JavaFX & SWT 1
K JavaFX unterschiedliche (mehrere Fenster) in seperater Main Methode AWT, Swing, JavaFX & SWT 26
I Scene Builder - mehrere Seiten AWT, Swing, JavaFX & SWT 6
P Swing Mehrere JLabels mit ImageIcon in JPanel lesen AWT, Swing, JavaFX & SWT 1
schoel27 Mehrere JButtons sollen das gleiche Event auslösen AWT, Swing, JavaFX & SWT 2
Z GUI Forms - Mehrere Fenster in einem Projekt AWT, Swing, JavaFX & SWT 18
M mehrere jTextField untereinander AWT, Swing, JavaFX & SWT 1
N Bilder auf Button einfügen und mehrmals ändern (ein Button, mehrere ActionListener) AWT, Swing, JavaFX & SWT 2
B Swing Sudoku: Laden / Speichern von Zahlen aus/in mehrere JTextFields aus/in eine(r) Textdatei AWT, Swing, JavaFX & SWT 9
M JavaFX JavaFX in mehrere Controller AWT, Swing, JavaFX & SWT 21
R mehrere buttons mit forschleife kreieren und individuell bearbeiten AWT, Swing, JavaFX & SWT 1
N JavaFX 1 Listener für mehrere ChoiceBoxen AWT, Swing, JavaFX & SWT 3
N Textdatei GUI, Text in Textarea anzeigen mehrere Zeilen AWT, Swing, JavaFX & SWT 1
temi JavaFX Mehrere Views mit Stage.setScene() oder mit Scene.setRoot()? AWT, Swing, JavaFX & SWT 7
P Swing Mehrere JPanels auf ein JFrame hinzufügen? AWT, Swing, JavaFX & SWT 2
T Swing Tetraeder - mehrere Punkte verbinden? - Ansätze gesucht AWT, Swing, JavaFX & SWT 2
K JavaFX in mehrere Controller aufteilen AWT, Swing, JavaFX & SWT 29
K JavaFX in mehrere Controller aufteilen AWT, Swing, JavaFX & SWT 0
stroggi Swing Mehrere transparentes Objekte (Grafiken) über einem Bild (JLabel) darstellen AWT, Swing, JavaFX & SWT 4
K Mehrere Linien zeichnen AWT, Swing, JavaFX & SWT 8
J JavaFX - mehrere Views, Model durchreichen AWT, Swing, JavaFX & SWT 10
it_is_all Swing Mehrere JComboBoxen - wie die versch. Boxen mit ItemStateChange auslesen? AWT, Swing, JavaFX & SWT 3
M Swing Mehrere Textfelder mit ScrollBars - Größe der Felder AWT, Swing, JavaFX & SWT 0
W JavaFX Mehrere Klassen in ein TableView AWT, Swing, JavaFX & SWT 6
F AWT mehrere Panels in einem Frame AWT, Swing, JavaFX & SWT 17
L JavaFX Mehrere JavaFX Szenen mit einem Menü AWT, Swing, JavaFX & SWT 1
D Java FXML mehrere Fenster AWT, Swing, JavaFX & SWT 4
F JavaFX Mehrere Stages "managen" AWT, Swing, JavaFX & SWT 2
r4w Changelistener auf mehrere Textfelder AWT, Swing, JavaFX & SWT 5
H Swing + Paint: Mehrere Objekte zeichnen lassen AWT, Swing, JavaFX & SWT 3
S Swing Mehrere Modal-Dialoge übereinander AWT, Swing, JavaFX & SWT 5
T 2D-Grafik JFreeChart mehrere Y-Achsen AWT, Swing, JavaFX & SWT 2
C JavaFX mehrere Kreise nach Eingabeprozess ausgeben AWT, Swing, JavaFX & SWT 2
Thallius Swing Mehrere tausend "Panels" erstellen AWT, Swing, JavaFX & SWT 3
C Java FX Warnmeldung: Mehrere Fonts gehören derselben Familie und Stil AWT, Swing, JavaFX & SWT 2
J Mehrere JInternalFrame; GetValues AWT, Swing, JavaFX & SWT 1
JG12111989 mehrere Polyline-Objekte zeichnen AWT, Swing, JavaFX & SWT 3
LexeB4F JTable mehrere Zelle selektieren und inhalte Löschen.. Ideen gesucht AWT, Swing, JavaFX & SWT 1
V Tastatur KeyListener für mehrere Buttons AWT, Swing, JavaFX & SWT 1
K JavaFX Mehrere Cell Editors in einem TreeView Item AWT, Swing, JavaFX & SWT 2
KaffeeFan mehrere JTextField durchlaufen AWT, Swing, JavaFX & SWT 4
J Java -8 Action Listener für mehrere Buttons AWT, Swing, JavaFX & SWT 9
T Dynamisch mehrere Checkboxen anlegen AWT, Swing, JavaFX & SWT 2
G JavaFX Menü und mehrere Scenes AWT, Swing, JavaFX & SWT 16
R Swing Mehrere JTextFields mit einem Document Listener AWT, Swing, JavaFX & SWT 2
D Mehrere RadiButtons auswählar AWT, Swing, JavaFX & SWT 3
P Swing JTable mehrere Zeilen markieren AWT, Swing, JavaFX & SWT 1
M Mehrere Jpanel in einem JScrollPane (Layout) AWT, Swing, JavaFX & SWT 2
T JavaFX FXMLController für mehrere FXML? AWT, Swing, JavaFX & SWT 7
G mehrere Action-Abfolgen erfassen AWT, Swing, JavaFX & SWT 6
elischa JFrame über mehrere JPanel und Listener AWT, Swing, JavaFX & SWT 17
X Swing JPanel mehrere Ebenen zeichnen AWT, Swing, JavaFX & SWT 13
J Mehrere Hyperlinks "stilvoll" darstellen. AWT, Swing, JavaFX & SWT 1
G Mehrere Strings um Kreis zeichnen und positionieren AWT, Swing, JavaFX & SWT 0
S JavaFX Mehrere TreeTableView's synchron scrollen AWT, Swing, JavaFX & SWT 0
U Mehrere Oberflächeninstanzen seperat schließen AWT, Swing, JavaFX & SWT 5
J Rahmen um mehrere GUI Einzelteile AWT, Swing, JavaFX & SWT 2
S Layouts, mehrere Buttons nebeneinander AWT, Swing, JavaFX & SWT 2
M Mehrere Fenster innerhalb einer Application AWT, Swing, JavaFX & SWT 3
T Über mehrere Panel zeichnen AWT, Swing, JavaFX & SWT 2
M ActionListener für mehrere Klassen AWT, Swing, JavaFX & SWT 4
SexyPenny90 Mehrere Fenster AWT, Swing, JavaFX & SWT 2
M Handling 1 Fenster mehrere Panels AWT, Swing, JavaFX & SWT 2
Y Mehrere JSlider verlinken AWT, Swing, JavaFX & SWT 6
Java-Insel LayoutManager Ein GridBagLayout-Objekt für mehrere Panels? AWT, Swing, JavaFX & SWT 2
O Swing JLabel mehrere Zeilen AWT, Swing, JavaFX & SWT 2
P mehrere Rectangles per JButton AWT, Swing, JavaFX & SWT 9
B JToolBar dynamisch auf mehrere Zeilen erweitern AWT, Swing, JavaFX & SWT 2
Jats Zeichen auf mehrere JPanels AWT, Swing, JavaFX & SWT 7
G Mehrere Probleme mit Java's GUI AWT, Swing, JavaFX & SWT 6
G Mehrere Layoutprobleme AWT, Swing, JavaFX & SWT 2
Kenan89 JTable mehrere ListSelections AWT, Swing, JavaFX & SWT 2
M TextArea über mehrere Zeilen - wie Zeileanzahl abfragen? AWT, Swing, JavaFX & SWT 5
J Swing JDialog blokiert mehrere JFrames - soll aber nur den aufrufenden blockieren AWT, Swing, JavaFX & SWT 4
A mehrere Zeilen in GUi ausgeben AWT, Swing, JavaFX & SWT 2
N Mehrere Tasks nacheinander ausführen AWT, Swing, JavaFX & SWT 7
C SWT Mehrere Bilder in GUI laden AWT, Swing, JavaFX & SWT 5
propra Mehrere Objekte gleichzeitig verschieben AWT, Swing, JavaFX & SWT 7
M 2D-Grafik Mehrere Linien (nacheinander) übereinander Zeichnen AWT, Swing, JavaFX & SWT 6
M Mehrere JPanel nacheinander?! AWT, Swing, JavaFX & SWT 11
Furtano AWT mehrere Bilder in einen Frame zeichnen + Layout Manager AWT, Swing, JavaFX & SWT 10
K SWT Mehrere Einträge ins Clipboard legen AWT, Swing, JavaFX & SWT 2
C Swing Ein JFrame mehrere Ansichten AWT, Swing, JavaFX & SWT 8
C Swing Mehrere JSlider sollen aufeinander reagieren AWT, Swing, JavaFX & SWT 4
GUI-Programmer JFilechooser, mehrere Datein selektieren und Reihenfolge (2) AWT, Swing, JavaFX & SWT 8
S Mehrere JLists - Wie kennzeichnen? AWT, Swing, JavaFX & SWT 2

Ähnliche Java Themen

Neue Themen


Oben