[projet] Création d'un jeu video 2d/3d

Résolu/Fermé
nicotendo Messages postés 195 Date d'inscription mercredi 3 mai 2006 Statut Membre Dernière intervention 31 juillet 2012 - 11 déc. 2006 à 11:33
 arthur00 - 1 avril 2012 à 10:00
Bonjour à tout les programmeurs du forum :)
Je recquière toute votre attention afin de m'aider à débuter un projet personnel, dans le cadre des jeux video.
Je souhaites donc programmer en C/C++, un jeu d'aventure du type "zelda", c'est a dire une "fausse 3D", vu de haut, où le personnage avance par case (cf les jeux de game boy par exemple).
Je ne sais visiblement pas par où commencer et les notions en C sont plutot moyenne ;)

Ainsi il faudrait que mon personnage "bouge" (avec ou sans animation) d'une "case" à l'autre par pression d'une des quatres touches.
A l'encontre d'un ennemi, un certain "mode attaque" se met en marche, et utilise les points d'attaques, défences, du personnage.

Le personnage évolue sur 16 cases par exemple, où il peut avancer, reculer, allez à gauche où à droite, a moins qu'un "élément du décor" l'en empèche.

Je souhaite donc savoir comment désigner "une image" (un élément graphique type : arbre, rocher, maison) à une case, voir à créer les maps "aléatoirement".
De plus, est-il possible d'animer les déplacement du joueur (c'est à dire, pas de téléport d'une case à l'autre).

De plus, le joueur peut passer par des portes, ce qui permet de changer de zone (création d'une nouvelle map de 16 cases).

Il est bien évident que "16" est un exemple, et que plus il y a de case, plus mon niveau sera "précis".


Merci de votre aide :)
Cordialement
A voir également:

51 réponses

Char Snipeur Messages postés 9696 Date d'inscription vendredi 23 avril 2004 Statut Contributeur Dernière intervention 3 octobre 2023 1 297
11 déc. 2006 à 17:42
Salut.
Je me suis pas mal heurter au graphisme en C.
Pour en faire, tu peux a priori passer par DirectX, ou de façon plus portable par OpenGL.
Je pense qu'il faut découper les deux mondes du jeux :
Le moteur, et l'interface graphique.
Le moteur s'occupe de gérer les commandes clavier, les collisions, les cases etc.
Le graphisme est à par, il colle au moteur.
Le mieux c'est de faire un tableau, avec dans les cases savoir si le héros peux y aller ou non, ou si l'objet est déplacable.
L'animation du personnage, ça dépend que de la partie graphique, donc c'est tout à fait fesable.
27
nicotendo Messages postés 195 Date d'inscription mercredi 3 mai 2006 Statut Membre Dernière intervention 31 juillet 2012 31
11 déc. 2006 à 17:54
Tes informations sont très intéréssantes, sachant que tu as de l'expérience en la matière!
Aurais-tu l'aimabilité de me donner de quoi te contacter (msn par exemple) en privé bien entendu.
En effet, ce sujet est tellement vague que je ne sais pas par où commencer!
De plus, ce que tu dis concernant de "couper le monde en deux" et tout à fait l'information que je cherchais!
En effet l'aspect graphique est secondaire et doit être traité en fin de moteur!
Comment maintenant, générer les déplacement du personnage dans un environnement?
Comment créer cette environnement?
Comment faire évoluer ce personnage au fil du jeu (point d'exp, point de vie, etc...)?


Hô grand merci.
7
kij_82 Messages postés 4088 Date d'inscription jeudi 7 avril 2005 Statut Contributeur Dernière intervention 30 septembre 2013 857
12 déc. 2006 à 09:41
Comment générer les déplacements d'un personnage dans un envidonnement ?
Simple, en OpenGL c'est ta vue qui bouge en fonction des évenements claviers / souris.

Comment créé cet environnement ? En positionnant sur une sorte de grille tes éléments. Pour cela il te faudra savoir faire des formes de base, y appliquer correctement des textures et jeux de lumière, chose que tu apprendra au fur et à mesure.

Comment faire évoluer le personnage au fil du jeu ? Ca c'est à toi de le définir et il n'y a pas de technique particulière. Il s'agit de mettre en place des compétences, par exemple le saut, et à chaque fois que ton perso fait un bon, tu incrémente ta variable d'expérience pour le saut, par exemple, c'est une solution.
Tu va programmer en C, donc je te conseil pour cela de te faire une classe personnage, avec des attributs, des méthodes, etc... et tu colle tes actions sur les évênements clavier.

Comme dit char_sniper, pour le départ tu devrais utiliser une technique simple pour la représentation de ton monde, à savoir un tableau 2D qui représente ta carte à plat, dont à monde carré pour commencer. C'est très simple de gérer les collisions avec cette facon de faire. Apres seulement tu pourra t'attaquer à des cartes en 3D, avec représentation sous forme de cube, de structures, etc... mais quand tu aura bien compris le truc.

Dernière chose, plutot que de te poser toutes ces questions, je te conseil de choisir un technologie (je te conseil plus OpenGL car plus portable que DirectX) et de t'y mettre dedans. Perso j'avais un moteur de jeu 3D à faire en premiere année de DUT, en 3 nuit maxi c'était bouclé, avec gestion collision, saut, escaliers, action sur l'environnement, etc..
Donc si tu trouve des bons tutos sur le net et que tu t'y met tu devrais pouvoir faire rapidement quelque chose de sympa :)
En plus OpenGL est en version 2 depuis un moment, donc ca devrait etre stable, et il présente plus de fonctionnalité que le 1 (je pense).
Pour ce qui est des tutos, j'ai prog sous la version 1 et y a longtemps donc je peux pas t'en filer, mais une rechercher rapide sous google devrait faire l'affaire ;)

Bonne chance.

0
kij_82 Messages postés 4088 Date d'inscription jeudi 7 avril 2005 Statut Contributeur Dernière intervention 30 septembre 2013 857
12 déc. 2006 à 09:59
Voilà un lien : http://helios.univ-reims.fr/Labos/LERI/membre/bittar/03OpenGL/

Et pour Dl la librairie :
http://entreprise.01net.com/windows/Pilotes/cartes_graphique/fiches/4333.html

Bonne chance.

0
kij_82 Messages postés 4088 Date d'inscription jeudi 7 avril 2005 Statut Contributeur Dernière intervention 30 septembre 2013 857
12 déc. 2006 à 10:32
0
ekleziastika Messages postés 1 Date d'inscription mercredi 28 novembre 2007 Statut Membre Dernière intervention 28 novembre 2007 5
28 nov. 2007 à 07:26
salut!

Commence d'abord par bien apprendre le principe de l'infographie (2D/3D), y a bcp de site pour ça, je vais te donner un qui m'a bcp aidé: http://raphaello.univ-fcomte.fr/IG/Math/Mathematiques.htm
Ensuite, si tu souhaites le faire en c++, faudra bien savoir kel bibliothèque 3D tu vas utiliser (Opengl ou Directx,....).
Pour Opengl va sur
http://raphaello.univ-fcomte.fr/IG/OpenGL/OpenGL-1.htm
sinon sur: http://www.ozone3d.net/tutorials/index.php#ogl_d3d
où tu trouveras des tut opengl et directx mais pour cela faut bien avoir assez de connaissance en C++ (surtout API), www.developpez.com offre bien des tas de cours sur presque tous les langages de programmation.
Par contre si t'aimes pas les trucs bas niveau du C++, il existe bcp de moteur 3D qui facilite la création des environnements 3D,
http://irrlicht.sourceforge.net/downloads/ : là tu peux télécharger un moteur 3D qui s'appelle irrlicht, facile à utiliser, incluant presque tous les trucs de l'infographie (chargement d'un modèle 3D (animé ou pas), chargement d'images, gestion des collisions, lumières....), le site est en anglais donc si tu comprend l'anglais, y a des tutos dedans sinon tu peux visiter:
https://openclassrooms.com/fr/courses#part_4511 : tutos bien expliqués sur l'utilisation d'irrlicht.
Bien programmer n'est pas suffisant, faut aussi savoir manipuler les logiciels graphiques 3D tels 3DSmax, Maya, Gmax, Blender.
Sinon, y a aussi un site sur la conception, trucs et astuces pour la création des jeux vidéos:
http://www.futurn.net
Bah, voilà, c'est tt ck je peux dire sur ce sujet. a+
5
oberion Messages postés 1253 Date d'inscription mardi 26 septembre 2006 Statut Membre Dernière intervention 29 septembre 2007 248
11 déc. 2006 à 13:04
Hello,

Va voir du coté des API de DirectX. C'est fait pour. :)
4

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
nicotendo Messages postés 195 Date d'inscription mercredi 3 mai 2006 Statut Membre Dernière intervention 31 juillet 2012 31
11 déc. 2006 à 17:27
C'est quoi ce gick :p

Enfaite mon jeu n'est pas forcement adapté pour Windows, et donc je n'ai pas besoin de ce qui concerne DirectX
4
Utilisateur anonyme
1 mai 2009 à 20:24
pour programmer un jeu il te faudra :

1\ un niveau excellent aux langages de programmation, notamment C/C++ .
2\ un niveau excellent en géométrie d'espace si ton jeu est en 3D.
3\ commencer par des jeux simples , puis difficiles.

Bref, tu ne peux jamais créer un jeu 2D/3D sans connaître programmer.
4
kij_82 Messages postés 4088 Date d'inscription jeudi 7 avril 2005 Statut Contributeur Dernière intervention 30 septembre 2013 857
13 déc. 2006 à 10:19
Tu as choisi quoi pour développer ?
Les liens que je t'ai donné répondent à ces questions.. et si tu choisi openGl, il te suffit d'apprendre en 2/3h sur un tuto et tu aura la réponse à ces réponses.

Comment déplacer son personnage en fonction des touches du clavier ? Et bien quand tu capte un élément du clavier, tu va bouger ta camera en fonction de cet évênement.
Ta caméra se trouve dans un repère 3D avec les axe x,y,z. De même elle possède un angle de vision. Donc si la fleche du bas est tapée sur ton clavier, tu va par exemple diminuer la valeur de la position de ta camera sur l'axe des X. Je dis axe des X en tant qu'exemple, selon la facon dont tu as placé ta camera il faut définir cet axe pour qu'il corresponde à celui qui fait 'avance' et 'reculer' la camera dans ton monde.

Comment intégrer des images ? Et bien comme des textures ! Les textures sont des images, et il te faut les loader au début de ton programme.

Je t'aurais bien filer mon source d'il y a 3 ans pour que tu t'appuie dessus, mais depuis mon dur a cramé et j'ai tout perdu...

3
Char Snipeur Messages postés 9696 Date d'inscription vendredi 23 avril 2004 Statut Contributeur Dernière intervention 3 octobre 2023 1 297
13 déc. 2006 à 13:15
Salut.
avant toute considération technique, je pense qu'il faut déjà que tu sache ce que tu veux faire EXACTEMENT.
En effet, pour reprendre l'exemple de Zelda, suivant que ton personnage a des gants ou pas, tu peux soulever certaines pierre, et du coup une case qui était interdite deviens autorisé.
Ensuite, soit tu veux un jeu static (rien ne bouge tant que l'utilisateur n'a rien décider) soit un jeu prenant en compte les évènements (bcp plus compliquer).
une foi que tu as décri en mot ce que tu veux faire, il faut l'écrire en algorithme, puis définir tes variables/ objets.
De ces réflexions, il viendra plus facilement la manière concrète de créer ton environnement.
Mais la tâche est longue. Il suffit de voir le temps mi par des devellopeurs confirmer avant de sortir un jeu. Et pourtant il sont plusieurs.
Il y a d'autre message à ce sujet sur le forum (cherche un peu) avec notament des liens vers des outils permettant de créer des jeux facilement sans tout faire de A à Z en C.
3
nicotendo Messages postés 195 Date d'inscription mercredi 3 mai 2006 Statut Membre Dernière intervention 31 juillet 2012 31
13 déc. 2006 à 19:30
Merci pour vos réponses cela m'éclaire!
Je souhaites enfaite presque tout faire de A a Z dans le cadre de mon travail, d'où les précision que je vous demande. Il est bien évidemnt exclu le moteur, qui est apparement trop complexe à faire :)
3
voici un lien qui pourrai etre utile https://openclassrooms.com/fr/
0
tu peus aller voir pour un truc genre rpg maker 2000 c'est trop bien !!
au revoir !!
3
kakashi-et-naruto
4 nov. 2007 à 23:35
oui mais quel sorte de corde repondez moi en envoilant un message electronique mon msn est philippo25@hotmail.com reponder moi vite s.v.p





(p.s) . comment on fait pour faire un jeu
3
Bonjour,

Cours et tutoriels programmation Jeux/2D/3D : https://jeux.developpez.com/tutoriels/
Les FAQ programmation Jeux/2D/3D : https://jeux.developpez.com/faq/
3
Salut,

j'ai un logiciel qui permet de créé des images ou jeux vidéos en 3D. C'est un logiciel assait connu, c'est Blender ( https://www.blender.org/ ).
Et si tu n'y comprend rien à ce logiciel, il y a un tutoriel la dessus : https://openclassrooms.com/fr/courses

J'espère que sa t'éderas ! Bonne chance !
3
comment lier mon pc avec playstation2 par résaeu?
2
oberion Messages postés 1253 Date d'inscription mardi 26 septembre 2006 Statut Membre Dernière intervention 29 septembre 2007 248
11 déc. 2006 à 17:13
Avec une corde très solide. Et surtout fait un noeud qui tient la route, sinon la PS2 va prendre la tangeante.
0
pizza > oberion Messages postés 1253 Date d'inscription mardi 26 septembre 2006 Statut Membre Dernière intervention 29 septembre 2007
17 déc. 2008 à 15:07
hahaha faut dré etr ouf pour osé pt une ps2
0
nicotendo Messages postés 195 Date d'inscription mercredi 3 mai 2006 Statut Membre Dernière intervention 31 juillet 2012 31
12 déc. 2006 à 09:05
Quelqu'un peut-il me donner des pistes je vous prie?
2
nicotendo Messages postés 195 Date d'inscription mercredi 3 mai 2006 Statut Membre Dernière intervention 31 juillet 2012 31
12 déc. 2006 à 21:40
Comment faire pour faire déplacer son personnage par exemple à l'aide des touches du clavier?


Comment générer automatiquement (donc aléatoirement) une zone?

Comment insérer des "images" au programme? (type : élément du décor)
2
pour te simplifier ,tu peux télécharger : RPG MAKER XP Fr
avec ça , tu peux créer un jeu type zelda (ou game-boy) simplement.
2
L_n_a Messages postés 6 Date d'inscription samedi 3 février 2007 Statut Membre Dernière intervention 13 février 2008 2
13 août 2007 à 16:46
Bonjour à toutes et à tous.

Il existe déjà un très bon tuto pour un jeu similaire à zelda.

http://www.games-creators.org/wiki/PureBasic:Realiser_un_RPG2D


Pour ceux et celles qui ne connaissent pas le PureBasic. (https://www.purebasic.fr/

Il a été crée initialement par un Français, c'est un langage basic compilé pour windows/linux/mac/(amiga), très optimisé en rapidité, en créant des exécutables très compacts.
Les temps de compilation sont très rapides.
On peut aussi créer des DLL pour les utiliser dans d'autres langages, sous conditions (wrapping des instructions non autorisé).

Il n'est pas gratuit (79 Euros payable aussi en France), mais les mises à jours sont gratuites à vie.
Une fois acheté, il y a possibilité de revendre ses propres créations, sans problèmes.

Il existe aussi en plus un freeware en opensource 'tailbit', qui permet de créer ses propres instructions et de les intégrer dans le langage basic.

Le forum d'entraide PureBasic fr : https://www.purebasic.fr/french/index.php

On peut créer des jeux ou bien toutes autres applications, comme tous les autres langages de programmation existants.

Il existe une version démo utilisable : http://www.purebasic.com/download/PureBasic_Demo.exe

Ce serait dommage de passer à coté d'un bon produit et qui est de plus en Français.

@ peluche
2
kakashi-et-naruto
4 nov. 2007 à 23:40
Bonjour,
je voudrais faire un jeu de naruto mais je sais pas comment faire reponder moi s.v.p sur mon email









(p.s) . mon email est philippo25@hotmail.com pls reponder moi vite

et laisser faire mon autre message il est rater ok
2
kakashi-naruto-et-sasuke
4 nov. 2007 à 23:44
Bonjour,
je voudrais faire un jeu de naruto mais je sais pas comment faire s.v.p reponder moi par email











(p.s) . mon email est philippo25@hotmail.com pls reponder moi vite
et laisser faire mon autre message il est rater ok
2