vendredi 7 octobre 2016

[Unity3D][Guide] Une minimap pas trop compliquée

Depuis quelque jours je touche pas mal à Unity3D, ce moteur de jeu gratuit et assez complet qui permet de faire pas mal de choses même pour un néophyte en matière de développement de jeux-vidéo. Ma dernière lubie, faire un système de minimap pour n'importe quel type de jeu.

Après plusieurs recherches et essai, j'ai fini par parvenir à réaliser quelque chose de plutôt simple, mais mine de rien assez efficace, qui nous donne quelque chose comme ça à la fin:


Rendu final


Si vous êtes intéressés et voulez en faire une vous même et n'avez aucune idée de comment faire, je vais vous exposer ici la méthode que j'ai employée, d'abord dans les grandes lignes pour vous expliquer l'idée puis de manière plus poussée. Gardez cependant en tête que ce n'est peut être pas la méthode parfaite et que plus tard vous voudrez peut être passer à quelque chose de plus poussé.
En attendant, prenez vos plus beaux habits de développeurs, remontez vos manches, attachez vos  bretelles, rentrez les chevaux, et suivez le guide! ;)


mercredi 21 septembre 2016

[Rust] Essai de contribution au workshop - Textures

Alors, en ce moment, je suis plutôt accro à Rust. Pour ceux qui ne connaissent pas c'est un jeu de survie contre l'environnement et les joueurs, dans un univers post-apocalyptique. Voici un lien vers le site officiel si vous voulez plus d'informations: https://playrust.com/

Mais quel rapport avec le blog me direz vous ? Et bien en fait j'ai découvert récemment que le jeu possédait un workshop sous steam et qu'il était donc possible de contribuer à l'expansion du jeu via leur SDK fonctionnant sous Unity3D. Pour l'instant rien de très folichon puisqu'il s'agit exclusivement de skin pour les objets, mais qu'importe, l'idée m'est vite venue de tester et d'apporter ma propre contribution, de manière très humble bien sûr, mais je voulais appréhender le fonctionnement de ce workshop.

Premier esssai

Pour ma première participation rien de bien sorcier, un simple skin de t-shirt à manche longue, unicolore, avec un meme sur ma pire hantise de ce jeu: les OURS. Comme vous le pouvez voir, c'est plutôt (carrément) moche, et ça ne colle pas vraiment avec l'esprit "rusty" du jeu. Mais faire une texture n'est pas si facile, en effet il faut pouvoir trouver sur un fichier image plat (.tga) où se situent les manches le devant, le derrière etc. afin de pouvoir placer nos différents composants et que le t-shirt ressemble à quelque chose. Un fichier de base est bien sûr fourni, mais lorsque l'on débute et que l'on ne connais en plus rien à Gimp, ça n'est pas évident. Mais l'expérience fut tout de même enrichissante.


Une semaine et des broutilles plus tard, et quelques mises à jour du jeu plus loin, je décide de retenter l'expérience. Cette fois ci je remarque qu'il est possible de faire des skins pour le marteau. En une seconde l'idée de faire un marteau ressemblant au marteau de Thor, le dieu Nordique, me vient à l'esprit. Me voilà donc avec mon objet créé, et une envie forte d'aller au bout. Mais le premier problème m'est venu très vite: le fichier de texture fourni n'a quasiment pas de formes, impossible de discerner les différentes faces du marteau. Alors comment dessiner le motif sans trop tatonner ?

Après quelques recherche je découvre le système de normal map ou bump map. Sans rentrer dans les détails, lorsqu'un objet est modélisé en 3d, le modeleur peut en créer la normal map, qui est en fait l'objet "mis à plat" sur lequel on distingue les différentes faces dudit objet. Et c'est à partir de ce fichier la que les textures peuvent être créées, il suffit de dessiner sur les faces. Bien sûr je simplifie énormément mais l'idée est là. Pour vous donner un exemple voici une normal map vierge du hammer.

Normal map Marteau
On peut ici distinguer les 6 faces du marteau ainsi que le manche. Grâce à ça j'ai su où dessiner pour que la texture s'affiche correctement. Armé de patience et du logiciel Gimp, j'ai pu, lentement, mais surement, créer un semblant de marteau. La partie la plus compliquée aura été le manche, faire du bois, et une apparence de métal, avec les motifs propre au marteau de Thor que l'on connait bien, la tâche fut dure et longue. Pour le reste un simple aspect métallisé, et deux motifs celtiques ont permis de rendre au marteau un aspect proche de celui attendu. Après près de trois longues heures de travail, le fichier de texture ressemblait à ça:
La texture finale

Vous pouvez voir que je n'ai pas exactement respecté les faces mais l'idée de base est là et le rendu collait parfaitement. Il ne manquait plus qu'une touche finale: lui donner un aspect vieux et poussiéreux. Pour ce faire, j'ai rajouté deux calques de textures trouvées sur internet, que j'ai simplement superposés au fichier. Et pour le rendu final le voici:

Marteau final






Le résultat reste assez proche de ce que j'avais en tête même si bien sûr il est loin d'être parfait.

Pour conclure cet article je dirais que je suis plutôt content de cette expérience, car j'ai pu découvrir de nouvelles choses, à savoir le normal mapping, et l'utilisation de Gimp de manière plus poussée, tout en pouvant contribuer à "l'avancement" d'un jeu sur lequel je passe énormément de temps en ce moment, avec un résultat peut être pas parfait mais somme toute assez appréciable. Si le design vous plait vous pouvez voter pour qu'il soit accepté en jeu en cliquant ici .



Sur ces mots je vous laisse pour l'instant, mais je reviens vers vous très vite avec de nouveaux articles et expériences. N'hésitez pas à jeter un oeil au workshop si cela vous intéresse, à essayer par vous même, ou simplement à réagir, me donner des conseils ou poser vos questions.

mardi 20 septembre 2016

Reprise, de zéro

Bonjour à tous.

Après près de trois années sans aucune nouvelles, je reprends enfin ce blog en main, ainsi que plusieurs projets qui me tiennent à cœur. Je ne m'étendrais pas sur les raisons de mon absence, elles sont diverses et hors sujet, sachez simplement que je reprends l'écriture et le développement avec plus de motivation et surtout d'expérience qu'auparavant.

Les plus observateurs d'entre vous l'auront remarqué, les anciens articles ne sont plus disponibles. Je compte repartir à zéro, faire table rase du passé et reprendre sur un bon pied. Pour l'avenir j'exposerai régulièrement mes avancées, sous forme d'articles, plus ou moins détaillées, mais qui vous permettront au moins de suivre mon avancement. Je commence dès à présent un nouveau projet dont je vous exposerai les tenants et aboutissants des demain, et qui servira de fil rouge pour ce blog. Mais vous verrez aussi apparaître sporadiquement des articles sur des nouvelles technologies, des choses que j'ai essayé qui m'ont plu ou non ainsi que des démonstration sur ce que j'aurais réussi à faire avec. Rien de bien fou mais cela me permettra de partager mon ressenti et peut être de vous faire découvrir de nouvelles choses.

Merci à tous ceux qui auront lu ceci, et à tout ceux qui me suivent depuis le début.
A très vite donc,

--
Macmist