Si vous débutez dans le développement de jeux, vous serez sans doute amené à vous posez des questions et à chercher les meilleures ressources pour que votre apprentissage se fasse dans les meilleures conditions. Ce sujet a été élaborée pour être à la fois un complément des tutoriels sur le jeu vidéo du Site du Zéro et pour fournir un condensé de cours en ligne (issus du Site du Zéro ou non), de livres, articles et conseils divers que vous pouvez trouver sur Internet.
Pour le moment, ce sujet condense les ressources pour les 3 moteurs de jeux les plus utilisés, ainsi que les tutoriels d'autres outils intéressants.
Vous trouvez ce sujet incomplet ou vous voulez rajouter une partie ? N'hésitez pas à poster à la suite de ce topic pour proposer vos propres ressources afin de les intégrer dans ce condensé d'informations !
Il s'agit ici d'un sujet assez complexe, puisque dans le jeu vidéo il y a encore beaucoup de différences par rapport à la modélisation classique. Du coup, je commence avec les grandes lignes au niveau de la modélisation.
D'abord, l'évidence, c'est le low poly. Dans un jeu vidéo, même si aujourd'hui on a peu de limites gênantes de ce côté, on reste sur des volumes de polys assez faibles, comme 500 triangles pour une caisse un peu élaborée, 50 000 triangles pour un personnage par exemple (par opposition au high poly qui va taper dans le million très vite, ou carrément au sculpt avec zBrush ou MudBox par exemple).
La conséquence simple est que le process actuel de réalisation d'un asset de jeu vidéo est sans doute en deux étapes : d'abord, une modélisation détaillée sans limites, soit par sculpt soit en high poly classique dans un modeleur, et une phase de conversion pour le jeu vidéo : réalisation d'un mesh low-poly, baking.
Qu'est-ce que le baking ? C'est la génération d'une normal map qui va reproduire le relief du high poly sur un objet low poly.
A ce niveau, l'essentiel est dit sur la modélisation elle-même. Habiutellement, c'est à partir du baking qu'on s'attaque à la texture (même si d'autres travaillent directement sur le sculpt), c'est en tout cas la méthode la plus facile. Mais avant de parler texture, il faut parler de shaders.
Le shader, c'est l'équivalent bas niveau de ce qu'on appelle habituellement "Material" en 3D. Du point de vue haut niveau, utilisateur, un shader contrôle le rendu. En effet, un objet n'a pas juste une texture, en tout cas plus depuis les années 90 ! On ajoute une texture qui crée du relief (normal map), une texture qui contrôle l'intensité des reflets (specular map), éventuellement une texture qui crée de la lumière (glow map), et évidemment ce qu'on appelle habituellement "LA texture", qui s'appelle la diffuse map. Sur le plan bas niveau, un shader est un programme, rédigé en HLSL ou GLSL, ou généré via un outil haut niveau (comme dans UDK par exemple).
En résumé, pour réaliser un asset de jeu vidéo, on commence par un objet high poly, on réalise un asset low poly à partir de ça, qu'on texture. On crée éventuellement une specular map, et on importe le tout dans le moteur : c'est prêt !
Maintenant qu'on sait importer un objet proprement, on va parler un peu de modularité. En effet, voici quelques contraintes de la réalisation dans un jeu vidéo :
jamais d'objet à collision creuse, sauf exception : si vous réalisez une maison, ne faites JAMAIS un seul objet ;
la taille des objets doit rester moyenne ;
d'une façon générale, il vaut mieux éviter de fabriquer un objet pour s'en servir une seule fois, si on peut l'éviter.
La réponse à ces problèmes, c'est le design modulaire. Comme une image vaut mieux qu'on un long discours, voici un screenshot d'un niveau de DeepVoid avec quelques objets déplacés et sélectionnés (en violet).
On voit qu'en fait, cet assemblage massif est constitué de dizaines d'objets identiques, positionnés différemment comme un jeu de lego. C'est le principe du design modulaire : réaliser des objets génériques, de dimension très bien définies (puissance de 2) qu'on va placer suivant une grille dans son niveau.
Pour réaliser un asset modulaire, c'est simple, il suffit de suivre des règles !
Toujours des dimensions en puissance de 2 : 128, 512, etc.
Un objet modulaire peut s'agrandir d'un facteur 2, 4, 0.5 suivant le besoin du level designer, il est donc impératif d'en tenir compte : le centre de l'objet, la coordonnée (0,0,0) du repère, doit toujours être dans un angle, de façon à ce qu'un redimensionnement conserve au moins ce point comme référence.
Il faut penser l'objet en imaginant qu'il va être copié-collé des dizaines de fois : si vous réalisez un mur en briques modulaire, arrangez-vous pour qu'il aie une épaisseur, pour que toutes les faces aient une texture propre, qu'il n'y aie pas de trou, etc. Le level designer aura peut-être besoin d'une position pas imaginée au départ.
Souvent, on fonctionne par "kit", c'est-à-dire en réalisant toute une série d'éléments cohérents, modulaires, utilisables en kits.
Et maintenant, quelques exemples pour la forme !
Comme on le voit, le principe se prête très bien aux bâtiments propres et bien découpés. Mais avec un peu de travail, on peut en faire de tout. Skyrim, par exemple, repose très largement sur le design modulaire, y compris pour des grottes par exemple...
Voilà, c'est une introduction assez générale. N'hésite pas à poser plus de questions sur des éléments précis, je ne sais pas exactement ce qui t'intéresse en particulier.
Non, j'ai déjà du mal à trouver le temps de mettre ce sujet à jour mais tu peux proposer des moteurs de jeu 2D, des articles ou autres, ce sera ajouté sans problème.
Hello hello, je vais essayer de rajouter mon petit grain de sel Je vais donc faire ici un petit listing des moteurs de jeux 3D ET 2D.
Listing des moteurs de jeu
Attention, cette liste n'est pas exhaustive, j'essayerai de la mettre à jour dès que je pourrais. Pour me rappeler un moteur de jeu, envoyez-moi un MP (de préférence avec un lien ^^). J'indiquerai avec le moteur de jeu le(s) langage(s) utilisé(s), ainsi que les développeurs du moteur.
Moteurs de jeu 3D
UDK - Utilise un langage propre au moteur, l'Unreal Script - développé par Epic Games - C'est la version gratuite de l'Unreal Engine 3 LIEN
Unreal Engine 4 - Programmable en C++ - développé par Epic Games - Ce moteur est payant : $19/mois (+5% en cas de jeu commercial) LIEN
Unity3D 4 - Programmable en C#, Javascript et Boo - développé par Unity Technologies - Ce moteur de jeu dispose d'une version gratuite et d'une version payante ($1500 ou $75/mois) LIEN
Unity3D 5 - La prochaine version de Unity est disponible en précommande, en attendant ils fournissent Unity 4. Aucun prix indicatif n'est fourni
CryEngine - Programmable en C++ - Développé par Crytek - C'est un moteur gratuit pour des jeux non-commerciaux LIEN
CryEngine EaaS - C'est la prochaine version du CryEngine, qui bénéficiera des mises à jour. C'est un moteur payant à 9€90/mois et sans royalties
Source - Programmable en C++ - Développé par Valve - C'est un moteur disponible pour le modding (Source sdk) si on achète un jeu l'utilisant LIEN
Hero Engine - Utilise un langage propre au moteur, l'HeroScript - Développé par Idea Fabrik - C'est un moteur payant à $99,95/anLIEN
jMonkeyEngine - Programmable en Java - Développé par l'équipe du jMonkeyEngine - C'est un moteur libreLIEN
Moteurs de jeu 2D
Construct 2 - Programmable en Javascript - Développé par Scirra - C'est un moteur payant à £79, ou £259 si votre jeu est affilié à une organisation commerciale ou dépasse les $5000 de revenusLIEN
FIFE - Programmable en Python - Développé par FIFE - C'est un moteur gratuitLIEN
RPG Maker XP - Programmable en RGSS, une version modifiée du Ruby - Développé par Enterbrain - C'est un moteur payant à $24,99 (une version d'essai est disponible) LIEN
RPG Maker VX - Programmable en RGSS2, une version modifiée du Ruby - Développé par Enterbrain - C'est un moteur payant à $59,99 (une version d'essai est disponible) LIEN
RPG Maker VX Ace - Programmable en RGSS3, une version modifiée du Ruby - Développé par Enterbrain - C'est un moteur payant à $69,99 (une version d'essai est disponible) LIEN
IG Maker - J'ai pas trouvé le langage de scripts, mais il devrait y en avoir un :/ - Développé par Enterbrain - C'est un moteur payant à $59,99 (une version d'essai est disponible) LIEN
Game Maker - Utilise un langage propre au moteur, le GML - Développé par Yoyo Games - Son prix varie de gratuit à $799,99 selon les fonctionnalités voulues LIEN
Ce post n'est encore qu'une ébauche, j'espère qu'il vous servira, je devrais probablement le mettre beaucoup à jour dans un premier temps
Pour toute remarque sur ce que j'ai écrit, faites-le par MP. Si vous souhaitez posez une question, par MP aussi, sauf si elle peut être intéressante pour d'autres personnes que vous.
Oui mais non, nous te l'avons déjà dit une fois : il faut prendre le temps de bien faire les choses. Pas proposer juste pour proposer. Il y'a énormément de fautes (orthographe, accords,..) dans la vidéo. Si vraiment tu veux proposer un tuto vidéo, fais-le bien quoi. Je t'invite à corriger les fautes et à la remettre en ligne car en l'état c'est juste pas présentable. Et c'est d'autant plus dommage que tu es parti d'une bonne intention. Il faut vraiment que tu peaufines les choses, que ce soit le plus impeccable possible car n'oublie pas que cela va être consulté par d'autres. C'est une question de respect.
J'ai mis le premier post à jour en incluant un lien direct vers le post de Phigger. D'autres articles seront mis en ligne bientôt. N'hésitez pas à proposer des articles sur des points précis (priorité !), des tutos pour compléter la liste (que vous soyez l'auteur ou non), des breakdown, whatever.
Mise à jour de la liste avec ajouts de tutos pour UE4 et des liens vers la doc/wiki/tutos/AnswerHub officiels d'Epic Games.
Encore une fois, n'hésitez pas à proposer vos tutos, des tutos que vous connaissez (surtout des gratuits (que je connais moins), la liste étant assez à jour pour les tutos payants), des articles, etc.
bonjours je voulais savoir : unity 3D nous propose des prefabs comme des arbre, d'herbé, est aussi des script,.......... et je voulais savoir si on peux les intégrait complet dans notre jeux sans avoir de problèmes avec unity 3D par la suite et dans l'asset Store on peux télécharger des prefabs et des script gratuitement et je voulais savoir aussi si on peux aussi les intégrait complet dans notre jeux sans avoir de problème pas la suite aussi .
Pour faire un jeu 2D: Python 3 suffit amplement grâce à sa bibliothèque PyGame (qu'il vous faudra télécharger sur www.pygame.org).
Les gestions de collisions peuvent paraitre compliquée à réaliser sans moteur physique mais il n'en est rien : vous pouvez implémenter un système de niveau case par case : une case faisant par exemple 32 px sur 32 px et donc tout les 32 px on affiche une image correspondant à un code source dans un fichier que l'on lit sous forme de double liste (pas d’inquiétudes tout est expliqué dans le tuto sur PyGame ! )
je m’appelle Félix et j'ai un petit problème de script. Je suis actuellement un cour pour créer mon premier jeu sur Unity et je suis rendu à la partie naviguer dans la structure (les plateformes) et je suis bloqué. Premièrement, j'utilise la version 5.3.2. J'ai importé l'assets character pour avoir ma caméra de 1st person controller et j'ai finalement trouvé le prefabs qui contenait la caméra, je l'ai déplacé sur ma scène et quand je clique sur play, un message apparaît : All compiller errors have to be fixed before you can enter playmode! Je suis alors allé dans l'onglet inspector pour voir si ma caméra avait un problème et effectivement, un triangle jaune est présent avec un message me disant : the associated script can not be loaded. Please fix any compile errors and assigned a valid script. Que dois-je faire ?
Bonjour, je débute dans le monde de développement du jeu vidéo et je suis bloqué qq part,lorsque je veux importer des packages (Comme dans le tuto / dans Assets), je nique l'option "Custom Packages.. . " qui s'affiche, est ce normal ? Comment parvenir à faire comme dans la vidéo ? Merci
[Dev. JV] Ressources utiles et Foire Aux Questions
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
Erwan28250
Erwan28250
Erwan28250
Développeur C#. Mon blog sur mes projets Unity 3D. Mes jeux Android.