Discussione: [Tutorial Java] Java3D
View Single Post
Old 20-06-2007, 14:11   #12
PGI-Bis
Senior Member
 
L'Avatar di PGI-Bis
 
Iscritto dal: Nov 2004
Città: Tra Verona e Mantova
Messaggi: 4553
Quote:
Originariamente inviato da pisto Guarda i messaggi
ho visto. ma quindi, visto che per quanto niubbamente so solo OpenGL è presente su tutti i sistemi, alla fine java3D=opengl con un po' di astrazione?
e poi, per fare grafica 2d molto performante in java, ha senso usare Opengl? (ho letto da qualche parte che ogl aveva roba anche per 2d magari dico cazzate)
La grafica 2D performante in Java si fa con Java2D. Il mito vuole che per disegnare Java usi la marmellata di fragole. La realtà è che la piattaforma standard Java SE disegna tramite DirectX o OpenGL o via software se manchi un acceleratore grafico.

Certo bisogna leggersi qualcosa prima di avventurarsi nella grafica 2d. Ad esempio forse non tutti sanno che dire una cosa tipo:

BufferedImage image = ImageIO.read(il file);
...un graphics.drawImage(image, eccetera...);

è corretta ma non sfrutta le capacità della pipeline di rendering Java2D. Prima di essere disegnata, un'immagine destinata ad un uso "intensivo" deve essere convertita ad un formato compatibile con il display. Si prende il GraphicsConfiguration dello schermo, si crea un buffer "ottimizzato", gli si copia dentro l'immagine letta dal file e il disegno di quell'immagine ottimizzata è non una o due ma decine di volte più rapido dell'originale.

Lo stesso vale per il disegno in sè e per sè. Normalmente si prende un JComponent e si sovrascrive il metodo paintComponent. Ma la grafica "ad alte prestazioni" in Java si ottiene usando un BufferStrategy, ricavato da un Canvas o un Frame.

Poi ci saranno anche piattaforme più agili, per carità. Ma io, cioè mr. nessuno, penso che sia importante sottolineare che discutere di prestazioni richiede una minima conoscenza della piattaforma di cui si discute.

Ps.: forse sono riuscito a fare il reverse engineering di un file class che contiene un esempio di DOT3 Bump Mapping! Ahhh, è sempre bello quando una librerie è ben documentata!
__________________
Uilliam Scecspir ti fa un baffo? Gioffri Cioser era uno straccione? E allora blogga anche tu, in inglese come me!
PGI-Bis è offline   Rispondi citando il messaggio o parte di esso