Je souhaite créer un jeu et pour ce faire, je me demandais lequel de ces deux langages était le plus adapté ![]()
Pourriez vous éclairer ma lanterne please? ![]()
Si plusieurs langages existent, c'est qu'ils repondent tous a des besoins differents -
Le choix des technos passe avant tout par le choix des plateformes et des contraintes. Tu peux faire des jeux aussi bien en C++ qu'en Java, mais c'est la finalite technique qui devrait determiner ton orientation.
Un jeu de combat en 2D pour PC seulement
Hum, on m'a dit que java était plus simple a apprendre, mais ce n'est pas ce que je regarde, je veux simplement de quoi faire un jeu complet et quitte a passer un an apprendre un langage avant de vraiment commencer le projet, ainsi soit-il
c#
non je déconne (enfin, c# est très bien pour faire des jeux, mais ça ne faisait pas parti de ta question XD).
Sérieusement, je suis d'accord avec LGV sur le fond.
Après, je n'ai jamais touché à c++, mais de ce que j'en sais, ce n'est pas un langage orienté objet comme l'est java (ou c#, qui est la version orienté objet de c++, il me semble ?). En général, pour faire un jeu, on utilise beaucoup d'objets, c'est un peu le principe d'ailleurs, car on fait apparaître le joueur, les ennemis, les plateformes, on gère un équipement, le terrain, les caractéristiques de chaque objets présent ... etc (dépend du type de jeu, évidemment). Tout ça, ce sont des objets, et c'est beaucoup plus facile à gérer avec un langage tourné vers l'objet.
Avant de faire ton choix, attend déjà qu'un connaisseur en c++ me corrige (ou en programmation de jeu vidéo, qui pourra dire si c'est vraiment plus difficile avec un langage non objet) pour avoir un avis plus objectif sur le sujet. En tout cas, conçois d'abord ton jeu sur papier : que veut tu faire ? quel sera le gameplay ? comment l'environnement influence le jeu (ennemi ,terrain, plateforme ... en fonction du type de jeu aussi) ? ... etc etc. ça te donneras déjà une meilleur idée de la façon dont tu vas programmer ton jeu.
Le dernier jeu que j'ai fait (que je n'ai même pas terminé d'ailleurs), je l'ai fait un peu en live, et c'est vite devenu difficile de savoir quoi faire pour continuer le programme. Donc prépare d'abord tout ça. Fait général d'abord, tu entre dans les détails ensuite (toujours sur papier), et enfin tu pourras voir quel langage utiliser, et ça sera plus facile à coder. Tu auras une vision globale de ton projet, et ça sera beaucoup plus facile à gérer.
Finalement, la question du langage, c'est vraiment après la conception du jeu que tu doit te la poser, car au final, l'algorithme est le même, quel que soit le langage ( c'est seulement la façon de le coder qui va changer)
Après C++ ou Java car ces deux-la m'ont été conseillés, mais si on me sort un langage plus adapté je suis preneur aussi ![]()
Pour ce qui est de coucher mon jeu sur papier, je ne l'ai pas encore fait, mais j'ai une idée déjà bien précise de ce que je veux. Par vision globale du projet tu veux dire à grands coups de schémas ou liste des éventuelles priorités a programmer, voir les deux?
Je penses que tu confonds C, C++ et C#. En faisant qq simplifications abusives, on peut dire que tous sont imperatifs, mais C n'a pas de concepts objets (bien qu'on puisse emuler certains aspects "a la main"), C++ a une couche objet et est certainement le plus polyvalent en mixant haut et bas niveau, et C# est un peu le pendant Microsoft de Java, c-a-d un bytecode "portable" tournant dans un environnement .NET, ici le CLI.
Le C++ est bcp trop complexe pour etre suffisament maitrise en 1 an dans le cadre de la creation d'un jeu. en plus de travailler le langage, tu dois comprendre les concepts, l'architecture logicielle, decouvrir les APIs, etc. ET faire le jeu...
Si tu veux arriver a des resultats rapidement sans trop de pre-requis technique, je recommanderais d'utiliser un outil (Construct 2, Unity, etc.), ou un langage de haut niveau avec des frameworks faciles a prendre en main (e.g. Javascript + Phaser.io, etc.)
On peut difficilement apprendre une technologie en meme temps qu'on s'en sert pour realiser qqch de complexe avec -
Est-ce que tu veux surtout apprendre a programmer, eventuellement dans le cadre d'un jeu ? Ou est-ce que tu veux surtout faire un jeu, eventuellement en programmant ?
Dans le premier cas, donne toi plusieurs annees pour apprendre correctement un langage (C++, C#, Java, etc. tous etant des choix valides) et faire des petits projets simplistes avant de faire un vrai jeu.
Dans le second cas, contourne la difficulte technique en utilisant un outil ou framework haut niveau (cf. mon post precedent)
PEMT, j'avais pas vu ta réponse
En effet, ce serait plus apprendre à programmer pour faire un jeu ![]()
Mais je crains qu'en utilisant un outil je me retrouve limité par les options qu'il proposerait, on peut vraiment arriver à un bon résultat en utilisant ça ou l'équivalent d'un simple jeu gratuit android ![]()
Faire un petit jeu même mauvais juste pour mettre en pratique les acquis avant de se lancer dans le gros projet pourquoi pas, mais faire un petit jeu car l'outil ne me proposerait pas assez d'options et que je ne sais pas coder, c'est pas vraiment ce que je souhaiterais ![]()
Plus un outils est automatise, plus il y a de restrictions. Mais un outil n'est pas necessairement une limitation en soi. Des choses simples comme Construct, Phaser, etc. proposent tout ce qu'il faut pour realiser des jeux (graphiques, audio, physique, reseau, inputs, etc.)
Par contre cela ne t'apprendra pas vraiment a programmer, ce qui peut devenir une limitation SI tu veux des choses particulierement complexes qui ne sont facilement realisable avec l'outil/framework.
A noter aussi que la qualite finale du produit depend surtout du createur, pas de l'outils/framework. Qqun d'experimente peut faire des miracles avec des choses simples, alors qu'un debutant ne fera rien avec l'UDK qui sert pourtant de base a plein de AAA PC/consoles
Apres si tu te lances vraiment dans la programmation pure avec des langages type C++/Java, il faut revoir tes ambitions a la baisse pour les premieres annees ; il y a bcp plus de choses a apprendre (notamment architecture logicielle), on commence par apprendre les bases du langage, faire une calculatrice, le jeu des allumettes, des applis en mode texte, puis seulement des petits projets graphiques type pong / bomberman, etc. Et a ce stade, le code est juste "moche" et pas viable pour un environnement de production (faible modularite, maintenabilite nulle, possible bugs nombreux, etc.)
Avant d'avoir un jeu propre fini qui soit un jeu de combat 2D correct,il y a bcp bcp de boulot.
En 2D certes, mais un peu comme un Smash Bros, c'est pour ça que je crains que les outils ne correspondent pas en fait ![]()
Si c'était un simple jeu, en restant dans l'idée d'utiliser un outil, je pense que mugen serait tout indiqué, et j'ai déjà vu un jeu de combat My Little Pony fait avec 2D fighting makers (un truc comme ça) très fluide, toussa toussa, mais... c'est pas très Smash Bros.
Un outil à mi-chemin entre le jeu de plate forme et le jeu de combat, il y a vraiment un outil qui ne me limiterais pas, moi le parfait novice? Auquel cas je pense pouvoir me pencher sur la question coding or not coding
Ben Mugen, c'est specifique pour les jeux de versus fighting ; normal que vouloir faire autre chose avec paraisse contre-intuitif et delicat.
Regarde les outils plus generiques, c-a-d pas specifiques a un type de gameplay. Un Smash Bros, ca peut se faire tres bien avec des choses que j'ai deja cite : Construct, Phaser, ou d'autres comme GameMaker, Cocos2D. Certains sont des outils (visuels), certains sont des frameworks (programmation "gameplay" haut niveau)
Perso je te recommenderais Construct 2 ; j'ai un background de programmeur (C++, jeux PC/consoles), mais c'est l'outils que j'utilise pour des projets persos rapides car la productivite est imbattable. Au moins pour les phases de prototypages, quitte a realiser le jeu final avec une autre techno par la suite.
Ok, merci bien je vais de ce pas le dl ![]()
Merci pour vos réponses, je vais pouvoir me lancer sur ce gros bestiau qui a envahi ma tête et que je n'ai cessé de repenser pour en faire quelque chose ![]()
Pour apporter une reponse plus complete sur les options a ta disposition, tu peux aussi jeter un oeil a cette page :
http://www.pixelprospector.com/the-big-list-of-game-making-tools
qui recense la plupart des solutions operationnelles pour creer des jeux, des plus simples au plus complexes.
Le 19 décembre 2015 à 15:14:50 Trent2 a écrit :
c++ n'est pas un langage orienté objet comme l'est java (ou c#, qui est la version orienté objet de c++, il me semble ?)
https://www.youtube.com/watch?v=SY0Hyir0Ufo
ATTENTION


UN TROLL DE CATÉGORIE 4 A ÉTÉ DÉTECTÉ SUR CE TOPIC
NOUS VOUS DEMANDONS DE GARDER VOTRE CALME
VEUILLEZ GAGNER LES ISSUES DE SECOURS DU TOPIC INDIQUÉES PAR LES BOUTONS " LISTE DES SUJETS " ACCESSIBLE EN BAS ET EN HAUT DU TOPIC
UNE EQUIPE DE MODÉRATEURS A ÉTÉ PRÉVENUE ET VOUS PRENDRA
EN CHARGE À VOTRE SORTIE

VEILLEZ À NE SURTOUT PAS NOURRIR LE TROLL EN CHEMIN QU'IMPORTE SES PROPOS
NE FEEDEZ PAS
NE FEEDEZ PAS
NE FEEDEZ PAS