Développement jeux vidéo

a marqué ce sujet comme résolu.

Bonjour

J’ai besoin de conseils. J’ai besoin de développer un (des?) jeux mobiles (Android et ios), je me posais la question quels outils utiliser. Pour l’instant (peut être plus tard évolué) l’idée c’est plutôt 2d, coloré plutôt que du graphisme ultra réaliste.

J’ai un peu cherché sur internet, il y a évidemment unreal qui apparaît à chaque fois, ça me semble intéressant bien que ça m’a l’air très gros par rapport à mes besoins qui me semblent beaucoup moins grands.

Il y’a une certaine époque j’utilisais la sfml je sais que c’est possible de la faire porter sur mobile mais.. Est ce vraiment une bonne solution quand on commence à nouveau projet, autant aller sur quelque chose de plus adapté.

Salut,

Tu as le duo des deux gros moteurs de jeux commerciaux existants : Unreal Engine et Unity.

Concernant Unreal Engine : ben il me semble qu’il fait uniquement de la 3D, alors je ne pense pas qu’il va pouvoir t’aider.

Pour Unity, tu as un moteur gratuit et la plus grosse communauté existante pour trouver des ressources. Il faut juste faire attention à trouver des tutos à jour, parce que énormément du contenu référencé parle de choses qui ont évolué, sont faisables différemment aujourd’hui, plus facilement, plus efficacement, etc.

Sinon, tu as un moteur libre qui s’appelle Godot, que j’affectionne beaucoup (mais je ne suis pas créateur de jeux vidéos).

Sinon, il y a des moteurs spécialisés 2D qui seront peut-être plus facile d’accès : Game Maker ou Construct en commercial, GDevelop en libre.

Après, il existe plein de bibliothèques, de frameworks, et de moteurs de jeux sans éditeur. Balatro, par exemple, a été conçu avec LÖVE, il me semble.

+8 -0

En gros tu me conseil plus de ne pas aller vers les moteurs de jeux mais plus vers open gl par exemple? Et concernant sfml ce n’est pas une bonne solution ? (ou quelque chose d’équivalent ?)

J’ai demandé à chat gpt il m’a proposé ça Cocos2d-x Je ne sais pas ce que ça vaut… Des connaisseurs ?

+0 -0

Tout dépend de ton objectif et de ce avec quoi tu es à l’aise. Mais non, je ne te conseille pas d’aller vers les bibliothèques, mais bien vers les moteurs de jeux que j’ai listés.

Si tu nous détailles tes objectifs, tes connaissances, tes besoins, je pourrai t’orienter plus précisément.

+0 -0

J’ai été formé en c/c++. (J’ai arrêté le c) Depuis je me suis plus spécialisé dans le développement logiciel bureautique. Travailler dedans pour plusieurs boîtes. Maintenant j’ai des petits projets de jeux mobiles. Sfml c’est plutôt projet amateurs pour s’amuser (ou amuser les autres).

Donc pour répondre précisément c++ très à l’aise, projets de jeux vidéos à des fins de commercialisation.

Hello,

Si le but est de faire un produit fini, dans ce cas, utilise un moteur de jeu comme Unity, Godot (dont la popularité augmente à juste titre), Gdevelop…

+0 -0

Si tu es à l’aise avec les langages bas niveaux, tu n’auras pas besoin spécifiquement d’un outil de scripting de haut niveau. Ça peut quand même être utile, si tu apprécies ça, parce que ça permet d’accélérer le développement.

Mais Unity et Godot ont une API C#. Il me semble que les deux permettent également le développement en C++, mais ça fonctionne différemment.

Si ton but est d’être efficace, d’avancer rapidement sans être limité, d’avoir accès à énormément de ressources gratuites ou payantes (y compris un énorme store d’assets graphiques), Unity est le choix évident. Si tu préfères partir sur un moteur libre, que pas mal de devs décrivent comme élégant, pour ne pas être dépendant des éventuelles évolutions hasardeuses de tarification d’une boîte pas très saine, et que tu n’as pas peur d’avoir moins de ressources, fonce sur Godot.

+0 -0

Si tu es à l’aise avec les langages bas niveaux, tu n’auras pas besoin spécifiquement d’un outil de scripting de haut niveau. Ça peut quand même être utile, si tu apprécies ça, parce que ça permet d’accélérer le développement.

C’est l’idée. Le but d’un moteur est d’éviter de réinventer la roue et d’avoir quelque chose sous le capot (gestion du rendu, physique, son,…). Si le but est de développer et commercialiser un jeu, tout faire de zéro est une perte de temps. La programmation d’un jeu est secondaire face au choix de la direction artistique, à la création d’assets 2d/3d, aux mécaniques, au son et musiques du jeu, etc.

Il faut donc choisir sa bataille parce que toute la partie prog' est minime comparée au reste.

Par contre, aller vers du bas niveau pour apprendre est intéressant. Dans ce cas, cela étant, le jeu sert plus de support à l’apprentissage qu’à un désir d’avoir un produit fini.

+0 -0

Si tu es à l’aise avec les langages bas niveaux, tu n’auras pas besoin spécifiquement d’un outil de scripting de haut niveau. Ça peut quand même être utile, si tu apprécies ça, parce que ça permet d’accélérer le développement.

C’est l’idée. Le but d’un moteur est d’éviter de réinventer la roue et d’avoir quelque chose sous le capot (gestion du rendu, physique, son,…). Si le but est de développer et commercialiser un jeu, tout faire de zéro est une perte de temps. La programmation d’un jeu est secondaire face au choix de la direction artistique, à la création d’assets 2d/3d, aux mécaniques, au son et musiques du jeu, etc.

Arius

Pour le coup, je pensais plutôt à la comparaison entre les différentes API existantes, par exemple visual scripting vs C++ sur Unreal Engine :) Ou tout simplement, des moteurs plus simples d’accès comme GDevelop, mais sur lequel on peut finir par se sentir limité

+1 -0

J’ai un peu lu la doc de godot et le c++ y est mentionné, apparemment il suffit d’une extension pour que cela fonctionne, ça a plus ou moins le fonctionnement que c# (chaque scène est une classe et on herite de celle-ci ) .

Je ne connais pas trop le c# mais ça ressemble beaucoup aux c++ , non ? Si oui ça devrait pas trop de poser de problème en cas de syntaxe , qu’est ce que vous en pensez ?

Une autre question me vient est-ce que godot risque d’être abandonner ? Unity ou unreal c’est des grosses avec une partie premium mais godot ? Si je concentre mes efforts dessus et que dans un an plus de supports ?

+0 -0

C# est un langage plus haut niveau (dans le sens plus éloigné de la logique machine) que C++. C’est, à priori, pas le plus étranger au C++ quand on va regarder d’autres langages comme le Javascript ou le Python. Mais il y a des choses qui changent, c’est sûr (d’autres qui connaissent mieux ces 2 langages que moi pourront peut-être donner plus d’infos dessus).

Si on le compare aux autres projets libres un peu semblables, c’est sûr que Godot n’est pas aussi bien implanté que Blender. Mais c’est quand même un projet très stable, aux mises à jour régulières. Il y a des projets professionnels qui se font avec (tu peux regarder leurs vidéos des jeux sortis avec Godot, il y en a que tu reconnaitras peut-être), et certains des contributeurs les plus importants du projet se sont même lancés professionnellement dedans.

Unity, à l’inverse, est en mauvaise santé financière, et ils ont prouvé qu’ils pouvaient faire des choix très hasardeux (sur leur politique de tarification…). Mais ça reste le moteur de jeux le plus utilisé au monde, alors quand ils déconnent trop ils se prennent la plus grosse montée de boucliers du jeu vidéo.

+1 -0

Un moteur physique, la possibilité d’export sur Android / IOS, la gestion du réseau, une API performante spécialement dédiée au jeu vidéo… C’est assez simple, si on a un projet commercial, en 2024 on ne s’amuse pas à repartir avec des libs bas niveau, on utilise un moteur qui a déjà travaillé tous les éléments communs et courants des jeux vidéos.

+1 -0
Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte