Programmation de jeux vidéo
Source: Wikipédia sous licence CC-BY-SA 3.0.
La liste des auteurs de cet article est disponible ici.

La programmation de jeux vidéo est un processus entrant dans la création d'un jeu vidéo. Ce processus est effectué par un développeur de jeux vidéo via la programmation informatique.

Fondamentalement, la programmation d'un jeu vidéo (La vidéo regroupe l'ensemble des techniques, technologie, permettant l'enregistrement ainsi que la restitution d'images animées, accompagnées ou non de son, sur un support adapté à l'électronique...) se réduit à répéter à intervalles de temps (Le temps est un concept développé par l'être humain pour appréhender le changement dans le monde.) réguliers les actions suivantes :

  • gérer les interactions d'un agent avec l'environnement (L'environnement est tout ce qui nous entoure. C'est l'ensemble des éléments naturels et artificiels au sein duquel se déroule la vie humaine. Avec les enjeux...) en fonction des entrées de l'utilisateur,
  • gérer les phénomènes non directement contrôlés par l'utilisateur,
  • créer une image à partir de ces informations et l'afficher à l'écran (Un moniteur est un périphérique de sortie usuel d'un ordinateur. C'est l'écran où s'affichent les informations saisies ou demandées par l'utilisateur et générées ou restituées par l'ordinateur,...) (de même pour le son).

L'agent est souvent un personnage (appelé généralement héros) mais peut aussi bien être une voiture, un vaisseau ou tout (Le tout compris comme ensemble de ce qui existe est souvent interprété comme le monde ou l'univers.) autre chose. L'environnement est généralement composé d'un décor statique (Le mot statique peut désigner ou qualifier ce qui est relatif à l'absence de mouvement. Il peut être employé comme :) et d'objets interactifs (ennemis, objets d'inventaire, portes, etc.). L'utilisateur envoie des entrées au programme à l'aide d'un périphérique comme une manette de jeu, un clavier, une souris (Le terme souris est un nom vernaculaire ambigu qui peut désigner, pour les francophones, avant tout l’espèce commune Mus musculus, connue aussi comme animal de compagnie ou de laboratoire, mais aussi de...), etc. La gestion des interactions consiste à prévoir les actions possibles sur l'environnement, de détecter leur déclenchement et de gérer des réponses. Par exemple, pour crée une interaction (Une interaction est un échange d'information, d'affects ou d'énergie entre deux agents au sein d'un système. C'est une action réciproque qui suppose l'entrée en...) " ouvrir la porte ", il faut décider des processus qui permettront son déclenchement (ex: le joueur doit appuyer sur le bouton prévu a cette effet, le personnage doit être assez proche de la porte et il faut qu'il lui fasse plus ou moins face), ensuite il faut, durant le jeu, détecter que ces conditions sont remplies. Si c'est le cas, alors une réaction est générée, dans notre exemple, afficher sur l'écran une porte qui s'ouvre.

Les phénomènes non directement contrôlés par l'utilisateur sont multiples et varient beaucoup en fonction du jeu. Il peut s'agir de gérer l'intelligence artificielle (L'intelligence artificielle ou informatique cognitive est la « recherche de moyens susceptibles de doter les systèmes informatiques de...) des agents non contrôlés par l'utilisateur, gérer les collisions entre agents et la physique (La physique (du grec φυσις, la nature) est étymologiquement la « science de la nature ». Dans un sens général et ancien,...) (pour les jeux qui utilisent un modèle physique réaliste).

Ces deux premières parties font partie du gameplay (c'est-à-dire, des règles d'interaction) d'un jeu qui est normalement décidé par un game designer et implémenté par le programmeur (En informatique, un développeur (ou programmeur) est un informaticien qui réalise du logiciel en créant des algorithmes et en les mettant en œuvre dans un langage de programmation.).

La création de l'image et son affichage (L' affichage désigne l'application d'une surface de papier script dans un lieu public(et non du foyer)sur un support destiné à son émission, externe ou interne, ce...) devient de plus en plus complexe à mesure que le niveau graphique des jeux s'élève. Autrefois presque exclusivement en deux dimensions (Dans le sens commun, la notion de dimension renvoie à la taille ; les dimensions d'une pièce sont sa longueur, sa largeur et sa profondeur/son épaisseur, ou bien...), les environnements de jeu sont dorénavant en grande majorité en trois dimensions. Dans tous les cas, l'image est construite petit a petit dans un espace mémoire (D'une manière générale, la mémoire est le stockage de l'information. C'est aussi le souvenir d'une information.) (le frame buffer) et n'est envoyé à l'écran qu'une fois le dessin fini dans son ensemble (En théorie des ensembles, un ensemble désigne intuitivement une collection d’objets (les éléments de l'ensemble), « une multitude qui peut être comprise comme un tout », comme...).

La création d'une image en 2D, commence généralement par l'affichage des dessins les plus éloignés, puis des autres dessins se superposent successivement. Par exemple :

  • Création du fond (le background), à l'aide de mosaïques (les tiles) propice aux systèmes de défilement (le scrolling) ou simplement un fond d'écran fixe (comme pour les anciens jeux d'aventure).
  • Ajouts des images (sprites) en utilisant un système de découpage qui permet de dessiner des formes complexes alors que les images sont obligatoirement rectangulaires dans la mémoire.

Pour un jeu " vu de côté " (typiquement, un jeu de plate-forme), on commencera par dessiner les objets les plus lointains pour finir par les plus proches du point (Graphie) de vue (La vue est le sens qui permet d'observer et d'analyser l'environnement par la réception et l'interprétation des rayonnements lumineux.) du joueur.

La création d'une image en 3D est bien plus complexe. Contrairement aux autres domaines de l'imagerie (L’imagerie consiste d'abord en la fabrication et le commerce des images physiques qui représentent des êtres ou des choses. La fabrication se faisait jadis soit à la main, soit par impression...) de synthèse, les jeux vidéo (La vidéo regroupe l'ensemble des techniques, technologie, permettant l'enregistrement ainsi que la restitution d'images animées, accompagnées ou non de son, sur un support adapté à l'électronique et non de...) se doivent généralement de créer chaque image en temps réel tout en conservant un taux de rafraîchissement de l'écran convenable. La difficulté est donc de pouvoir créer une image de bonne qualité dans un laps de temps très court, tout en gérant les différents éléments du jeu. C'est dans cette optique (L'optique est la branche de la physique qui traite de la lumière, du rayonnement électromagnétique et de ses relations avec la vision.) qu'aujourd'hui la programmation (La programmation dans le domaine informatique est l'ensemble des activités qui permettent l'écriture des programmes informatiques. C'est une étape importante de la conception de logiciel (voire de matériel, cf. VHDL).) de jeux 3D est de plus en plus liée au matériel informatique (L´informatique - contraction d´information et automatique - est le domaine d'activité scientifique, technique et industriel en rapport avec le traitement automatique de...), en utilisant au mieux les fonctionnalités d'accélération (L'accélération désigne couramment une augmentation de la vitesse ; en physique, plus précisément en cinématique, l'accélération est une grandeur...) matérielle des cartes graphiques afin d'accélérer au maximum le traitement des objets 3D, et en optimisant le code source (Le code source (ou les sources voire le source) est un ensemble d'instructions écrites dans un langage de programmation informatique de haut niveau, compréhensible par...).

La fréquence (En physique, la fréquence désigne en général la mesure du nombre de fois qu'un phénomène périodique se reproduit par unité de temps. Ainsi lorsqu'on emploie le mot fréquence sans...) de répétition de ces opérations varie fortement en fonction de la plate-forme (ordinateur, console, téléphone (Le téléphone est un système de communication, initialement conçu pour transmettre la voix humaine.) portable, etc.). On considère qu'il faut au moins 24 images par secondes pour donner une bonne impression de mouvement au cinéma (On nomme cinéma une projection visuelle en mouvement, le plus souvent sonorisée. Le terme désigne indifféremment aujourd'hui une salle de projection ou l'art en lui-même.) mais il faut une fréquence plus élevée dans les jeux vidéos. Toutes les parties d'un programme n'ont pas forcément besoin (Les besoins se situent au niveau de l'interaction entre l'individu et l'environnement. Il est souvent fait un classement des besoins humains en trois...) d'être traitées à chaque image (sauf bien entendu la création et l'affichage de cette image).

Les programmeurs de jeux vidéos sont aussi amenés à développer divers logiciels et outils informatiques utilisés dans la chaîne (Le mot chaîne peut avoir plusieurs significations :) de production du jeu vidéo ; outils destinés par exemple aux autres acteurs du développement (comme les infographistes, animateurs, game designers, ...) ou encore à exécuter du traitement par lots.

Programmeurs de jeux vidéo reconnus

  • John Carmack (Wolfenstein 3D, Doom, Quake...)
Page générée en 0.085 seconde(s) - site hébergé chez Amen
Ce site fait l'objet d'une déclaration à la CNIL sous le numéro de dossier 1037632
Ce site est édité par Techno-Science.net - A propos - Informations légales
Partenaire: HD-Numérique