GameDevelopment: (Java & OpenGL) ou (C++ & OpenGL & SDL)?
Depuis Java prend en charge OpenGL, ce qui est la meilleure option pour le développement d'un jeu?
Java
+OpenGL
C++
+SDL
+OpenGL
J'ai toujours évité de Java (dans le développement de jeux, bien sûr), en raison de sa vitesse. Mais, j'ai découvert que Java prend en charge OpenGL. Donc, je pense que la vitesse ne peut pas être plus le problème... Ce qui devrait vous choisir? Existe-il des remarques?
De Java devrait être beaucoup plus facile pour moi, parce que de mon expérience en Java et le Garbage Collector.
Grâce
java n'est pas lent. les programmeurs java écriture lente code.
La disponibilité d'une API de liaison à une langue n'a pas dit rien sur l'exécution de la langue implémentations. Aussi OpenGL est l'un de ces Api pour lesquels la mise en œuvre d'un langage de liaison des visages peu ou pas d'obstacles peu importe ce que la langue est.
La disponibilité d'une API de liaison à une langue n'a pas dit rien sur l'exécution de la langue implémentations. Aussi OpenGL est l'un de ces Api pour lesquels la mise en œuvre d'un langage de liaison des visages peu ou pas d'obstacles peu importe ce que la langue est.
OriginalL'auteur Martijn Courteaux | 2011-03-07
Vous devez vous connecter pour publier un commentaire.
Je voterais pour le C++ pour le simple fait que vous avez une source fiable du destructeur dans vos objets. Cela vous permet d'emballer de nombreux OpenGL composants (tampons, des textures, etc.). Vous pouvez savoir que lorsque l'objet est créé, l'actif est attribué, et lorsque l'objet est détruit (ou est hors de portée), l'actif est nettoyé.
Il peut certainement être fait en Java. Minecraft a été fait en Java, et il a tiré à plus de 25 millions de dollars.
OriginalL'auteur TheBuzzSaw
À mon avis, si vous avez une idée pour un jeu dans votre tête, il n'a pas d'importance ce que vous écrivez avec (au premier abord), C/C++, Java, pen & papier... Choisissez la langue que vous êtes plus à l'aise avec, prototype et tester votre idée de jeu, une fois que vous avez un croquis et de savoir ce que vous devez faire, jeter le prototype, la conception du gameplay & architecture puis commencer à coder la chose réelle. N'optimisent pas jusqu'à après que vous avez obtenu la plupart ou la totalité des fonctionnalités de travail (en général, il y a toujours des bugs mineurs pour la chasse) et de voir où les goulets d'étranglement.
J'ai vu cela se produire encore et encore, les programmeurs de jeux sont parmi les pires prématuré optimiseurs jamais, en essayant de faire sortir un certain nombre de cycles à partir de quelque chose de trivial, tout en manquant le plus grand des goulets d'étranglement et d'optimiser certains plus (dans le mauvais endroit). J'ai aussi trouvé moi-même coupable de cela de nombreuses fois. Je dirais de ne pas prendre C++ ou Java) en raison de la vitesse, vous pouvez obtenir de très bonnes performances de deux, si c'est fait "à droite". Si besoin, vous pouvez toujours passer à une autre langue, si la langue elle-même est vraiment le goulot d'étranglement ou vraiment vous empêche de faire quelque chose. Java n'est pas automatiquement lent et C++ n'est pas automatiquement rapide, vous pouvez aller (très) mal avec les deux. J'ai utilisé à la racine de C et C++ en tout, mais après avoir travaillé avec Java pour un bon moment, j'ai vraiment ne manquez pas tous les tracas que beaucoup.
Il y a beaucoup de (déjà optimisé et assez facile à utiliser) des moteurs de jeu disponible pour les deux langues, donc il n'y a pas besoin de rouler vos propres... à moins que vous voulez vraiment. Dans mon expérience, la plupart des amateurs "jeu de programmeurs ont tendance à être plus intéressé par le côté technique des choses que dans le jeu (moi y compris) 😉 une Fois que tous les problèmes techniques sont fait et vous obtenez ce modèle de nice/tas de sprites/effets de particules en cours d'exécution avec certains shader-effets, l'enthousiasme semble s'estomper... Mais ne me laissez pas vous décourager, programmation de jeu est très amusant, même si vous n'avez jamais réellement terminer quoi que ce soit (je ne dirais pas tout de mes propres projets finis).
Je n'ai pas codé tous les jeux pour un certain temps, mais pour le C++ 2D SDL est un bon candidat, une autre option pourrait être SFML, ou si vous désirez un plus faible niveau de contact avec OpenGL, vous pouvez essayer d'aller avec GLFW + SOL + l'audio de la bibliothèque. Pour complet à la 3D, je dirais d'essayer OGRE ou Irrlicht + Irrklang (il y en a probablement beaucoup d'autres aussi).
En Java, il y a au moins Slick2D, Or T Du Moteur De Jeu et pour un accès de niveau inférieur, LWJGL (bien que je pense que vous pouvez accéder à LWJGL via Slick2D aussi). Pour la 3D, quelqu'un recommandé jMonkeyEngine pour moi, mais je n'ai jamais essayé.
OriginalL'auteur esaj
J'irais avec le C++, SDL, OpenGL.. SDL est arriver remanié avec de 1.3 à ce moment, et il sera vraiment bon. À mon avis, vous devriez le faire en C++ comme vous l'avez dit vous vous sentez plus à l'aise avec Java, être à l'aise après de faire un jeu en C++ serait très bénéfique. Vous ne serait pas seulement un jeu, mais en apprendre plus dans le même temps.
OriginalL'auteur Fouf
Java a été prouvée pour être aussi rapide si pas plus rapide que le C++, bien accordé, vous n'avez pas obtenir de tels résultats sans un peu de paramètres de réglages et une surveillance attentive du garbage collector. Si vous souhaitez poursuivre la conception de jeu avec Java, je dirais que c'est un bon choix à faire, à condition de l'étude sur la façon de l'aborder en premier.
OriginalL'auteur Neil
Si vous allez à la Java route, vous pouvez avoir besoin pour expédier la JVM avec votre jeu. Cela ne veut pas dire ne pas le faire, mais beaucoup de gens ne peuvent pas avoir Java installé ou ne pas avoir une assez récente version pour les caractéristiques et les performances que vous souhaitez. Je n'ai pas regardé les exigences d'octroi de licences pour l'expédition de la JVM, mais c'est probablement quelque chose que vous aurez envie d'étudier avant de prendre la décision.
Vous devriez aussi être conscient qu'en cas de réglage d'une application que, bien que l'API Java est la même à travers les plates-formes qu'il existe des différences parce que les implémentations de ceux qui utilisent souvent l'OS sous-jacent. Donc je doute que l'utilisation de Java permettrait de réduire le fardeau d'essai pour un jeu.
OriginalL'auteur Jeremy
Cela dépend vraiment de ce que votre langue la plus utilisée pour. Il n'y a plus raide de la courbe d'apprentissage du c++ qu'avec java. Si vous n'êtes pas dans aucune de ces langues, et est désireux d'obtenir un développement fait je le recommande java.
Et une petite note de côté. Si vous êtes totalement nouveau, je recommande de regarder le XNA, mais il est basé sur DirectX. Et vous devez savoir en C#.
OriginalL'auteur DNRN
Eh bien, j'ai programmé tous mes jeux en SDL et je le recommanderais à l'aide de c++. Si vous pouvez regarder la SFML!
http://www.sfml-dev.org/
SFML est déjà intégré avec l'OpenGL, et il est assez facile de se lever et courir avec la programmation de jeux vidéo.
OriginalL'auteur ultifinitus
Cela dépend vraiment de ce genre de jeux que vous voulez construire et qui langage de programmation plus à l'aise avec.
Si votre planification pour faire de grands jeux dans le futur , C++ qui est le mieux pour l'ensemble de l'expérience. La plupart des jeux commerciaux sont écrits en C/C++. Microsoft a également XNA framework qui utilise C#
Id toujours aller avec le langage de programmation de votre plus pratique, ils sont à la fois grands
Toutefois, si vous ne vous occupez de l'apprentissage un peu plus puis aller avec C++
OriginalL'auteur Leo-Neil Quilatan