{"id":3149,"date":"2021-10-24T11:53:36","date_gmt":"2021-10-24T09:53:36","guid":{"rendered":"http:\/\/myrdil.com\/?p=3149"},"modified":"2021-10-29T13:37:07","modified_gmt":"2021-10-29T11:37:07","slug":"article-essentiel-je-my-suis-mal-pris","status":"publish","type":"post","link":"https:\/\/myrdil.com\/?p=3149","title":{"rendered":"Article essentiel : je m&#8217;y suis mal pris !"},"content":{"rendered":"<p>Comme je suis dans une phase transitoire dans le d\u00e9veloppement, il \u00e9tait opportun de r\u00e9fl\u00e9chir sur la premi\u00e8re ann\u00e9e de travail sous Unreal Engine.<\/p>\n<p><!--more--><\/p>\n<ol>\n<li>Unreal Engine est le bon choix, c&#8217;est un avis muri et sans appel. Je ne reviendrai pas \u00e0 NWN et au moteur Aurora, je passais plus de temps \u00e0 me battre avec le moteur qu&#8217;\u00e0 produire du contenu, ce qui explique que la version 3 d&#8217;Althea, qui m&#8217;a pourtant demand\u00e9 beaucoup de travail, n&#8217;a pas apport\u00e9 le lot de nouveaut\u00e9s et d&#8217;excitation que j&#8217;aurais voulu. Je me suis perdu en d\u00e9tails pour un rendement insignifiant, emp\u00eatr\u00e9 dans des impossibilit\u00e9s techniques que je n&#8217;ai pu surmonter.<\/li>\n<li>C&#8217;est une bonne chose d&#8217;avoir suspendu le d\u00e9veloppement quelques mois, j&#8217;ai pu prendre du recul. Je me suis rendu compte que le foisonnement de branches dans le d\u00e9veloppement m&#8217;a \u00e9gar\u00e9 dans une multitude de domaines o\u00f9 il m&#8217;est interdit de m&#8217;attarder sous peine de ne jamais arriver \u00e0 terminer le projet. Conception 3D, UV mapping, texturage, mat\u00e9riaux, squelettes, animations, conception de paysages, mod\u00e8le physique des v\u00eatements, conception des syst\u00e8mes de jeu, programmation de l&#8217;interface, programmation multi-joueurs, effets sp\u00e9ciaux, programmation des qu\u00eates, gestion des bases de donn\u00e9es et j&#8217;en passe : autant de m\u00e9tiers que je dois assumer seul et qui justifient des \u00e9quipes de d\u00e9veloppement de nombreux professionnels. Je dois me contenter de prototyper le jeu, soit obtenir une version jouable sans me soucier que les joueurs laissent derri\u00e8re eux des traces dans la neige en hiver !<\/li>\n<li>L&#8217;exemple de ce qu&#8217;il ne faut pas faire m&#8217;est fourni par la taverne, au demeurant magnifique. J&#8217;ai utilis\u00e9 pour les murs un pack offert par Epic. Superbe travail, mais il n&#8217;est pas possible de &#8216;snaper&#8217; ces murs, soit les aligner automatiquement sans interstices. J&#8217;ai donc obtenu une illumination fantaisiste de la taverne avec de la lumi\u00e8re qui vient je ne sais pas d&#8217;o\u00f9. J&#8217;ai donc \u00e9t\u00e9 contraint de r\u00e9aliser dans Blender un coffrage qui enserre le b\u00e2timent et emp\u00eache la lumi\u00e8re d&#8217;y p\u00e9n\u00e9trer. Parfait sauf que quoi que je fasse, \u00e0 une certaine orientation de cam\u00e9ra, on voit le coffrage \u00e0 travers le toit.<br \/>\n\u00c7a, c&#8217;est un premier probl\u00e8me. Un second vient des packs offerts ou que j&#8217;ai achet\u00e9s de magnifiques mod\u00e8les de tables, de chaises, de luminaires et de garnitures diverses. Les artistes qui les ont r\u00e9alis\u00e9s se foutent comme de l&#8217;an 40 que leurs cr\u00e9ations assassinent le processeur graphique : cartes de 4096&#215;4096 pour la couleur, l&#8217;occlusion, la roughness et les normales dans des mat\u00e9riaux de 400 instructions pour une bouteille de 20 centim\u00e8tres de haut ! Ah, la bouteille est belle ! mais ces concepteurs illustrent parfaitement ce qui me rend furieux depuis maintenant des d\u00e9cennies, et qui m&#8217;a d&#8217;ailleurs fait claquer la porte d&#8217;Althea 2 : les gens qui travaillent dans l&#8217;informatique n&#8217;ont aucune conscience de la finalit\u00e9 de leur cr\u00e9ation et de ce que leurs clients attendent r\u00e9ellement : ils se regardent le nombril et se font plaisir au m\u00e9pris de ceux qui doivent se d\u00e9merder avec leurs d\u00e9lires.<\/li>\n<li>J&#8217;ai r\u00e9solu de tout cr\u00e9er moi-m\u00eame : mod\u00e8les, mat\u00e9riaux et programmation, sans me laisser berner par l&#8217;illusion de facilit\u00e9 des packs tout faits qui ne font que me retarder. J&#8217;utilise \u00e7a et l\u00e0 des mod\u00e8les bien con\u00e7us et, surtout, avec des UV maps parfaites, une des parties les plus contrariantes de la conception 3D. Pour la taverne, par exemple, j&#8217;utilise une et une seule texture de bois, pour le plancher, les colombages, les meubles, bref, tout ce qui est en bois. Cette texture de bois unique est utilis\u00e9e dans un seul mat\u00e9riau, avec des param\u00e8tres pour les variations de couleurs, de taille, d&#8217;orientation, de normales, etc.<br \/>\nCette m\u00e9thode sera appliqu\u00e9e \u00e0 tout le jeu pour limiter cartes de textures et mat\u00e9riaux.<br \/>\nPour l&#8217;instant, quand je tourne le dos \u00e0 la taverne j&#8217;ai 120 FPS, soit le maximum, et quand je me retourne \u00e7a tombe \u00e0 30 avec la RTX3080 la plus performante du march\u00e9. Faut pas pousser !<\/li>\n<li>UE5 est d\u00e9cevant. La partie Nanite, qui permet une infinit\u00e9 de polygones dans les mod\u00e8les, est r\u00e9volutionnaire. La partie Lumen, par contre, est inutilisable. L&#8217;illumination globale en temps r\u00e9el n&#8217;est pas r\u00e9alisable dans le pipeline global des GPU avec les performances des cartes actuelles. J&#8217;ai confiance en la capacit\u00e9 d&#8217;Epic de sortir un lapin d&#8217;un chapeau mais je ne cache pas mes inqui\u00e9tudes, car si Lumen ne progresse pas, UE5 ne sera pas utilisable dans un jeu de qualit\u00e9 photographique, il faudra se contenter d&#8217;un horrible look manga fa\u00e7on Fortnite \u00e0 c\u00f4t\u00e9 duquel je pr\u00e9f\u00e8re encore NWN premier du nom. Dois-je revenir \u00e0 UE4 ? Myst\u00e8re et boules de gomme&#8230; UE4 marche bien mais sans Nanite je dois \u00e0 nouveau me soucier du nombre de polygones et des cartes de normales de mes mod\u00e8les et sans Lumen je dois recompiler les cartes d&#8217;\u00e9clairage chaque fois que j&#8217;ajoute une source lumineuse, perte de temps \u00e9norme. La question reste en suspens, ils avaient d\u00e9cid\u00e9 de passer Fortnite sur UE5 et voil\u00e0 deux saisons qu&#8217;ils reportent, je vais devoir m&#8217;informer et prendre bient\u00f4t une d\u00e9cision.<\/li>\n<li>Comme souvent pour toute activit\u00e9 qui demande une d\u00e9bauche d&#8217;\u00e9nergie, s&#8217;arr\u00eater signifie souvent la mort du projet. Althea ne mourra pas dans l\u2019\u0153uf pour la simple raison qu&#8217;il m&#8217;est impossible d&#8217;arr\u00eater. En d&#8217;autres termes, il me sera plus facile de me relancer dans le chantier que d&#8217;en faire mon deuil.<\/li>\n<\/ol>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Comme je suis dans une phase transitoire dans le d\u00e9veloppement, il \u00e9tait opportun de r\u00e9fl\u00e9chir sur la premi\u00e8re ann\u00e9e de travail sous Unreal Engine.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-3149","post","type-post","status-publish","format-standard","hentry","category-news"],"_links":{"self":[{"href":"https:\/\/myrdil.com\/index.php?rest_route=\/wp\/v2\/posts\/3149","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/myrdil.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/myrdil.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/myrdil.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/myrdil.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=3149"}],"version-history":[{"count":0,"href":"https:\/\/myrdil.com\/index.php?rest_route=\/wp\/v2\/posts\/3149\/revisions"}],"wp:attachment":[{"href":"https:\/\/myrdil.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=3149"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/myrdil.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=3149"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/myrdil.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=3149"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}