Programmation de jeux comme passe-temps, dois-je utiliser Java ou C++ [fermé]


Actuellement, j'apprends Java à partir du livre The Art and Science of Java et en suivant le cours de méthodologie de programmation de Standford.

Je voudrais faire de la programmation de jeux, mais seulement comme passe-temps.

Je pensais, Java serait-il un bon choix ou C++ est-il le defacto dans la programmation de jeux.

Author: ssube, 2009-06-10

22 answers

Puisque vous apprenez Java, je vous recommande de vous y tenir.

Si vous ne développez que des jeux pour le plaisir, peu importe la langue que vous utilisez.

 20
Author: Silfverstrom, 2009-06-12 23:28:04

Cela dépend, voulez-vous en savoir plus sur C++? Avez-vous besoin de savoir? Il y a toujours des bibliothèques OpenGL en Java qui sont disponibles, et les concepts seraient essentiellement les mêmes quelle que soit la langue dans laquelle vous travaillez. Si c'est juste pour un passe-temps, je ne vois rien de mal à travailler en Java. En termes de vitesse cependant, les langues de niveau inférieur sont préférées.

 7
Author: Kezzer, 2009-06-10 09:08:17

Soit serait bien. Pour un passe-temps, ils ont tous deux un assez bon support de bas niveau pour les graphiques, etc., et les deux ont également de très bonnes bibliothèques de haut niveau pour les jeux (jMonkey engine, SDL, SFML, Ogre et bien d'autres).

Vous pouvez également envisager d'autres langues. Python a des liaisons SDL appelées PyGame. C# a le cadre XNA qui a plusieurs livres publiés pour lui maintenant pour aider à apprendre le cadre. SFML a des liaisons pour C++, C, D, Ruby et je pense Python. Tous ces éléments sont alors convient pour créer des jeux dans. Choisissez simplement une langue et c'est parti.

 3
Author: workmad3, 2009-06-10 09:10:49

Si vous me demandez, ni Java ni C++ ne sont des langages amusants. Les deux ont un certain nombre d'avantages, mais si vous le faites pour le plaisir et que vous n'avez pas de délais, je chercherais une langue plus amusante. Comme Python, ou quelque chose de similaire.

 3
Author: Tamas Czinege, 2009-06-10 09:30:41

Si vous voulez faire des jeux, vous avez vraiment besoin d'une plate-forme de jeu ainsi que d'une langue, sinon vous passerez tout votre temps à résoudre des problèmes de base comme la façon de dessiner un sprite à l'écran, plutôt que de vous concentrer sur la construction d'un jeu amusant.

De grands choix pour le développement de jeux de passe-temps sont:

  • Plate-forme XNA de Microft avec le langage C #
  • Flash d'Adobe avec le langage ActionScript
  • La plate-forme JavaFX de Sun avec le langage de script JavaFX
  • Unity3D avec C# langue
  • Ogre avec le langage C++
 3
Author: Iain, 2009-06-10 09:47:12

Vous pouvez écrire des jeux en utilisant les deux langues mais je pense que vous devriez vraiment essayer C++. Il y a beaucoup plus de bibliothèques de haut niveau et de moteurs de jeu écrits en C++ que Java, il serait donc plus facile de trouver celui qui convient à vos besoins. Sans oublier que beaucoup de jeux plus anciens ont été open source et vous pouvez les télécharger librement et étudier le code. Vous pouvez deviner quelle langue ils utilisent ;)

Vous trouverez également beaucoup plus de tutoriels et de livres qui enseignent la programmation de jeux en utilisant C / C++.

Peu importe ce que vous choisissez à la fin, amusez-vous à écrire vos jeux:)

 2
Author: Stefan, 2009-06-10 09:33:49

Si vous allez avec Java, je recommande infographie pour les Programmeurs Java, par Leen Ammeraal.

Si vous développiez des jeux commerciaux, vous utiliseriez des bibliothèques plutôt que d'implémenter vous-même ces algorithmes, mais c'est plus facile une fois que vous connaissez les principes fondamentaux, que vous pouvez apprendre d'un livre comme celui-ci.

Une fois, j'ai écrit un moteur de rendu logiciel pour un clone DOOM en Java, et avoir ce livre pour référence a beaucoup aidé.

 2
Author: finnw, 2009-06-10 20:51:23

C++ est LE langage defacto non seulement pour le développement de jeux, mais pour à peu près tout le reste, y compris le navigateur que vous utilisez avec le système d'exploitation sur lequel il fonctionne.

Donc, si vous envisagez de devenir sérieux avec la programmation, C/C++ devrait être en tête de votre liste.

Comme pour la vitesse C++ EST généralement plus rapide que Java. Pourquoi généralement?Eh bien, la vérité est que C++ est plus rapide que Java, est plus rapide que presque tout le reste en fait, mais parfois le code C++ peut être mal écrit et Java peut empêcher les débutants de faire des erreurs, ce qui entraîne de nombreuses affirmations selon lesquelles Java est aussi rapide que C++, il y a même des affirmations selon lesquelles Python/Psyco est aussi rapide que C++ et plus rapide que Java.

Gardez à l'esprit qu'aucun programme écrit pour un framework (Java,. NET, VB, etc.) ne s'exécutera jamais plus vite qu'un programme qui s'exécute à un niveau inférieur (directement sur le système d'exploitation ou même le matériel) comme C/C++, ASM, Pascal et ainsi de suite.

Jetez un oeil à ceci:

Mal écrit C++ la moitié de la vitesse de Java, correctement écrit est beaucoup plus rapide

À la fin de la journée, vous devriez aller avec le langage avec lequel vous vous sentez le plus à l'aise, rappelez-vous que python est prêt pour l'entreprise, commercial, stable, idéal pour les débutants, génial à utiliser sur les projets "Web 2.0", sans oublier que c'est beaucoup de plaisir aussi.

 2
Author: OldJim, 2009-06-13 00:47:02

Java - Je recommanderais de m'en tenir à un et de devenir bon. Les idées restent les mêmes, et à mesure que vous en apprendrez plus sur un seul langage, vous commencerez à en apprendre davantage sur les inconvénients et les avantages qui prévalent dans de nombreuses méthodologies et langages de programmation d'aujourd'hui.

 2
Author: mduvall, 2009-06-13 21:19:47

Même si vous n'avez jamais l'intention de vous lancer dans le développement de jeux professionnels, il y a un gros avantage à C++, c'est que vous avez beaucoup plus de ressources disponibles. Il y a plus de livres, plus de tutoriels en ligne, plus d'exemples open source à regarder et plus de gens qui seront en mesure de répondre à vos questions sur des sites comme gamedev.net.

 1
Author: drby, 2009-06-10 09:08:31

J'ai développé quelques petits jeux en C++ et Java et je sélectionnerais C++ à chaque fois. Il vous donne le contrôle de bas niveau que vous n'obtenez pas avec java. Mais le développement de jeux est une toute autre bête. Donc, si vous cherchez à apprendre le développement de jeux, commencez dans quelque chose avec lequel vous êtes comofrtable

 1
Author: gonzohunter, 2009-06-10 09:09:56

Si vous pensez que vous voudrez peut-être un jour travailler dans l'industrie, vous devriez apprendre le C++. C++ est utilisé pour faire à peu près tous les jeux commerciaux qui fonctionnent sur PC/xbox/ps3. Je suppose que la wii est la même mais je ne sais pas à 100%, je n'ai jamais travaillé sur wii.

Le studio de jeux où je travaillais (avant sa fermeture) utilisait C++ pour le jeu (les petites pièces utilisaient C et assembleur) et commençait à utiliser C# pour les outils.

Si ce ne sera jamais qu'un passe-temps, alors peu importe la langue que vous utiliser.

 1
Author: markh44, 2009-06-10 09:16:11

Je suggère d'essayer Le moteur de jeu de Haaf pour C. C'est un moteur 2D très très simple avec une bonne documentation, des tutoriels et des exemples, fonctionne sur Windows 98 et supérieur et il est ABSOLUMENT gratuit même pour un usage commercial!

Si vous êtes complètement nouveau dans le développement de jeux, il est bon pour vous À mon humble avis.

 1
Author: Michael, 2009-06-10 13:05:27

Seulement un passe-temps? Si vous utilisez Java, alors Java. Mais d'abord, que programmez-vous, des jeux 2D ou 3D? Java fait les deux, et c'est mon langage de programmation de jeu, mais je ne fais que des programmes 2D. C++ est le standard de defacto pour la programmation de serious game, en particulier les jeux commerciaux.

Java a un excellentE appelé Eclipse, qui, pour moi, vaut la peine de faire Java tout seul...Eclipse rochers! Et c'est gratuit.

C# - non. Beaucoup trop dépendant de Microsoft.

Btw, Java fonctionnera en tant qu'applet et en tant qu'application si vous le planifiez bien, l'application peut être exécutée sur les trois plates-formes...

Alors, pensez-y. Faible investissement, outils de haute qualité, multiplateforme. Si vous décidez d'entrer dans C++, alors ce n'est pas grave aussi. Au moins, vous aurez mouillé vos orteils gratuitement... ;-)

 1
Author: S.E. Foulk, 2010-08-02 23:37:45

Language définit la plate-forme cible et le public. Java et C++ ont des avantages et des inconvénients. Vous utiliserez les mêmes architectures et algorithmes sur n'importe quelle plate-forme. Si vous savez écrire un jeu en C++ , il faut un peu pour écrire un jeu en java (2 semaines pour moi http://madeinsoviets.net/). Commencez à apprendre la programmation de jeux avec C++ et un moteur de jeu facile (Ogre3D, irrlight) - beaucoup plus d'informations et de tutoriels.

 1
Author: madeinsoviets, 2011-01-20 14:21:20

Ancien sujet mais puisque les gens lisent toujours ceci, je veux ajouter mon 2c depuis son unique à ce post.

Restez avec java, c'est un excellent moyen de créer des jeux sur c++ si vous allez le faire comme passe-temps et par vous-même pour ces 2 raisons.

  1. 10x moins de codage pour les mêmes résultats (bien qu'il fonctionne environ 5x plus lent)
  2. Les jeux Android, même médiocres se vendront (un dollar chacun) sur le marché. si vous vendez encore un vous allez sentir immense fierté! (aussi java ne marche pas lent vers le bas sur C++ sur Android car sa JVM est unique et s'exécute contre l'API accédant directement au matériel, qui est fantastique!!!!)
 1
Author: Thess, 2012-01-26 05:43:19

Si vous le faites simplement comme passe-temps, cela n'a probablement pas d'importance. Il suffit d'utiliser ce que vous êtes le plus à l'aise afin que vous puissiez entrer dans le swing de la programmation de jeux. Une fois que vous allez mieux, vous voudrez peut-être comprendre quelle est la "meilleure" langue.

 0
Author: 1800 INFORMATION, 2009-06-10 09:07:36

Je suggérerais certainement C++ si votre intention est la programmation générale de jeux. Bien sûr, si vous souhaitez développer une plate-forme mobile comme Nokia et Ericsson Java pourrait être une bonne idée.

Mais si c'est pour les jeux de bureau généraux, alors certainement C++. Si vous souhaitez déployer des jeux sur le net, flash pourrait également être une bonne idée.

 0
Author: bobbyalex, 2009-06-10 09:08:18

Si vous prévoyez d'entrer dans l'industrie (ou peut-être un jour commencer à vendre votre jeu vous-même), alors vous devez apprendre le C++.

Java ou C# sont un bon choix pour arriver au point de créer un jeu sans trop se soucier de la machine (mémoire et vitesse). C'est recommandé pour les débutants, mais je commencerais personnellement directement avec C++.

 0
Author: Klaim, 2009-06-10 09:08:31

Si vous cherchez dans la programmation de jeux, C++ est la voie à suivre. Bien sûr, Java sera bon pour certains jeux, mais C++ est tellement plus rapide.

J'ai déjà codé en Java, puis j'ai commencé à coder en C++. Le temps que j'ai passé à coder en C++ m'a fait comprendre certaines choses qui étaient fortement simplifiées en Java.

Selon la quantité d'expérience que vous avez en programmation, je suggère d'apprendre les bases de Java, puis de passer à C++.

 0
Author: Charles, 2009-06-13 21:02:47

Si vous commencez avec Java, je recommande ce livre Physique pour les Programmeurs de jeux

 0
Author: MicTech, 2009-06-13 21:27:29

Dans général, C++ est pour les vrais jeux.

Java a toujours été lent pour moi, quelle que soit la plate-forme ou le programme que j'utilise.

C# est meilleur que Java, mais pas aussi bon que C++.

Oui, il y a des exceptions, mais le fait qu'elles soient si notables prouve plutôt que C++ est juste la voie à suivre à moins que vous ne sachiez vraiment ce que vous faites.

 -1
Author: Paul Nathan, 2009-06-10 20:34:52