Voila, suite a tutoriel de Noxneo que j' ai trouvé pas mal j' ai décidé de me lancé dans ce fabuleux langage, le python. A la base sont tuto parle de panda 3d, seulement je suis raisonnable et je sais très bien que me lancé dans la 3d alors que je n' y connais rien a la prog c' est foncé droit dans le mur :paf: . Alors je me suis posé des questions pour programmer un jeu en 2d, des questions qui m' empêche de continué a apprendre (je suis étrange de sais :ninja:), donc je vient les posé ici étant donné qu' il y a des connaisseur :mrgreen:
Quel support utilisé pour faire de la 2d, quel bibliothèque utilisé, ou encore, comment disposé le code :
- Un gros bloc en .exe et paf j' ai mon jeu
- Plusieurs fichier genre : ARPG puis dedans il y a la prog d' un arpg :ninja:
Si vous ne me comprenez pas hésité pas a me le faire savoir :mrgreen:
Merci et bonne soirée =)
Ta question c'est : je veux faire un jeux en 2D avec python mais j'utilise quelle bibliothèque ?
C'est ça ? :)
En gros, c' est a peut prêt sa ^^'
http://pysdl.sourceforge.net/
Mais tu as besoin d'une meilleure expérience avant de te lancer la dedans. Apprends en plus et fais des exercices pour te perfectionner. Si tu veux en faire trop trop tôt tu vas droit dans le mur. Faut prendre son temps.
Ca répond à la question sur la bibliothèque mais pas sur comment architecturer son code. Et là, je ne peux que te conseiller d'apprendre la POO (n'est-ce pas Nox ? ... Zut c'est vrai il n'est plus là :D) et la vérité apparaîtra devant toi.
Et bien sûr, comme l'a dit ce cher Mooglwy, t'exercer, encore et encore car ok tu connais un peu le Python maintenant mais on ne se lance pas à la légère dans la création d'un jeu.
Et bien merci pour ces reponse =p, je vais regardé sa, quand a la "POO" j' en avais brièvement entendue parlé mais je ne savaist pas exactement de quoi sa traité ^^ .
Pour la bibliothèque , j' ai essayer de téléchargé a partir de ton lien mais sa ne marche pas :mellow:, j' vais voir sa plutard, je vais dormir un peu (beaucoups ?) je suis resté devant cette becane rouillé toute la nuit :ninja: =)
Je ne peux que te conseiller de t'entrainer beaucoup histoire de maitriser ce que tu fais. Et de n'avoir aucun doute sur ce que tu fais et pourquoi. Tu dois vraiment comprendre ce que tu fais et pourquoi.
Moi je serai toi, j'apprendrai en premier lieu les bases du C expliquées par m@teo sur le site du zéro :
Lien : Clique ici nondidju (http://www.siteduzero.com/tuto-3-8-0-apprenez-a-programmer-en-c.html)
Comme ça non seulement tu connaitras bien les bases du C ( car c'est très bien expliqué )
mais ensuite, tu auras acquis une notion qui te permettra d'apprendre plus facilement d'autres langages...
Pour ce qui est de la POO, bah faut lire le tuto C++ :mrgreen:
Voilà ;) quoi qu'il en soit je te souhaite bon courage, et surtout : ne te décourage pas !
Le python est beaucoup mieux pour commencer un premier langage. Après il peut passer au C qui est plus bas niveau, c'est quand même très important de s'y connaitre bas niveau pour faire un jeu.
Quand tu sera a l'aise avec le python passe au C. Enfin c'est ce que je te conseil surtout si tu veux faire un jeu.
En passant je te donne des exo de C que tu peux faire en python aussi. Ils sont classé par niveau.
Exo-A
[spoiler]Pour vous exercer, vous pouvez programmer quelques exemple vus en TD d'algo.
- calcul du quotient et du reste avec seulement + et -
- calcul du pgcd avec seulement + et -
- calcul du pgcd avec l'algorithme d'Euclide
- verifier si un nombre est parfait
(n est parfait ssi la somme de ses diviseurs est 2n)
puis recherche des nombres parfaits inferieurs a 15000
NB chaque fois que possible, le traitement doit etre fait par une fonction
la fonction "main" ne s'occupant que des entrees et des sorties.
Autres exercices
1/ -Ecrire une procedure affichant un triangle d'etoiles de taille n
-Ecrire une procedure affichant la table de pythagore de la
multiplication
2/ Ecrire une fonction calculant le nieme terme de la suite de fibonacci.
(donner 2 versions : l'une iterative, l'autre recursive )
3/ Ecrire une fonction ayant pour arguments 2 reels et un operateur
et retournant le resultat du calcul
4/ Ecrire une fonction calculant la racine carree d'un reel par la
methode dite "babylonienne"
Ecrire un programme realisant la resolution d'une equation du second
degre
5/ Ecrire un programme demandant a l'utilisateur de deviner en 10 coups
au plus un entier entre 1 et 1000. A chaque essai, le programme
indique si le nombre est trop petit ou trop grand
(prevoir les erreurs de saisie)
6/ Ecrire une fonction calculant le nombre de facons d'obtenir la somme
de N euros avec des pieces de 1, 2 et 5 euros.
7/ Ecrire une procedure "Hanoi" telle que l'appel de "Hanoi(n,a,b)"
affiche les deplacements necessaires pour transferer n disques de
l'emplacement a vers l'emplacement b.
[/spoiler]
Exo-B
[spoiler]
1/ Ecrire une fonction affichant le nombre de fois ou elle a ete appelee
2/ T1 et T2 etant 2 tableaux d'entiers de meme taille, ecrire une
fonction recopiant dans T2 les elements positifs de T1 et retournant
le nombre d'elements copies.
3/ Ecrire une fonction calculant le min et le max d'un tableau de
taille n (et pas 2 fonctions !!!).
4a/Ecrire une fonction ayant pour argument une chaine de caracteres
formee de chiffres et retournant l'entier ainsi represente.
Au cas ou l'entree serait erronee, prevoir une information sur
la validite du calcul.
On peut aussi envisager le calcul dans une base quelconque
4b/Probleme reciproque
4c/Et avec des chiffres romains.. ?
5/ Utiliser la fonction precedente (B-4a) dans le programme A-4
6/ Ecrire une procedure affichant le triangle de Pascal.
7/ Ecrire une fonction calculant les nombres premiers inferieurs a N.
8/ On genere des nombres pseudo-aleatoires positifs avec les termes
de la suite U definie par :
U_{n+1}= 0x8088405 U_n + 1 (mod 2^{32}).
a- On suppose U_0=0. Ecrire une fonction random ayant pour
argument un entier positif n et retournant un nombre
pseudo-aleatoire entre 0 et n-1.
b- On suppose que l'on peut obtenir l'heure du systeme grace a un
appel a "time(NULL)" ("time" est declaree dans time.h) et retournant
un entier positif. Donner une nouvelle version de random prenant
en compte l'initialisation de U grace a cette fonction.
[/spoiler]
Exo-C
[spoiler]- C -
1/ Ecrire une procedure de tri d'un tableau d'elements supposes de nature
quelconque (?)
a- en utilisant soit le tri rapide ( On fera la segmentation avec
l'algorithme dit "du drapeau hollandais"
b- en utilisant le tri par tas.
Consignes : Le tas s'implemente par un tableau dans lequel la taille
--------- (c'est a dire le nombre d'elements inseres) puisse etre
connue.
Pour cela, on implementera un type "tableau" permettant les operations
suivantes:
- creer : entier -----> tableau % creer(n) retourne un tableau
de capacite n (et non pas de taille n)
- ieme : entier x tableau ----> element
- placer element x tableau x entier ---->
- permuter tableau x entier x entier ---->
On definira ensuite a partir de "tableau" un type "tas" muni de ses
operations ( vide max ajouter retirermax )
2/ Ecrire une fonction "fibonacci" calculant le nieme terme de la suite, et
le memorisant pour des usages ulterieurs.
3/ a-
Ecrire une fonction decoupe ayant pour arguments 2 chaines de caracteres
C et S , S contenant les caracteres consideres comme separateurs, et
telle que les appels successifs de "decoupe" retournent la suite des
mots de S (et NULL) lorsqu'il n'y en a plus.
Rq : a partir du 2eme appel, on utilisera NULL a la place de C, sauf
pour recommencer un nouveau decoupage.
b-
Utiliser "decoupe" pour ecrire une fonction "Decoupe" retournant un
tableau de mots.
[/spoiler]
Exo-D
[spoiler]--D--
1/ Definir les Listes Recursives par une implementation chainee, puis ecrire
les fonctions associees.
Utiliser ces fonctions pour implementer le probleme dit "solitaire bulgare".
2/ Definir les Piles par une implementation chainee, puis ecrire les fonctions
associees.
Reprendre l'exercice des "tours de Hanoi" (cf. TD algo) et modeliser les
tours par des piles d'entiers. (La procedure "Hanoi" affichera
(horizontalement) les tours a chaque etape.)
3/ Definir les arbres binaires de recherche, puis ecrire les fonctions
associees.
Ecrire les fonctions "taille" et "hauteur"
Experimenter "hauteur" sur 2 arbres , l'un ayant ete initialise a partir
d'une suite ordonnee , l'autre a partir d'une suite aleatoire.
Ecrire une procedure de tri de Vecteur utilisant un arbre.[/spoiler]
Exo-E
[spoiler]On considere le probleme du tri d'un fichier F a n elements sur un ordinateur
dont la memoire peut contenir au plus p elements. (p<n)
On va donc trier F en sous-sequences de taille p que l'on ecrit dans
des fichiers (tries) f1, f2 ... fk que l'on fusionnera ensuite.
1ere methode
on fusionne f1 et f2 dans un nouveau fichier f{k+1}, f3 et f4 en f{k+2}
et on recommence jusqu'a obtention d'un unique fichier.
a- Ecrire une fonction de fusion de 2 fichiers.
b- Ecrire une fonction qui genere un fichier trie a partir du fichier F
(on utilisera une procedure de tri en memoire deja ecrite : tri rapide
par exemple)
2eme methode
On fusionne simultanement les k fichiers, en utilisant un ensemble S
de taille au plus k et contenant le plus petit element courant de
chaque fichier lors de la fusion.
( Comment organiser S pour qu'a chaque etape le plus petit element de S
soit accessible en temps constant ? )
Ecrire une procedure realisant les fusions simultanees .
[/spoiler]
Certain exo te demanderons quelques recherche pour bien comprendre ce qu'on te demande. Les exo sont fais pour le C certain ne sont pas très intéressant pour le python. Mais les premiers sont suffisant. Quand tu seras à l'aise passe au C.
Tu peux aussi après te pencher sur le concours prologin il y a des trucs très sympa à faire.
Je suis nul en math :mellow: , puis pourquoi passé au C alors que je trouve le python assez compliqué xD, je programme pour le plaisirs je compte pas en faire mon métier puis je trouve que python offre beaucoups de possibilité (bien plus que rpg maker en tout cas :ninja:) donc je trouve que ce langage est parfais pour des jeux type 2d =)
^^
Non mais moi aussi je programme pour le plaisir. Mais si tu veux faire un jeu soit tu passes par des logiciel de making soit tu passe par un langage de programmation. Et si tu passes par un langage tu ne peux pas te contenter d'en savoir aussi peut sur le fonctionnement interne.
Je ne te suit pas la, le python et complet et creer un jeu en python et fesable, alors pourquoi apprendre le python si c' est pour ensuite apprendre le C ..... Je suis perdue la xD
Le python est un langage simple et créer de façon très objet. Il te cache donc beaucoup de chose. Il est donc très pratique pour commencer a programmer.
Le fait qu'il te permette de faire un jeux est pas suffisant pour autant, toi tu va manquer de beaucoup de connaissance pour faire ton jeux.
Mais après tu fais comme tu veux. Je te donne juste mon avis comme tu l'avais demandé.
Note que je te déconseille pas de faire un jeu en python je te déconseille de le faire trop tot.
Va voir ailleurs fait toi un avis une expérience avant de te lancer.
La dessus je suis d'accord avec toi, c' est du suicide de commencé un jeu en python quand on y connait presque rien comme moi. Je n' avais pas l'intention de faire sa non plus ^^', vaut mieux apprendre ,petit a petit et ne pas y aller trop vite =), merci ^^