intro.tex

Sommaire

Systèmes de coordonnées cartésiennes >>

Introduction

Avant tout, mais pas nécessairement dans cet ordre.

— Le Docteur dans Meglos (1980)

À propos de l’édition en ligne

Ce que vous lisez était à l’origine un livre. De nos jours, la plupart de l’apprentissage de sujets techniques tels que les mathématiques 3D et la programmation de jeux vidéo se fait en ligne, de sorte que certains lecteurs pourraient avoir du mal à visualiser ce à quoi un livre technique pouvait ressembler. Si c’est votre cas, consultez la Figure 1.

image

Figure 1Les supports physiques étaient autrefois utilisés pour transmettre des connaissances techniques

Il contenait des caractéristiques aussi anachroniques qu’un numéro ISBN, un index, une bibliographie, des chapitres, des sections et des pages numérotés, et des blocs de prose non découpés en fragments de 280 caractères, comme la phrase à rallonge que vous lisez en ce moment. Cette manifestation physique du savoir pesait plus de 2 kg, ce qui lui conférait de nombreux avantages sur les formats en ligne. On pouvait l’utiliser pour caler une porte ou surélever un moniteur à la hauteur souhaitée. On pouvait collectionner des livres physiques et les exposer sur une étagère comme expression de son identité — réelle ou aspirée — et cela fonctionnait que vous les ayez réellement lus ou non ! Mais le plus grand avantage d’un livre physique était qu’on pouvait voir d’un coup d’œil sa longueur. Vous lisez un livre de 850 pages.

Par ailleurs, ce livre a été publié en 2011. En 2011, League of Legends avait deux ans, Skyrim venait d’être lancé, et la PS4 était encore à deux ans de sa sortie. Mais nous sommes fiers de dire que la plupart du contenu de ce livre, comme Bilbo quand il avait encore l’Anneau, n’a pas pris une ride. Les vecteurs et les matrices fonctionnent de la même façon, FF est toujours égal à mama , et les gens utilisent encore le modèle de Blinn-Phong.

Cependant, certaines parties du livre commencent à accuser leur âge. Les deux chapitres les moins théoriques et les plus pratiques (Chapitres 10 et 12) en particulier mériteraient une mise à jour et un changement d’emphase. Nous ne citons aucune publication ni site Web datant de moins de dix ans. Les blagues et les références culturelles — déjà limites au départ — sont désormais toutes dépassées. Nous y travaillons ; vous pouvez nous aider en donnant votre avis.

À qui s’adresse ce livre

Ce livre traite des mathématiques 3D, de la géométrie et de l’algèbre de l’espace en trois dimensions. Il est conçu pour vous apprendre à décrire des objets ainsi que leurs positions, orientations et trajectoires en 3D à l’aide des mathématiques. Ce n’est pas un livre sur la synthèse d’images, la simulation ou même la géométrie computationnelle, bien que si vous envisagez d’étudier ces sujets, vous aurez certainement besoin des informations présentées ici.

Ce n’est pas uniquement un livre pour les programmeurs de jeux vidéo. Nous supposons que la majorité de nos lecteurs apprennent dans le but de programmer des jeux vidéo, mais nous nous attendons à un public plus large et nous avons conçu le livre en tenant compte d’une audience diverse. Si vous êtes programmeur ou souhaitez apprendre à créer des jeux vidéo, bienvenue ! Si vous ne remplissez aucun de ces critères, il y a quand même beaucoup à y trouver. Nous avons fait tout notre possible pour rendre le livre utile aux designers et aux artistes techniques. Bien que le livre contienne quelques extraits de code, ils sont (espérons-le) faciles à lire même pour les non-programmeurs. Plus important encore, même s’il est toujours nécessaire de comprendre les concepts environnants pour donner du sens au code, l’inverse n’est jamais vrai. Nous utilisons des exemples de code pour illustrer la façon dont les idées peuvent être implémentées sur un ordinateur, et non pour expliquer les idées elles-mêmes.

Le titre de ce livre indique qu’il s’adresse au « développement de jeux », mais une grande partie du contenu que nous couvrons est applicable en dehors des jeux vidéo. Pratiquement toute personne souhaitant simuler, rendre ou comprendre un monde en trois dimensions trouvera ce livre utile. Bien que nous essayions de fournir des exemples motivants issus du monde du développement de jeux vidéo, puisque c’est notre domaine d’expertise et aussi notre public cible principal, vous ne serez pas dépassé si le dernier jeu que vous avez terminé était Space Quest.1 Si vos intérêts se situent dans des domaines plus « sérieux » que les jeux vidéo, soyez assuré que ce livre n’est pas rempli d’exemples spécifiques à base de tirs à la tête, de membres sectionnés ou de gerbes de sang photorealistes.

Pourquoi lire ce livre

Ce livre présente de nombreuses caractéristiques uniques, notamment son sujet, son approche, ses auteurs et son style d’écriture.

Sujet unique. Ce livre comble un vide laissé par d’autres ouvrages sur la synthèse d’images, l’algèbre linéaire, la simulation et la programmation. Il s’agit d’un livre d’introduction, ce qui signifie que nous avons concentré nos efforts pour offrir une couverture approfondie des concepts fondamentaux de la 3D — des sujets qui sont normalement survolés en quelques pages rapides ou relégués en annexe dans d’autres livres (parce que, après tout, vous connaissez déjà tout ça). Nous avons constaté que ces sujets-là sont souvent les points d’achoppement pour les débutants ! D’une certaine façon, ce livre est l’image miroir d’un amalgame de livres sur la synthèse d’images, la physique et les courbes. Tandis que cet hypothétique assemblage commencerait par un bref aperçu des fondements mathématiques, suivi d’une couverture approfondie des domaines d’application, nous commençons par une couverture approfondie des fondements mathématiques, puis donnons des aperçus compacts et de haut niveau des domaines d’application.

Ce livre tente de fournir une introduction progressive pour les débutants, mais cela ne signifie pas que nous resterons indéfiniment sur la voie lente. Il y a ici beaucoup de matière traditionnellement considérée comme « avancée » et enseignée dans des cours de niveau supérieur ou de master. En réalité, ces sujets sont davantage spécialisés que difficiles, et ils sont récemment devenus des prérequis importants qui doivent être enseignés plus tôt, ce qui est en partie ce qui a créé la demande pour un livre comme celui-ci.

Approche unique. Tous les auteurs pensent trouver l’équilibre parfait entre le pédantisme et la décontraction pour mieux toucher leur public, et nous ne faisons pas exception. Nous reconnaissons cependant que ceux qui ne partagent pas cette flatteuse auto-évaluation trouveront essentiellement ce livre trop informel (voir l’entrée d’index « stickler alert »). Nous avons privilégié des explications claires et l’intuition, et nous l’avons parfois fait au détriment de la rigueur. Notre objectif est de simplifier, sans pour autant trop simplifier. Nous guidons les lecteurs vers l’objectif par un chemin qui évite les trolls et les dragons, alors pourquoi commencer le voyage en les signalant tous avant même d’avoir dit quelle est notre destination ou pourquoi nous y allons ? Cependant, comme nous savons que les lecteurs traverseront ce terrain par eux-mêmes à terme, une fois notre objectif atteint, nous ferons le chemin inverse pour indiquer où se trouvent les dangers. Mais nous pourrions parfois avoir besoin de laisser la chasse aux trolls à une autre source, surtout si nous estimons que votre chemin habituel ne vous en approchera pas. Ceux qui comptent fréquenter ces terres régulièrement devraient consulter un local pour une connaissance plus approfondie. Cela ne veut pas dire que nous pensons que la rigueur est sans importance ; nous pensons simplement qu’il est plus facile d’acquérir de la rigueur après avoir développé une intuition sur la vue d’ensemble, plutôt que de surcharger chaque discussion avec des définitions et des axiomes nécessaires pour gérer les cas limites. Franchement, de nos jours un lecteur peut trouver des présentations concises et formelles gratuitement sur Wikipedia ou Wolfram MathWorld, donc nous ne pensons pas qu’un livre ait beaucoup à offrir en s’appesantissant excessivement sur des définitions, des axiomes, des preuves et des cas limites, surtout pour un contenu d’introduction principalement destiné aux ingénieurs.

Auteurs uniques. Notre expérience combinée associe une autorité académique à des conseils pratiques acquis sur le terrain. Fletcher Dunn fait des jeux vidéo professionnellement depuis 1996. Il a travaillé chez Terminal Reality à Dallas, où, en tant que programmeur principal, il a été l’un des architectes du moteur Infernal et le programmeur en chef de BloodRayne. Il a été directeur technique pour The Walt Disney Company chez Wideload Games à Chicago et programmeur principal de Disney Guilty Party, jeu familial de l’E3 2010 de l’année selon IGN. Il travaille maintenant pour Valve Software à Bellevue, dans l’État de Washington, et a contribué à Steam et à tous les jeux récents de Valve. Il est le principal auteur de la bibliothèque réseau GameNetworkingSockets et du service Steam Datagram Relay. Mais son plus grand titre de gloire est d’avoir donné son nom au Caporal Dunn dans Call of Duty: Modern Warfare 2.

Le Dr Ian Parberry possède plus de 35 ans d’expérience en recherche et en enseignement en milieu académique. C’est son sixième livre, le troisième sur la programmation de jeux. Il est actuellement professeur titulaire au département d’informatique et d’ingénierie de l’Université du Nord du Texas. Il est nationalement reconnu comme l’un des pionniers de la programmation de jeux dans l’enseignement supérieur, et enseigne des cours de programmation de jeux à l’Université du Nord du Texas en continu depuis 1993.

Style d’écriture unique. Nous espérons que vous apprécierez la lecture de ce livre de mathématiques (vous avez bien lu !) pour deux raisons. Le plus important, nous voulons que vous appreniez grâce à ce livre, et apprendre quelque chose qui vous intéresse est plaisant. Ensuite, nous voulons que vous preniez plaisir à lire ce livre de la même façon que vous appréciez lire une œuvre littéraire. Nous n’avons pas la prétention d’être au niveau de Mark Twain, ni que ce livre soit destiné à devenir un classique comme, par exemple, Le Guide du voyageur galactique. Mais on peut toujours avoir des aspirations. Franchement, nous sommes juste des gens un peu farfelus. En même temps, aucun style d’écriture ne devrait nuire à la première priorité : une communication claire des connaissances mathématiques sur les jeux vidéo.2

Ce que vous devez savoir avant de lire ce livre

Nous avons cherché à rendre le livre accessible au public le plus large possible ; aucun livre, cependant, ne peut repartir de zéro. Nous attendons du lecteur les compétences mathématiques de base suivantes :

Des connaissances en programmation sont utiles, mais pas requises. En plusieurs endroits, nous donnons de brefs extraits de code pour montrer comment les idées discutées se traduisent en code. (Aussi, certaines procédures sont tout simplement plus faciles à expliquer en code.) Ces extraits sont extrêmement basiques, bien commentés, et ne nécessitent qu’une compréhension très rudimentaire de la syntaxe du langage C (qui a été reprise par plusieurs autres langages). La plupart des artistes techniques ou level designers devraient pouvoir interpréter ces extraits sans difficulté.

Vue d’ensemble

Comment donner votre avis

Nous avons calculé les probabilités que nous puissions écrire un livre de mathématiques de plus de 800 pages sans erreurs. Le résultat était un nombre négatif, ce que nous savons être impossible, mais qui est probablement assez proche de la réalité. Si vous trouvez une erreur dans ce livre, ou si vous avez des commentaires de quelque nature que ce soit, envoyez un e-mail à feedback@gamemath.com ou contactez Fletcher sur Twitter (@ZPostFacto).

Attention. Nous ne voulons pas apprendre de ceci.

— Bill Watterson (1958–) dans Calvin et Hobbes

  1. Eh bien, vous passerez peut-être à côté de quelques blagues, comme celle-là. Désolés.

  2. C’est pourquoi nous avons mis la plupart des blagues et anecdotes inutiles en notes de bas de page comme celle-ci. D’une certaine façon, nous pensions pouvoir nous en permettre davantage ainsi.

  3. Aux exercices, s’entend.

Haut de page

Systèmes de coordonnées cartésiennes >>