Daratis - Graphiste 2D/3D

Daratis - Graphiste 2D/3D

Par daratis Blog créé le 18/03/10 Mis à jour le 12/06/10 à 11h24

Etudiant en 3e année de formation jeu vidéo, graphiste 2D/3D à LISAA Paris.

Ajouter aux favoris
Signaler
Projet Contamination (2010)

Ca fait une éternité que je n'ai pas posté, et cela parce que toute l'équipe travaille d'arrache pied pour tenter de terminer la démo du projet Contamination ! En attendant d'avoir à nouveau un peu plus de temps pour reprendre mes publications, voilà un aperçu du jeu ^.^

Ajouter à mes favoris Commenter (3)

Signaler

Hello !

En ce moment c'est la période recherche de stages pour l'été, et moi ben je trouve rien de bien intéressant alors du coup, hop candidatures spontannées. J'ai un collègue qui a dégoté un stage en tant que Level Designer chez Punchers Impact, quel bol !
Malheureusement sur l'AFJV, y a plus d'annonce de leur part et je ne trouve pas de lien pour les candidatures spontannées sur le net (Quelqu'un a une idée ?).

Sinon Ubi est passé nous voir aujourd'hui, j'avais imprimé un cv, mais comme pour la plupart de mes collègues, pour rien. La responsable aux ressources humaines nous a demandé d'envoyer tout ça par mail. Y a peu de chance de dégoter un stage là bas mais je me suis tellement donné de mal cette année que j'espère avoir une toute petite chance quand même.

Mais Punchers Impact ça me botte, vraiment ! Si seulement je pouvais les contacter... Je leur montrerai ce que je sais faire et puis au pire j'aurais tenté ! Bon et puis il va falloir que je dorme, parce que les nuits blanches ça bousille la santé...

Cliquez sur l'image pour accéder directement à mon site :)

 

Ajouter à mes favoris Commenter (2)

Signaler
Côté technique

 

Dans le jeu vidéo, la grande règle c'est l'optimisation. Rappelez vous du temps où l'on pouvait traverser le décor et se rendre compte que le jeu vidéo est digne du carton pâte, on se serait cru dans un Dark City de Alex Proyas avec la direction d'une pseudo ville qui s'arrête devant un mur de brique. Cette année je travaille sur un moteur qui ne permet pas de bénéficier des dernières techniques en terme d'effets visuels et c'est pourquoi ma seule option est le normal map.

Le normal map kezako ?
En règle générale dans les jeux vidéos, les personnages sont modélisés en « low-poly ». Cela signifie en gros que les faces qui composent un personnage modélisé en 3D se doivent d'être optimisées au mieux (comprendre nombre réduit). C'est l'une des différences majeures avec l'animation 3D pure, ça, et le petit plus temps réel des jeux. Vous pensez que FFXIII est magnifique ? Vous avez raison ! Mais regardez les doigts des personnages, se sont des cubes ! Oui vous avez bien entendu ! 4 faces sur les côtés, pas plus.
Alors comment peut-on faires des boucles de ceintures dans tous les sens sans que ça fasse moche ? Des cicatrices ? Des écailles ? Une des réponses est le normal map (car il y en a d'autres mais je ne parlerai ici que de la normal).
La normal map est une texture qui va enregistrer la façon dont la lumière réagit sur chaque partie de la texture, il s'agit donc également d'un « Shader » par définition.
Ainsi, si une créature a la peau écaillée, la lumière se reflètera sur chacune des écailles, et cela même si en réalité la surface est plane, ce qui donne une impression de relief (Si vous voulez vous amusez, vous remarquerez que les bandes avec des reliefs de smarties géants qui permettent d'éviter de glisser, ou presque, prêt des transports en commun ont en fait l'air tout à fait plats, c'est l'ombre qui fait qu'on voit le relief !).

Le but va donc être de créer tout d'abord un model en low poly. Ici je donnerai l'exemple avec le prédateur du projet Contamination (c'est noël avant l'heure !).
On voit que le modèle fait 1508 triangles soit environ 750 polys (un poly= un carré = 2 triangles. Une carte graphique gère tout sous forme de triangles). On voit également que malgré cela il est relativement adouci. Il s'agit de ce qu'on apelle les "groupes de lissages". Ils permettent dans un premier temps d'obtenir une réaction plus douce de la lumière sur un poly (Si on tord un carré en deux , la lumière frapera l'arrête de manière brute). Cela explique également les accidents que l'on peut voir au niveau de la lumière sur le model en exemple. Les groupes de lissages ne sont pas corrects.
NB : Modéliser avec les groupes de lissage permet, quand on veut faire du low poly de prendre conscience des endroits où il est véritablement nécessaire d'avoir plus de polys et ceux où l'on peut en économiser.

 

Ceci fait, on va réaliser un unwrap du model. Pour faire simple, c'est comme la couture, il faut créer le patron pour la peau (skin) du model. Il y a de nombreuses subtilités par rapport à cette étape mais ce n'est pas ce qui nous intéresse dans l'immédiat.

 

 

Tout est prêt. On passe alors sur un logiciel qui va permettre d'augmenter considérablement le nombre de polys. Pourquoi ? Ca semble aller à l'encontre même de l'optimisation ! Et bien non car en réalité, les informations que l'on va sculpter seront, comme expliqué précédemment, enregistrées sous forme de normal map. Evidemment il ne faut pas espérer pouvoir rajouter un troisième bras ! Ce n'est pas magique non plus ! Par contre voici toutes les informations que j'ai pu ajouter sur le bestiau.

 

On a des écailles, des volumes pour les muscles, des plis de peau et un model d'un peu plus de 3 millions de polys donc 6 millions de triangles, pas question de faire tourner un personnage comme ça en temps réel dans un jeu ! Pas de problèmes, on en extrait donc la normal map (pour ceux qui tenterait l'expérience n'oubliez pas de sélectionner la bonne configuration, genre 3Dsmax 7 tangent sous Zbrush, sans quoi vous vous retrouverez comme moi à pester parce que les couleurs ne sont pas les bonnes).
Et voilà la jolie normal (ou presque jolie).

 

Les artefacts (erreurs) en vert sur l'exemple, ne sont pas très beaux à voir, mais il faut bien comprendre que ce qui n'est pas dans les uvs (les différentes pièces du patron) ne sera pas conservé. Il ne reste plus qu'à mettre tout ça  dans le moteur :

 

Et voilà, le model que vous avez sous les yeux est bien le même que le tout premier que vous avez vu, aucun poly en plus, le relief des écailles vient uniquement de la normal map. Il a perdu du poids parce que les volumes rajoutés en high poly étaient trop importants et donc la lumière ne pouvaient pas à elle seule donner autant d'impression volume. Mais au final on obtient quelque chose de bien plus détaillé qu'avec une simple texture à plat, et on multiplie les détails de texture, variations de relief.

Il est important de noter  que cet article n'est pas un tutorial complet, tout d'abord parce que je ne pense pas être assez pédagoge et expérimenté pour ça, et ensuite parce que  dans les moteurs actuels, la normal map à elle seule ne suffit pas. Un personnage actuel dans un jeu, est en réalité composé de plusieurs autres couches comme la spéculaire etc.
Quant à la texture de l'animal, elle a été réalisée dans des délais assez bref et n'est pas « propre » (ce qui explique aussi pourquoi je ne vous la montre pas en dépliée, il faudra suivre cela sur de futurs post de Contamination).
Enfin, le moteur utilisé n'est pas le plus efficace en ce qui concerne les graphismes actuellement. Mais je pense que cet article vous aura permis de découvrir une petite parcelle des multiples astuces dont le jeu vidéo use pour bluffer nos ptits yeux éblouis mais tant que ça marche, que demander de plus ?

 

Ajouter à mes favoris Commenter (0)

Signaler
Creepy Crawly (2009)

 

Niveau mécaniques, l'Acarhino est une simple sentinelle terrestre qui effectue des rondes afin de repérer le joueur. Néanmoins il surprendra ce dernier par sa taille et sa force (il tue le joueur en un coup au contact). Grâce à la vue fps ce monstre parait d'autant plus imposant. L'autre particularité est que l'Acarhino a la possibilité d'alerter ses congénères pour piéger le joueur.
Enfin, si le joueur pense que la créature est trop lente pour être un problème, il risque de se faire avoir pas la capacité de charge qui permet à l'acarhino de parcourir une grande distance en ligne droite et très rapidement.

Creepy Crawly est un jeu dans lequel le joueur se sent petit et fragile. Il lui faudra une attention de tous les instants pour survivre.

Lors des premiers concepts de la créature, le résultat était une créature trop terrestre, quadrupède alors que les acariens sont des arachnides, certainement inspirée de l'étude en parrallèle de l'anatomie des animaux terrestres.

 

Dès le début du projet, on a établit les échelles entre les différents personnages afin de gérer l'espace nécessaire pour naviguer. Des problèmes vont apparaitrent plus tard dûs à deux choses : la taille de l'Acarhino, et le fait qu'il puisse charger.

 

 

Les modifications afin d'obtenir un véritable acarien vinrent au fur et à mesure avec une créature faite de volumes, de cils sensitifs.

 

 

Le détail (unique) qui a été gardé jusqu'au design final de la créature fut sa gueule.

 

 

Les essais sur des rendus que l'on souhaitait obtenir au final.

 

 

Enfin l'heure du design final et des changements radicaux puisqu'on retrouve la créature dotée de huit pattes et d'une carapace. Un shader créé spécialement pour l'occasion donnera les effets de microscopie électronique.

Note : le turn ne semble pas vouloir se charger, je ne sais pas d'où vient l'erreur, je mettrai ce post à jour dès que j'aurai trouvé d'où vient le problème.

 

Ajouter à mes favoris Commenter (0)

Signaler
Creepy Crawly (2009)

Creepy Crawly est un projet qui a été mené en 4 mois environ. En tant que chef de projet j'ai passé pas mal de temps à gérer l'équipe, du temps que j'aurais souhaité passer sur la création graphique. Ainsi la masse de travail entre Creepy Crawly et Contamination est incomparable. Mais Creepy Crawly reste un projet très intéressant et c'est pourquoi je vais maintenant vous présenter des recherches autour du personnage principal.

Le premier concept que j'avais présenté, lors de la sélection par un jury des projets, montrait l'action principale du jeu pour progresser : poser des pièges.

 

Par la suite, alors que le design d'autres créatures progressait, celui du pj en était toujours au même point, à savoir celui de mon tout premier concept. J'ai dû designer dans l'urgence un pj qui au final n'aura pas été conservé par le responsable du design de la créature.



Le design définitif de la créature visait à donner une impression de "cellule souche", une créature non spécialisée qui allait pourvoir évoluer physiquement en temps réel dans le jeu, selon l'utilisation de telle ou telle capacité.


La création du turn et donc du design fut à nouveau relégué à la personne responsable de ce personnage qui ne conserva pas ce design. Il faut comprendre que même en tant que chef d'équipe je n'étais pas là non plus pour imposer les choses, mais plutôt pour gérer le planning et donner des conseils de manière à maintenir la cohérence globale du jeu.

Au travers de chacun de mes posts, je vais décrire la réalisation de ce projet dans l'ordre chronologique, ainsi il faudra patienter un tout petit peu avant de voir la partie prod, malgré le fait que la partie préprod fut assez légère pour ce projet. Ensuite, je ne pourrai pas présenter le travail des autres créateurs de l'équipe, car il leur appartient. Vous pourrez néanmoins en avoir un aperçu lorsque je posterai un making-of du jeu.

Ajouter à mes favoris Commenter (0)

Signaler
Projet Contamination (2010)

Pour débuter les recherches, je me suis concentré sur les races extra-terrestres qui composaient le vaisseau de l'histoire en question. J'ai donc essayé de dégager des formes diverses pour des visages et j'ai également tenté d'imaginer à quoi pourrait ressembler une combinaison afin d'aider le technicien à effectuer ses tâches sur le vaisseau.

S'il est vrai que ça manque de couleur, c'est qu'il s'agit de premières recherches pour lesquelles je préfère les volumes grâce au contraste. La couleur ira ensuite dans le sens du caractère du personnage.

Le premier visage est un Reptilien, comme on le voit, avec une diminution de la mâchoire (puisque quasiment plus de nécessité de prédation), et une capacité crânienne développée. De deux choses l'une : soit c'est un chef possédant une force de caractère soit c'est un roublard. Moi j'ai choisit les deux...

Croquis d'un insectoïde, un personnage aux sens sensiblement plus développés que d'autres espèces.

Deuxième insectoïde, plus monstrueux, plus animal, pour lequel on imagine moins de réflexion et plus de chasse...

Et un extra-terrestre totalement original (ou presque), force de caractère.

Un personnage maigre dans une combinaison extrêmement épaisse, un organisme qui vit d'une association bio-mécanique d'un univers à la Giger (en très soft c'est vrai).

Et enfin mon premier essai pour la combinaison, sorte d'exosquelette qui finalement ne sera pas conservé du fait de la valeur "écolo" du jeu.  Pour coller avec le discours d'un personnage qui finit quand même par sauver la planète d'une pollution mortelle, on m'a conseillé de rechercher plus de sensibilité dans ce personnage.

Voilà il reste encore énormément de recherches pour le personnage principal mais je vais conclure avec ça pour les premières recherches. Elles représentent les premières interrogations sur la nature du personnage que va incarner le joueur et qui vont se confirmer par la suite.

Ajouter à mes favoris Commenter (0)

Signaler
Projet Contamination (2010)

Contamination est un projet qui a démarré en septembre avec une toute nouvelle équipe dont je ne suis plus chef de projet. On trouvera des points communs au projet Creepy Crawly bien que seuls deux membres de l'ancienne équipe subsistent moi compris. Mais parlons plutôt du projet.

Dans Contamination, on incarne un extra-terrestre qui échoue sur une planète étrangère répandant au passage le carburant de son vaisseau. L'objectif principal est, bien entendu de récupérer ce carburant afin de pouvoir repartir.
Mais la particularité de Contamination réside dans le fait que le carburant, à la manière d'un virus, possède la fâcheuse manie de se répandre et également de modifier l'état de l'hôte de manière peu recommandable (mutations).

Le joueur possède un extracteur qui va être son interaction principale avec l'environnement. Il lui permettra de dépolluer tout d'abord, stocker ces unités de carburants, mais également, quand plus rien ne peut lui permettre de progresser, de l'injecter dans des organismes pour débloquer des passages en modifiant le comportement d'origine de l'être en question.

Ajouté à cela, le personnage complète un "niveau" en atteignant une des capsules échappées du vaisseau lors du crash dans lesquelles se trouvent les "noyaux" du carburant qui, eux, produisent la matière.
Toutes les capsules donnent une durée de vie globale à la première partie du jeu car elles sont sur le point de se fissurer. Le joueur progresse donc, tout en étant par moment sous le coup d'un stress lié à l'urgence de la situation. Il s'agit d'un système proche de celui qu'on retrouve dans Dead Rising de Capcom (2006).


La navigation, se déroule de la manière suivante :
Le joueur débute dans le vaisseau d'origine d'où il va pouvoir sélectionner une destination où se téléporter (niveau). Sur la carte il découvrira au fur et à mesure du jeu de nouvelles zones à nettoyer, pour au départ, contrôler l'ascension du joueur, et par la suite lui proposer de faire des choix en fonction de la situation.
Certains niveaux pourront proposer plusieurs objectifs principaux pour lesquels il faudra revenir une fois certaines conditions vérifiées (nouvel outil etc.)

Pour ce qui est de l'environnement, on retrouve des interactions comme celles de Creepy Crawly : des prédateurs, des herbivores avec lesquels on peut interagir de différentes manières. Cette fois-ci certains végétaux produiront également des effets et pourront servir à atteindre des lieux inaccessibles auparavant.

Le scénario a été fortement inspiré de "Mass Effect" par Bioware/Pandemic Studio (2007) ce qui ne promet pas forcément de l'originalité quand aux rebondissements, mais plus de contenu que dans un Creepy Crawly au niveau Background.

Ajouter à mes favoris Commenter (0)

Signaler
Creepy Crawly (2009)

Mon premier "vrai projet"

Creepy Crawly est un projet qui me tient vraiment à coeur car, depuis le début de mon concept, il a su plaire à énormément de monde, ce que je n'ai pas su refaire lors du second projet.

Dans Creepy Crawly, vous incarnez... un acarien ! Mais pas n'importe quel type d'acarien puisque votre espèce est l'une des seules à cette échelle à posséder un comportement social proche des fourmis. Malheureusement votre colonie finit par être attaquée par une colonie d'une espèce différente et vous vous retrouvez malgré vous expulsé loin, très loin de votre cher foyer (au passage sans connaitre l'état définitif de celui-ci après bataille). Ainsi, tel Ulysse, vous chercherez à retrouver le chemin de votre chère patrie inlassablement (je vous rassure, on fini par atteindre l'objectif, ou presque...)

La particularité de Creepy Crawly est que le joueur incarne une créature si petite qu'elle ne peut pas affronter directement la plupart des obstacles qu'elle rencontre. Donc la ruse est de mise. Par contre, elle possède des capacités intéressantes telles que la possibilité de fabriquer un acide qui pourra modifier les propriétés de certains terrains afin de piéger ses adversaires monstrueux.

Et le joueur devra en effet se cacher la plupart du temps, car ses adversaires portent des coups mortels dûs à leur taille et ont la possibilité d'avertir leurs congénères de la présence du joueur en produisant des "cris" de rassemblement.

Néanmoins le joueur peut également utiliser les relations de conflit entre différents adversaires (parce que différentes espèces) afin de créer une diversion.

Enfin, le personnage possède un système d'évolution dynamique qui augmente la puissance des "outils" utilisés le plus couramment au détriment des autres, sorte d'alignement automatique du personnage selon les choix du joueur.

La vue fps a été choisie afin de rendre l'immersion la plus totale et nottament de rendre compte de la taille du héros par rapport à l'environnement.

Au niveau références lorsque j'ai mis en place le concept, je pensais à Evolva de Computer Artworks (2000) pour le système d'évolution personalisé, le livre Les fourmis de Bernard Werber , L'odyssée d'Ulyssela microscopie électronique...

 

 

Ajouter à mes favoris Commenter (0)

Édito

Tirer son épingle du jeu ?

 

J'ai créé ce blog maintenant que ma formation touche à sa fin pour partager mon travail sur deux projets importants cuisinés au petits oignons dans notre chère école (des contraintes donc, normal...) et par nos esprits (plus ouverts ?), puis à l'occasion d'autres projets personnels.

Ce sera l'occasion pour vous, malgré le fait que je ne me prétend pas l'âme d'un rédacteur, de suivre les différentes phases qui ont amené ces projets à aboutir.
C'est également pour moi l'occasion d'exposer aux regards extérieurs des choix de création, des orientations qui j'espère remporteront le succès.

Soit, bon c'est pas tout mais il faut le faire démarrer ce blog maintenant !

 

 

Archives

Favoris