Question

Je cherche à faire des simulations physiques et j'ai besoin d'un rendu rapide en Java.

J'ai déjà eu des problèmes de performances avec Java2d, alors quelles sont les alternatives rapides? JOGL est-il nettement plus rapide que Java2d?

Était-ce utile?

La solution

D'après mon expérience, Java2D peut être très rapide si vous suivez les règles. J'avais une application qui passait de 90% à moins de 5% simplement en changeant quelques petites choses. L'utilisation de grands fichiers PNG transparents est un non non, par exemple.

Les forums Java-Gaming.org sont une très bonne ressource: de nombreuses personnes, y compris les spécialistes Sun 2D, y sont nombreux et fournissent de nombreux exemples et solutions aux problèmes de performances liés au dessin 2D.

Voir: http://www.javagaming.org/ , puis le sujet "Optimisation des performances". ;.

Autres conseils

JOGL pourrait être beaucoup plus rapide que Java2D même si vous l’utilisez pour faire des graphiques 2D uniquement: comme l’a mentionné Clayworth, cela dépend généralement de ce que vous devez faire.

Je suppose que pour les simulations physiques 2D, où vous avez des objets (texturés ou non texturés) en rotation et en translation avec 2 degrés de liberté, JOGL doit fournir les meilleures performances et également vous permettre facilement de fournir une interface zoomable. Voici un tutoriel pour OpenGL pour les graphiques 2D (C, mais facilement adapté à JOGL ).

JOGL mettra un peu plus de temps à apprendre que Java2D, mais l'obtention de bonnes performances ne nécessitera probablement pas d'optimisations spécialisées, comme dans Java2D.

Je ne sais pas - j'aurais déjà dit oui - surtout si vous utilisez des listes d'affichage plutôt que de passer beaucoup d'appels via l'API chaque fois que l'écran est affiché. Mais la mise à jour 10 de la machine virtuelle Java 1.6 a ajouté des graphismes Java2D accélérés, de sorte qu’ils peuvent maintenant avoir l’avantage. En réalité, le seul moyen de savoir avec certitude est d'essayer de restituer des scènes typiques dans les deux cas et de les mesurer.

Vérifiez également la Slick , basée sur LWJGL et ressemble à certains égards à Java2D. Il utilise OpenGL et est donc beaucoup plus rapide.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top