Cloud Gaming
20 mai 2021
Julien Bouvrais
Calcul distribué . GPU . Informatique en nuage

Jeu en infonuagique; présent et futur

Sommes-nous prêts pour la prochaine révolution du jeu vidéo? 

Cloud gaming concept. Gamepad connected to the cloud. Flat style.

 

En juin dernier, nous annoncions la création de notre nouveau studio à Sherbrooke. Nous dévoilions aussi les projets sur lesquels nous allions travailler. C’est plutôt inhabituel pour notre industrie qui a l’habitude de garder un certain niveau de secret sur nos projets en production afin de ménager la surprise. Dans le cas présent en revanche, tout en ne levant pas le voile sur les détails, nous souhaitions afficher clairement nos ambitionsEidos-Sherbrooke est un studio centré sur l’innovation technologique au service des jeux vidéo du futur. En particulier, cet article a pour objectif de présenter nos trois premiers projets technologiques qui sont tous dans le domaine du jeu en infonuagique (Cloud Gaming, en anglais). 

Les différents visages du jeu en infonuagique

Offrir des jeux en infonuagique totalement simulés à distance n’a rien de nouveau. Déjà aujourd’hui on pense au Stadia de Google ou encore au projet xCloud de Microsoft. Mais ces deux géants ne sont pas les premiers à avoir offert cette possibilité. En 2009, OnLiveannonçait la mise en marché d’un service de jeux en infonuagique qui ne nécessitait aucun téléchargement de jeu et qui, encore mieux, promettait de pouvoir jouer à des jeux récents avec une micro-console bon marché, sans investir dans du matériel coûteux. En 2010, Gaikai faisait une démonstration d’une technologie similaire. Un peu plus tard, les deux compagnies sont rachetées par Sony. Gaikai devient PlayStation Now et marque l’arrivée d’un acteur majeur djeu en infonuagique Un changement certes, mais dans la continuité. 

Aujourd’hui, l’offre s’est multipliée. En plus de PlayStation Now, Stadia et xCloud, de nouveaux services ainsi que de nouvelles technologies ont fait leur apparition : GeForce Now (Nvidia), Steam Cloud Play (Valve), Luna (Amazon)ShadowParsec, etc. pour n’en citer que quelques-uns. Tous ces fournisseurs de service et de technologie offrent plus ou moins la même promesse : vous n’avez pas besoin d’une console dernier cri ou d’un PC surpuissant pour jouer aux jeux les plus récents et les plus gourmands en ressources. Le principe est simple, tout ce dont vous avez besoin est un clavier / souris ou une manetteun ordinateur basique ou une micro-console et une bonne (voire très bonne) connexion internet. Les commandes sont envoyées depuis votre manette ou clavier / souris, via internet vers un centre de données à proximité de chez vous, où des serveurs exécutent la simulation de jeu et renvoient la vidéo vers votre écran. L’enjeu n’est plus d’avoir une machine rapide à la maison, mais plutôt une vitesse de connexion rapide et surtout avec peu de latence.  

Aujourd’hui, l’intérêt du jeu en infonuagique est vanté essentiellement pour son côté pratique. A priori, le matériel nécessaire est déjà disponible à la maison, ou est accessible à peu de frais, il n’y a pas de téléchargements, la bibliothèque de jeu est dématérialisée et accessible facilement, etc. Certes, la plateforme Stadia offre, en outre, quelques fonctionnalités à valeur ajoutée (diffusion sur YouTube avec participation des spectateurs et spectatrices, aide dans le jeu grâce à l’assistant Google, etc.). Cela dit, cela ne fait pas une différence majeure et ne semble pas avoir convaincu une proportion significative de joueurs ou joueusesA ce jour, malgré le tour de force technologique accompli, Stadia ne semble pas avoir encore trouvé son public et rallié les joueurs et joueuses au jeu en infonuagique en capitalisant sur ses forces.  

Comme c’est le cas pour toutes les industries créatives, le contenu est l’enjeu déterminantDans le cas de la musique, le public a basculé vers les plateformes de diffusion en direct quand ils y ont trouvé la plupart des artistes qu’ils aiment. Aujourd’hui, la majeure partie des artistes grandpublic se retrouvent sur toutes les plateformes (Apple Music, YouTube Music, Spotify, etc.). Pour le cinéma et la télévision, le marché est beaucoup plus fragmentéNetflix ne dispose pas de toutes les superproductions hollywoodiennes, mais compense avec un contenu exclusif de qualité, développé spécifiquement pour sa plateforme. Disney+ offre un catalogue réduit mais compose avec des franchises exclusives de renom telles Marvel, Star Wars, Pixar, etc. Le jeu vidéo ne fait pas exception. La guerre des consoles que nous vivons depuis plusieurs années s’exprime également à travers le contenu. Pour avoir du succèsune plateforme de jeu doit proposer une offre riche et variée, et également donner accès à des expériences originales qu’on ne retrouve pas chez le concurrent ainsi qu’un catalogue commun bien garni. La technologie n’est pas une fin en soi. Lorsqu’ils prennent leur contrôleur entre les mains, les joueurs et joueuses veulent vivre des expériences immersives qui les transportent dans un autre univers. La technologie n’est qu’un outil. Elle n’est rien sans contenu. 

Des projets ambitieux

Dans ce contexte, on peut se poser la question de l’avenir du jeu en infonuagique? Il est possiblement énorme. Surtout si on se sert du potentiel qu’il offre pour enrichir l’expérience. Il faut, en effet, revenir aux sources de l’expérience que l’on souhaite avoir en tant que joueur ou joueuse. Certes le côté pratique de ne pas avoir à acheter un PC très puissant pour jouer avec la plus belle qualité graphique est « intéressant » mais ce n’est pas un facteur décisionnel majeur. L’opportunité principale est le contenuLes centres de calculs offrent une capacité virtuellement infinie, non seulement parce qu’on peut y héberger des serveurs très puissants, mais surtout parce qu’ils sont tous connectés sur des réseaux locaux ultra-rapides et peuvent donc collaborer pour créer des simulations de jeu uniques. C’est cette force qui séduit et qui incite notre studio à explorer où cela peut mener. Nous pouvons désormais libérer nos créateurs et créatrices de contenu des contraintes liées à la puissance des machines. En outre, l’opportunité d’un environnement de création de contenu décentralisé permettra à terme aux talents de collaborer plus facilement et, qui sait, peut-être même d’ouvrir plus facilement nos outils de création aux joueurs et joueuses. 

Nous avons donc annoncé 3 projets technologiques qui dépendent de la puissance de calcul offerte dans les centres de calcul. Chacun l’exploite à sa manière. 

Géo-morphing en temps réel 

Le projet de o-morphing en temps réel se penche sur toutes les transformations du monde qui sont aujourd’hui trop coûteuses à simuler sur une simple machine. Bien sûr, au fur et à mesure que la puissance des machines augmente, la complexité des algorithmes qu’elles peuvent exécuter accroit également. Cela dit, notre but est bel et bien de viser les transformations qui sont beaucoup trop gourmandes pour une console ou un PC récent et pouvoir les offrir aux joueurs et joueuses sur ces mêmes machines. Les premiers exemples qui viennent en tête tournent autour de la simulation de la physique dans les jeux vidéo. Nous avons fait des pas de géant autour de la physique dans les jeux ces dernières années. Lorsque je travaillais sur Speed Devils Online Racing en 2000, c’était déjà tout un exploit de pouvoir se permettre quelques collisions rigides entre les véhicules et des objets inanimés au bord de la route sur une console Dreamcast. Aujourd’hui, tout explose partout dans les jeux vidéola destruction massive d’objets et les effets visuels sont omniprésents. Mais encore aujourd’hui, cette destruction impacte minimalement l’expérience de jeu et on est loin d’avoir le budget CPU pour exécuter des simulations d’objets mous ou de fluide ayant une incidence sur le déroulement du jeu.  

À travers ce projet, nous pouvons imaginer que nous allons simuler la majeure partie du jeu localement (sur une console ou un PC) comme nous le faisons en ce moment, et délester la machine locale des opérations complexes en les exécutant sur des serveurs distants. Ces algorithmes répliquant des principes physiques réalistes, bien que complexes, sont habituellement hautement parallisables et plusieurs serveurs peuvent donc contribuer simultanément au calcul du résultat en une fraction de seconde. Le résultat peut être un nuage de points, une animation, des textures ou tout autre format de contenu. L’enjeu pour ce projet devient donc d’exécuter cette boucle d’envoi de la commande, de calcul de la simulation et de retour du résultat, avec une latence suffisamment petite pour que le délai soit imperceptible aux joueurs et joueuses. 

Raytracing à base de voxels

Abstract colorful topography cubes background. Randomly leveled boxes array 3d rendering.

Pour notre projet de raytracing à base de voxels, nous voulons combiner deux champs de recherche gravitant autour de la modélisation et du rendu visuel du monde. À la différence du projet de géo-morphing en temps réel, l’idée est de s’appuyer sur une plateforme de diffusion telle StadiaxCloud ou Nvidia Now qui prend les commandes du jeu et les envoie au centre de calcul où toute la simulation de jeu est calculée. Ni le raytracing, ni les voxels ne sont des nouveautés. Ils existent depuis des dizaines d’années. Mais à l’instar des simulations physiques complexes, ils exigent des quantités de mémoire importantes pour atteindre un niveau de détail élevé (voxels) et requièrent une complexité calculatoire très élevée (raytracing) qui ne permet pas aujourd’hui de simuler des mondes en haute-fidélité, même sur un PC puissant. Aujourd’hui, le raytracing dans les jeux est utilisé en complément des techniques de rendu classique notamment pour afficher des ombres, des réflexions, ou autres éléments partiels. Ces éléments sont alors superposés sur l’image à la fin du rendu de la trame courante. 

On peut néanmoins s’affranchir de ces limitations dans un centre de calcul. La quantité de mémoire n’est plus vraiment un problème, et on peut avoir accès à des GPU en quantité suffisante pour afficher une scène de n’importe quelle complexité… en théorie.  

Moteur de jeu multi-nœuds

Notre projet de moteur de jeu multi-nœuds, contrairement à ce que son nom indique, ne consiste pas à créer un moteur de jeu de toute pièce, mais plutôt à inventer les expériences de jeu du futur. L’abondance de serveurs disponibles dans un centre de données permet d’envisager de distribuer la simulation sur autant d’unités de calcul et nous offre la possibilité de créer des interactions massives impliquant toutes les facettes d’un moteur de jeu. Imaginez que des milliers de zombies vous poursuivent dans un dédale de rues, ou encore que vous participiez à une course poursuite intense sur une autoroute ultra-dense où chaque véhicule est simulé de façon unique. L’autre bénéfice de cette technologie est qu’elle offre de-facto une persistance du monde. Le jeu peut continuer d’évoluer même lorsque la personne qui jouait est partie. 

Compte tenu de tout ce que nous avons décrit pour les projets précédents, la question n’est plus de savoir si c’est faisable en tirant parti de la puissance de feu du nuage, mais plutôt de déterminer lesquels de ces exemples offrent une expérience intéressante au protagonisteEt ce faisant, nous devrons démontrer que le modèle sur lequel nous nous appuierons est économiquement viable. 

Au-delà de la technologie

En dehors des problématiques purement technologiques que nous aurons à résoudre, il y a aussi des enjeux économiques. Outre leur catalogue de jeu peu fourni, une des raisons qui explique la chute des services de jeu en infonuagique, c’est qu’ils dédiaient beaucoup de ressources informatiques pour une faible clientèle de base. On comprend en effet facilement que si on doit dédier un PC récent et le gérer dans un centre de données pour une poignée de personnes, les coûts montent très vite. Ce problème est accentué par le fait que, pour une région donnée, il y a des pics de demande (par exemple en soirée) et que le système doit être dimensionné pour absorber ces pics.  

Le système doit donc être capable de moduler l’utilisation des ressources à l’intérieur même d’une session de jeu. Il faut être capable de mutualiser les ressources informatiques et morceler l’usage de ce bassin de ressources en fonction de la demande. La demande elle-même doit être dynamique à l’intérieur d’une séquence de jeu avec des pics intensifs et des moments de repos. Il est clair qu’un équilibre existe, mais il n’est pas trivial à mettre en œuvre. 

Le futur centre de calcul

De la même façon que nos PC et consoles évoluent par cycle, les centres de données embrassent l’évolution technologique. De nouveaux processeurs, génériques, vidéos (GPUs) ou spécialisés sont mis en marché par les constructeurs sur une base annuelle (Nvidia/ARM, Intel, AMD, etc.). Ceux-ci renforcent régulièrement la puissance de calcul offerte dans les centres de données selon un cycle potentiellement plus fréquent que le rafraîchissement des équipements personnels des joueuses et joueurs. 

5G technology with earth dot in center of various icon internet of thing over the Aerial View of Hong Kong Cityscape, Wireless communication connection network concept.

Le réseau local des centres de calcul évolue lui aussi rapidement. Des compagnies comme Mellanox (acquise par Nvidia dans la dernière année) promettent des latences inférieures à 100ns, soit le même ordre de grandeur que prenait l’échange d’information sur une carte mère d’ordinateur il y a 20 ans. Il devient donc réaliste de considérer plusieurs serveurs sur un tel réseau, comme autant de coprocesseurs capables de contribuer à une même simulation. 

Les plus grandes révolutions sont cependant peut-être à nos portes. On parle beaucoup des réseaux mobiles 5G, mais dans la tête du grand public, la partie visible de cette nouvelle technologie consiste plus ou moins à une énième accélération du réseau. Or, la partie la plus intéressante se trouve dans le traitement des données à la périphérie du réseau (Edge computing). Dans ce modèle, une partie qui serait classiquement jouée sur un terminal (téléphone mobile, ordinateur, console, etc.) pourra être décentralisée sur les processeurs qui sont connectés au réseau 5G de proximité (antennes ou centres de calcul locaux). Cette décentralisation permettra de multiplier les vitesses de calcul et de réaliser un ensemble d’opération qui n’est pas encore faisable sur les machines actuelles. 

La décennie verra probablement aussi l’avènement de l’ordinateur quantique. Pour le moment restreint à des prototypes de laboratoire, celui-ci pourrait contribuer à des applications pratiques dès les 3 à 5 prochaines années et devenir un outil suffisamment puissant pour menacer nos algorithmes de cryptage informatique à peine plus tard (selon certains expertsdes clés RSA-2048 pourraient être calculées à l’aide d’ordinateurs quantiques d’ici 2030). Sans verser dans le dramatique, nous entrevoyons clairement qu’il offrira une puissance de calcul sans commune mesure avec nos ordinateurs actuels. 

Alors quelles expériences de jeu pourrons nous nous permettre de réaliser sur de telles machines? C’est en substance une des grandes questions que nous allons creuser! 

À propos de l'auteur

Julien Bouvrais est aujourd’hui à la tête d’Eidos-Sherbrooke, le studio expert en charge d’accélérer l’innovation technologique du groupe Eidos-Interactive.  

À la création du studio en 2007, Julien rejoint l’équipe fondatrice d’Eidos-Montréal en tant que directeur de programmation pour Deus Ex : HumanRevolution et deviendra ensuite Chef des Technologies de l’entreprise. Dans ce rôle il supervisera les départements de Recherche et Développement, d’intelligence artificielle, de créations de moteurs et outils. 

Avec ses équipes, Julien travaille aujourd’hui sur les technologies qui seront au cœur du jeu vidéo de demain. 

 

Insert math as
Block
Inline
Additional settings
Formula color
Text color
#333333
Type math using LaTeX
Preview
\({}\)
Nothing to preview
Insert