La minimap est terminée, ainsi que la carte principale. C’est au stade de prototype, soit bien moche, mais fonctionnel.
Je m’attaque donc, avant l’inventaire, livre et barre de sorts et autres éléments d’interface, à un problème qui me taraude depuis longtemps : les armures.
Changer une pièce d’armure pour une autre est la base d’un jeu médiéval. C’est un processus extrêmement simple dans Unreal, pour autant qu’il soit possible de mettre la main sur l’information.
Des dizaines de vidéos circulent, pour un trouver une seule correcte j’y aurai passé une journée entière.
Là, je tiens un bout de laine qui semble mener à la pelote et je tire, je tire, je tire…
Monthly Archives: November 2020
Un peu vert, quand même
J’en suis à la troisième vidéo de création de minimap, réalisée par Ryan Laley, qui a pourtant l’air de connaître son affaire, et je tombe sur des choses suspectes : placer un délai à l’initialisation d’un élément d’interface pour être sûr que son parent a bien été créé avant lui, opérer des calculs avec des valeurs fixes au lieu d’aller rechercher ces valeurs dans les objets concernés ou encore placer des opérations complexes dans le Tick d’un objet, soit la meilleure manière de saturer un CPU…
Le problème, c’est que je n’ai pas le choix. Epic avait publié un projet gratuit qui gérait toutes les opérations d’une minimap mais il ne comporte aucun commentaire – bonjour pour comprendre comment tous les petits bouts de blueprints s’articulent – et il est outdated. Donc, je dois bien me rabattre sur un tutoriel de la communauté ce qui me permet de comprendre, et donc apprendre, des concepts au fur et à mesure que je suis les vidéos. Seulement voilà, en un mot comme en cent, c’est de la merde.
Je dois donc faire exactement comme Ryan, sachant que je devrai rectifier ses erreurs une fois que j’aurai tout terminé.
J’ai commencé à programmer des ordinateurs en 1980 et, depuis, j’ai tellement rarement lu un code écrit selon les règles de l’art et correctement commenté, que j’en suis – depuis longtemps – arrivé à la conclusion que les informaticiens sont d’infects bricoleurs. Un peu comme les dentistes. Ou les avocats. Ou presque toutes les professions, en fait. Tu dois en essayer dix pour trouver un bon, ce qui est fâcheux en ce qui concerne les dentistes, et je sais de quoi je parle !
Ce qui me permet, plaisir non dissimulé, de rappeler que les musiciens, eux, n’ont pas droit au luxe de la médiocrité. Si ta note ne sort pas au bon moment ou n’est pas juste, tout le monde l’entend et tu passes pour un con, sans appel. Et ça aussi j’en parle en connaissance de cause. Si TooLs était encore dans le coin, il ne pourrait qu’approuver.
Ca peut paraître con
Mais je travaille sur la minimap.
Terminé le temps béni où Neverwinter Nights faisait tout le boulot, maintenant je dois tout faire moi-même !
Pour créer une minimap, je dois me farcir cinq tutoriels de trente minutes. Bon, évidemment, c’est de la minimap de course, où je pourrai afficher tout ce que je veux comme je le veux, mais c’est du boulot.
Un boulot qui chaque fois me fait progresser dans ma compréhension d’Unreal.
De toutes façons, j’ai le temps, je ne peux pas terminer la carte de Syrthe car j’attends la version 4.26 qui offre des possibilités de création de meshes directement dans l’éditeur sans passer par Blender. J’ai un peu testé sur la version preview 5 de la 4.26 mais j’avoue que je vais attendre un tutoriel un peu mieux construit que ce que j’ai vu jusqu’ici.
J’attends aussi la 4.26 pour des nouveautés très importantes telles que la division en grille des univers vastes – ce qui va je l’espère remplacer la world composition que je déteste – l’eau intégrée au moteur sans recourir à des matériaux externes – lacs, mers et rivières. Je vais aussi commencer à utiliser le plugin Megascan qui permet d’importer directement dans le moteur les objets Megascan, soit ce qu’on fait de mieux dans l’industrie en matière de modèles texturés par des pros en qualité photo-réaliste.
Ca bosse quoi, beaucoup trop lentement à mon goût, mais des choses avancent et, surtout, je n’ai pas encore tout balancé par la fenêtre.