{"id":263828,"date":"2017-08-01T17:03:00","date_gmt":"2017-08-01T15:03:00","guid":{"rendered":"https:\/\/cms.galaxiemedia.fr\/tomshardware\/2017\/08\/01\/ubershaders-emuler-un-gpu-sur-un-autre-gpu-pour-faire-tourner-un-jeu-gamecube\/"},"modified":"2023-09-20T14:08:11","modified_gmt":"2023-09-20T12:08:11","slug":"ubershaders-emuler-un-gpu-sur-un-autre-gpu-pour-faire-tourner-un-jeu-gamecube","status":"publish","type":"post","link":"https:\/\/www.tomshardware.fr\/ubershaders-emuler-un-gpu-sur-un-autre-gpu-pour-faire-tourner-un-jeu-gamecube\/","title":{"rendered":"Ubershaders : \u00e9muler un GPU sur un autre GPU pour faire tourner un jeu GameCube"},"content":{"rendered":"

\"ImageUbershaders<\/span><\/span><\/span><\/span><\/span>Le projet Dolphin<\/strong>, l\u2019\u00e9mulateur pour GameCube et Wii, a publi\u00e9 une note<\/a> fascinante expliquant comment leurs d\u00e9veloppeurs ont r\u00e9solu un probl\u00e8me extr\u00eamement complexe r\u00e9pondant au nom de Shader Compilation Stuttering (saccade de la compilation du shader). Pour arriver \u00e0 leurs fins, ils ont d\u00e9cid\u00e9 d\u2019\u00e9muler compl\u00e8tement le pipeline du GPU Flipper de la GameCube ou Hollywood de la Wii, les deux puces \u00e9tant extr\u00eamement similaires, gr\u00e2ce \u00e0 des Ubershaders<\/strong>.<\/p>\n

\n\n\n
\u00c0 lire aussi :<\/strong>
Comparatif : les cartes graphiques du moment au banc d\u2019essai<\/a><\/td>\n<\/tr>\n<\/tbody>\n<\/table><\/div>\n

Transformer son PC en console<\/h3>\n

Sur un jeu PC devant tourner sur de nombreuses configurations diff\u00e9rentes, les shaders, ces programmes tournant sur les GPU, sont compil\u00e9s par les pilotes lors des \u00e9crans de chargements, pour que l\u2019op\u00e9ration ne plombe pas les performances. Or, sur une console avec un hardware fixe, il est possible de livrer des shaders pr\u00e9compil\u00e9s, ce qui \u00e9tait souvent le cas pour les deux consoles de Nintendo qui avaient peu de VRAM<\/strong>. C\u2019est tout de m\u00eame un gros probl\u00e8me pour l\u2019\u00e9mulateur qui doit les recompiler \u00e0 la vol\u00e9e lors du rendu de certaines sc\u00e8nes pour s\u2019adapter au GPU du PC, ce qui provoque souvent des saccades autrement nomm\u00e9es Shader Compilation Stuttering.<\/p>\n

Ubershaders<\/h3>\n

Les d\u00e9veloppeurs ont donc finalement d\u00e9cid\u00e9, apr\u00e8s plusieurs ann\u00e9es de r\u00e9flexion, d\u2019\u00e9muler le pipeline du GPU de la console lui-m\u00eame gr\u00e2ce \u00e0 de tr\u00e8s gros shaders flexibles, d\u2019o\u00f9 le nom de Ubershader<\/strong>. Le grand avantage de cette solution est de compl\u00e8tement r\u00e9soudre les probl\u00e8mes de saccades en offrant une solution adapt\u00e9e aux jeux \u00e9mul\u00e9s. Le probl\u00e8me est qu\u2019elle demande des ressources importantes. Utiliser un IGP requiert donc le plus souvent de r\u00e9duire la d\u00e9finition pour assurer un taux d\u2019image par seconde correcte.<\/p>\n