Sur cette page vous trouverez tout ce qu'il faut pour faire un jeu amateur, avec ou sans connaissances.
Note : J'ai besoin d'aide pour récolter des infos. N'hésitez pas à m'envoyer des commentaires/corrections/critiques/nouveaux liens et paragraphes à : consolecoder@hotmail.com. Tous ensemble, on obtiendra un document de meilleure qualité.
Note 2 : Merci à tous ceux qui participent !! Y a trop de monde pour citer tous les noms, mais cette page vous est dédiée.
Mes autres pages :
- Ma méthode simple pour apprendre le C/C++ aux travers d’exercices basés sur les jeux est dispo la : NGCK
- La liste des projets amateurs Français : PROJET AMATEURS
- Un page d'info sur les metiers du Jeu Video : LES METIERS DU JEU VIDEO
- Making of complet de mon premier jeu pro : LES RONRONS
Dernier update : 25-août-2008
AUTRES LANGAGES DE PROGRAMMATION
OUTILS POUR CREER DES JEUX SANS PROGRAMMATION
AUTRES MACHINES
PDA / PALM / TELEPHONES PORTABLES
Quels sont les bases à avoir pour tous projets avant de recruter ?
Quel message pourra vous différencier des autres projets pour mieux recruter ?
Comment présenter son projet sur un forum ?
Ce texte a pour but d'aider les débutants qui désirent concevoir un jeu.
Avant toutes choses, je voudrais mettre en garde les débutants : Faire un jeu, c’est très long.
Le plaisir que l’on éprouve à jouer à un jeu n’est en rien identique aux efforts qu’il faut fournir pour le fabriquer.
Faire un jeu, c’est dur et c’est long. Il ne faut jamais sous estimer cela.
Pour faire Gran Turismo 3 sur PS2 par exemple, 90 personnes (des pros) ont bossés pendant 2 ou 3 ans.
Pour faire le même jeu à 2 ou 3 pros a temps plein, il faut 90 ans.
Pour faire le même jeu avec une équipe de 2 ou 3 amateurs qui font ça pendant leur temps libre, il faut compter 2250 ans !!!.
C’est un exemple volontairement exagéré mais c’est important de bien estimer le travail que nécessite la création d’un jeu.
Dans le même ordre d’idée, un amateur débutant seul pourra en quelques mois (3 ou 4) faire un jeu 2D avec quelques niveaux.
Si vous utilisez des logiciels pour fabriquer des jeux (genre RPG Maker) les délais seront plus courts.
Il est donc très important de savoir si pour vous l’important est de commencer un jeu ambitieux et de ne pas le finir ou alors de faire un jeu beaucoup plus petit et d’arriver à aller jusqu’au bout. Pour les débutants, il est donc conseillé de commencer avec des petits jeux.
Je suis conscient que c’est en se trompant qu’on apprend. Donc j’encourage tous les jeunes à se lancer dans la merveilleuse aventure qu’est la création d’un jeu même si le projet ne sera pas terminé ou même pas commencé.
La création d’un jeu représente une montagne de travail. Pour gravir cette montagne, il faut planifier de petites étapes et ainsi créer un escalier qui vous permettra d’arriver au sommet. Si les marches de l’escalier sont trop hautes, alors vous abandonnerez. Donc mon conseil : Planifiez de multiples petits objectifs que vous serez sur d’atteindre.
En conclusion de cette intro, je vous invite à lire ce texte de Kamron qui développe plus en profondeur ce que je viens de dire et vous donne des conseils pour arriver au bout de votre projet (c’est en français) :
http://www.kamron.net/french/prog/joelastar.php
Ce qu’il faut retenir, c’est que le chemin est parsemé de grosses embûches qui vous pousseront à abandonner. Il faut donc une motivation du tonnerre pour y arriver (une simple « grosse motivation » ne suffit pas).
Pour appuyer cette réflexion, je vous invite également a lire l’analyse du développement d’un bomberman amateur (qui a duré 2 ans et demi) fait par Fury94 :
http://www.codefr.org/tiki-index.php?page=Bombermaaan+de+fury
Enfin, peut ceux qui voudraient devenir le prochain créateur de jeu du siècle, voici un article qui mets bien en évidence les fausses idées qu’on se fait sur le métier de game designer : « Les 17,5 raisons pour lesquelles vous n'êtes pas le prochain génie du JV » (http://www.jiraf.org/modules.php?name=News&file=article&sid=134&mode=&order=0&thold=0 )
Pour bien débuter son projet il faut tout d'abords choisir la plateforme sur laquelle le jeu tournera.
- Ordinateur Personnel / OS : PC, Linux/Unix, Mac
- Console de Salon : PS2, XBOX, NGC
- Console portable : GBA, GP32
- Palm / PDA / Téléphones portables
- Jeux dans navigateur Internet
Sur cette page, vous trouverez un paragraphe complet pour chaque support.
Le support le plus couramment utilise est le PC.
Les consoles de salon, bien que plus attrayantes sont les plus difficiles au niveau développement amateur.
Même si la plateforme finale n’est pas le PC, la programmation du jeu se fera en général toujours sur un ordinateur personnel. C'est du développement « croisé ». Par exemple un jeu GBA peut être écrit et compilé sur un PC (ouf pas besoin de coder sur GBA !). Les outils sont plus nombreux et c'est bien plus pratique.
Il existe plusieurs catégories de langages et outils pour réaliser un jeu.
- Langages classiques (C/C++)
- Langages simplifiés (Basic)
- Outils tout fait pour faire des jeux (RPGMaker, etc ...)
Les détails de différents langages dans ces catégories seront donnés par machine dans la suite du document.
Le paragraphe suivant donne des généralités sur ces trois points.
- C/C++
Le C/C++ est le langage le plus utilisé. C'est un langage primaire avec des instructions de base.
Le C/C++ est un langage généraliste. Il est utilisé pour créer des logiciels de toutes sortes (gestion, applications, jeux vidéos …).
Apprendre ce langage est bénéfique pour ceux qui veulent s’orienter vers la programmation plus tard (pas forcement jeux vidéos).
Dans le jeu vidéo, quasiment tous les jeux pro sont écrits dans ce langage.
Quelques avis récoltés à droite a gauche :
"Le C et le C++ sont des langages qui permettent de maîtriser la qualité de son programme au niveau algorithmique. On peut choisir comment fonctionnera chaque fonction de son jeu. Le développement est beaucoup plus long."
" Le C++ est le plus utilisé car il permet une programmation plus simplifiée et plus propre par rapport au C ( imbrication des données et des méthodes ( fonctions en C ) qui agissent dessus dans une classe (structure en C ) ) et la réutilisation du code pour des besoins différentiels ( héritage des classes qui permet à une classe de contenir d'autres classes )."
« Je tiens à signaler que le C++ ne s´apprend pas sur un coup de tête. Ca prend du temps et on peut avoir pas mal de déceptions [code qui marche pas.. grr]. De plus c´est pas avec if et while que vous referez GTA. Donc vous donnez pas trop d´illusions, si vous n´avez pas le courage, ni le temps ou la mentalité pour apprendre, laissez tomber. »
« Différence entre C et C++ ?
Le C est un langage de programmation qui permet de programmer n'importe quel logiciel ou jeu. C'est un langage dit "procédural (2e génération)". Sa maitrise demande de savoir gérer proprement sa mémoire, puisque l'on manipule directement la mémoire avec ce langage. C'est tres puissant, tres rapide, mais demande parfois de vraiment se casser la tête : mais croyez moi que ça en vaut le coup !
Le C++ est une extention du C, un C amélioré. Il contient entre autre ce qu'on appelle la POO (programmation orienté objet), ce qui fait de lui un langage "objet (3e génération)". L'avantage de cela est que l'on n'a plus a gérer directement la mémoire, il simplifie la vie du programmeur. »
Le basic et ses équivalents sont des langages de programmation simplifiée. On y retrouve une notation plus simple et des instructions plus généralistes que les langages classiques.
Cependant cette couche d'abstraction implique des performances plus réduites au niveau de l'exécution. Un programme basic est plus lent qu'un programme C++.
Il est également rapide d'écrire des choses, mais impossible de modifier le comportement de certaines fonctions.
Il existe maintenant des basics spécifiques pour les jeux vidéos, qui sont assez performants.
Ce sont de programmes qui permettent de créer des jeux sans connaître la programmation (Exemple RPG maker).
Cela peut se révéler pratique pour obtenir des résultats rapidement.
- Choisissez dès le début le langage adapté à vos ambitions.
- Ne commencer pas tout de suite par un gros projet, faites vous les dents sur des démos. Faites avant tous les effets qui seront dans votre jeu.
- Faites une chose à la fois.
- Lisez beaucoup et pas en diagonal.
- Maîtriser les bases des mathématiques.
Le support le plus évident pour faire tourner son jeu c'est le PC.
(Note : La majorité des gens utilisent Windows sur PC. Ce chapitre parle donc principalement de WINDOWS. Il existe néanmoins d’autres OS qui peuvent tourner sur PC,Linux par exemple, se reporter a la section correspondante pour avoir des infos a ce sujet)
Le PC se programme généralement en C/C++.
Pour transformer votre programme en executable, il vous faut un « compilateur ».
Le plus simple est de prendre un compilateur avec une interface graphique intergré (IDE).
Voici les compilateur les plus utilisés :
VISUAL C++ (Gratuit et payant)
Produit payant de microsoft. Il existe des versions gratuites.
Visual Studio 2005 express est gratuit. (Chercher sur le site Microsoft.). Il suffit d'ajouter les librairies "Platform SDK" pour windows et hop c'est parti.
Il existe pas mal de tutos sur le net pour réussir à l'installer. (Perso j'utilise la version express gratuite pour bosser, elle est bien et largement suffisante).
Un outil de pros gratuit, ça vaut le coup de passer un peu de temps a installer la version express.
Sinon une alternative (non testée) : tuto en français contenant le liens pour installer une version gratuite de Visual C++ :
http://navilinux.free.fr/dx_visual8.htm
DEV CPP (Gratuit)
Produit gratuit et pas mal
(prenez la dernière version 4.9.9.x ou 5.x )
Debuggeur un peu complexe a utiliser a mon gout, mais pareil il existe des tutos pour apprendre a s'en servir.
Eclipse (Gratuit)
IDE communaitaire (non testé).
Code Blocks (Gratuit)
Compilateur c++ gratuit (non testé)
http://www.intel.com/cd/software/products/asmo-na/eng/219690.htm
Depuis pas mal de temps, il existe des librairies qui s'occupe de faire le lien entre le programme et la carte graphique.
L'affichage sur PC se fait donc par ses librairies :
- DirectX (http://www.activewin.com/directx/index.shtml)
Librairie microsoft. Classique et couramment utilisée.
- OpenGl ( http://opengl.org/ , tutoriaux: http://nehe.gamedev.net/ )
http://www.opengl.org/wiki/index.php/Main_Page
Librairie alternative. Certain la préfère a DirectX. C'est suivant les goûts.
(Voir également SDL ou GLUT (un peu vieillissant) )
Ces deux éléments (C/C++ et Librairie Graphique) vous permettent de faire votre jeu sur PC de la manière la plus professionnelle (et la plus difficile). Si vous cherchez plus simple, ou si vous chercher à réutiliser des choses déjà existantes, alors lisez la suite
Il existe des "moteurs" gratuits (ou pas cher) dont les sources sont disponibles.
(Attention cependant à la différence entre « libre » et « gratuit » … Libre signifie « libre de droit », ce qui n’est pas forcement le cas de « gratuit » … Dans ce doc, je note tout comme « gratuit » a vous de rechercher si c’est libre ou gratuit.)
Un moteur, c'est un noyau de programme qui permet de vous libérer de taches particulières (affichage d'un monde 3D, prise en charge de la gestion du comportement physique, etc ..)
On peut appeler ça également un middleware.
En effet ça sert souvent a rien de tout réinventer (a moins que votre but soit surtout de programmer un moteur d'affichage par exemple)
alors qu'il existe des choses déjà faites (et quelquefois bien faites)
- OGRE (Gratuit) (http://www.ogre3d.org/ )
Moteur 3d écrit en C++.
Très utilisé, c'est devenu une reference.
- CRYSTAL SPACE (Gratuit) (http://crystal.sourceforge.net )
"Moteur 3d, mises à jour régulières et d'un support excellent. Par contre, son utilisation demande un certain savoir-faire dans le domaine: il est donc à déconseillé aux débutants."
- GAME INCUBATOR (Gratuit) (http://gi.kamron.net/ )
Site docs et aides en francais
"Huhu, j'aurais dû le poster plus tôt, pour bien démarrer dans la vie du c++, il y a des "moteurs", plutôt des bases de code, bien pratique. Personnellement j'utilise celle de Kamron, à savoir le game incubator, j'ai déjà fait quelques maquettes avec ça."
Moteur de jeu très simple d’utilisation (tourne sous windows).
- ALLEGRO (Gratuit) (http://www.talula.demon.co.uk/allegro/ )
"Moteur de jeu C/C++ (pour toutes machines). Il possède des fonctions graphiques, sons, clavier, souris, joysticks, fonctions mathématiques, fonction 3d, gestion de fichiers, compression et interface graphique"
- TORQUE (Démo Gratuite, 100$) (http://www.garagegames.com )
"Langage Torque dans le style C++. Les créateurs de Garage Games ne sont autres que les développeurs de l'excellent Tribes 2 édité par Sierra (fait avec Torque)" Voir aussi Caligari GameSpace (http://www.caligari.com/gamespace/ )
- SxDL (Gratuit) (Site en Français http://prografix.games-creators.org/ )
"SxDL est bien plus qu'une librairie ou un moteur de jeu. C'est un environnement de développement complet pour les jeux 2D, 2.5D et bientôt 3D. Son, musique, clavier, souris, joystick, collisions, physique de base, sprites, tiles, maps, etc... : Tout y est. Aujourd'hui C++/DirectX. Bientôt C++/Linux/OGL et C#/MDX.. SxDL est concu dans le même esprit que SDL et CDXLib : beginner friendly, simple et efficace."
- GENESIS 3D (Gratuit) http://www.genesis3d.com/
"J'ai teste un temps GENESIS 3D, gratuit, tous les outils d'export Max de level edit et d'anim etc sont integres mais, sans une equipe de dev, le game play est limité a du FPS... en plus je pense qu'il est un peu largué …"
- IRRLICHT (Gratuit) (http://irrlicht.sourceforge.net/ )
“En un main seul, de 20 lignes a peine, le gars charge un modele de quake2 animé, ou alors il se promene dans une map de quake3, toujours en 20 lignes.
Je dirais que le moteur est tres orienté réalition de FPS, mais d'apres les news, le gars s'attaque aussi aux terrains avec gestion des LOD. Il y a déja en place des trucs genre : Gestion des octrees et tout, collisions optimisées, d'effets spéciaux, etc ! Bref, bien sympa :) Tout ça en choisissant uniquement au début si tu t'appuies sur DX ou OGL. »
- SAUERBRATEN (Gratuit) http://sauerbraten.org/
Moteur Libre et contenu (textures, sons
et autres) sous license spéciale (non libre).
Moteur performant, Shaders (bloom, cell-shading...), Parallax-Mapping, basé sur
du Lightmapping mais avec effets dynamiques, Mapping in-game...
C'est une le successeur de CUBE (http://wouter.fov120.com/cube/index.php4 ). Jeu et moteur permettant de faire des FPS.
- Panda 3D ( http://panda3d.org/ )
"Accessible depuis
C++ ou Python, assez complet. Je commence à en entendre
parler à droite à gauche. Ca à l'air gratuit, avec une license assez
permissive."
- NEL (Gratuit) (http://www.nevrax.org/ )
"Moteur de jeux MMOPRG utilise par la société Nevrax. Le source est gratuit mais pas le support"
- SDL (Gratuit) (www.libsdl.org )
Librairie complete.
- QUAKE 1 & 2 & 3 (Gratuit) (ftp://ftp.idsoftware.com/idstuff/ )
Le celebre FPS.
- FAR CRY SDK (ftp://ftp.ubi.com/emea/farcry/SDK/ )
Pour faire des mods avec le moteur de Far cry.
- AURA JET (Gratuit) (http://www.auran.com/jet/ )
"Comme pour tous les produits "pro", il faut avoir une certaine connaissance du domaine pour espérer pouvoir maîtriser la chose."
- WILD TANGENT (Gratuit) (http://www.wildtangent.com/ )
"le SDK permet de créer des jeux 3D en ligne. Bien que les graphismes soient relativement loin des moteurs "hors ligne", le résultat restera toujours très agréable. "
- CATSMOTHER (Gratuit) (http://catmother.sourceforge.net/ )
"La société a fait faillite mais donne toutes les sources de son moteur"
- TinyPTC et Open PTC (Gratuit) (http://www.gaffer.org/ptc/ptc.html)
API 2D ultra simplifiées.
- UNDERWARE (http://www.mekensleep.org/underware.html )
Moteur de la societé Mekensleep.
- STRATAGUS (http://stratagus.sourceforge.net/ )
Moteur pour faire des RTS (RealTime Strategy)
- CLANLIB (http://www.clanlib.org/ )
Une lib multiplateforme C++
- GLFW (http://glfw.sourceforge.net/ )
Lib pour OpenGl.
- REALITY FACTORY (Gratuit) ( http://www.realityfactory.info/ )
Moteur a base de script (pour ceux qui ne maitrisent pas la programmation).
- SHARK3D ( http://www.shark3d.com/ )
- NEBULA DEVICE (Gratuit) (http://www.radonlabs.de/nebula.html )
- PLIB (Gratuit) (http://plib.sourceforge.net )
- HAWK (Gratuit) ( http://www.hawksoft.com/hawk/ )
- DEVLIB (http://www.devlib-central.org)
- TRUEVISION3D (http://www.truevision3d.com/home.php )
MOTEURS PHYSIQUES :
- ODE (Gratuit) (http://ode.org/ )
Moteur physique et open source. Assez petit et performant. Certains jeux pros l'utilisent. Bonne documentation.
Voir aussi "BULLET"
- Newton SDK (Gratuit) ( http://www.newtondynamics.com/news.html )
Equivalent de ODE.
MOTEURS SONS :
- FMOD (Gratuit) ( http://www.fmod.org )
Moteur son, multiplateforme.
Simple d'utilisation, performant et gratuit pour les produits amateurs. Que du bonheur.
- AUDIERE (Gratuit) (http://audiere.sourceforge.net/)
Moteur son open source.
Moteurs Payants :
- Power Render - http://www.powerrender.com/
- Twilight - http://www.twilight3d.com/
- Ca3D - http://www.ca3d-engine.de/
- Doom3 (IdSoftware) - http://www.idsoftware.com/business/technology/
- Unreal Engine 2 et 3 (Epic Software) - http://www.unrealtechnology.com
-
Gamebryo - http://www.emergent.net
- TouchDown - http://www.touchdownentertainment.com/
- PhysX (http://www.ageia.com ). Moteur Physique,
ancienement le moteur de Novodex
- C4 Engine - http://www.terathon.com/c4engine/index.php
Liste complète des moteurs :
Les langages simplifiés (basics) sont des langages qui possèdent des fonctions puissantes qui facilitent l'écriture d'un programme. Ces langages sont souvent orientés pour obtenir un affichage simple, c'est le grand avantage.
- DARK BASIC / 3DGAMECREATOR (Demo gratuite, 46 Euros) (www.darkbasic.com/ - http://conitec.net )
La dark basic est un basic orienté creation de jeux.
"Il s'agit d'un langage de programmation construit pour développer des jeux 3D."
"Il est destiné aux grands débutants et avec un peu de volonté on arrive à créer des jeux de bonne qualité. Bien que l'interface soit très moyenne, les aides et exemples sont suffisamment nombreux pour arriver à passer outre ce défaut de prise en main."
"Le dark basic, par exemple, est un langage fait pour faire des jeux sans connaître la programmation bas niveau. Ce langage est fait pour ceux qui veulent faire vite fait un jeu. La contre partie est qu'il ne maîtrise pas la qualité de leur programme."
« 3D Game Creator un logiciel pour niveau intermédiaire. Il ne faut le confondre avec 3D Game Maker qui se résume à placer des monstres et des armes sur une carte pré-construite. Avec 3DGC il faudra apprendre un langage nommé Dark Basic. Plus simple que C++. Mais beaucoup moins puissant. »
Site d’infos : (Français)
- BLITZ BASIC / BLITZ 3D (Demo Gratuite, 60$/100 $) (http://www.blitzbasic.com/ )
"D'après leur concepteur, Blitz possède toute la puissance et les performance nécessaires à la réalisation de votre souhait, qu'il soit la réalisation d'un jeu, d'une démo ou d'une application. + de 500 commandes sont disponibles, et une version démo valable 30 jours est disponible sur le site de l'auteur."
Site d’infos : (Français)
http://n-eole.chez-alice.fr/librairie.htm
http://www.blitzbasement.net/index.html
http://www.robsite.de/tutorials.php?tut=blitzbasic
http://keyboard.freeshell.org/blitzbasic.html
http://www.blitzbasic.no/neogenesis10/
- 3D GAME STUDIO (ou "A5" ou "A6")(Demo gratuite, 300$) (http://conitec.net/ )
Logiciel en anglais
"A5 est la dernière version du moteur de Conitec, ce logiciel connaît un grand succès en Allemagne et de nombreux projets sont développés à partir de cet outil. Facile à prendre en main, il se présente sous la forme d'un éditeur 3D à la fenêtre divisée en 4 parties à la manière d'un 3D Studio. Bien qu'aucune connaissance en programmation en soit nécessaire, le moteur est livré avec un langage spécifique qui permettra aux bidouilleurs d'aller un peu plus loin."
"La communauté A5 est très active et l'on trouve de nombreux jeux développés avec cet outil. Cela dit, la qualité n'est pas forcément toujours au rendez-vous."
« Pour ce qui est de 3D Game Studio, un logiciel puissant mais qui nécessite un minimum de connaissances en C++. Donc déconseillé aux débutants. De plus il coûte relativement cher ».
Page francaise pour avoir la demo (30 jours) : http://abregeon.free.fr/french/Download%20Page.htm
- PURE BASIC (Démo gratuite, 59Eur) (http://www.purebasic.com/ )
"PureBasic est un langage de programmation basé sur les règles du langage BASIC. Les caractéristiques majeures de PureBasic sont : Sa portabilité. Sa rapidité. PureBasic est un véritable compilateur qui produit des fichiers exécutables optimisés, très rapides et compacts. Sa simplicité. PureBasic utilise la syntaxe du langage BASIC standard, très répandue et simple à apprendre."
http://www.purearea.net/pb/english/index.htm
Forum de discussion francais sur les basic : http://forum.games-creators.org/
- Just BASIC (Gratuit) ( http://www.justbasic.com/ )
Just BASIC est une version allégée et
gratuite de Liberty BASIC qui permet cependant la création de programmes
complets et autonomes.
Just BASIC et Liberty BASIC étant tous les deux des compilateurs 32 bits, ils
ont l'avantage d'être plus rapide que QBasic auquel ils ont succédé.
http://www.coolprog.com/
- VISUAL BASIC
Le Visual Basic est un langage de programmation un
peu moins puissant que le C++, mais beaucoup plus facile à utiliser, surtout
pour démarrer.
Ce langage est en fait une "amélioration" des autres langages BASIC,
c'est-à-dire que si vous avez déjà programmé en QBASIC, YABASIC, etc. vous
n'aurez aucun mal à démarrer sur ce langage.
Mais le Visual Basic (VB pour les intimes) n'est pas
juste "un autre basic", il est aussi le langage de programmation le
mieux intégré a windows et vous libère de la plupart
des contrainte rencontré avec les autres langage pour la création de fenêtre,
la gestion des messages, etc.
Le visual Basic est surtout réputé pour faire des
applications plutôt que des jeux, mais c'est un langage suffisament
performant pour faire des petit jeux
en 2 dimensions.
(Visual Basic permet d'utiliser l'API DirectX et par conséquent de faire aussi de la 3D)
Pour résumer :
Avantages :
- facilité d'aprentissage
- facilité et rapidité d'écriture d'un programme
- langage et interface performants
Inconvenients :
- relative lenteur à l'exécution
- distribuer ses applications est quelque peu compliqué
- TRES CHER, et c'est bien là son principal défaut (même si l'on trouve
des versions étudiantes à moins de 80Eur)
AUTRES BASICS :
- Liberty Basic (http://www.libertybasic.com/ ) (==> Voir Just Basic)
- GL Basic ( http://www.glbasic.com )
- Ethos Game Basic ( http://www.ethosbasic.com/ )
- Jamagic
- Xbasic ( http://www.xbasic.org/ )
- FLASH (Demo Gratuite) (Macromedia)
"Format d'animation vectorielle"
Site Aide Flash :
http://www.flash-france.com/index.php
« - Qu-est’ce que Flash
?
Flash est un outil permettant de créer des animations multimédia interactives à
destination du web : son plugin
étant integré à Internet Explorer, son format peut
être lu par une très grande majorité d´internautes.
- En quoi est-ce un outil adapté pour créer des jeux ?
En simplifiant, on peut dire que Flash peut être utilisé à deux niveau : le
premier, très accessible, permet de deposer et
organiser dans une page tous les éléments interactifs, et de dicter leur
comportement en fonction d´une timeline, ou/et par
des bouts de codes associés ; ramené à l´univers du jeu vidéo, cela peut
permettre par exemple de réaliser des jeux d´aventure " point &
click" de manière très intuitive et somme toute assez facile.
Cependant, la puissance de Flash reside dans son
deuxième niveau d´utilisation : Flash comprend un ´langage´ interne, l´ Actionscript, qui se situerait entre le Javascript
et le Java. L´actionscript permet de manipuler
n´importe quelle donnée, materielle ( sprites, sons etc .
..) ou immatérielle (
Arrays, variables, resultats
de calculs etc . .. ) sans avoir recours à l´animation : en plus simple : casiment tout ce qui peut être fait en cliquer-deposer
dans l´interface de Flash peut également être piloté directement par le code,
et bien plus . ..
L´actionscript, surtout depuis Flash MX est devenu un
vrai langage ( calcul,
boucles, tableaux, variables, conditions, creation et
gestion de l´objet, classes, héritages de classes, prototypage . ..) dont la syntaxe et la ressemblance
avec le Java se précise à chaque nouvelle version. Il reste néanmoins plus
accessible et constitue une excellente base à l´étude d´un langage plus évolué
- Quels sont les avantages du developpement en Flash
?
Un " vrai" langage facile d´emploi : Apprendre et maîtriser l´Actionscript vous prendra moins de temps que vous mettre au
C++ ou a Java, et vous donnera des bases solides de programmation, avec une
syntaxe pas trop éloignée des langages objet classiques : c´est donc un outil
d´initiation parfait pour le néophyte, et suffisament
puissant pour produire le type de jeux que l´on trouverait sur GBA, par exemple . ..
La compatibilité : de memoire, le taux de pénétration
de Flash player (
V5) est de 95% des ordinateurs connectés au web : ce qui veut dire qu´il y a de fortes chances
que votre oeuvre soit immédiatement visualisable par le plus grand nombre
d´internaute, sans téléchargement ni installation supplémentaire.
Les fonctionnalités Online : Flash interagit très bien
avec ASP/PHP/Mysql/XML..., et l´on voit fleurir un
peu partout des modules gratuits de serveurs XML Sockets
: en se penchant sérieusement sur le code, et avec un peu d´habitude, à
vous les joies du score online ou du multiplayer ( attention, il faut quand même penser à
l´hébergement de tout ça ! )
Un moteur graphique existant et pensé pour l´utilisateur néophyte : beaucoup de fonctions utiles à l´élaboration
d´un jeu sont déjà en scripts dans l´Actionscript
: déplacement de sprites, lecture d´une
animation, contrôle sur l´apparence graphique du sprite
( alpha, taille, position etc . ..) et tests de collision sont pré-éxistants, pas de grosse fonction d´affichage à ré-écrire, donc !
Dernière chose :
contrairement à certaines idées reçues, Flash ne fait pas que du vectoriel
: il gère très bien les formats PNG, BMP, Gif
et Jpeg : ceux là sont même à privilegier si vous voulez faire un jeu d´action .
...
Une communauté hyperactive et beaucoup d´open-source : Si vous surfez un tant soit peu, vous avez
certainement déjà joué à un jeu en Flash : il y en a des millions, et au
moins autant de forums, de tutoriaux, de fichiers en open source : il y a
fort à parier que les questions que vous vous posez ont une réponse quelque
part.
Des possibilités limitées :
c´est peut-être étonnant de classer cela dans " avantages",
mais je pense que c´en est un : parce que vous êtes limités par les
capacités du langage et du player, vous serez plus ou
moins cadrés dès le départ, vous devrez obligatoirement compenser par un gameplay soigné aux petits oignons, plus de créativité, etc . .. votre
jeu mettra donc mieux en avant votre travail sur chacun des éléments, et non
seulement le moteur . ..
- Et les inconvénients ?
Des possibilités limitées :
oubliez la 3D genre Quake, Far Cry
ou half life : on peut tricher dans flash,
faire de la 3D filiaire ou emuler
le mode 7, mais ce sont des calculs gourmands en ressource processeur, et cela
risque de mettre votre jeu à genoux.
L´Actionscript, si il est très évolué, n´atteint pas
la puissance que le C++ ou Java pourrait vous offrir.
Un player, très, très gourmand : le player mobilise à lui seul un nombre considérable de
ressources systèmes, ce qui fait ça de moins pour votre jeu : programmer
un bon jeu d´action en Flash, c´est passer au moins 50% de son temps à
optimiser le code ou les grahismes de façon à
contourner le bottleneck du player
Des bugs : il y en a, qu´on les appelle " bugs" ou "
incohérences", ou ce que vous voulez, il y a parfois des choses
simples, qui pourtant demandent une certaine gymnastique, dans Flash - c´est
malheureusement l´envers de la médaille d´un outil de developpement
simplifié . ..
- Quels types de jeux sont réalisables en Flash ?
Pratiquement tous les jeux 2D ( ou 3D fixe ou pré-calculée ) sont possibles à refaire en Flash - plus
quelques " tricheries" qui vous permettent de faire illusion de
la troisième dimension : en gros, Zelda, Mario,
Mario Kart, Diablo, les space-shooters,
les point´n´click à la LucasArt,
autres pac-mans, tetris ou Metroïd sont parfaitement réalisables en Flash. On
pourrait, a condition que le
joueur ait un ordinateur puissant, porter également des jeux comme Wolfenstein ou Doom...
Vous ne serez en gros limité que par votre imagination, votre talent, et la
3ème dimension ( mais peut-être pas pour longtemps :-))
- Et je dois telecharger quoi ?
pour combien ?
Le meilleur moyen de générer des fichiers Flashs reste encore l´eponyme Macromedia Flash ( http://www.macromedia.fr )
Il existe plusieurs versions de Flash :
Flash 5 : vieille mais très abordable, elle doit pouvoir être achetée
d´occasion sur ebay ou chez un revendeur informatique
pas trop tatillon sur les stocks . ..
Flash MX : pour moi la meilleur version, qui inclue les dernières mises
à jour de l´ActionScript, en faisant un langage
vraiment puissant
Flash MX 2004 : la toute dernière version ( à la date
d´aujourd´hui, Avril 2004 ) - plus puissante, avec une nouvelle syntaxe
pour l´AS, renommé AS2 : bien que compatible avec
l´AS1, l´AS2 est encore plus puissant, encore plus proche du Java - cependant,
attention, je me suis laissé dire que cette version pouvait être très
déroutante pour l´utilisateur néophyte : perso, je suis resté à Flash MX .
..
Le prix : Flash MX 2004 coute 239 Euros HT sur le
site de Macromédia : une démo limité à 30 jours y est
également téléchargeable - les prix des versions antérieures de Flash varient
en fonction des revendeurs
Il existe d´autres solution pour faire du Flash, comme KooLMoves
ou SWISH, mais ne les connaissant pas vraiment, je ne peux témoigner de leur interet ( surtout en ce qui concerne l´actionscript), malgré tout, je crois que l´on peut
facilement deviner que la version la plus puissante et aboutie restera toujours
celle, officielle et directement de la source : Macromedia
. ..
- Et c´est difficile ?
Ben, rien n´est facile : cependant, la possibilité de combiner de la
programmation visuelle, et du codage fait que vous pourrez toujours, assez
rapidement, avoir des resultats : vous commencerez peut-être
par du " point´n´click", puis, au fur
et à mesure de votre travail, vous descendrez des plus en plus profond dans le
code pour finir par ne plus avoir vraiment de limites, autres que celles
imposées par l´actionscript . .. Comme pour
tout, cela dépendra de votre talent, de votre motivation et du temps consacré à
l´apprentissage.
Flash ne requiert pas particulièrement de connaissance en programmation pour
faire des choses simples, et peux constituer une veritable
entrée en matière à l´apprentissage d´un langage objet »
Tutos Flashs :
http://luxregina.free.fr/forums/sujet.php?fid=6
- SVG (Gratuit) ("Graphiques Vectoriels Adaptables")
Le SVG (Scalable Vector Graphics) est un
langage xml, mais pas encore très répandu sur le web. Il sera bientot implémenté
dans la version 1.1 de firefox, mais pour l'instant, on ne peut le visionner que
avec le viewer d'adobe... Le SVG est plus puissant que le Flash, mais plus long
a coder.
Voici une définition du Flash par rapport au SVG :
Premièrement, flash est propriétaire ce qui veut dire qu'il est payant alors que
le svg est un interpréteur de balises accessibles à tous créé et normalisé par
le w3c.
Pour faire du flash il faut un logiciel flash (flash MX, flash MX 2004 ...)
alors que pour faire du svg il suffit d'un éditeur de textes. Là ou flash
devient extrèmement couteux svg ne coute strictement rien.
Flash a l'avantage de favoriser la création de plusieurs part. La première étant
la possibilité de dessiner directement avec un outil de dessin propre à flash
alors qu'en svg on dessine en tappant du code svg. Il existe surement des
logiciel de dessin svg, d'ailleurs ce ne doit pas être trop dur à faire. Les
animations en flash sont aussi très rapides à faire mais en svg ce n'est pas si
long au contraire.
On peut programmer en flash grâce à actionscript (as) tout comme on peut le
faire avec le svg via javascript (js et non java). Ces deux langages sont très
proches.
De ce côté flash n'est pas plus rapide.
flash nécessite le plug-in flash pour être lisible sur le navigateur, le svg lui
a besoin d'un viewer svg. Le plug-in comme le viewer sont eux gratuit.
Le gros avantage du flash sur le svg est qu'il est plus vieux et donc encré dans
l'esprit de tous alors que le svg n'a que 3 ans mais tout ce que tu peux faire
en flash tu pourras le faire en svg mais tout ce que tu pourras faire en svg tu
ne pourras pas le faire avec flash (je fais référence à l'intéraction avec le
perl, le java, le xml et le xslt).
Conclusion : le flash permet une création plus rapide et plus pratique d'un
projet ou d'une animation. Il est aussi très répandu contrairement au svg.
Néanmoins
le svg est libre pour tous et ce veux concurrencer un logiciel qui a le monopole
(ce n'est pas rien).
Voici une liste des différents sites sur
le SVG :
Communauté svg :
http://www.yoyodesign.org/doc/w3c/svg1/index.html#minitoc
Tout ce que vous vouliez savoir sur le svg
que vous n'avez jamais demandé. Un site à de référence à ne pas laisser dans la
catégorie des liens qui ne sont la que pour remplir les favoris (ou les
marqueurs, cf Mozilla).
Forums,
Cours et tutoriaux
http://www.svgfr.org/?rub=home
Ce forum est français se révèlera pour
vous une aide inestimable. Des programmeurs de tout niveau y posent des
questions et y répondent. Vous ne pourrez pas passer à côté de Dobey qui est
surrement le membre le plus actif.
Le cour français le plus connu et très
complet, son seul défaut est graphique. En effet, il est très peu travaillé,
j'ose espérer que vous passerez à côté de tels critères.
http://www.yoyodesign.org/doc/w3c/svg1/index.html#minitoc
Ce site contient de nombreux exemples qui
raviront les développeurs habitués des apprentissages en autonomie.
Intermédiaires et confirmés y trouveront leur compte.
http://www.datenverdrahten.de/svglbc/
Ne cherchez pas des cours sur ce site,
mais plutôt des exemples par centaines. Site Allemand.
Ou mieux encore :
http://www.index-informatique.net/Pages/INFO_0760.htm
- Phrogram (version de base gratuite, et version "avancée" à 30€) http://phrogram.com/ (anciennement KPL)
Qu'est ce que c'est ?
C´est une sorte de basic.net, c´est à
dire un langage très simple à apprendre et à utiliser mais moderne et
fonctionnel. Il est fournit avec une interface ressemblant beaucoup à Visual
Studio, mais dans une version simplifiée, qui ne garde que ce qu'il y a de plus
utile pour l'écriture d'un programme (complétion automatique du code par exemple
ce qui est un avantage énorme sur d'autres langages simplifiés de programmation
de jeu, car il n'y a plus besoin de se souvenir de tout les mots clefs pour
faire telle ou telle chose, ils apparaissent seuls quand vous en avez besoin) et
pour le débogage (exécution pas à pas, affichage de la valeur des variables à
l'exécution, etc.).
Le langage est très orienté vers la création de jeux vidéo, et permets donc de
faire de la 2D, de la 3D, de jouer des sons et de la musique, d'utiliser le
clavier, la souris, ou encore un joystick, et tout ça simplement grâce à une
bibliothèque très bien conçu. En bonus, l'interface peut même être en français.
Au final, Phrogram est un vrai langage, qui permet d'apprendre à programmer dans
un environnement agréable, et ouvre les portes de langages "sérieux". Mais c'est
aussi une véritable solution pour faire des jeux vidéos gratuitement (la version
payante donne quelques outils de plus, dont un outils pour pouvoir diffuser
facilement ses programmes, mais elle n'est pas obligatoire) en programmant avec
un langage et une interface très simples et modernes, complètement pensés pour
la programmation de jeux.
Page de screenshot du programme :
http://phrogram.com/photos/phrogramscreenshots/default.aspx
- DELPHIX (Tutorial : http://bodman.developpez.com/delphiX/ )
"Delphi est un environnement complet de développement rapide d'applications (RAD) en langage Pascal orienté objet développé par Borland (Inprise Corporation)." DELPHIX C'est DELPHI couplé avec DirectX. Donc très bien pour les jeux. (Moteur3D : 3D Development Studio)
- PYTHON
Langage de scripts.
Faire des jeux 2D avec python :
Il existe un module pour faire des jeux (
http://pygame.org/ ). Pygame est un module pour Python se basant sur
la SDL. Pygame c´est pour la 2d.
Faire de la 3D:
Il y a un wiki pyogre içi, mais je n´ai jamais essayé ce que çà donnait:
http://www.ogre3d.org/wiki/index.php/PyOgre
Sinon il y a aussi pyopengl, qui est un
portage de la librairie opengl sous python:
http://pyopengl.sourceforge.net/
Sur le site nehe productions tu a des
tutoriaux pour faire de la 3d sous opengl. C´est très bien expliqué et c´est du
pas à pas (d´abord un tuto pour ouvrir une fenêtre opengl, puis pour créer une
surface 2d, puis un volume 3d, application de textures, déplacement dans un
labyrhinte 3d, effets spéciaux, etc etc) mais c´est en anglais et les tutos à la
base sont pour du c++. Néanmoins tu a des versions de ce que donne le code en
python disponibles en bas de chaque tuto jusqu´au tutorial 10, donc en
étudiant à chaque fois les articles en comparant au code python tu peut voir
quelles sont les différences entre de la 3d c++ et python afin de comprendre
toi-même comment çà marche.
http://nehe.gamedev.net/
- JAVA
Voir « Multimachines »
- RPG Maker 2000 et 2003 (Vendu au Japon et US, traductions amateures et distribution gratuites vaguement "tolerées" en france)
"On peut faire pratiquement n'importe quoi avec ce logiciel si on sait bien l'utiliser. De plus il est très simple. Un seul inconvénient est le graphique mais les vrais fans de RPG ne sans préoccuperons pas beaucoup."
« RPG Maker est quand à lui pas si mauvais. Mais vous ne pourrez faire que des jeux en RPG, il y a donc pas suffisamment de possibilité de pouvoir créer des styles différents ». « Un RPG Maker 3D serait en cours de programmation, d'après mes sources, ce logiciel serait déjà disponible au Japon et prochainement en France, mais cette fois, il serait payant par rapport aux autres versions. Affaire à suivre... »
« RPG Maker 95, 2000 et 2003 sont réservés aux débutants. Ceux qui veulent faire un jeu en une petite heure sans se compliquer la vie. Ils places les bonhommes, les décors et le reste c´est le programme qui s´en charge. »
(Attention a bien charger les RTP aussi appellé « Run Time package »)
Site d’infos et download :
http://www.osiris-rpg.com/index.php
http://charas-project.net/ (ressources)
http://rtgamer.free.fr/index.php?rub=lrmxp (ressources)
En Anglais :
http://www.gamingw.net/resource (ressources)
http://tsgk.captainn.net/ (Sprites)
Divers :
http://rpgstory2.free.fr/ Petit site
sympathique avec des tas de ressources
http://www.imagienation.com/
http://rpgmworld.free.fr/aides/tutos/
http://www.gdvclan.de/projekt/
http://alexdor.consolemul.com/?page=news Le site des Alex D´or!
http://www.rpg-creation.com/
http://umaru.embalo.club.fr/eom/database/tutoriel.htm
http://perso.orange.fr/rpgcrystal/RPGM%20Tutoriaux.htm
http://rtgamer.free.fr/index.php?rub=jeuxrmk
http://www.loadt.fr.st/ (HS ?)
http://rpgmaking.jexiste.fr/ (HS ?)
« Conseil : RPG Maker ou C++ ?
Choisir entre RPG Maker et C++, c'est choisir entre la facilité, mais limitée, ou alors le plein pouvoir, mais difficile a maitriser.
RPG Maker est un logiciel qui permet de creer des RPG, sans avoir à savoir programmer. Il permet d'avoir rapidement des résultats. Hélas, il est très limité, c'est à dire que vous emploierez le modèle que le concepteur de RPG Maker a choisi. Vous ne pourrez également réaliser que des RPG de la forme prévue par RPG Maker. C++ est un langage de programmation qui est difficile à apprendre pour un novice. C'est un peu comme une langue étrangère : avant de pouvoir faire quelque chose de beau, il vous faudra beaucoup de temps. Cependant je vous dirais que quasiment TOUS les jeux vidéos (PC ou console) sont réalisés en C++, car c'est un langage avec lequel on peut faire n'importe quoi, sans limite (si ce n'est les capacités de la machine). »
- FROG CREATOR ( http://www.frog-creator.new.fr/ )
"permet de faire ses propres mmorpg, très
personnalisable,menu,lien,titre,bulle etc... Limitée MAIS les créateurs ont mit
un coté programmation qui permet plus de choses : quêtes etc.. Le logiciel
inclus aussi des logiciels type : Auto updater qui vérifie a chaque lancement
d´un client chez quelqu´un si la version est à jour ( donc si y a un changement)
! ! Donc le logiciel est plus développé que player world et plus personnalisable
!!! "
"Il doit être complet étant donné qu´il est possible de coder diverse addons
pour ce logiciel en Visual Basic. C´est en quelque sorte le Mugen du
MMOrpg quand même !!"
- M.U.G.E.N (gratuit) ( )
"Mugen est un moteur de jeu de combat en 2D"
« C´est un logiciel qui permet a toute personne n´ayant aucune expérience dans la programmation de créer un jeu de combat en 2d. Vous pourrez vos propres personnages,vos propres barre de power,les sons effets,les polices,......Les personnages seront crées grace a des sprites et différentes commandes;Vous pourrez y ajouter vous music de type " mid" ou " mp3" dans les stages.Il est recommandé de posséder un P166 et 32 ram pour pouvoir uriliser normalement " mugen".Aprés avoir télécharger ce programme,je vous conseille fortement d´aller télécharger les utilitaires qui vont avec! »
- MULTIMEDIA FUSION / THE GAME FACTORY / KLICK'N'PLAY (Payant) (http://www.clickteam.com/ )
"Logiciel qui permet de créer des jeux en 2D sous Windows sans avoir besoin de programmer des lignes de code"
Multimedia Fusion 2 est disponible en anglais ainsi qu'en français (MMF2).
The Games Factory se fait vieux mais a toujours ses fans par le monde. Sortie de TGF2 avec interface en français.
« The Game Factory [aka TGF] est un sorte de RPG Maker dans le sens où on place les objets sur une scène. Pas besoin d´avoir des connaissances dans un langage informatique mais le logiciel nécessite un minimum de logique car c´est une suite d´actions et de réactions qui vous ai demandé de créer. »
Reponse d'une personne qui pratique :
TGF nécessite une sérieuse prise en main, de taper parfois des petites lignes de
code (extensions). Il ne peut être comparer à RPG Maker car ce logiciel n’a
aucune limite en 2D, 2D iso. Les possibilités du soft sont infinies mais
l’utilisateur sans notion de programmation sera vite limité
et ne pourra pas tiré le maximum des capacités des trois éditeurs TGF (scénario,
scènes, événements).
Tutoriaux & infos : http://cyberclic.free.fr
http://dev4all.mtprod.com/forums.cgi
http://www.clickteam.com/CTforumF/categories.php3
( Les forums officiels des créateurs de KNP/TGF/CNC/MMF/JMG!! Ainsi, les questions sont réellement pointues, et bénéficient de réponses claires, précises, et efficaces. En plus, c´est un moyen de contact direct avec les membres de la Clickteam très précieux. Attention par contre, ce forum reste très sérieux, il n´est absolument pas question des délires qu´on peut trouver sur les autres forums. Et il n´est malheureusement pas très fréquenté ( mais le volume de messages reste très important)... Ceci dit, il s´agit de l´unique forum où trouver un soutien pour Jamagic )
Le forum (FCF) ou trouvé de l’aide et des tutoriaux en grand
nombre, il est fréquenté par des utilisateurs confirmés, capables de mettre au
point des extensions, de proposer un serveur TGF,MMF (jeux online):
http://fcf.margasoft.fr/
Le site de la communauté anglaise:
http://www.create-games.com/home.asp
Le site de la communauté italienne:
http://www.gameprog.it/index.php?section2=21
Le site de la communauté brésilienne:
http://gamingbrasil.mundoperdido.com.br/
The Games Factory possède une importante communauté à travers le monde qui propose des tutoriaux, niveau novice et expert.
- ADVENTURE GAME STUDIO (Gratuit) (http://www.adventuregamestudio.co.uk/ )
Outil pour faire des jeux « point & click » .
« Permet de réaliser des jeux de type point´n´click sans avoir de grosses connaissances en programmation ( il y a quand même un langage de script à l´intérieur, donc il faut faire des efforts). C´est assez puissant et gratuit. On peut le trouver sur cette page : http://www.adventuregamestudio.co.uk . Il y a également plusieurs tutos ( en anglais cependant). »
- SLUDGE (www.hungrysoftware.com/#/tools/sludge/ )
"Scripting Language for Unhindered Development of a Gaming Environment"
- GAME MAKER (www.cs.uu.nl/people/markov/gmaker/index.html )
"Description : Game Maker est un
programme qui va te permettre de créer des jeux facilement. De plus, il a deux
interfaces, l´interface "débutant" et l´interface "pro" (qui sont incluses
directement dans le logiciel et que tu choisis dans le menu). Avec l´interface
débutant, créer des jeux simples est à ta portée, et ne devrais pas te prendre
très longtemps. Par contre avec l´interface pro, tu peux commencer à faire des
jeux sérieux, avec un langage de programmation : GML.
Avantages : Il y a deux versions de Game Maker, la gratuite et la payante. La
payante permet d´avoir plus de fonctions au niveau de la crétion de jeu, et vaut
vraiment le coup si le programme t´interesse. Mais essaye d´abord la version
gratuite qui N´EST PAS LIMITE DANS LE TEMPS!
Communauté Game
Maker francaise: Le CBNA
http://www.gamemaker.fr
Site d’aide en francais :
http://membres.lycos.fr/biggamermaker1/index.php
Site d’aide anglais :
http://www.cs.uu.nl/people/markov/gmaker/resource.html (ressources)
- GAME EDITOR : http://www.game-editor.com
"Description : Concurrent de Game Maker,
seulement ce logiciel est inconnu du grand public. Sa prise en main est plus
compliquée que Game Maker, mais il est tout aussi puissant. Il permet de créer
des jeux pour Windows, Linux, et Pocket PC (contrairement a Game Maker qui ne
peut faire que des jeux PC).
Inconvenients : Comme j´apprends le C en ce moment même, j´utilise ce programme
car le langage de programmation utilisé est le C, j´ai donc pas besoin de
réapprendre un nouveau langage.
Inconvenients : Plus difficile à prendre en main et la demo est limitée dans le
temps malheureusement... Je te le conseille mais lorsque tu auras acquis un
certain niveau dans la création de jeux."
- ADVENTURE MAKER (demo gratuite, 29$) ( http://www.adventuremaker.com )
Programme pour création de jeux
Point'n'Click sans avoir besoin de notions de programmation.
Une démo de 60 jours est disponible, la version "Standard Edition" coûte dans
les 29$.
- SHOOT MAKER ( lien ? )
- 2D FIGHTER MAKER (lien ? )
- FANTASY DEVELOMENT STUDIO (http://www.abcfunny.com/Telecharger/Jeu/Fantasy-Development-Studio.php )
Pour faire des jeux d’aventure
- DOOM BUILDER (http://www.codeimp.com/builder_info.php )
Editeur de données pour Doom, heretic ou Hexen.
- ADRIFT ( http://www.adrift.org.uk/ ) (Anglais)
Pour faire des jeux d'aventures en mode text
- RPG Toolkit ( http://www.toolkitzone.com )
- THE SCROLLING GAME DEVELOPMENT KIT ( http://gamedev.sourceforge.net/ )
- http://www.visionaire-online.de/
Jeux d'aventures (en allemand)
- EDITEUR DE JEUX SNES :
LUNAR MAGIC (http://fusoya.panicus.org/lm/ )
Editeur de niveau pour le jeu « Super mario world » sur SNES.
Tuto : http://nintendoforever.free.fr/SNes/_autres/Dossier/LunarMagic.php
HYRULE MAGIC (http://www.emu-france.com/?page=fichiers&idFile=2206 )
Editeur de niveau pour le jeu « Zelda 3 » (a link to the past) sur SNES
- Pleins d’autres editeur pour les jeux : (http://www.zophar.net/utilities/sneslevel.html )
Angelique, Bust-A-Move, Chrono Trigger, Clock Tower, Earthbound, Final Fantasy 2/3/4/5/6, Harvest Moon, Panic in Nakayoshi World, Sailor Moon RPG,
Super Mario Kart, Super Mario RPG, Super Metroid, Tecmo Super Bowl 3, Tetris Attack, Top Gear 2.
Forum de discussion francais sur les Click&Play : http://forum.games-creators.org/
Une autre solution sympa, c'est le développement de mod (très orienté FPS quand même).
Les moteurs les plus utilisés sont
-Unreal Tournament
-Quake3
-Half Life ( Tutos :http://www.halflifedesign.net/?page=tuto&tut=60 )
-BattleField 1942
- Jedi knight II (quelques tutos : http://www.siteduzero.com/tuto-2-199-jedi-academy.html )
Unix/Linux :
Il beaucoup de choses en commun avec les outils windows (moteurs et libs).
Je ne m’y connais pas trop, donc si quelqu’un veut faire un résumé, son texte sera le bienvenu.
MAC :
« Sur mac pour faire des petits jeux tu prend des programmes multiplateformes... Macromédia Flash, Java....
Sinon pour coder vraiment, vu que c´est un système basé sur Unix ( Mac os X...) faut télécharger Xcode ( je crois que ca s´appelle comme ça) et apprendre à programmer sur les sytèmes Unix-based et à utiliser Cocoa ( les librairies graphiques de Mac OS X) »
http://www.ambrosiasw.com/games/coldstone/
Pour faire du C :
http://www.grenier-du-mac.net/fiches/applications/thinkC.html
Excellent SDK amateur et tutoriaux en francais :
Doc :
Site (Anglais) :
Cartouche pour lancer les jeux amateurs (aussi appellés "HomeBrew") :
- SuperKey + SuperCard
Liens en vrac :
Un site qui explique comment instaler tout ce qu'il faut
Drunked coder, une reference
des
jeux amateur, et des bon liens
Encore de la doc technique
Neo
Flash, le premier kit permetant de jouer facilement a son jeu sur sa DS
http://www.playeradvance.org/index.php?showforum=53
http://delfare.pizz.biz/indexFR.htm
http://delfare.forumactif.com/
http://forum.gbadev.org/viewforum.php?f=18&sid=7ef85f8a6f578ee9678e6f195fcb9234
Programmation :
Se programme en C/C++.
Pour compiler, trouve
le PSP SDK amateur sur :
http://ps2dev.org/
( c´est le meme que PS2
avec quelques options de compilation qui change et de nouvelles lib).
Tu obtient un elf. Ensuite tu converti ton elf en pbp. Tu trouveras le logiciel sur GUEUX par
exemple :
http://www.psp-hacks.com
Pour executer ton programme, tu peux utiliser l´emulateur PSP amateur : PSPE
ou alors lancer sur la PSP si tu en a une, mais il faut modifier ton programme
pour qu´il passe la protection SONY, pour cela utilise le " KXploit 1.5" ou
autre loader.
Chaque firmware à sa faille et son loader associé.
Il y a aussi la possibilité de
downgrader la PSP pour utiliser un firmware plus ancien. Le 1.5 reste le plus
souple pour lancer les programme amateurs.
Forum d´aide ( en anglais) :
http://forums.ps2dev.org/viewforum.php?f=14
Comment integrer le kit de dev PSP dans DevCPP
http://psp-dev.org/pukiwiki/index.php?Dev-C%2B%2B
Autres logiciels ou langages :
- ADVENTURE MAKER (demo gratuite, 29$) ( http://www.adventuremaker.com )
Programme pour création de jeux
Point'n'Click sans avoir besoin de notions de programmation.
Une démo de 60 jours est disponible, la version "Standard Edition" coûte dans
les 29$.
- Langage LUA
Un LUA PLAYER a été crée pour la psp, il est vraiment sympa et en plus la doc sur le LUA ne manque pas.
"J'ai bien accroché car c'est assez
simple.Voilà un site avec 17 tutoriaux :"
http://xtreamlua.com/modules.php?name=Content&pa=showpage&pid=3
- Beast of Rage
Beats Of Rage (BOR): Ressemble beaucoup à MUGEN.
Le développement amateur est possible, bien que je ne le conseille pas aux débutants
Langages : C++ / C / Assembleur "VectorUnit (VU)"
YaBasic (http://www.yabasic.de/ )
Basic ne permettant pas de faire grand chose (existe aussi sur PC)
RPG Maker 5
Fighting Game creator (pour faire jeux baston en 2D)
Fighter Maker
Kit Officiel Linux : Vendu par Sony (250 Euros) (Clavier+DisqueDur+AdaptateurReseau+Souris+CableVGA+1 DVD ... Il faut avoir une PS2)
http://playstation2-linux.com/
Méthode amateur : NapLink/pukklink (Câble USB) (+nécessite une console chippée)
Permets de transférer des petits programme et de lire des données sur le CD (peut être également par le biais du câble, mais j'ai jamais réussi)
INFOS
Le développement amateur existe. Pas mal de jeux et de demos ont déjà été faites.
Une XBOX chippée avec un BIOS "Debug" est nécessaire (à vérifier).
Liens ?
http://www.hydras-world.com/index.php?page=xboxretailtodebug
Développement amateur possible
PSO Loader : Gratuit. Permet d'exécuter un programme de 16Mo (il existe aussi PSUL)
Kit de Dev : 1200$ (www.snsys.com/GameCube/SN-TDEV.htm ) (Je sais pas si la vente peut se faire a un particulier)
Compilateur : DevKitCube ( lien ? )
La dreamcast étant une super machine, idéale pour le développement amateur.
Elle se programme en C. Un simple câble suffit
(DC-Link, disponible sur fl-games.com, LikSang ou même possible de le fabriquer soit même)
KOS
SDL
DreamGL (OpenGL) (www.ui.com.au/dream_gl.html )
Dream2D (Lib2D) (www.ui.com.au/dream2d.html)
Toutes les infos en français sont la :
http://programmationdc.free.fr/index.php
Autres Infos / Outils :
http://www.waz.org.uk/gamedev/dc/
La GBA est une machine très agréable à programmer et la scène amateur est très active.
Il existe donc tout ce qui faut pour bien programmer (outils, exemples, tutoriaux)
La GBA est une machine intéressante car son hardware est orienté pour le jeu
(sprites hard, 4 plan de décors, mode tile, rotation et zoom)
C en général. C++ possible
Assembleur pour les programmes rapides ou les partie de code sensibles.
Compilateurs (Gratuit) :
- DevKit Advance ( http://devkitadv.sourceforge.net/ ).
C'est le compilateur GCC mais pour les processeurs ARM avec tout ce qu'il faut pour que ca marche sur une GBA
- HAM ( http://www.ngine.de/ )
Un environement de développement pour GBA
Emulateurs (Gratuit) : Visual Boy Advance, Mappy
Possibilité d'acheter une cartouche programmable pour tester le jeu sur la GBA.
(Flash2Advance par exemple, dispo sur fl-games.com)
Catapult (Démo Gratuite) (http://www.nocturnal-central.com/ )
Environnement complet de développement de jeu.
Dragon Basic (Démo Gratuite) (Site fermé par manque de temps de l'auteur)
Environnement complet de développement de jeu. On peut surement encore en trouver une version sur le net. Il reviendra peut être en open source bientôt.
Sans notion de programmation :
RPG MAKER (sortie au japon uniquement je crois)
Tutorial (en français) :
- http://www.ifrance.com/edorul/
- AFDAC : http://www.afdac.org/prog.php
Tutorial : The Pern Project (il existe une traduction en français)
Les 2 sites de référence sont :
- www.gbadev.org (Anglais)
- www.devrs.com/gba/ (Anglais)
La GP32, bien que moins rependue que la GBA possède elle aussi sa scène amateur.
Le développement sur GP32 est plus simple que sur GBA car la machine est assez
Généraliste et le hardware très simple (un processeur puissant qui réalise toutes les opérations).
Bien qu'il soit possible de la programmer en C++ cela semble relativement compliqué à mettre en place.
C / C++ / Asm
DevKit Advance (le même que pour GBA), FireFly's GCC
Site de référence :
- PDA / PALM : PalmOc, WindowsCE, C
compilateur : codewarrior
langages : C/C++ SuperWaba
Autres liens : http://www.winikoff.net/palm/dev.html
http://www.the-gadgeteer.com/palmlinks.html/
-
POCKETPC (ppc2002 / wm2003) et Smartphone (wm2002 / wm2003)
WindowsCE. VC++, MFC
compilateurs : EVC++ EVB++
langages : C/C++, ASM, Visual basic, C# (.NET), Flash ..
http://www.codeppc.com/
site généraliste sur le developpement
sur PocketPC et SmartPhone
:
portail download microsoft
- TELEPHONES PORTABLES
Tout les nouveaux téléphones support
Java (Nokia,Siement,Motorola....).
Attention les API Java ne sont bien sur pas les même que
sur PC.
Environnement conseillé www.netbeans.org + plugin J2ME
site officiel : http://java.sun.com/j2me/
http://brew.qualcomm.com/brew/en/ ça permet de faire des jeux en 3D sur mobile. Ce n'est pas basé sur java mais sur C++.
- ZAURUS ET SMARTPHONE sous
linux (Qtopia)
compilateurs : ARM GCC
langages : C/C++, ASM
http://www.trolltech.com/products/qtopia/index.html
- JAVA
Java est un langage avec lequel vous ne pouvez programmer qu’en objet. C’est un très bon langage pour débuter avec la notion de programmation orientée objet car sa syntaxe est très simple et très efficace.
C’est un langage plus haut niveau que le C++ c’est à dire que vous avez moins à soucier des différences matérielles entre les machines qui devront faire tourner votre programme car le machine virtuelle java (JVM) s’en charge à votre place. Ce qui est très agréable si vous codez un jeu en Java c’est que dans sa bibliothèque standard il y a tout les besoin nécessaire à un développeur de jeu vidéo : affichage, événements, son, lecture et écriture de fichier,...
Une fois que vous aurez compilé votre programme celui-ci sera exécutable sur
n’importe quelle plateforme si celle-ci possède une JVM. Cette portabilité
s’obtient car les compilateurs java ne transforment pas le code directement en
langage machine mais en bytecode qui sera ensuite interprété par les JVM.
Malheureusement cela implique des performances plus médiocres que des langages
tels que C/C++ et dans des domaines comme le jeu vidéo cela pourrait être un
problème. Cependant, de nombreux efforts ont été fait pour Java qui inclut
désormais dans son API standard des fonctions d’optimisation (software et
hardware) au niveau graphique. Vous pouvez maintenant utiliser du double
buffering hardware en dessinant dans la RAM de votre carte graphique avant de
l’afficher à l’écran, vous pouvez également charger vos images en tant qu’images
compatibles pour qu’elles profitent d’une accélération matérielle et tout ça
sans devoir écrire un code tiré par les cheveux et de bas niveau, des fonctions
standards Java fournissent ces services de façon transparente pour le
programmeur.
Pour la 3D, des bidings OpenGL existent (tel que JOGL ou LWJGL) et vous
permettent d’insérer votre code OpenGL dans votre programme Java, cependant ces
librairies doivent être ajoutées dans votre programme et leur installation n’est
pas toujours évidente. Depuis Java 6.0, des fonctions OpenGl sont accessibles
via Java avec des performance encore supérieur qu’avec d’autres bidings. LWJGL
signifie en fait light weight java game library et est plus qu’un simple binding
OpenGL, voici quelques projets qui s’appuye sur cette librairie :
http://lwjgl.org/projects.php .
C'est un langage qui convient vraiment parfaitement au novice. C'est du C++ simplifié donc les connaissances ne sont pas perdues. C'est gratos (prendre un éditeur de texte genre ConTEXT ). C'est hyper portable et ça fait des applet. Pour faire des petits jeux marrant c'est un must. En plus c'est un langage très répandu chez les programmeurs normaux, donc c'est pas perdu.
(Les performances sont parfois lente. Bien verifier que la vitesse n'est pas ce que vous recherchez).
- SHOCKWAVE (Macromedia)
"Logiciel d'édition multimédia adapté à l'Internet à partir de « Director »"
- FLASH
Voir rubrique PC Langage simplifiés
Les vieilles machines possèdent toutes leur lots de fans et il existe des développements
de jeux amateurs sur TOUTES les ordinateurs et consoles "Old Skool".
En général il existe des outils pratiques pour la cross-compilation (compilation sur PC et non sur la machine), ce qui rends le développement plus facile qu'a l'époque.
Nintendo64: C/ASM (www.dextrose.com )
PS1 : Kit officiel amateur : Yaroze
Dev amateur (Cable serie) (www.geocities.com/james7780/PSX/psxdevstart.html )
Super Nintendo & Nintendo : Asm (www.zophar.net/utilities/nesdev.html )
Megadrive & machines SEGA : ( lien ? )
GameBoy : C/Asm (www.devrs.com/gb/ ) (http://gbdk.sourceforge.net/ )
NeoGeoPocket : (www.devrs.com/ngp/ )
C64 : Asm (www.popelganda.de/?relaunch64 )
Atari 2600 : Asm
Les outils nécessaires pour développer un jeu.
Dev-C++ (Gratuit) ( http://www.bloodshed.net/ )
Editeur et compilateur
VISUAL C++
Produit payant de microsoft. Il existe des versions gratuites.
Visual Studio 2005 est gratuit pour les étudiants. (Chercher sur le site Microsoft.). La version express n'est pas bien chère non plus.
Sinon une alternative (non testée) : tuto en français contenant le liens pour installer une version gratuite de Visual C++ :
http://navilinux.free.fr/dx_visual8.htm
Slick Edit (Payant)
Editeur
Jext
Editeur de texte
Miracle C compiler (Gratuit) (http://www.c-compiler.com/)
Compilateur C.
THE GIMP (Gratuit) ( http://www.gimp.org/ )
Editeur 2D « Il n'a rien à envier à Photoshop »
Tuto : http://www.essentielpc.com/tutoriels/graphisme/the-gimp/
PHOTOFILTRE (Gratuit) (http://www.photofiltre.com/ )
Trés performant parait il.
PHOTOSHOP (Payant, version "LE" gratuite)
Logiciel très utilisé mais payant.
Tutos : http://www.klondik.net/
Tutos : http://www.tutoriels.net/
Tutos : http://www.babylon-design.com/site/
PAINT SHOP PRO (ShareWare)
Concurrent de Photoshop, moins cher.
PIXIA (FR) (http://pixia.free.fr/ )
Pixia est un petit logiciel de graphisme aux possibilités étonnantes. A l'aise dans la retouche d'image et le traitement de photos, il s'avère trés performant pour la création graphique pure et dure.
- Gestion des calques, masques et transparents
- Mode de sélection original et complet
- Divers filtres
- Outils textes, dégradés et motifs bitmaps
- Nombreux paramétrages
- Interface conviviale et exhaustive
- Seulement 3 Mo
ZBrush (Payant) (http://www.pixologic.com)
ImageMagick (Gratuit) ( www.imagemagick.org/ )
Un ensemble d'utilitaires complets permettant de gérer les images.
(Commandes puissantes en ligne de commande, pratique pour exécuter des opérations automatiquement)
Graph3x (Gratuit) (http://graphex3.free.fr/)
En français pour les anglophobes habiles du stylo.
XnView (Gratuit) (http://www.xnview.com/)
Pour la visualisation des bibliothèques d'images.
« Conseils pour les textures
Débutant = Corel
Intermediaire
PaintshopPro
Avancé et pro
Photoshop
Painter
Paint3D = plugin de texturage directement dans la 3D »
3DSMax (Payant, version gratuite dispo) ( http://www.turbosquid.com/gmax )
Le logiciel des pros
Tutos : http://mr2k.3dvf.net/tutorials/max/polygones/joan_of_arc/part02/part02_tete01.htm (modeliser une tete)
XSI (Payant, version gratuite dispo) ( http://www.softimage.com )
Maya (Payant, version gratuite dispo) ( http://usa.autodesk.com/adsk/servlet/item?siteID=123112&id=7695485 )
http://www.learningmaya.com/tutorials.php
http://grafik.lagratte.net/maya_texturing_projection.php3
http://www.3dvf.com/modules/publish/Tutoriels_517_1.html
http://grafik.lagratte.net/videos/final_maya_head_poly_light.avi ( il te faut aussi ce codec: http://grafik.lagratte.net/videos/TSCC.exe )
Blender (Gratuit) ( http://www.blender3d.org/ )
Editeur 3d. « Il a une interface assez rébarbative du style de Lightwave, mais des fonction de modélisation et d'animation très puissantes. Il se peut qu'il ne soit pas adapté pour l'exportation des fichier DirectX ».
« Pour Blender, c´est déjà pour faire du high polygon ( donc si tu souhaite faire de petits modèles, c´est pas le logiciel qu´il te faut) Il est très puissant, lèger, mais beaucoup plus difficile à prendre en main. »
Tutorial blender (francais) : http://jmsoler.free.fr/didacticiel/blender/tutor/index.html
http://www.futurn.net/sections.php?op=viewarticle&artid=34
Amapi 3D (Payant, version gratuite dispo) ( http://www.bakhter.com/html/main/amapi4.html )
HexaGreat-3D (Gratuit)
Soft japonais de modedelisation 3D. On dessine et ca fait de la 3D.
Milkshape 3D (25$) ( http://www.swissquake.ch/chumbalum-soft/index.html )
“Trés bon outil pour faire du low polygone” (inclus avec 3d Game studio)
Tutoriaux (Français) :
http://www.halflifedesign.net/?page=models
Tutoriaux (Anglais) :
http://www.dosfx.com/tutorials/csgirl/default.asp
http://www.psionic3d.co.uk/lowtuts.html
http://www.gen3d.de/MS3DTutorial/
Anim8or (Gratuit) (http://www.anim8or.com/main/index.html)
Logiciel de modélisation et d'animation très propre et très pratique pour le DirectX.
STRATA 3D (Gratuit) ()
Modélisation 3D rendu réaliste gratuite
Stata 3D est un logiciel de
modélisation 3D rendu réaliste.
Il dispose de toutes les fonctions nécessaires à ce type d'outil avec une
ergonomie très poussée:
- Création de primitives 3D simples (cylindre, boites, cônes, prisme...)
- Création de primitives 2D et extrusion
- Déplacement et modification à l'aide de la souris (avec possibilité d'affiner
par une saisie de coordonnées X,Y,Z)
- Ajout de textures, de fonds et d'effets (éclairs, montagnes...)
- Calcul du rendu réaliste de la scène (Open GL, raytracing,
scanline)
Strata reconnait en lecture
aussi bien qu'en écriture les formats VRML, StudioPro,
3DStudio, DXF ainsi que les prinicipaux formats
d'image bitmap
Notre avis : Il n'y a aucun doute: Stata est un sérieux outil de modélisation
3D.
3D Canvas (http://www.amabilis.com/)
Wings 3D ( http://www.wings3d.com/ )
-----
Conseils :
“Pour débutant
Bryce " éditeur de paysage en général"
Amapi 3D
TrueSpace
Canoma mais c´est limité, très bon en isométrique
Terragen , editeur de paysage
Plant 3D = éditeur de plantes / arbres en sprites et en 3D simpliste
Poser = editeur de personnage mais très gourmand en polygones...
Pov=ray version gratuite possible
Pour intermédiaire
Blender
Rhinocéros = editeur de nurbs
LightScape = editeur de radiosité
3D MaxGaming = version de 3D studio Max spéciale jeux mais n´importe pas d´autres version.
Maya PLE = version apprentissage, pas d´exportation ni d´importation d´autres version.
Pour les avancé et pro
3D studio Max
Maya Studio
Lightwave
Magic3DStudio (hors prix)
Sites d’infos :
http://www.3d-station.com/ (max et maya)
http://mr2k.3dvf.net/frameset.htm (max et maya)
AUDIO
Cool Edit Pro (Payant)
Editeur de son.
Audacity (Gratuit) (http://telecharger.01net.com/windows/Multimedia/audio_mp3/fiches/19762.html)
Permet d'éditer et de sauvegarder les sons au format WAV ou MP3.
CDex (Gratuit) (http://cdexos.sourceforge.net/)
Permet aussi de ripper des CD Audio directement en Wav ou MP3.
RESSOURCE
- Une tonne de logiciels gratuit : http://www.framasoft.net/
- banque d'Objets 3D
http://shape.cs.princeton.edu/search.html
www.amazing3d.com/free/free.html
www.3dlinks.com/objects_free.cfm
http://scifi3d.theforce.net/ (des modèles de spaceship, en .3DS)
http://www.web3d-fr.com/objets/objets.php (des modèles divers, ainsi
que d´autre sites)
- Textures et arrière-plan :
http://www.c4d-jack.de/php/textures/index.php
http://vyonyx.com/index.php/category/down/tex
http://www.3dtotal.com/ffa/textures/texture1a.asp
www.3dlinks.com/textures_free.cfm
http://www.3dup.com/textures/index.cgi
http://hfx.planetquake.gamespy.com/textures.html
http://www.noctua-graphics.de/english/fraset_e.htm
http://www.the3dstudio.co[...]spx?id_category_0=2
http://www.zoorender.com/html/textures.htm
http://www.art.net/~jerem[...]xture_frameset.html
http://www.pixelpoke.com/FREEPIXELS.htm
http://www.absolutecross.com/graphics/textures/
-Plugin pour la création de normal map :
Photoshop : http://developer.nvidia.com/object/photoshop_dds_plugins.html
Photoshop : http://developer.nvidia.com/object/melody_home.html
Gimp : http://nifelheim.dyndns.org/~cocidius/normalmap/
- Polices :
- Audio : http://www.vgmusic.com/
- Sons gratuits :
http://www.a1freesoundeffects.com/
- Musiques:
- Hebergements gratuits :
http://www.linternaute.com/guides/categorie/70/hebergeurs_gratuits.html
http://www.hebergement-gratuit.com/index.php
Pour un jeu on a toujours besoin d'outils (éditeur de niveaux, transformation de données, etc ...)
Il existe des librairies pour développer simplement des GUI (Interface Graphiques, cad fenêtres, boutons,etc ..)
FLTK (Gratuit) (Multiplateforme) (http://www.fltk.org/ )
"Faster than Light Tool Kit". Très sympa, orienté opengl, donc simple d'écriture.
Il s'occupe de gérer toute sorte d'interface (fenêtres, boutons, slicer).
Il est facile d'y intégrer une fenêtre OpenGL (glut plus precisement).
GTK+ (Gratuit) (Multiplateforme) (www.gtk.org )
WxWidgets (Gratuit) (Multiplateforme) ( http://www.wxwidgets.org )
Qt : (Gratuit pour amateurs) http://www.trolltech.com/
MFC (Gratuit) (Microsoft)
Geré au travers de Visual C++.
TUTOS C / C++ (FRANÇAIS)
http://www.developpez.com/c/tutcpp/book1.php
Cours de C/C++ par Christian Casteyde. La Rolls des tutoriaux C/C++.
Tutorial C++ et plein d’autres choses. Ecrit par le celebre et sympathique J2Y, moderateur du forum creation de jeux sur jv.com.
http://c.developpez.com/cours/
Tutoriaux C et C++ (en francais) Plein de liens. C’est l’adresse par ou il faut commencer pour apprendre le C puis le C++. Je conseille aussi vivement d’avoir un bouquin sous la main, c’est toujours plus facile pour aller piocher des infos.
http://www.chez.com/lightness1024/site/TutorielC++.html
Tutorial C++ (avec mise en place sous VisualC++). Il tient sur une page ce qui est bien pratique.
http://www.francedev.com/browseressources.asp?cat=CPP
Cours C++
http://www.ltam.lu/Tutoriel_Ansi_C/
Tutorial : Introduction a la programmation en C. Avec exercices et solutions.
http://perso.enst-bretagne.fr/~brunet/Cours/Tutorial_C++/
Tutorial C++ (que la partie C++, pas de C)
http://www.infini-fr.com/Sciences/Informatique/Langages/Imperatifs/CPlusPlus/
Cours de C++
Apprenez a programmer en C.
TUTOS DIVERS (FRANCAIS)
http://www.games-creators.org/wiki/Par_o%C3%B9_commencer%3F
Excellente page "Par ou commencer" du Game Creator Network
Tutos OpenGl
http://tastalian.free.fr/index.php?index=SDL
Tuto SDL
FORUMS ET SITES D’AIDES (FRANÇAIS)
http://www.jeuxvideo.com/cgi-bin/jvforums/forums.cgi?mode=0&NumForum=31&debut_ndx=1&RR=&TR=1
Forum « Creations de jeux » sur Jeu videos.com, pour poser vos questions.
http://forum.games-creators.org/
Forum des createurs de jeux, fait partie du GCN (Game Creators Network).
Association et forum parlant de la création du jeu. Projet commun en cours.
« Le C++ pour les gros nuls ».
Le site des programmeurs francophones.
Programmer, publier et télécharger des jeux, des articles et des discussions
Sources CPP dans tous les domaines
Infos sur la creation de sites web
http://progregroup.free.fr/accueil.php
Site pour recrutement pour jeux amateurs
INFOS SUR LA CREATION DE JEUX (FRANÇAIS)
http://www.creationdejeux.fr.st
Infos sur la creation de jeux et description des metiers.
http://www.jeuxvideo.com/articles/0000/00004365_dossier.htm
Dossier sur les metiers du jeu video
http://www.programmationworld.com/site/Cours.asp?Action=cours&Numero=167#_topic_1
Infos generales sur la facon de programmer un jeu (le gros dessin au milieu decrivant la structure d’un jeu est tres interressant)
http://gamedesign-labo.com/publi.php
Site contenant des articles sur le game design et d'autres.
http://perso.numericable.fr/~fvirtman/info/deim/index.html
Lexique et explications des termes pour l'affichage 2D et 3D
SOURCES ET EXOS (FRANÇAIS)
http://perso.numericable.fr/ckckck/NGCK.htm
Methode pour pratiquer le C (ou C++) pendant l’apprentissage. Exercices basés sur le jeu video, utilisant des commandes d’affichage ultra simplifiées.
http://www.cppfrance.com/article.aspx?Val=1836
« petit exemple de RPG en 2d avec directx"
"parfait pour débuter la programmation de ce type de jeu car on y apprend comment afficher des sprites et des tiles"
http://www.cppfrance.com/article.aspx?Val=1885
"- JEU DE ZELDA EN DIRECTX "
http://www.cppfrance.com/article.aspx?Val=1382
"UN PETIT RPG (DEV-C++)"
http://ligwww.epfl.ch/~boulic/C_MicroTechnique/00_01/Controles/
Exercices de programmations
FAQS C / C++ (FRANÇAIS)
Site d’entraide pour les programmeurs francophones. Tres bien fournis (tutoriaux, forums).
La FAQ C : http://lfe.developpez.com/FAQ/C/
La FAQ C++ : http://lfe.developpez.com/FAQ/C++/
http://www.usenet-fr.net/fur/comp/lang/faq-c-1.html
FAQ C (en 4 parties)
http://www.dotnet-fr.org/documents/andymc_csharp_faq_fr.html
"La FAQ C# de Andy Mc pour programmeurs C++"
SITES EN ANGLAIS
http://www-cs-students.stanford.edu/~amitp/gameprog.html
L'équivalent de cett page mais en anglais
Tout ce que votre developpement de jeu a besoin est sur gamedev.net.
http://www.codeguru.com/directx/
Articles sur Direct X
Plein d'articles intérressant sur le jeu videos, la techniques et autres (inscription gratuite).
Aide pour les developpeurs
Infos pour opengl
http://www.programmersheaven.com/
Sources et articles
http://www.harveycartel.org/metanet/tutorials.html
Tuto sur la physique, très bien fait, avec des applications flash ou on peut changer les parametres.
http://www.ihfsoft.com/designdocuments.htm
Site avec des GAME DESIGNs
http://www.cs.ubc.ca/spider/forsey/448/UBCSyllabus_2001.html
Site avec des GAME DESIGNs
Divers liens a trier :
http://cone3d.gamedev.net/cgi-bin/index.pl
OpenGL => RedBook 1.2 + NeHe
DirectX => la doc du SDK
pour tous les trucs bien spécifiques et avancés, les slides NVidia/ATI
OpenGL
http://opengl.org
http://prografix.games-creators.org/doc_cat/94
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/opengl/openglstart_9uw5.asp
http://www-evasion.imag.fr/Membres/Fabrice.Neyret/doc/opengl.html
DirectX
http://msdn.microsoft.com/directx/
Perso
http://navilinux.free.fr/dx_visual8.htm
GFXConst SDK
http://developer.nvidia.com/object/sdk_home.html
http://www.ati.com/developer/radeonSDK.html
STL Error decrypter :
http://www.bdsoft.com/tools/stlfilt.html
http://www.developpez.com/c/livres/
Liste de livres sur C/C++.
http://www.afjv.com/infos_livres.htm
Livres
http://www.amazon.fr/exec/obidos/ASIN/2744014362/171-5497440-8433041
« Jeux 3D avec DirectX »
« Programmation des jeux (avec CD-ROM) »
« C++ pour les nuls »
« Formation à Microsoft Visual C++6 »
« C / c++ bible programmeur »
http://www.priceminister.com/offer/buy/885180/PR010
« Pc Poche C++ »
"pour le bouqin de C++, j'ai acheté "C++" dans la collection "Micro Application PC poche". Ca coûte aux alentours de 10euros. Un peu bordelique comme bouquin mais y a tout. "
« Le langage C, norme ANSI »
"Comment programmer en C++" de Deitel et Deitel
La version introductory du compilateur Visual C++ 6.0 est fournie avec.
ANGLAIS
“3D Math Primer for Graphics and Game Development”
http://www.amazon.com/exec/obidos/ASIN/1558605940/magicsoftwinc/103-2758450-7393407
« Geometric Tools for computer graphics »
« Pour la géométrie, j'aime bien celui-la »
http://www.amazon.fr/exec/obidos/ASIN/1558605932/magicsoftwinc./171-5497440-8433041
“3D Game Engine Design: A Practical Approach to Real-Time Computer Graphics”
Avant même de proposer un projet super et de demander l'aide de 50 programmeurs, 30 graphistes, 20 webmasters et 10 experts en son, je vous demande de réfléchir. Ayez en tête que programmer un jeu est quelque chose de très long et de très difficile. S'il est en 3D, ça rajoute même une difficulté monumentale.
Pour programmer, il vous faut de très bonnes notions d'algorithmie, ce qui s'apprend progressivement, mais qui est si passionnant !! Si vous voulez faire de la 3D, il vous faut également de très bonnes notions de mathématiques dans l'espace : les vecteurs, matrices, projections, trigonométrie, et autres outils de ce genre ne doivent pas avoir de secrets pour vous.
Pour les graphismes, sachez qu'il est difficile d'obtenir des choses belles, il faut du savoir faire et du talent, aussi bien en 2D qu'en 3D.
Pour les autres fonctions, c'est la même chose. Diriger une équipe est difficile. Concevoir un document préliminaire décrivant le jeu est nécessaire mais nécessite de l'expérience. Créer des niveaux demande une expérience dans le domaine du level design, car un niveau mal conçu ne sera pas amusant.
Pesez donc le poids de ce que vous demandez ! C'est très difficile de concevoir un jeu.
Pour conclure, je dirais comme d'habitude : commencez par de petits projets, tout petits : et seuls ! vous verrez les choses autrement déja ! Concevoir un jeu, c'est comme jouer a un jeu de rôle : vous devez acquérir de l'expérience. Si vous vous attaquez tout de suite a du compliqué, c'est comme si, en commençant a jouer, vous sautiez sur le boss de la fin qui a 16000 de vie... ou alors c'est comme vouloir traverser l'atlantique a la nage alors que vous savez même pas nager. Souvent on entends : "C'est pas grave, je suis motivé et j'apprendrais en cours de route". Ok, mais préparez vous à boire la tasse !
Quels sont les bases à avoir pour tous projets avant de recruter ?
Tous d'abords, il faut former un petit groupe avec un scénariste et un ou deux dessinateurs. La majorité de la formation de la structure du projet se doit-être établi par vous car vous allez être le "fil conducteur" de ce projet à savoir le chef de projet. Ainsi, vous devez avoir un scénario riche et précis, des dessins des personnages principaux et avoir un cahier des charges bien rempli. Il est indispensable de se fixer des conditions de travails définis à commencer par la façon de développer et de concevoir le jeu. Choisissez les meilleurs logiciels d'infographies qui conviendrez le mieux à vos idées et le langage ou logiciel qui permettra de faire marcher le jeu du mieux possible. Etre programmeur et chef de projet est un plus car vous aurez toujours une continuité dans le développement alors que travailler en ne sachant pas programmeur avec des programmeurs que vous avez recruté sur des forums va énormément vous gêner car ces derniers peuvent à tous moment décider de quitter l'équipe. Le cahier doit aussi comporter le Game Design du jeu en général (genre, perspective de vue, dimensions ... tout le jeu en détail) et l'organisation essentiel du projet entre les membres à savoir connaître l'objectif du projet (lucratif / Open Source ou commercial mais nous vous le déconseillons), la fonction de chaque membre pour bien savoir à qui appartiendra le travail (évolution du moteur pour les programmeurs, nouvelles musiques pour les musiciens, logo de l'équipe ou réalisation des personnages par les infographistes 2d ou 3d...) et le moyen de communication utiliser (icq, msn ou forums). Une fois le cahier des charges, le scénario et les dessins préliminaires en main, vous pouvez enfin poster une annonce pour développer le projet concrètement.
Quel message pourra vous différencier des autres projets pour mieux recruter ?
Vous n'avez pas créé le cahier des charges pour rien. Prenez tous les éléments qui seront aptes à présenter convenablement votre projet et essayer de faire un bref résumé du jeu et de vos attentes en matière de Game Play. Soyez poli, bref et vérifier l'orthographe pour ne pas passer pour un pur amateur. Montrez que vous êtes sérieux en définissant bien vos attentes en matière d'organisation de l'équipe et des tâches à effectuer. Faites une rapide présentation des 2-3 membres qui ont travaillé avec vous sur le Game Design pour montrer que vous-vous êtes bien préparer. Vous avez aussi la possibilité de présenter votre projet en détails grâce à un lien Internet sur votre site. Pour le site, ne faites pas "Entreprise ou Production" en vous citant comme un réel studio de développement et ne choisissez pas un nom d'équipe trop peu modeste (l'anglais peut-être utiliser mais faites en une bonne utilisation par rapport à votre projet). Ensuite, demander une bonne présentation des personnes intéressés par votre projet à savoir leurs nom, prénom, âge, ville, adresse mail (msn ou icq par la même occasion), leurs compétences, leurs expériences et leurs disponibilités. Concluez votre message par les adresses pour vous contacter (chef de projet) et une bonne formule de politesse (Cordialement, merci à tous, etc...). Vous avez créer un message intéressant et correct, vous n'avez rien à vous reprocher si certaines personnes ne répondent pas ^^ .
* Intêret.
Le cahier des charges est la source d'information principal entre les membres pour se mettre d'accord et fixer les méthodes et les façons de développer le projet. Il est le fil de direction du projet et il comporte des données que personnes ne doit négliger.
Le Game Designer et les programmeurs sont les principales personnes qui se chargent de la rédaction du cahier des charges. Les autres membres de l'équipe peuvent aussi y rajouter leur participation évidemment.
* Structure.
La page de couverture doit comporter le nom de votre équipe, la dernière mise à jour du cahier, le nom du jeu ainsi que le nom de la plate-forme sur lequel ce dernier sera jouer.
Le cahier des charges comportent plusieurs parties :
1- l'organisation de l'équipe : Elle à pour objectif de fixer les postes de chaque membre pour le projet. Elle se doit d'être organiser par un groupe Game Design (scénariste,dessinateur,level designer), un groupe Conception (infographiste, modélisateur),un groupe sons et programmation (en étroite relation avec le groupe conception)qui est complété par les bruiteurs, les musiciens et les programmeurs. Le tous est géré par des gens désigner qui sont responsables ou web master et qui ont pour but d'avoir une vision global de l'organisation de l'équipe (point de coordination).
2- Présentation du projet : Cette partie doit décrire le genre, les influences, les principes et un aspect global du jeu sans oublier de ne pas négliger les objectifs de l'équipe (projet lucratif,marketing,etc...).
3- Cadre Spatio Temporel : Mis en situation, description des lieus et cadre temporel du jeu (description de l'époque,date).
4- Scénario : Le scénario entier doit-être présenter dans ce sous-titre ainsi que l'histoire. Il faut bien faire la différence entre l'histoire et le scénario. Une se voit très global, l'autre est la situation dans laquel va se trouver l'utilisateur au début du jeu.
5- Game Design : Le Game Design est la partie la plus importante avec la Conception du jeu. Elle décrit le jeu de A à Z dans son utilisation, ses objectifs. Cette partie est indispensable et se doit donc d'être rédiger du mieux possible avec le plus de détails.
6-Conception du jeu : Elle explique quels sont les logiciels utilisés pour les infographies ou les retouchages de dessins, explique le système établi pour la programmation (langage, compilateur, interprète,format des fichiers,etc...).
7-Interface : Comment avoir accés à telle ou telle fonction ? Comment savoir où le personnage se trouve sur la carte...bref toutes les options et la façon de rendre accessible une fonction est présenté dedans.
8-Cinématiques : Story-Board, description de la cinématique et de son développement.
9-Sons : Thèmes étudié pour la musique, influence, nombres de musiques proposés, définition du mode de routine dans des niveaux définis,bruitages...
10-Planning : Objectifs pour le mois prochain, travaux déjà établis lors de tels mois. Le Planning permet de voir l'évolution du projet. Il est important de faire des petits étapes. C'est le meilleur moyens de pouvoir avancer et de ne pas abandonner à la première difficulté (car il va en avoir beaucoup des difficultés).
Comment présenter son projet sur un forum ?
1/ Tout d'abord, avant
même de commencer à rédiger votre message, reflechissez s'il vaut la peine
d'être écrit : il est inutile de poster pour présenter un projet si vous avez
seulement un bout de scénario et rien d'autre en tête : pratiquement personne ne
le lira et ceux qui l'auront lus ne seront pas bien avancés, avant de poster il
faut des éléments concrets mais vous verrez cela en 5/
2/ Pour attirer un maximum
de forumeurs sur votre topic(thread), ce n'est pas un titre du style "venez
voir" qui sera le plus efficace (sauf si vous cherchez les ennuis) : Dès le
titre précisez le genre du jeu, son nom et son support/language (si vous n'n
saviez rien, retournez en 1/). Au long de vote message pensez à aller souvent à
la ligne, personne n'aime lire des pavés sur le net. Evitez aussi le Ascii Art
pour dessiner le titre de votre projet (si si y'a des gens qui font ça...),
évidemment le language SMS est à bannir et une orthographe correcte requise (on
ne demande pas le 0 fautes mais quand même ^^)
3/ Le contenu de votre
message varie si vous désirez recruter des gens ou simplement présenter vote jeu
: dans les deux cas il vous faudra (évidemment) présenter votre projet, si vous
désirez recruter il vous faudra également vous présenter, mais pas n'importe
comment, vous verrez cela en 5/
4/ La présentation du
projet doit comporter : son nom, son support (=machine), le langage dans lequel
il est fait, l'état d'avancement, une brève présentation du scénario et/ou du
gameplay (faites courts, je vous rappelle que c'est vous qui allez vous prendre
des pavés sinon) et SURTOUT du concret : un projet accompagné de quelques
captures d'écrans, une démo ou une vidéo intéresse bien plus qu'une idée "en
l'air" (elle ne l'est peut être pas, mais si on ne voit rien, comment savoir ?).
Ne refusez pas de dévoiler un élément sous prétexte que vous avez peur qu"on
vous pique vos idées : cela n'arrive JAMAIS et votre message constitue un preuve
que cette idée émane de vous, de plus vous seriez ridicule.
5/ Dans le cas d'un
recrutement il est aussi important de se vendre que de vendre son projet
(pourtant il vaut mieux commencer par présenter le projet) : Indiquez votre âge
(les moins de 15 ans sont rarement pris au sérieux, d'où l'importance des
screenshots/démos), vos travaux passés (jeux, démos...si c'est votre premier
projet, appuyez vous sur celui ci), vos compétences : c'est bien beau de dire
que vous recrutez un programmeur (ah oui, énoncez les type de compétences que
vous cherchez) mais tant que vous ne l'avez pas précisé, celui ci considère que
vous ne savez rien faire, qui irait travailler avec vous ?
6/ Pour que vous puissiez
être contacté/recevoir des avis, laissez votre adresse email mais attention,
cela ne vous dispense pas de passer lire les réponses sur votre sujet : peu de
gens prendront la peine de sortir leur boite mail. L'attitude inverse, upper son
sujet tous les quarts d'heures ou poster des messages du style "alors?" au bout
de 5 minutes énerve tout le monde, autorisez vous un up une fois votre sujet en
deuxième page puis laissez le tomber : si personne ne répond c'est pas de chance
mais ça arrive (rarement si vous avez suivi tout ces conseils).
7/ Concernant les réponses qui vous sont faites, restez aimables en toute circonstance : ce sont les critiques (parfois difficiles voire même méchantes) qui vous feront avancer, pas les "Génial", prenez la peine de répondre à toutes les remarques qui vous sont faites et tout devrait bien se passer :)
8/ Si vous ne recrutez personne alors il faut remettre votre projet en question. Soit il est très (trop) ambitieux (comme 90% des projets présentés) et les expérimentés savent que le jeu ne verra jamais le jour. Dans ce cas, revoir les ambitions fortement à la baisse. Mieux vaut prévoir moins et le faire et que de prévoir des tonnes et de jamais avancer. Soit les gens estime que vous n'avez pas le niveau nécessaire et que ce n'est pas la peine de travailler avec vous. Dans ce cas, travaillez seul pour augmenter votre expérience, ou alors greffez vous sur un autre projet en cours, vous ferez votre projet plus tard.