{"id":233,"date":"2014-03-19T12:56:01","date_gmt":"2014-03-19T11:56:01","guid":{"rendered":"http:\/\/www.uncovergame.com\/?p=233"},"modified":"2014-06-19T19:59:55","modified_gmt":"2014-06-19T18:59:55","slug":"create-a-gameplay-video-with-apitrace","status":"publish","type":"post","link":"https:\/\/uncovergame.com\/fr\/2014\/03\/19\/create-a-gameplay-video-with-apitrace\/","title":{"rendered":"(1\/2) Cr\u00e9er une vid\u00e9o de gameplay : utilisation d&rsquo;apitrace"},"content":{"rendered":"<p>Un petit post pour expliquer l&rsquo;utilisation de apitrace pour capturer des vid\u00e9os de gameplay, l&rsquo;id\u00e9e vient de ce post: <a href=\"http:\/\/kivy.org\/planet\/2011\/06\/recording-opengl-output-to-h264-video\/\" target=\"_blank\">http:\/\/kivy.org\/planet\/2011\/06\/recording-opengl-output-to-h264-video\/<\/a><\/p>\n<h4><strong>Pourquoi utiliser apitrace plut\u00f4t que des logiciels tels que FRAPS ?<\/strong><\/h4>\n<p style=\"text-align: justify;\">FRAPS et autre logiciels ont tendance \u00e0 rendre compliquer la capture de s\u00e9quence de gameplay en haute qualit\u00e9, mon objectif \u00e9tait aussi de pouvoir capturer des s\u00e9quences sans avoir besoin de logiciels payant, ou d&rsquo;un ordinateur plus puissant.<\/p>\n<p style=\"text-align: justify;\">Un autre probl\u00e8me de FRAPS est par d\u00e9faut le manque de fid\u00e9lit\u00e9 des couleurs (il existe une option pour changer cela, mais au prix d&rsquo;encore plus de puissance, surtout pour capturer un jeu en 60 fps) et l&rsquo;algorithme de compression qui r\u00e9duit la qualit\u00e9 finale de la capture. Vu que Reckpunk est un jeu dont les graphismes repose sur un style avec des bordure de 1 pixel, le r\u00e9sultat avec FRAPS ou PlayClaw est plut\u00f4t mauvais, ce qui m&rsquo;as pouss\u00e9 \u00e0 chercher comment capturer des s\u00e9quences de gameplay sous forme de fichiers png.<\/p>\n<h4><strong>A propos de apitrace<\/strong><\/h4>\n<p>Je reprend ici la description du <a href=\"http:\/\/apitrace.github.io\/\" target=\"_blank\">site officiel<\/a> :<\/p>\n<p>apitrace est un ensemble d&rsquo;outils pour:<\/p>\n<ul>\n<li>enregistrer des appel aux API OpenGL, OpenGL ES, D3D et DDraw dans un fichier<\/li>\n<li>rejouer les appel aux API depuis un fichier, sur n&rsquo;importe quelle machine, et pour OpenGL et OpenGL ES, sur n&rsquo;importe quel syst\u00e8me d&rsquo;exploitation.<\/li>\n<\/ul>\n<p style=\"text-align: justify;\">En r\u00e9sum\u00e9, il faut cr\u00e9er tout d&rsquo;abord un fichier trace, et puis le rejouer pour g\u00e9n\u00e9rer des images png pour chaque frames, que nous pouvons ensuite joindre dans une vid\u00e9o via un logiciel comme <a href=\"http:\/\/www.virtualdub.org\/\" target=\"_blank\">Virtual dub<\/a><\/p>\n<h4><strong>Comment capturer une s\u00e9quence de gameplay<\/strong><\/h4>\n<p style=\"text-align: justify;\">Tout d&rsquo;abord, t\u00e9l\u00e9chargez apitrace depuis le site officiel, <a href=\"http:\/\/apitrace.github.io\/\">http:\/\/apitrace.github.io\/<\/a>\u00a0 Dans le r\u00e9pertoire bin, nous retrouvons divers programmes, apitrace et glretrace sont les seuls que nous allons utiliser.<\/p>\n<p>R\u00e9aliser la capture:<\/p>\n<p><code>apitrace trace [chemin vers l'ex\u00e9cutable]<\/code><\/p>\n<p>Cela g\u00e9n\u00e8re un fichier trace dans le r\u00e9pertoire courant, avec le m\u00eame nom que l&rsquo;ex\u00e9cutable.<\/p>\n<p>G\u00e9n\u00e9rer une s\u00e9quence de fichiers png:<\/p>\n<p><code>glretrace -sr [chemin vers le fichier trace] --call-nos=false --snapshot-format=RGB<\/code><\/p>\n<p style=\"text-align: justify;\">cela g\u00e9n\u00e8re un fichier png pour chaque frames, et les stockent dans l&rsquo;ordre (avec l&rsquo;option &#8211;call-nos=false, par d\u00e9faut, le nom du fichier utilise un nombre g\u00e9n\u00e9r\u00e9, ce que l&rsquo;on ne veut pas ici)<\/p>\n<h4><strong>Cr\u00e9er un fichier vid\u00e9o<\/strong><\/h4>\n<p style=\"text-align: justify;\">Chargez le premier fichier png de la s\u00e9quence avec Virtual dub, les fichiers \u00e9tant dans l&rsquo;ordre, Virtual dub va automatiquement importer l&rsquo;ensemble de la s\u00e9quence. Nous pouvons \u00e9galement s\u00e9lectionner une image au milieu de la s\u00e9quence, Virtual dub chargera alors uniquement les fichiers qui suivent l&rsquo;image s\u00e9lectionn\u00e9e.<\/p>\n<p>N&rsquo;oubliez pas de changer le framerate source, dans video>framerate dans source rate, mettre la valeur 60 (si votre jeu tourne \u00e0 60 fps).<\/p>\n<p>Si vous voulez g\u00e9n\u00e9rer un fichier gif, il faut utiliser la conversion de framerate, juste au dessous. une valeur de 30 dans convert fps fonctionne plut\u00f4t bien, vous pouvez aussi utiliser l&rsquo;option \u00ab\u00a0Process every other frame (decimate by 2)\u00a0\u00bb ( le r\u00e9sultat est relativement similaire, \u00e0 tester si la premi\u00e8re option ne donne pas un r\u00e9sultat fluide).<\/p>\n<p>Si vous ne voulez qu&rsquo;une partie de l&rsquo;image, utiliser le filtre null transform pour rogner le r\u00e9sultat final (plut\u00f4t utile pour limiter la taille d&rsquo;un gif).<\/p>\n<p>Exportez en avi, et nous avons votre vid\u00e9o avec une excellent fluidit\u00e9 ! Avec les param\u00e8tres par d\u00e9faut, le r\u00e9sultat final reste plut\u00f4t moyen niveau qualit\u00e9 de rendu. La prochaine fois, j&rsquo;aborderai la partie concernant la g\u00e9n\u00e9ration d&rsquo;une vid\u00e9o HD depuis notre s\u00e9quence de gameplay.<\/p>","protected":false},"excerpt":{"rendered":"<p>Un petit post pour expliquer l&rsquo;utilisation de apitrace pour capturer des vid\u00e9os de gameplay, l&rsquo;id\u00e9e vient de ce post: http:\/\/kivy.org\/planet\/2011\/06\/recording-opengl-output-to-h264-video\/ Pourquoi utiliser apitrace plut\u00f4t que des logiciels tels que FRAPS ? FRAPS et autre logiciels ont tendance \u00e0 rendre compliquer &hellip; <a href=\"https:\/\/uncovergame.com\/fr\/2014\/03\/19\/create-a-gameplay-video-with-apitrace\/\">Continuer la lecture <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":[],"categories":[4],"tags":[],"_links":{"self":[{"href":"https:\/\/uncovergame.com\/fr\/wp-json\/wp\/v2\/posts\/233"}],"collection":[{"href":"https:\/\/uncovergame.com\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/uncovergame.com\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/uncovergame.com\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/uncovergame.com\/fr\/wp-json\/wp\/v2\/comments?post=233"}],"version-history":[{"count":10,"href":"https:\/\/uncovergame.com\/fr\/wp-json\/wp\/v2\/posts\/233\/revisions"}],"predecessor-version":[{"id":259,"href":"https:\/\/uncovergame.com\/fr\/wp-json\/wp\/v2\/posts\/233\/revisions\/259"}],"wp:attachment":[{"href":"https:\/\/uncovergame.com\/fr\/wp-json\/wp\/v2\/media?parent=233"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/uncovergame.com\/fr\/wp-json\/wp\/v2\/categories?post=233"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/uncovergame.com\/fr\/wp-json\/wp\/v2\/tags?post=233"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}