{"id":2543,"date":"2020-12-31T09:34:28","date_gmt":"2020-12-31T08:34:28","guid":{"rendered":"http:\/\/myrdil.com\/?p=2543"},"modified":"2020-12-31T10:00:46","modified_gmt":"2020-12-31T09:00:46","slug":"gameinstance","status":"publish","type":"post","link":"https:\/\/myrdil.com\/?p=2543","title":{"rendered":"GameInstance"},"content":{"rendered":"<p>Je me demandais depuis fort longtemps comment acc\u00e9der \u00e0 l&#8217;objet qu&#8217;\u00e9tait le <em>Module<\/em> sous Neverwinter Nights, soit l&#8217;objet le plus bas niveau dont d\u00e9pendent tous les autres objets du jeu. C&#8217;est l\u00e0 que je stockais toutes mes variables globales, accessibles directement par un <em>GetModule<\/em> depuis n&#8217;importe quel script.<br \/>\nC&#8217;\u00e9tait pour moi une pi\u00e8ce essentielle du puzzle car comment acc\u00e9der, par exemple, \u00e0 des timers de sauvegarde automatique d&#8217;informations ind\u00e9pendantes des levels ou stocker les donn\u00e9es vitales du joueur quand il change de level ?<br \/>\nJ&#8217;avais le <em>GameMode<\/em>, mais il semble qu&#8217;il change \u00e9galement avec les levels.<\/p>\n<p>J&#8217;ai obtenu une r\u00e9ponse \u00e0 cette question en regardant par hasard <a href=\"https:\/\/www.youtube.com\/watch?v=QcXHEsR0xHI\">une vid\u00e9o d&#8217;Underscore<\/a> expliquant la fonction de tous les objets standards d&#8217;Unreal Engine.<br \/>\nJ&#8217;y ai d\u00e9couvert le GameInstance, d\u00e9fini par la derni\u00e8re ligne des Maps &amp; Modes des Project Settings, qui est exactement ce qu&#8217;\u00e9tait le Module de NWN ; je n&#8217;y avais jamais fait attention et je n&#8217;en avais jamais entendu parler.<\/p>\n<p>Le GameInstance va me permettre, je l&#8217;esp\u00e8re, d&#8217;\u00e9mettre depuis n&#8217;importe quel objet des Event Dispatchers qui seront re\u00e7us et trait\u00e9s o\u00f9 que chaque joueur se trouve. J&#8217;imagine que c&#8217;est ainsi que je pourrai impl\u00e9menter un chat, je verrai bien quand j&#8217;y serai.<\/p>\n<p>Ayant d\u00e9cid\u00e9 de consacrer mes vacances \u00e0 ma famille, je n&#8217;ai plus gu\u00e8re le temps que de regarder une vid\u00e9o de temps en temps alors que j&#8217;escomptais me consacrer \u00e0 Althea pendant ces 15 jours. Mon fils quittera bient\u00f4t la maison familiale, ce n&#8217;est pas alors que je pourrai passer du temps avec lui. Question de choix.<\/p>\n<p>P.S. : la r\u00e9ponse \u00e0 la question du 24 d\u00e9cembre est : &#8220;un PC&#8221;. Mon fils a re\u00e7u toutes les pi\u00e8ces d&#8217;un nouveau PC que nous avons mont\u00e9 ensemble le 25. Il passe \u00e0 un 6 c\u0153urs 12 threads avec 16 Go de RAM ; maintenant sa machine est limit\u00e9e par sa carte graphique &#8211; qui lui donne encore plus de 60 FPS dans tous les jeux et a donc encore de beaux jours devant elle &#8211; et non plus par son vieux processeur i5 \u00e0 deux c\u0153urs et 8Go RAM.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Je me demandais depuis fort longtemps comment acc\u00e9der \u00e0 l&#8217;objet qu&#8217;\u00e9tait le Module sous Neverwinter Nights, soit l&#8217;objet le plus bas niveau dont d\u00e9pendent tous les autres objets du jeu. C&#8217;est l\u00e0 que je stockais toutes mes variables globales, accessibles &hellip; <a href=\"https:\/\/myrdil.com\/?p=2543\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/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-2543","post","type-post","status-publish","format-standard","hentry","category-news"],"_links":{"self":[{"href":"https:\/\/myrdil.com\/index.php?rest_route=\/wp\/v2\/posts\/2543","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=2543"}],"version-history":[{"count":0,"href":"https:\/\/myrdil.com\/index.php?rest_route=\/wp\/v2\/posts\/2543\/revisions"}],"wp:attachment":[{"href":"https:\/\/myrdil.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2543"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/myrdil.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=2543"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/myrdil.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=2543"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}