OVH Cloud OVH Cloud

GL4Java et Jausoft, ou optimiser le Graphics2D

6 réponses
Avatar
Pif
Bonjour, naguère il y avait une librairie open source GL4Java si
certains se souviennent... dont la page sourceforge existe toujours :
http://gl4java.sourceforge.net/

Cependant, les infos et tout un tas de choses n'étaient pas sur
sourceforge et sont sur le site de Jausoft qui est maintenant down
depuis un petit moment !

Alors quelqu'un peut il me dire ce qui est devenu de ce projet ?
Je veux utiliser une librairie (Agile2D) qui exploite GL4Java...
http://www.cs.umd.edu/hcil/agile2d/

Connaissez vous éventuellement d'autre librairies qui permettent de
faire migrer une Graphics2D d'une JFRAME vers une version Open GL qui va
bien plus vite sans représenter un gros codage ?

La librairie agile2D prend tout en charge en fait, et impose simplement
de ne pas utiliser le double buffering... pensez vous éventuellement que
mon double buffering peut être plus rapide que l'open GL ?

Avez vous des solutions ?
J'ai un graphe animé assez gros à dessiner, le rendu (repaint())
représente actuellement 70% de ma CPU... toutes les propositions sont
les bienvenues...

merci !

6 réponses

Avatar
TestMan
Bonjour,

Mustang (le futur Java SE 6) intègre un nouveau pipeline 2D qui s'appuie
sur OpenGL :

http://192.18.37.44/forums/index.php?topic813.0

Ensuite, avec quoi dessigne tu ton graphe ? JGraph ?

A+

TM

Bonjour, naguère il y avait une librairie open source GL4Java si
certains se souviennent... dont la page sourceforge existe toujours :
http://gl4java.sourceforge.net/

Cependant, les infos et tout un tas de choses n'étaient pas sur
sourceforge et sont sur le site de Jausoft qui est maintenant down
depuis un petit moment !

Alors quelqu'un peut il me dire ce qui est devenu de ce projet ?
Je veux utiliser une librairie (Agile2D) qui exploite GL4Java...
http://www.cs.umd.edu/hcil/agile2d/

Connaissez vous éventuellement d'autre librairies qui permettent de
faire migrer une Graphics2D d'une JFRAME vers une version Open GL qui va
bien plus vite sans représenter un gros codage ?

La librairie agile2D prend tout en charge en fait, et impose simplement
de ne pas utiliser le double buffering... pensez vous éventuellement que
mon double buffering peut être plus rapide que l'open GL ?

Avez vous des solutions ?
J'ai un graphe animé assez gros à dessiner, le rendu (repaint())
représente actuellement 70% de ma CPU... toutes les propositions sont
les bienvenues...

merci !


Avatar
Pif
Bonjour,

Mustang (le futur Java SE 6) intègre un nouveau pipeline 2D qui s'appuie
sur OpenGL :

http://192.18.37.44/forums/index.php?topic813.0



J'ai testé l'option OpenGL du JRE1.5, c'est 10x plus lent...
l'explication qu'on m'a donnée est que le pipeline a pour but de
sérialiser l'accès multithread à OpenGL qui n'est pas multithread, et
c'est plus un goulot d'étranglement qu'un pipeline...

Ensuite, avec quoi dessigne tu ton graphe ? JGraph ?



Prefuse

Avatar
TestMan
Bonjour,

Mustang (le futur Java SE 6) intègre un nouveau pipeline 2D qui
s'appuie sur OpenGL :

http://192.18.37.44/forums/index.php?topic813.0



J'ai testé l'option OpenGL du JRE1.5, c'est 10x plus lent...
l'explication qu'on m'a donnée est que le pipeline a pour but de
sérialiser l'accès multithread à OpenGL qui n'est pas multithread, et
c'est plus un goulot d'étranglement qu'un pipeline...


1.5 ou 1.6 ? Perso, je parlais du tout nouveau pipeline OpenGL
singlethread (STR) qui a été rajouté au JDK 1.6 (mustang), l'as tu testé ?

http://java.sun.com/developer/technicalArticles/J2SE/Desktop/mustang/

Car les chiffres qui ont été avancés le concernant sont plutôt dans le
sens opposé à ce que tu indiques, voir l'article :

http://weblogs.java.net/blog/campbell/archive/2005/07/strcrazier_perf.html

A+

TM


Avatar
Pif
Bonjour,

Mustang (le futur Java SE 6) intègre un nouveau pipeline 2D qui
s'appuie sur OpenGL :

http://192.18.37.44/forums/index.php?topic813.0



J'ai testé l'option OpenGL du JRE1.5, c'est 10x plus lent...
l'explication qu'on m'a donnée est que le pipeline a pour but de
sérialiser l'accès multithread à OpenGL qui n'est pas multithread, et
c'est plus un goulot d'étranglement qu'un pipeline...


1.5 ou 1.6 ? Perso, je parlais du tout nouveau pipeline OpenGL
singlethread (STR) qui a été rajouté au JDK 1.6 (mustang), l'as tu testé ?
je fais de la 2D monothread, je suis sur le 1.5. Le 1.6 est encore en

béta, pour quand est il prevu une version finale ?

Mes tests concernent l'option d'activation de l'open GL dans le Java
-opengl=true ou un truc dans le genre dans le 1.5.


http://java.sun.com/developer/technicalArticles/J2SE/Desktop/mustang/

Car les chiffres qui ont été avancés le concernant sont plutôt dans le
sens opposé à ce que tu indiques, voir l'article :

http://weblogs.java.net/blog/campbell/archive/2005/07/strcrazier_perf.html





Avatar
Pif
en effet, les améliorations du 1.6 ont l'air nettement meilleure, mais
j'emmet des doutes, car le 1.5 est nettement plus lent que ma version
sans opengl, dont le 1.6 sera certainement nettement plus rapide que le
1.5, mais pas forcément que ma version... Agile2D est bien plus rapide
que ca pour du monothread !
Avatar
Pif
oups, j'ai oublié la question : tu le télécharge ou mustang pour le
tester ?