Professional Documents
Culture Documents
Bart GEORGE
EISTI
ING3 Option I3
Organisation du cours
Blender (1 crneau... ou 2 ?)
Unity (4 crneaux)
Evaluation
Sources principales
Manuels
Unity3D
Tutoriaux vido
Site GameDevelopers (
http://gamedeve.tuxfamily.org/ )
Moteur jeu
Oui, mais...
Caractristiques du jeu
Gameplay
Starcraft 2
Btiments
Centaines d'units
Serveurs
Commandes clavier
Milliers d'units
Vue 3D complte
Street Fighter IV
Beaucoup d'animations
Collisions prcises
Combinaison de
touches
Dplacement 3D
Personnages ultra-dtaills
Skyrim (RPG)
Solo uniquement
Effets graphiques
ultra-dtaills
Multijoueur uniquement
TESO (MMO)
Batterie de serveurs
Battlefield 4
3D haut niveau
Effets spciaux
Vhicules
Dcors
Plusieurs personnages
Scnario, dialogues
Vue tactique, cheval
Battlefield Hardline
Blinds et avions
ont disparu
Voitures et motos
Mode poursuite
Conduite pure
Influence de la mto
(pluie, neige, grle...)
Environnements dtaills
Les prmisses
Et aujourd'hui ?
Les prmisses
Au commencement...
Freescape
Total Eclipse
3D Construction Kit
Les prmisses
Cration d'objets 3D
Plaquage de textures
Animations
Camras
La rvolution Doom
Ultima Underworld
Premier usage du
texture-mapping
Sprites 2D, avec
quelques objets 3D
Descendants
Arena et Daggerfall
(XnGine)
Might & Magic 6 8
(Horizon, Labyrinth)
La rvolution Doom
Wolfenstein3D et
Doom
Build Engine
Le premier moteur ?
Duke Nukem 3D
Witchaven, Blood,
Shadow Warrior...
Et de nombreux
autres clones
La rvolution Doom
Ecstatica 1 et 2
Modlisation des
personnages par
ellipsodes
IdTech
Quake 1, 2 et 3
Premire "grande
famille" de moteurs
(n'a pas survcu)
Half-Life
Vampire Redemption
Kingpin
Sin
Medal of Honor 3
Unreal Engine 1 4
Unreal 1 et 2
Unreal Tournament
Deuxime "grande
famille" (toujours
d'actualit)
Gears of War
Borderlands
Mass Effect 1 3
Dishonored
Unity3D
Auto-configurable
Dsormais
incontournable
Anvil (Ubisoft)
Assassin's Creed
(premire version,
baptise Scimitar)
Assassin's Creed 2,
etc (Anvil)
Assassin's Creed 3 et
4 (AnvilNext)
Autres jeux
Prince of Persia
RAGE (Rockstar)
GTA 4 et 5
Red Dead
Redemption
Max Payne 3
Frostbite (EA)
Battlefield 3 et 4
Dragon Age 3
Mass Effect 4
LithTech
F.E.A.R. 1 et 2
CryEngine
Crysis
Homefront
Source Engine
Half-Life 2
Portal 1 et 2
Team Fortress 2
Moteurs 3D "gnriques"
Torque
Tribes 2
Darkbasic, DarkGDK
FPS Creator
C4 (commercial, C++)
Panda3D (Python)
JME (Java)
Shiva 3D
IrrLicht
C++
Ogre3D
C++, Python
Modulaire
Torchlight 1 et 2
OpenSceneGraph
C++
Mondes virtuels
Anecdote
Open Source
Dvelopp en interne
pour un MMORPG :
Ryzom
A servi pour d'autres
jeux : LudicArt
Souvenirs, souvenirs
Bilan de ce panorama
Frostbite pour EA
Anvil pour Ubisoft
Rage pour Rockstar
Il y a Unity
Discussion critique
"J'ai dj pass
beaucoup de temps
faire des moteurs, et
j'aimerais bien avoir
plus de temps pour
faire les jeux euxmmes"
Rinventer la roue
cote moins cher
Les moteurs font
peu prs ce qu'on
veut, juste peu prs
Si on utilise le moteur
d'Unreal, le jeu va
ressembler Unreal
Code "tranger",
programme ralenti
Quake et Unreal ne
sont pas ce qu'on
peut crer de mieux
avec ces moteurs
"La crativit a besoin
d'tre nourrie"
En utilisant un mme
moteur pour une srie
de jeux, "l'inspiration
risque de s'asscher"
"Dpendre du
programme de
quelqu'un d'autre
amne beaucoup
d'incertitudes dans un
processus de
dveloppement. Vous
hritez galement des
bugs de l'autre."
Actualit du problme
Sources
Dossier de Canard PC
Actualit du problme
Ventes mdianes
Actualit du problme
Actualit du problme
Consquences
Perte de qualit
Crise de crativit
Soldes tout-va
Apps 0,99$
Moteur et outils
Langage et paradigme
Configuration et versioning
Gestion du temps
Dbuggage
Outils d'dition
Affichage 3D
Animations
Collisions
Affichage 3D
Meshes triangulaires
Interpolation
Textures
Eclairage
Camra
Rastrisation
Pipelines et shaders
Graphe de scne
Effets visuels
Les raisons
Toujours planaires
Toujours triangulaires
Meshes triangulaires
Problme
Comment dfinir
un mesh "en dur"
pour ensuite
l'afficher en 3D ?
Solutions
Liste simple
Liste indexe
Strip
Eventail
Types de repre
Repre absolu
Repre local
Interpolation
Problme
Solution : interpolation
Texture-mapping
Dimensions
Types de mapping
Problme
Rpt ou tendu
Formats de texture
256x256, 512x512...
Solution : le filtrage
Texture-mapping
Mip-mapping
Adapte le LOD
de la texture la
distance
Types de filtrage
Linaire
Bilinaire
Trilinaire
Anisotropique
Lumire et
clairage
Lumire et clairage
Mass Effect 1
Dominante bleue
Impression d'uniformit
Mass Effect 2
Lumire ple
Teint blafard
Ombres omniprsentes
Lumire et clairage
Skyrim "vanilla"
Dominante gris-blanc
Post-processing
Changement radical
d'ambiance
Lumire et clairage
Sources de lumire
Statique ou ambiante
Directionnelle
Depuis un point
Depuis un objet
Camra
Notion de viewpoint
Types de projection
Perspective (frustrum)
Orthographique
Rastrisation
Objectif
Amliorer le rendu
Buffers
Z-Buffer : filtre en
fonction de la profondeur
Anti-aliasing
Pipeline de rendu
Diffrentes tapes
Pipeline GPU
Shaders
Vertex Shader
Geometry Shader
Pixel Shader
Graphes de scne
Graphes de scne
Exemple de scne
Effets visuels
Particules
Utilises pour
Flammes
Fume
tincelles
Effets visuels
Decals
Petites images 2D
colles sur une
surface 3D
Utiliss pour
Impact de balle
Empreintes de pas
Marques de suie
Eclaboussures
Fissures
Effets visuels
Gestion de
l'environnement
Ciel : skyboxes
Terrain : heightmaps
Image 2D en niveau
de gris
Sert modliser les
hauteurs