Journal de bord

Journal de bord

Par Swing Swing Submarine Blog créé le 08/01/10 Mis à jour le 17/09/14 à 19h50

Ajouter aux favoris
Signaler
Programmatech

Salut les GBloggueurs,

Aujourd'hui nous lançons une nouvelle catégorie de billet : Programmatech.

Sous ce nom venu tout droit du futur, nous essaierons de vous faire découvrir des outils utiles pour créer des jeux vidéo. Que ce soit des outils que nous utilisons à SSS, ou d'autres que nous étudions par curiosité.

Pour ce premier volet, je vous propose un tutoriel sur Unity. C'est un éditeur de jeux, utilisé notamment par le studio Punchers Impact.

Unity 3D logo

Même si vous n'y connaissez rien, vous allez pouvoir vous faufiler dans les backstages de la création d'un mini jeu.

Alors sans plus attendre, vous trouverez un tutoriel détaillé sur ce billet :

TUTORIEL UNITY 3D - VERSION TEXTE

Et pour les plus impatients, ou ceux qui ne veulent pas lire, voici la vidéo qui suit à peu près le contenu du tutoriel texte :

EDIT : Pour les encore plus impatients (et pour ceux qui veulent comparer), voici une archive contenant notre premier tutoriel complété :

FICHIERS UNITY DU TUTORIEL COMPLET
(extraire l'archive et lancer le fichier "MyScene.unity" qui se trouve dans le répertoire "Assets")

N'hésitez pas à poser vos questions dans les commentaires de ce billet.

EDIT 2 : Vous trouverez les créations de GBloggueurs dans les commentaires, ainsi que quelques petits exemples supplémentaires pour aller plus loin après ce tuto 1.

Le prochain Programmatech parlera d'un outil de création choisi par William (chacun son tour). En attendant, amusez vous bien avec Unity !

Guillaume

Ajouter à mes favoris Commenter (37)

Commentaires

Swing Swing Submarine
Signaler
Swing Swing Submarine
@Kira27:
Merci de ton super feedback :) Et désolé de répondre avec autant de jour de lag :(
On est un peu occupé en ce moment (enfin un peu tout le temps, mais particulièrement ces temps-ci ^^) du coup on a pas beaucoup updaté le blog.

Et comme je suis en train de préparer la suite, je venais voir à tout hasard si il n'y avait aps de nouvelles questions ou posts... et je tombe sur ton superbe post !

RPG maker est un très bon début je pense.

Ici on a préféré parler d'outils que l'on étudie parfois le soir pour en faire profiter tout le monde. Et puis comme les Punchers utilisent ceci, on s'est dit que ça pourrait intéresser du monde de voir avec quoi peu travailler un professionnel du jeu vidéo.

Mais on va pas partir dans des trucs supra compliqué pour les tuto Unity. En essayant de garder l'aspect script le plus simple et succinct possible. Mais c'est clair que ça demande toujours un peu plus d'investissement qu'RPG Maker :)

Merci d'être venu voir/lire tout ça.
Et peut être à plus tard pour répondre à tes interrogations ou partager le résultats de tes travaux (que ce soir RPGmaker ou autre) ;)

Guillaume
Kira27
Signaler
Kira27
Je viens de regarder l'Episode 2 de Inside Punchers Impact, et je suis arrivé en lisant les commentaires. Le tuto est très bien fait, c'est très bien expliqué et pas du tout rebutant, contrairement à l'impression que peut donner la création 3D à quelqu'un qui n'y a jamais touché.

J'aimerais me pencher sur le sujet quand j'aurai un peu de temps (de la plate forme en vue de côté, ou des sortes de mini jeu, ne nécessitant pas de création trop importantes, doivent pouvoir se faire en gardant encore quelque cheveux), malheureusement, étant encore étudiant, ça risque de n'être que très ponctuel, pendant les vacances. La création de jeu vidéo est quelque chose qui m'a toujours beaucoup intéressé. Le seul logiciel que j'avais un peu exploré était RPG Maker. Pas le même calibre, mais ça permet des possibilités assez sympa tout en étant hyper accessible.

Bref, moi aussi je m'éparpille, tout ça pour dire que ce tuto était très bien fait, et que je vais suivre de près le blog. J'ai hâte d'en apprendre plus ;)

Bonne continuation à SSS et à nos 2 nouveaux apprentis développeurs =)
Swing Swing Submarine
Signaler
Swing Swing Submarine
@Enimal:
C'est clair que l'interface fait peur de prime abord... mais en fait elle se révèle être au finale assez "intuitive" (je mets de "", sinon William va me dire que je suis fou :))

@SeeDreeks:
Le tuto Blender/Unity copain copain devrait bientôt arrivé, même si je voulais faire un ptit tuto interface 2d/script règle de jeu avant. Je vais voir, c'est clair que Blender/Unity c'est important parce que ça permet de se faire des objets sympa à défaut d'avoir un "vrai jeu".

Donc je vais faire un détour par Blender d'abord ;)

Cool si tu rajoutes des cordes à ton arc. Tu dois déjà taquiner de la tablette.

Vous verrez, Blender c'est marrant au final, quoique moins qu'Unity !
Enimal
Signaler
Enimal
Guillaume
J'ai lancer blender, mais l'interface me fait peur :)
SeeDreeks je ne savais pas que tu étais graphiste, du coup je suis passé sur ton blog, et c'est joli, mais tu est dans la pub, alors tu est le mal :)
SeeDreeks
Signaler
SeeDreeks
Oula, manque de temps j'ai pas touché à Unity dernièrement. Par contre j'ai récupérer Blender en attendant que tu fasses aussi des tuto sur ce logiciel. Je suis de plus en plus intéressé par tout ça. Pour tout te dire, je réfléchis à faire un CIF avec entre autres des cours de 3D. Je suis graphiste PAO, et j'aimerais apporter d'autres corde à mon arc. Fin du pavé 36.15 mylife.
Swing Swing Submarine
Signaler
Swing Swing Submarine
Je possède la version gratuite.
Là je viens de faire un changement de version. Dans le menu File, tu peux faire "Enter version Number" qui en fait te permet aussi de tester pendant 30 jours la version "Pro", celle qui permet de faire des ombres. Du coup je vais regarder comment ils font ça et si c'est vraiment infaisable avec la version gratuite.

Pour la baignoire, je pense faire d'ici peu une petite vidéo explicative de Blender et de l'utilisation des ".blend" (les fichiers de Blender) dans Unity. J'ai testé et au final c'est assez simple, y'a pas besoin d'exporter depuis Blender vers des fichiers 3D (comme .obj, ou .fbx ou encore .3ds) car Unity extrait les informations directement du fichier .blend.

Pour la métaphore, le fichier .blend est ce que le fichier .doc est à Word : un fichier "éditable". Les fichiers d'export cités plus haut sont l'équivalent d'un export .pdf que l'on ferait du .doc :)

Du coup si jamais tu arrives a appréhender Blender, tu pourras faire des objets plus complexes dans les formes. Mais il est vrai que perso j'ai eu un bon petit temps d'adaptation avant de me faire à Blender. Après ce temps, on trouve le logiciel juste génial :P

Bref je m'égard comme d'hab, désolé :)

J'aime bien les couleurs criardes des murs ^^, ça me rappelle des démos techniques de Crytek avec le appartement moderne ;)

Guillaume
Enimal
Signaler
Enimal
Merci de tes encouragements, je me suis bien amusé à faire cette salle.
En ce qui concerne les ombres, moi je suis largué.
Mais avant d'arriver au ombres, il y a pas mal de défauts, je trouve personnellement le lustre trop moche, et les préfab que j'ai créer sont trop simples trop anguleux, la baignoire par exemple est rectangulaire (je ne sais pas si tu a vu la baignoire).
Je vais essayer de m'apiquer pour faire des objets plus propres, et les couleurs des murs sont vraiment criardes :)
Mais toi guillaume, tu possède la version de base ou payante de unity ?

PS : SeeDreeks, ne t'attend pas à grand chose, sinon tu sera déçu
SeeDreeks
Signaler
SeeDreeks
Oh j'ai hate de voir ce que tu as fait ce soir Enimal. Ici, au boulot, les serveurs free on du mal à charger donc impossible de voir ton avancement. En tout cas Guillaume a bien teaser le truc maintenant je suis pressé. ah ah.
Swing Swing Submarine
Signaler
Swing Swing Submarine
"un peu progressé" ?! Plus que un peu :)
Y'a vraiment une ambiance qui commence à ce dégager.
Bravo.
Perso je suis jamais allé aussi loin que toi avec Unity (je découvre un peu en même temps que vous, du coup j'en profite pour faire des tutos).
Selon moi il manque juste des ombres portées pour poser les objets (genre table/chaises) mais les shadowmap ne sont pas dispo de base dans Unity.
Du coup je vais essayer de voir si y'a pas moyen de faire un/des petit(s) shader(s) pour remédier à ça dans la version gratos.

L'éclairage que tu as établi est bien, ça marche fichtrement bien sur les murs et le lustre passe comme une lettre à la poste.

Respect :)

Guillaume
Enimal
Signaler
Enimal
Au fait, voila j'ai un peu progressé, j'ai créer quelques préfabs :
http://sam02m3.free....bert/test3.html
Enimal
Signaler
Enimal
merci pour le tuto, c'est vrai que c'est beaucoup plus facile de faire des préfab :)
Swing Swing Submarine
Signaler
Swing Swing Submarine
@SeeDreeks:
C'est étrange que tu ne puisses pas ouvrir le projet. Je viens d'essayer sous MacOS. J'ai DL le rar, extrait, je suis allé dans le dossier "Assets" et là y'a un fichier en .unity ; je double clique dessus et ça mouline un petit moment (le temps de faire certaines conversion peut être) et pouf : j'ai la scène dans Unity Mac :(

Idem pour le lien sur la page html du site de SSS. Je vois bien la scène sous Safari :( Peut être que cela provient du fait que tu n'as pas le Player Web Unity d'installé. Auquel cas tu peux le trouver ici :
http://unity3d.com/webplayer/

@Enimal:
Désolé, j'ai pas vérifier la "qualité" des modèles pour la 3D temps réelle. Je connaissais un site pas trop mal 3dcafe.com y'a quelques années mais apparemment il est en maintenance depuis un petit moment :(
Le meilleur moyen serait de mettre le nez dans Blender, mais je pense que je ferais une tite vidéo :) (oui j'ai découvert ScreenToaster grâce à William, depuis je suis comme un dingue sur les vidéos)

Sinon pour l'histoire des prefabs, une petite vidéo vaut mieux qu'un long discourt:
http://www.screentoa...19ZQFRUWlhQV1VX

Prefabs == Préfabriqués :) C'est assez pratique et utilisé à foison dans l'industrie. Comme ça les Level Designer se font leurs prefabs (où des fois un Gameplay Programmer leur les fait si ça fait intervenir du scripts ou autres trucs obscures) et y'a plus qu'à les poser comme des objets de base.
Enimal
Signaler
Enimal
Houa, tout ça m'a l'air très compliqué guillaume, et comme tu l'a dit (tu vois je te tutoie) les objets proposés sont vraiment très lourds, du coup je m'efforce de faire des choses moins compliquées.

SeeDreeks je suis impatient de voir ce que tu vas faire, c'est vrai que ça prend beaucoup de temps, mais c'est marrant de faire son propre "jeux vidéo"
SeeDreeks
Signaler
SeeDreeks
oups ! j'ai trouvé : rotation = 0 c'est tout.
SeeDreeks
Signaler
SeeDreeks
Tiens je viens de tout lire et c'est marrant Guillaume que tu parles de 3D dot Game Heroes. Je pensais justement m'imposer ce genre de contrainte pour créer des objets. Je pensais aussi à Picross 3D qui en quelque sorte donne des modèles à refaire sur un logiciel 3D.
Sinon j'ai utilisé la caméra "smooth follow" mais j'ai ce fameux problème de rotation. Je n'ai pas trop compris ce que tu voulais dire par :"...twiké les paramètres de ce script...". Et j'ai ouvert ton fichier pour voir ce que tu y avais fait, mais je me suis retrouvé avec un projet vide. Peut être que ça vient du fait que je sois sur mac ? Même ton .html ne fonctionne pas.
Bref je vais continuer de fouiller pour trouver une solution. J'ai même pas pu profiter du spoiler pour le prochain tuto. tongue.gif
Swing Swing Submarine
Signaler
Swing Swing Submarine
y'a aussi ce site pour les bases de modèle 3D (c'est peut être réservé qu'au utilisateurs Virtools, un autre éditeur):
http://www.3dvia.com...CFdkB4wodW27SYg
Swing Swing Submarine
Signaler
Swing Swing Submarine
@Enimal:
Si tu veux créer des objets complexes, tu vas devoir te tourner vers des logiciels spécialisés comme 3DS Max, ou surtout mon préféré : Blender.
Blender est gratuit (et open source). Il te permettra de créer des objets 3d car c'est un logiciel prévu pour l'édition de maillage 3D. Ce que ne fait pas Unity.

http://www.blender.org/

Après, il se peut que trouve des objets sur internet déjà tout faits, comme sur http://e2-production...es/PDdownloads/ ou encore http://www.blendermodels.org/
Attention toutefois, certains modèles sont destinés au rendu non temps réel (pour faire des films d'animations) et sont très peu adapté au jeu vidéo du fait du nombre de polygones important les composants.

L'apprentissage d'un logiciel de la sorte peu être long :( Mais tu pourras trouver de l'aide sur le site de Blender, et sur d'autres sites comme http://www.3dvf.com

Dernière alternative: composer des objets "complexes" grâce à la composition d'objets plus simple à l'intérieur d'un Prefab.
Certes le résultat ne sera pas très réaliste... mais ça peut suffire pour certaines choses.
Je comptais aussi faire un tutoriel sur les prefab. Ou sinon le te mettrais un exemple de prefab ici dans la soirée.
Des jeux "next-gen" comme 3D Dot Game Heroes arrive à composer avec une contrainte forte : celle de n'avoir aucun modèle 3D très compliqué :) ()

Si jamais tu trouves des modèles tout faits, tu pourras les importer dans Unity en faisant un clic droit dans l'onglet "Hierarchy", puis "Import New Asset...". Et les utiliser dans un composant "Mesh Filter" pour sélectionner le maillage dans ta Hierarchy, et un autre composant "Mesh Renderer" pour afficher le maillage à l'écran.

Après j'ai pas encore trop testé les formats de fichier supportés, mais il est possible de passer par Blender pour effectuer des conversions de fichiers (importer dans Blender pour exporter dans un format différent).

Pour les matières transparente, je peux te faire un exemple, là tout de suite je dois m'absenter mais dans le week end :)

"vous poser des questions" ?! >> Tu peux (t'es même obligé) de me tutoyer :P Sinon ça fait pas très "jeux vidéo industry style" ;)
Et les questions ne dérangent pas, au contraire, sinon on aurait pas proposé des tutos sur le blog ^^

@SeeDreeks:
Bon courage avec le petit, c'est bien plus compliqué que Unity :) Y'a pas de composant déjà tout fait pour changer les couches et autres joyeusetés !

Guillaume
SeeDreeks
Signaler
SeeDreeks
Oh merci ! je regarderais ça plus tard car je dois m'occuper de mon fils je ne pourrais pas être très assidu. mais dès que je m'y repense, je posterais mes résultat ici.
Enimal
Signaler
Enimal
Merci, mes 2 problèmes sont réglés, la lampe torche marche, et le sol possède maintenant de jolis carreaux.
Mais plus j'avance plus je rencontre des difficultés, comment je peux faire pour créer des objets, que je ne peux pas construire avec de simples cubes ou sphères ?
Je voulais par exemple, créer un lustre pour que la lumière venant du plafond ne vienne pas de nul part, mais je n'ai pas réussi, et je ne sais pas non plus comment rendre une matière transparente (comme du verre)
Enfin, je vais arrêter de vous poser des questions, et je vais commencer a chercher par moi même.
Swing Swing Submarine
Signaler
Swing Swing Submarine
@SeeDreeks:
Hop, j'ai fait un petit exemple en reprenant la scène du tuto.

http://www.swingswin...dPersonCam.html

et le fichier rar du projet:

http://www.swingswin...rdPersonCam.rar

J'ai juste texturé la sphère et modifier le script du Ground pour qu'il n'y ait plus le problème de "Gimbal Lock" (c'est en quelque sorte un spoiler d'un prochain tuto :P) et j'ai surtout créé le projet en prenant soin de garder les "standard defaut assets" dans le projet.
Ce qui fait qu'on se retrouve avec un script "Smooth Follow" (qui se trouve dans le menu [Component >> Camera-Control >> Smooth Follow]).
J'ai ensuite tweaké les paramètre de ce script dans l'inspector pour pas que le follow fasse tourner la caméra mais juste la déplacer, et pour que la caméra soit plus proche de l'objet à suivre.
Il ne faut pas oublier de spécifier l'objet à suivre, ça se passe aussi dans l'inspector de la caméra, dans les paramètres du script "Smooth Follow (Script)". Là on à un champ "Target" et si on appuie sur la petite flèche, on obtient une liste défilante de tous les objets de la scène. On choisit la sphère (dans mon exemple linké elle s'appelle "Ball").

Après y'a possibilité de faire un suivi plus complexe. Pour ce faire, rien ne t'empêche d'aller voir le code du script "Smooth Follow" inclut dans la scène. Mais je reviendrais certainement dessus dans un tuto. Parce que expliquer dans un commentaire n'est pas chose aisée :)

J'espère que ça pourra t'aider pour poursuivre ton MonkeyBall :P

Guillaume
Swing Swing Submarine
Signaler
Swing Swing Submarine
@SeeDreeks: t'as bien fait de le garder, en fait je l'ai enlevé pour que le rar soit moins gros à télécharger pour le projet tuto. Et content que tu es trouvé également l'utilisation des matériaux (comme Enimal). Je te prépare un petit exemple de caméra qui suit la boule dans quelques instants...

@Enimal:
Je t'ai fais un petit projet (du coup il est gros en poids car j'ai utilisé les "standard assets" en créant le projet).
http://www.swingswin...tSpotLight.html

et le fichier rar du projet (un peu gros :():
http://www.swingswin...mAndTexture.rar

En gros pour répondre à tes 2 problèmes:
- pour que la spot light suivent la caméra, j'ai simplement fait en sorte que la spot light soit "fille" de la caméra, du coup j'ai fait un glissé/déposé dans l'onglet "Hierarchy". J'ai aussi mis une capsule visuelle en fille pour que tu vois comment ça bouge pendant l'exécution (la capsule est seulement visible dans l'onglet "Scene")

- pour les textures à faire répéter, ça existe et cela s'appelle le "Tiling". Une fois que tu as appliqué un matériau sur un objet, clique sur celui-ci, et dans son Inspector, tu verras une partie Material où tu peux régler le tiling.
En gros le tiling indique combien de fois la texture va être répété horizontalement (en x) et verticalement (en y) sur ton objet. Dans l'exemple que je link ici, j'ai mis le tinling sur 3/3 parce que mon objet (un gros cube étiré en guise de sol) a une surface carrée. Rien n'empêche d'allonger le sol dans une direction et de régler le tiling pour que ta texture ne fasse pas "étirée".

Guillaume
Enimal
Signaler
Enimal
voila mon problème :
http://sam02m3.free..../FPS light.html
Je sais je flood
Enimal
Signaler
Enimal
C'est bien la première fois que je fais ce genre de truc, je suis plus que débutant dans le domaine, mais j'ai fouillé dans l'interface et vu un autre tuto en ligne. J'ai appris au fur et a mesure, la lumière, les collider, les textures, la capsule avec les données FPS.
D'ailleurs j'ai eu un problème, j'ai voulu intégrer un spot lumineux à la vision FPS, ce que j'ai réussi, mais cette "lampe torche" n'était que horizontale,la lumière se déplace horizontalement en fonction de la visée en fps, mais elle ne suit pas l'axe vertical.
En ce qui concerne le sol, j'avais trouvé l'image d'une dalle sur internet, mais lorsque je l'appliquai au sol, la dalle se déformait pour avoir la taille du sol, alors que je voulais que le motif se répète, alors j'ai créer des cube de la taille d'une dalle que j'ai copier et coller des 10aines de fois pour faire le sol, il n'y a pas une fonction sur unity qui permet de répéter une texture sur une surface au lieu de l'étaler ?

PS : personnellement la pièce que j'ai créer me fait peur
PS2: au fait, je voulais aussi créer une "télévision" affichant une vidéo, mais je crois que l'intégration de vidéo n'est pas disponible dans la version gratuite de unity.
PS3: J'attends le tuto pour faire de la 2D avec impatience :)

PS4, je me demande si je ne vais pas créer une sorte de "maison" dans laquelle je mettrai des photos de famille, c'est toujours plus original qu'un album photo.
SeeDreeks
Signaler
SeeDreeks
Ah non justement je l'avais gardé. J'ai d'ailleurs ajouté des textures sur le tuto (ma sphere est devenu un roc, un pic, que dis-je... une péninsule) et j'ai pu voir aussi l'eau (que je n'ai pas réussi à ne mettre que dans le bac). Maintenant, je voudrais faire un vrai labyrinthe avec une caméra à la troisième personne sur la boule genre Monkey Island. Je pense que ton prochain tuto pourra m'aider à le faire donc je vais continuer à tester des choses en l'attendant.
En tout cas merci pour le tuto et pour ces échanges.
Swing Swing Submarine
Signaler
Swing Swing Submarine
@SeeDreeks
Si tu veux des composants supplémentaires, n'hésites pas à créer un projet en ne décochant pas la case "Standard Assets.unityPackage" (tu l'avais peut être pas décoché, tant mieux).

Et si t'as des questions sur comment faire ce que tu voudrais faire, n'hésites pas à en faire part ici :)

Guillaume

Édito

Grâce à ce mini-devblog en français, vous pourrez suivre l'activité de notre minuscule studio de développement indépendant Swing Swing Submarine.

Nous sommes une petite équipe d'hommes et de chats passionnés qui souhaitent partager de nouvelles expériences interactives avec les joueurs du monde entier, et ceux de Gameblog en font bien évidemment partie !

--------------------------------------------------------

Quelques liens utiles :

> Site officiel <

> Twitter <

> Facebook <

Archives

Favoris