JavaFX 8 comme moteur de jeu 3D?


Je veux créer un jeu MMO 3D et je cherche un moteur 3D et ma question porte sur JavaFX 8, puis-je l'utiliser pour rendre beaucoup de cube 3D, modèles et animation sans perdre performance ou est préférable d'utiliser le lwjgl?

La dernière question est: JavaFX 8 peut être utilisé comme un moteur 3D?

Author: Birdasaur, 2014-04-27

4 answers

Pour répondre À vos questions:

Puis-je l'utiliser pour rendre beaucoup de cubes 3D, de modèles et d'animations sans perdre de performances?

Cela a été pour beaucoup de gens (je pense) une question ... et bien qu'il n'y ait pas de réponse claire, il existe des moyens de le faire fonctionner.

Par exemple, j'avais récemment construit un simple simulateur de tissu, (premières sphères pour les sommets, puis un TriangleMesh réel) au début j'ai pris l'approche d'utiliser un AnimationTimer pour ma boucle de mise à jour, il a travaillé, mais seulement jusqu'à une certaine gamme de calculs.

Ma deuxième approche consistait à créer une minuterie, en utilisant ScheduledService à un intervalle de temps fixe et en le définissant pour mettre à jour l'interface utilisateur à la fin.

J'ai pu presque doubler le nombre de sommets avant que les performances ne commencent à se balancer. Ce qui était tout à fait une amélioration, car j'ai pu avoir 20k sommets (pas que je le recommande).

Vous pouvez voir les résultats ici sur youtube:

Prototype 1

ProtoType 2

MeshView fini

Tout est donc une question de temps que vous souhaitez consacrer à la création de solutions.

JavaFX 8 peut-il être utilisé comme moteur 3D?

Encore une fois, tout dépend vraiment du temps que vous souhaitez consacrer au développement du framework. J'ai personnellement essayé de construire un ensemble d'outils à cet effet, tout n'est pas parfait, mais le voyage est à moitié solution.

Si vous souhaitez voir mon approche avec la simulation de tissu, vous pouvez trouver toutes les sources ici: F(x)yzLib, ainsi que de nombreuses autres fonctionnalités/formes utiles, etc...

 7
Author: jdub1581, 2014-12-26 22:02:06

Oui, je pense que JavaFX 8 est assez rapide pour les jeux 3D, mais il n'est pas à la pointe de la 3D actuelle en ce qui concerne les shaders. J'ai essayé de me familiariser avec cela, mais il manque une méthode de lookAt de caméra comme vous obtenez dans Trois.js.

Lwjgl et JMonkeyEngine sont les meilleures options pour l'instant pour le développement de jeux Java 3D.

 3
Author: Allan, 2014-06-29 22:07:28

Je fais ce jeu de tir spatial 3D avec JavaFX: http://lightspeedpatrol.weebly.com/features-and-info.html Je peux donc vous dire que cela fonctionne principalement, mais les options d'éclairage sont vraiment limitées comme Allan l'a mentionné. C'était un bon outil d'apprentissage car c'était la première fois que je faisais quoi que ce soit lié à la 3D, mais à long terme, je pense que je ferais mieux d'utiliser LWJGL.

 2
Author: Moff Kalast, 2015-04-16 19:23:47

JavaFX est idéal pour les jeux 2D simples mais dans les jeux 3D lwjgl ou jmonkeyEngine est meilleur que javafx, je pense que c'est trop lent pour les jeux 3D (mais dans les choses très simples, c'est peut-être bon)

 -1
Author: , 2014-04-29 20:24:16