L’avenir de l’intelligence artificielle dans l’industrie du jeu vidéo

Il y a 2 mois de cela s’est déroulée au Colorado aux États-Unis, la plus importante conférence en recherche scientifique concernant les nouvelles technologies utilisées dans la 3D et la synthèse d’image. La conférence en question s’appelle siggraph, et vous pouvez visiter le site officiel pour voir l’état de l’art sur les différentes technologies présentées dans la conférence. Mais pour notre part, comme illustré sur la vidéo en bas, on va juste s’intéresser à l’utilisation de l’IA dans les domaines qui peuvent aboutir dans le domaine du jeu vidéo. La vidéo question et celle de la chaîne Youtube Two Minute Papers, une chaîne très connue et répandue pour ses présentations de la recherche académique dans le domaine de l’intelligence artificielle.

L’intelligence artificielle dans synthèse 3D

L’apport de l’IA dans le domaine du jeu vidéo dans le futur sera sans doute non négligeable. Par exemple, sur la vidéo on peut voir l’évolution des techniques du texte vers image, qui permettent en utilisant l’IA, de générer des images de haute qualité en arrivant même à contrôler les personnages dans l’image en question, ainsi que les postures et les formes générales des personnages et des objets se trouvant dans l’image. On peut apercevoir aussi la génération automatique des vidéos par l’IA, qui commencent à devenir de plus en plus qualitatives et plus réalistes. Ou ce qui m’a vraiment impressionné, la génération d’objets en 3D à partir d’un texte, ce qui va grandement simplifier le travail des artistes dans le domaine vidéoludique. Sans oublier l’efficacité de l’IA à pouvoir faire la simulation physique réaliste avec peu de ressources, car pour faire la simulation réaliste en utilisant les méthodes classiques, la machine devrait être superbement puissante. Et le dernier point impressionnant dans cette conférence, c’est l’amélioration de la technique du Ray tracing, cette technique récemment intégrée dans les cartes graphiques pour plus de réalisme dans le rendu 3D. Les nouvelles techniques de simulation considèrent la lumière non plus comme un faisceau lumineux, mais comme des ondes électromagnétiques, ce qui est de plus en plus fidèle à la réalité physique du phénomène. 

Google Carbon, le nouveau remplaçant du langage C++

Tout le monde en parle, il n’y a pas longtemps des ingénieurs de Google ont fait l’annonce d’un nouveau langage qui pourrait remplacer le langage C++. Pour rappel, le langage C++ est un langage très reconnu, depuis très longtemps il est ancré dans la production de plusieurs types de logiciels. C’est un langage réputé pour sa robustesse et sa rapidité, il est particulièrement populaire dans des logiciels comme les systèmes d’exploitation, les gestionnaires de base de données, les moteurs de jeux vidéo, les systèmes embarqués, la commande industrielle…etc. Malheureusement comme tout autre langage, il possède quelques défauts intrinsèques à ses objectifs de performance et de rapidité, les deux principaux défauts sont, son manque de sécurité comparé aux autres langages, puisqu’il permet d’offrir un accès direct aux entrailles de la machine. Et deuxièmement, le bagage technique que le langage a accumulé à travers les années de sa longue vie, ce qui le rend charger avec des fonctionnalités qui sont devenues aujourd’hui obsolètes, mais le langage doit les conserver pour des soucis de rétrocompatibilité avec les anciennes applications. 

Justement, le langage de programmation proposé par Google nommé Carbone, propose des solutions pour ces deux problèmes mentionnés, plus d’autres améliorations qui sont inspirées des autres langages modernes. En réalité, les ingénieurs de Google, d’après leur déclaration, ne visent pas à remplacer le C++, mais plutôt de proposer une alternative plus flexible et plus sécurisée pour les besoins de la production logicielle moderne, visant même à avoir une interopérabilité bidirectionnelle avec le code du langage C++. L’annonce du langage Carbone s’est faite dans la conférence internationale du langage C++ à Toronto, Canada. Le visionnage de la présentation est disponible sur la vidéo en bas. Il est clair que le langage est encore dans la phase expérimentale, mais les ingénieurs sont suffisamment avancés pour proposer une nouvelle syntaxe pour le langage, que vous pouvez même tester à travers une démo sur le site de compilation online Compiler Explorer. L’un des points positifs du langage Carbone est d’embrasser une approche de développement open source beaucoup plus flexible que la standardisation ISO du C++, d’ailleurs le dépôt github et un serveur Discord sont déjà mis à la disposition à quiconque veut participer à son développement.

L’annonce du langage Carbone

Le processeur MOS 6502

Personnellement le processeur MOS 6502 est l’un de mes processeurs préférés, pour plusieurs bonnes raisons à mon point de vue, c’est un processeur 8 bits relativement simple avec un jeu d’instructions en tout de 56 instructions, qui en dépit de sa simplicité reste un processeur robuste avec des mécanismes dans son assembleur qui le rendent plus puissant, notamment ses douzaines (ou plus) de modes d’adressage. Le 6502 est aussi un processeur avec un énorme succès commercial, notamment son intégration dans d’importantes machines des années 80, comme le Apple-1, le Apple-2, Commodore PET et 64, la Nintendo NES, Atari 2600…etc. La vidéo en bas est celle d’une conférence sur le processeur, elle est présentée par un nom bien connu dans le domaine du hack du Hardware rétro, c’est Michael Stail (voici son blog), actuellement il est entrain de développer le noyau software d’une nouvelle machine rétro appelée Cammander X16 (plus de détails sur le lien).

Il faut savoir que la présentation est technique, destinée principalement à des connaisseurs dans le domaine, des fins d’études, des doctorants/chercheurs, des hackeurs…etc. Une bonne partie ne serait pas totalement compréhensible par des étudiants de 1-ière ou 2-ème année, mais ça reste toujours une excellente présentation pour avoir une petite idée sur le processeur 6502 et le Hardware en général. La présentation traite trois parties, la 1-ière est celle de l’architecture du processeur, les registres programmables, le jeu d’instructions, les modes d’adressages…etc., ce qui se fait généralement dans un module d’Architecture des Ordinateur. La 2-ème est celle de la microarchitecture, concernant la construction matérielle interne du processeur, sachant qu’un grand travail de reverse engineering a été fait sur le processeur pour comprendre sa microarchitecture, puisque à la base ce processeur est commercial et sa microarchitecture n’a jamais été rendue publique. Et dernièrement, l’extraction des connaissances et l’expertise du fonctionnement du processeur, et une compréhension poussée de son fonctionnement au-delà de son manuel, en créant un simulateur du processeur au niveau transistor (lien du simulateur online), comprendre les bugs hardware et les instructions non documentées…etc. Bon visionnage.