CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

Python pour les débutants?

Pseudo supprimé
Pseudo supprimé 30 janvier 2020 à 20:36:17

Bonjour,

Je vois souvent ici ou sur d’autres forums Python être proposé aux débutants qui souhaitent créer des jeux videos.
C’est le langage avec lequel j’ai commencé moi même.

Ce topic n’est pas fait pour démolir Python ou comparer tel et tel langage mais je me demandais pourquoi Python revenait si souvent comme 1er langage a apprendre pour les débutants.

Python est très facile a apprendre et vous pouvez en quelques semaines faire des petits programmes simples.
Le problème que j’ai avec Python est plus par la suite, une fois que vous voulez faire un jeu a proprement parler.

Je connais un seul moteur de jeu (godot) qui est relativement récent et a peu de doc et une communauté assez réduite (comparé a Unity par exemple).

Vos autres options sont des librairies comme pygame, ren’py, coco etc... mais elles sont assez limités et pas forcément très “beginners friendly”.

J’ai l’impression que Python rend les tout débuts plus simple (faire un jeu d’aventure sur la console de command par exemple) mais sur le long terme rend les choses plus difficiles.

A l’inverse quelque chose comme C# est plus difficile au début mais une fois que vous maitrisez les bases vous avez plus d’outils a disposition pour simplifier le développement et faire un jeu sera plus simple pour vous.

J’aime beaucoup Python mais je ne comprend pas vraiment pourquoi il revient si souvent dans les forums et communautés de développement de jeux alors qu’il ne semble pas vraiment adapté a la création de jeux...

Message édité le 30 janvier 2020 à 20:39:43 par Pseudo supprimé
ThetaTauTau
ThetaTauTau
Niveau 8
30 janvier 2020 à 21:15:00

Pour commencer la programation il y a deux visions, soit commencer par un langage facile à apprendre : Python, soit commencer par un langage plus proche du langage machine : C.

Mais ça c'est pour la programation, pas pour la création de jeux. On peut tout à fait commencer la création de jeux par un autre "bout" que la programation, que ce soit via un moteur style construct2, ou via un éditeur d'image (photoshop) ou 3D (blender).

Et aussi, le choix du langage de programation à apprendre ça semble important quand on débute, mais en fait on s'en fout un peu. Une fois qu'on a un peu d'expérience en programmation, on peut facilement apprendre un nouveau langage.

Genre quand j'ai commencé Unity, j'avais jamais touché au C#. J'ai du passer une heure à regarder les grandes lignes du langages et j'étais opérationnel (en gardant la doc sous le coude hein).

zebtorax
zebtorax
Niveau 9
30 janvier 2020 à 21:16:46

La réponse est simple, Python est un langage haut niveau, sans être trop éloigné du bas niveau pour autant.
C'est donc un langage facile à apprendre et donc c'est un langage assez simple à maîtriser.
C'est pour cela qu'on le conseil aux débutants.
Mais par ailleurs, c'est aussi un langage assez récent (beaucoup plus récent que le C par exemple, qui lui est très bas niveau), donc adapté à des moteurs/logiciels plus récents, et donc avec de plus petites communautés, beaucoup moins de ressources, etc.
Ce qui fait l'effet que tu décris très bien dans ton post, en effet.

Pseudo supprimé
Pseudo supprimé 30 janvier 2020 à 23:13:17

Python permet d’apprendre facilement la logique a adopter pour programmer.

Apprendre java ou c# est beaucoup plus simple après avoir appris python je pense.

Après effectivement faire des jeux avec ce langage est assez difficile.
Je pense que godot a la potentiel de changer ca (meme si techniquement c’est pas python...) mais ca va prendre du temps.

Je conseillerais quand meme aux débutant de commencer avec, pour se faire une idée de ce qu’est la programmation avant de passer a un langage plus adapté aux jeux comme C#.

boucif
boucif
Niveau 24
31 janvier 2020 à 10:59:49

J'ai commencé la prog avec Java/C#, t'es pas obligé de commencer avec python, les gens conseils beaucoup en fonction de ce qu'il connaisse, tu dois avoir beaucoup de dev python sur le fofo.

Shiba_the_Inu
Shiba_the_Inu
Niveau 85
31 janvier 2020 à 23:30:56

Perso j'ai commencé js et c++ et légèrement c, mais le python je peux pas ^^'.
Je le trouve pas super clair car il est justement trop simplifié. Et en réalité les autres sont pas forcément plus difficile à commencer, la logique des éléments de base est similaire, et la manière d'écrire le code les rend plus rapidement identifiables au niveau du déroulement du code, notamment sur les portée de fonction, l'identification des variables etc.
Le js je trouve est un bon compromis, y'a pas autant de noms de variables à connaitre qu'en c/c++, c'est très dynamique et donc ça permet de changer le code directement (et de voir comment il impact le reste du code justement). Les variables peuvent changer de genre, ce qui est pas mal au début aussi (même si après c’est justement un point qui parfois me plaît moins, car on contrôle moins certaines choses)
Au final avec python on ne prend pas forcément de bonnes habitude j'ai l'impression, car c'est un des seuls sur les langages les plus utilisés, qui n'a pas de balisage notamment, et à mon sens ça permet d'un peu mieux voir son code, sa portée etc.

Vos autres options sont des librairies comme pygame, ren’py, coco etc... mais elles sont assez limités et pas forcément très “beginners friendly”.

Je dirais que de toute manière, une bibliothèque (encore plus si on veut une qui soit pas limitée) n'est pas vraiment un truc de "beginner", avant de s’attaquer à une bibliothèque qui ajoute des fonction, c'est déjà bien de connaitre les fonction de base du langage, oud es langage en général. S'attaquer à une bibliothèque demandera de toute manière (peu importe laquelle) de lire un peu la documentation, pour comprendre quelles fonctions utilisées, comment elles marchent etc. Je ne pense pas que ce soit spécifique au Python. Pour ce qui est des limites, je connais pas ces bibliothèques, mais avec un simple framework on peu déjà faire énormément de choses en 2d, et à mon avis, autant commencer par là plutôt que la 3d. De toute façon ce sera à nous de travailler la base, les classes/objets, l'initialisation des interfaces, du gameplay etc.... ou alors autant travailler juste via des moteurs de jeu en utilisant principalement les blueprints, genre j'en vois plein qui parlent de L'Unreal Engine plus comme un moteur de jeu de blueprint que de programmation directe. Ça dépendra aussi ton projet derrière.

J’aime beaucoup Python mais je ne comprend pas vraiment pourquoi il revient si souvent dans les forums et communautés de développement de jeux alors qu’il ne semble pas vraiment adapté a la création de jeux...

Comme l'ont dit mes VDD, c'est un langage simple, qui peut s'apprendre assez facilement même quand on est jeune car tu n'as pas autant de terme (en plus anglais) à connaitre qu'en C#/C/C++, java etc. Donc forcément il a des chance d'apparaitre en premier langage, en général quand on fait entrer quelqu'un dans un domaine, on évite de lui balancer un truc trop compliqué, ou trop spécifique. J'adore le C++, mais je le conseillerais pas forcément selon la personne, j'aurais plutôt tendance à parler de JS dans un premier temps car c'est un peu le compromis entre du Python et du C++ pour les raisons évoquées précédemment.
Puis son dynamisme plus le fait qu'il y a énormément de tutos/ressources sur le net peut le rendre plus accessible aussi, si t'as un problème t'as des milliards de solutions assez rapidement. Sans compter que t'as juste besoin d'ouvrir ton navigateur, pas besoin d'installer de logiciel, les librairies etc.

Après chaque langage a ses atouts/défauts, le Python est simple mais moins adaptées sur des gros projets, le c++ complet mais exigeant, le javascript dynamique mais peine sur certaines choses comme l'écriture de fichier etc.

tbol
tbol
Niveau 20
01 février 2020 à 00:31:31

Python est une mode en éducation mais pas spécialement pour la programmation de jeux vidéos. Quand on vise les jeux vidéo rien n’empêche de commencer directement par par exemple C# pour viser par exemple Unity comme tu le suggères, ou de passer rapidement à un autre langage après avoir acquis quelques bases en Python. Un étudiant qui vise des études supérieures en informatique va avoir l'occasion de voir plusieurs langages pendant ses études et c'est plutôt une bonne chose pour sa culture générale, après c'est utile de se spécialiser et de devenir un expert dans une technologie ou un langage en particulier une fois les études terminées.
A l'inverse un étudiant qui vise à devenir DaTa Scientist pourra rester sur Python de bout en bout à moins de faire aussi un peu de R ou d'autres langages pour sa culture générale..
Donc Python pour les jeux vidéos c'est juste une option éducative et pas du tout une obligation.

Message édité le 01 février 2020 à 00:32:32 par tbol
Sous forums
  • Aide à l'achat Mac
  • Création de sites web
  • Création de Jeux
  • Linux
  • Programmation
  • Internet
  • Steam Deck
  • Macintosh
  • Hardware
La vidéo du moment