Introduction aux Cartes Graphiques - PowerPoint PPT Presentation

1 / 65
About This Presentation
Title:

Introduction aux Cartes Graphiques

Description:

Mode texte uniquement 80x25 caract res 50Hz. Port imprimante. CGA. HGC ... Manque de r solution pour bureautique. HGC. CGA. EGA. VGA. SVGA. Standard: ... – PowerPoint PPT presentation

Number of Views:1141
Avg rating:3.0/5.0
Slides: 66
Provided by: len45
Category:

less

Transcript and Presenter's Notes

Title: Introduction aux Cartes Graphiques


1
Introduction auxCartes Graphiques
  • GRAPHIX2006/2007

2
Plan du cours
  • Modes graphiques
  • Historique
  • Architecture dune carte graphique
  • Vue globale
  • Ramdac
  • DVI
  • Mémoire vidéo
  • Bus
  • Accélérateur graphique 2D/3D

3
Première partieModes graphiques
4
Modes graphiques (1/12)
  • Première carte graphique
  • Par IBM en 1981
  • MDAs Monochrome Display Adapters
  • Mode texte uniquement 80x25 caractères à 50Hz
  • Port imprimante
  • CGA
  • HGC
  • EGA
  • VGA
  • SVGA
  • Standard XGA, SXGA, UXGA
  • Wide screen WXGA, WSXGA, WUXGA (16/9ème 16/10ème
    )
  • Quad format QXGA, QSXGA, QUXGA

5
Modes graphiques (2/12)
  • MDAs
  • CGA
  • En 1981 (avec arrive des Personal Computer)
  • Mode Graphique Couleur 320x200x4 couleurs
  • Essentiellement jeux vidéos
  • Manque de résolution pour bureautique
  • HGC
  • CGA
  • EGA
  • VGA
  • SVGA
  • Standard XGA, SXGA, UXGA
  • Wide screen WXGA, WSXGA, WUXGA (16/9ème 16/10ème
    )
  • Quad format QXGA, QSXGA, QUXGA

6
Modes graphiques (3/12)
  • MDAs
  • CGA
  • HGC
  • Par Hercules (fondé en 1982)
  • Hercules Graphics Card (compatible MDAs)
  • Mode graphique monochrome 720x348
  • EGA
  • VGA
  • SVGA
  • Standard XGA, SXGA, UXGA
  • Wide screen WXGA, WSXGA, WUXGA (16/9ème 16/10ème
    )
  • Quad format QXGA, QSXGA, QUXGA

7
Modes graphiques (4/12)
  • MDAs
  • CGA
  • HGC
  • EGA (Enhanced Graphics Adapter)
  • Par IBM en 1984
  • Résolution max 640x350x16 couleurs
  • Palette de 64 couleurs
  • Fréquence de 60Hz
  • VGA
  • SVGA
  • Standard XGA, SXGA, UXGA
  • Wide screen WXGA, WSXGA, WUXGA (16/9ème 16/10ème
    )
  • Quad format QXGA, QSXGA, QUXGA

8
Modes graphiques (5/12)
  • MDAs
  • CGA
  • HGC
  • EGA
  • VGA (Video Graphic Array)
  • Par IBM en 1987
  • Résolution 640x480x16 720x400 (mode texte)
  • Résolution 320x200x256 (Mode MCGA Multi Colour
    Graphics Array)
  • Palette de 262.144 couleurs (6 bits par couleur)
  • 1er standard vidéo à fonctionner en analogique
  • SVGA
  • Standard XGA, SXGA, UXGA
  • Wide screen WXGA, WSXGA, WUXGA (16/9ème 16/10ème
    )
  • Quad format QXGA, QSXGA, QUXGA

9
Modes graphiques (6/12)
  • MDAs
  • CGA
  • HGC
  • EGA
  • Amélioration du VGA par IBM
  • 8514/A (1987)
  • 1024x768x256 43.5Hz entrelacé640x480 60Hz
    non-entrelacé
  • SVGA
  • Standard XGA, SXGA, UXGA
  • Wide screen WXGA, WSXGA, WUXGA (16/9ème 16/10ème
    )
  • Quad format QXGA, QSXGA, QUXGA

10
Modes graphiques (7/12)
  • MDAs
  • CGA
  • HGC
  • EGA
  • Amélioration du VGA par IBM
  • XGA (eXtended Graphics Array)Introduit en 1990,
    successeur du 8514/A512Kb/1Mb VRAM 1024x768x256
    640x480x16bits
  • SVGA
  • Standard XGA, SXGA, UXGA
  • Wide screen WXGA, WSXGA, WUXGA (16/9ème 16/10ème
    )
  • Quad format QXGA, QSXGA, QUXGA

11
Modes graphiques (8/12)
  • MDAs
  • CGA
  • HGC
  • EGA
  • Amélioration du VGA par IBM
  • XGA2 XGA avec fréquence plus élevées1024x768x16b
    its -gt 65535 couleurs800x600x24bits -gt 16
    millions de couleurs
  • SVGA
  • Standard XGA, SXGA, UXGA
  • Wide screen WXGA, WSXGA, WUXGA (16/9ème 16/10ème
    )
  • Quad format QXGA, QSXGA, QUXGA

12
Modes graphiques (9/12)
  • MDAs
  • CGA
  • HGC
  • EGA
  • VGA
  • SVGA (SuperVGA)
  • Basé sur le VGA avec spécifications du
    constructeur
  • Reconnu standard du mode 800x600
  • Manque de standardisation gt Consortium des
    principaux constructeurs
  • Video Electronics Standards Association (VESA)
    propose une interface logiciel standard
  • Standard XGA, SXGA, UXGA
  • Wide screen WXGA, WSXGA, WUXGA (16/9ème 16/10ème
    )
  • Quad format QXGA, QSXGA, QUXGA

13
Modes graphiques (10/12)
  • MDAs
  • CGA
  • HGC
  • EGA
  • VGA
  • SVGA
  • Standard XGA, SXGA, UXGA
  • UVGA (UltraVGA) et XGA standard 1024x768
  • SXGA (SuperXGA) standard 1280x1024
  • UXGA (UltraXGA) standard 1600x1200
  • Wide screen WXGA, WSXGA, WUXGA (16/9ème 16/10ème
    )
  • Quad format QXGA, QSXGA, QUXGA

14
Modes graphiques (11/12)
  • MDAs
  • CGA
  • HGC
  • EGA
  • VGA
  • SVGA
  • Standard XGA, SXGA, UXGA
  • Wide screen WXGA, WSXGA, WUXGA (16/9ème
    16/10ème)
  • WXGA (Wide eXtended Graphics Array) standard
    1280x800
  • WSXGA (Wide Super eXtended Graphics Array)
    standard 1600x1024
  • WUXGA (Wide Ultra eXtended Graphics Array)
    standard 1920x1200
  • Quad format QXGA, QSXGA, QUXGA

15
Modes graphiques (12/12)
  • MDAs
  • CGA
  • HGC
  • EGA
  • VGA
  • SVGA
  • Standard XGA, SXGA, UXGA
  • Wide screen WXGA, WSXGA, WUXGA (16/9ème 16/10ème
    )
  • Quad format QXGA, QSXGA, QUXGA
  • QXGA (Quad eXtended Graphics Array) standard
    2048x1536
  • QSXGA (Quad Super eXtended Graphics Array)
    standard 2560x2048
  • QUXGA (Quad Ultra eXtended Graphics Array)
    standard 3200x2400

16
Deuxième partieArchitecture
17
Architecture - Vue globale
  • Ramdac
  • DVI
  • Bus
  • Mémoire

BUS
18
Archi. - RAMDAC (1/4)
  • Random Access Memory Digital to Analogic
    Converter
  • Convertisseur numérique à analogique pour
    périphérique CRT(Cathodic Ray Tube)
  • Fréquence interne liée à la fréquence de
    rafraîchissement du moniteur
  • Accès à la mémoire vidéo (framebuffer)
  • Possède sa propre mémoire vive pour stocker les
    palettes de conversion

Mémoire Centrale
BUS
GPU
DVI
Mémoire vidéo
CRT
Ramdac
19
Archi. - RAMDAC (2/4)
  • Le RAMDAC peut recevoir les formats suivants
  • True Color 1 octet/composante ? 24 bits
  • HiColor 2 modes
  • 2 x 5bits (rouge et bleu) 6bits (vert) ? 16
    bits (65536 couleurs)
  • 5 bits par composante ? 15 bits (32768 couleurs)
  • RGBA True Color ajout du canal alpha ? 32 bits
  • Fausses couleurs indexation dune palette de
    couleurs (24bits/couleur) ? envoi des couleurs
    indexées

20
Archi. - RAMDAC (3/4)
  • Fonctionnement de lil (persistance
    rétinienne)
  • une image perçue reste environ 0,1 sec sur la
    rétine ? rémanence visuelle
  • en enchaînant les images à une fréquence de 25Hz
    à 30Hz ? effet danimation
  • Fréquence de rafraîchissement de limage au
    minimum 50Hz en entrelacé (affichage des lignes
    impaires puis paires)
  • Confort des yeux pour f gt 72hz
  • Fréquence interne élevée (MHz)
  • Accès mémoire très fréquent

21
Archi. - RAMDAC (4/4)
  • Calcul théorique de la fréquence interne
  • Taille de lécran largeur x hauteur
  • Fréquence visuelle (ex 75 Hz) freq
  • Fréquence internefreq. int. largeur x hauteur
    x freq x 1.32
  • Facteur 1.32 le canon à électrons perd environ
    32 du temps pour les déplacements horizontaux et
    verticaux
  • Radeon 9800 ou GeForce FX 5900 Bi-Ramdac 400Mhz
  • 1600 x 1200 ? 120 Hz
  • 2048 x 1536 ? 85 Hz
  • Pour résolution de 1600x1200 à 85hz il faut un
    RAMDAC de 1600x1200x85x1.32 205 Hz
  • Problème limitation des moniteurs actuels

22
Archi. - DVI
  • Digital Video Interface
  • spécifié par Digital Display Working Group
  • pour périphériques numériques et analogiques
  • 3 normes existantes
  • DVI-A signal analogique en sortie
  • DVI-D signal numérique
  • DVI-I (I integrated) prend en charge les 2
    types de sortie
  • DVI-D et DVI-I pour les périphériques numériques
    (écran plat, ) ? pas de RAMDAC

23
Archi. - Mémoire Vidéo (1/5)
  • Besoin dun débit soutenu
  • Résolution 1024x768 en true color à 70Hz gt débit
    de 1024x768x3x70 157 Mo/s
  • Accès multiple du GPU et du RAMDAC ? latence
  • Nombreux types de mémoire DRAM, VRAM, SDRAM,
    RAMBUS, ...
  • DRAM
  • DRAM EDO
  • VRAM
  • WRAM
  • MDRAM
  • SDRAM
  • SGRAM
  • RAMBUS
  • DDR-SDRAM

24
Archi. - Mémoire Vidéo (2/5)
  • DRAM (Dynamic RAM)
  • type FPM (Fast Page Mode) rafraîchi très souvent
    ? latence ( asynchrone) ? accès en 70 ns
  • 225 Mo/s (33Mhz-50MHz)
  • type de mémoire lente et dépassée
  • DRAM EDO (DRAM Extended Data Out)
  • 400 Mo/s (inadaptée pour des fréquences gt 66 MHz)
  • accès réduit à 50-60 ns (système de cache de
    ladresse de la prochaine cellule à lire/écrire)
  • surtout employé par 3DFX (Diamond Monster) mais
    aussi par S3 (Virge 3D)
  • DRAM
  • DRAM EDO
  • VRAM
  • WRAM
  • MDRAM
  • SDRAM
  • SGRAM
  • RAMBUS
  • DDR-SDRAM
  • DRAM
  • DRAM EDO
  • VRAM
  • WRAM
  • MDRAM
  • SDRAM
  • SGRAM
  • RAMBUS
  • DDR-SDRAM

25
Archi. - Mémoire Vidéo (3/5)
  • VRAM (Video RAM)
  • 625 Mo/s (30 plus chère que DRAM)
  • Jusquà 80 MHz - temps daccès 20-25 ns
  • Dual Port (grâce à un registre à décalages)
  • WRAM (Windows RAM)
  • 960 Mo/s
  • VRAM avec circuit 32 bits
  • Fonctionnalités 2D (transfert de mémoire, )
  • Matrox (Millénium II)
  • DRAM
  • DRAM EDO
  • VRAM
  • WRAM
  • MDRAM
  • SDRAM
  • SGRAM
  • RAMBUS
  • DDR-SDRAM
  • DRAM
  • DRAM EDO
  • VRAM
  • WRAM
  • MDRAM
  • SDRAM
  • SGRAM
  • RAMBUS
  • DDR-SDRAM
  • DRAM
  • DRAM EDO
  • VRAM
  • WRAM
  • MDRAM
  • SDRAM
  • SGRAM
  • RAMBUS
  • DDR-SDRAM
  • MDRAM (Multi-bank DRAM)
  • Accès simultanés
  • 500 Mo/s
  • Cartes S3, Hercules Dynamite 128, Tseng Labs
    ET6000

26
Archi. - Mémoire Vidéo (4/5)
  • SDRAM (Synchronous RAM)
  • apparue en 1997
  • synchronisée avec le bus mémoire
  • temps daccès 10-12 ns
  • Fréquence 66-133 Mhz
  • 500, 800, 1.060 Mo/s ? 66, 100, 133 Mhz
  • SGDRAM (Synchronous Graphic RAM)
  • SDRAM dédié pour la vidéo
  • Single Port
  • synchronisé au bus mémoire (lt100MHz)
  • techniques
  • Masked write modification en 1 cycle
  • Mode rafale (Block write) récupération/modificati
    on par blocs entiers
  • exemple Matrox Mystique
  • DRAM
  • DRAM EDO
  • VRAM
  • WRAM
  • MDRAM
  • SDRAM
  • SGRAM
  • RAMBUS
  • DDR-SDRAM
  • DRAM
  • DRAM EDO
  • VRAM
  • WRAM
  • MDRAM
  • SDRAM
  • SGRAM
  • RAMBUS
  • DDR-SDRAM

27
Archi. - Mémoire Vidéo (5/5)
  • RAMBUS
  • soutenue par Intel
  • à 300 MHz, 1.2 Go/s
  • à 400 MHz, 1.6 Go/s
  • énorme latence
  • DDR-SDRAM (Double Data Rate SDRAM)
  • 2 informations transférées par cycle (1 front
    montant / 1 front descendant)
  • temps daccès 6 ns
  • fréquence de 100 - 500 MHz
  • débit de 1.5 - 3 Go/s
  • exemple GeForce 6800 - Radeon X800
  • DRAM
  • DRAM EDO
  • VRAM
  • WRAM
  • MDRAM
  • SDRAM
  • SGRAM
  • RAMBUS
  • DDR-SDRAM
  • DRAM
  • DRAM EDO
  • VRAM
  • WRAM
  • MDRAM
  • SDRAM
  • SGRAM
  • RAMBUS
  • DDR-SDRAM

28
Archi. - Bus (1/10)
  • ISA (Industry Standard Architecture)
  • 1981 8 bits à 4.7 MHz (8086)
  • 1994 16 bits à 6 puis 8 MHz (80286)
  • débit maximal de 5.5Mo/s
  • Goulot détranglement dès larrivée du 80386
  • Propriétés
  • ? facilement utilisable et peu coûteux
  • ? bus très lent

Mémoire Centrale
BUS
GPU
DVI
Mémoire vidéo
CRT
Ramdac
  • ISA
  • MCA
  • EISA
  • VLB
  • PCI
  • AGP
  • PCIe

29
Archi. - Bus (2/10)
  • MCA (Micro Channel Architecture)
  • développé et utilisé par IBM (avec ses PS/2)
  • incompatibilité avec lISA ? monopole dIBM
  • 1er bus à 32bits - 10 Mhz (40 Mo/s)

Mémoire Centrale
BUS
GPU
DVI
Mémoire vidéo
  • EISA (Enhanced ISA)
  • sorti en 1988
  • développé par des constructeurs (Compaq, ) pour
    contre-attaquer le MCA
  • architecture 32bits, compatible ISA 8/16 bits
  • 8.33 Mhz (compatibilité ISA) - 33 Mhz
  • utilisation applications lourdes (serveurs de
    fichiers, )

CRT
Ramdac
  • ISA
  • MCA
  • EISA
  • VLB
  • PCI
  • AGP
  • PCIe
  • ISA
  • MCA
  • EISA
  • VLB
  • PCI
  • AGP
  • PCIe

30
Archi. - Bus (3/10)
  • VLB (VESA Local Bus)
  • sorti en 1992
  • développé parVideo Electronic Standard
    Association
  • extension du bus local du processeur (port ISA
    étendu)
  • spécifique aux cartes graphiques
  • bus de 32bits
  • fréquence externe du processeur 33 à 50 Mhz
  • débit théorique 130 Mo/s (40Mo/s en pratique)
  • VLB 2.0 fonctionne en 64 bits

Mémoire Centrale
BUS
GPU
DVI
Mémoire vidéo
CRT
Ramdac
  • ISA
  • MCA
  • EISA
  • VLB
  • PCI
  • AGP
  • PCIe

31
Archi. - Bus (4/10)
  • PCI (Peripheral Component Interconnect )
  • réponse dIntel au VLB (1993)
  • PCI 1.0 32bits - 33MHz ?132 Mo/s (le plus
    courant)
  • PCI 2.0 64 bits (33, 66, 133 MHz) pour serveurs
  • fonctionnalités que ne possède pas le VLB
  • Bus Master transfert entre 2 périphériques PCI
  • Look Ahead anticipation
  • Buffering stockage temporaire de linformation
    ?meilleur débit
  • incompatible avec ISA ? carte-mère avec slots PCI
    et ISA
  • devenu un standard et un goulet détranglement !

Mémoire Centrale
BUS
GPU
DVI
Mémoire vidéo
CRT
Ramdac
  • ISA
  • MCA
  • EISA
  • VLB
  • PCI
  • AGP
  • PCIe

32
Archi. - Bus (5/10)
  • AGP (Accelerated Graphics Port) 1997
  • bus spécifique aux cartes graphiques / archi
    32bits
  • basé sur le PCI 2.1 ? 66 MHz
  • existence dune version professionnelle (110 W au
    lieu de 50W)
  • SBA (Side Board Addressing) données chargées sur
    le bus AGP utilisation du PCI pour signaux de
    contrôle
  • Fonctionnalités
  • Bus mastering accès direct à la mémoire
  • Pipelining requêtes en série ( ? PCI avec
    attente d ACK)
  • 2 modes de fonctionnements
  • Mode PIPE (local texturing) utilisation dun DMA
    pour transfert vers mémoire locale (2 cycles pour
    afficher)
  • Mode DIME (Direct Memory Execute) traitement des
    textures en mémoire centrale (1 cycle pour
    afficher)

Mémoire Centrale
BUS
GPU
DVI
Mémoire vidéo
CRT
Ramdac
  • ISA
  • MCA
  • EISA
  • VLB
  • PCI
  • AGP
  • PCIe

33
Archi. - Bus (6/10)
  • AGP (Accelerated Graphics Port) ...
  • débits
  • 1x 264Mo/s (codage sur les fronts montants)
  • 2X 528Mo/s (codage sur les deux fronts)
  • PIPE envoie donnéecontrôle multiplexé
  • SBA envoie donnéecontrôle dé-multiplexé
  • 4x 1Go/s (double les infos sur chaque front)
  • mémoire suffisamment rapide (DDR ou RAMBUS)
  • Fast Write accès direct mémoire vidéo
  • 8x 2Go/s (quadruple les infos sur chaque front)
    mais gain minuscule de 5 par rapport au 4x

Mémoire Centrale
BUS
GPU
DVI
Mémoire vidéo
CRT
Ramdac
  • ISA
  • MCA
  • EISA
  • VLB
  • PCI
  • AGP
  • PCIe

34
Archi. - Bus (7/10)
  • PCI express (PCIe)
  • objectifs
  • bande passante élevée (jusquà 8Gb/s)
  • fournir une qualité de service
  • intégrité des données/détection derreurs
  • priorité des données
  • branchement à chaud (hot plug)
  • gestion de lalimentation

Mémoire Centrale
BUS
GPU
DVI
Mémoire vidéo
CRT
Ramdac
  • ISA
  • MCA
  • EISA
  • VLB
  • PCI
  • AGP
  • PCIe

35
Archi. - Bus (8/10)
  • interface série décomposée en plusieurs niveaux
  • Couche physique
  • Bus constitué de 2 paires de signaux (1 émission,
    1 réception)
  • Bande passante peut-être augmentée linéairement
    par ajout de paires de lignes (x1 ? x32)
  • Couche de données
  • Couche de transactions

Mémoire Centrale
BUS
GPU
DVI
Mémoire vidéo
CRT
Ramdac
  • ISA
  • MCA
  • EISA
  • VLB
  • PCI
  • AGP
  • PCIe

36
Archi. - Bus (9/10)
  • interface série décomposée en plusieurs niveaux
  • Couche physique
  • Couche de données
  • Responsable de lintégrité des données
  • Protocole de contrôle de flux pour sassurer que
    le paquet nest émis que lorsquun buffer de
    réception est disponible
  • Couche de transactions

Mémoire Centrale
BUS
GPU
DVI
Mémoire vidéo
CRT
Ramdac
  • ISA
  • MCA
  • EISA
  • VLB
  • PCI
  • AGP
  • PCIe

37
Archi. - Bus (10/10)
  • interface série décomposée en plusieurs niveaux
  • Couche physique
  • Couche de données
  • Couche de transactions
  • paquets supportent adressage de 32bits / 64bits
    étendu
  • paquets peuvent avoir des attributs (priorité,)
  • encapsulation des niveaux

Mémoire Centrale
BUS
GPU
DVI
Mémoire vidéo
CRT
Ramdac
  • ISA
  • MCA
  • EISA
  • VLB
  • PCI
  • AGP
  • PCIe

38
Troisième partieAccélérateur graphique
39
Accélérateur graphique
  • Accélérateur 2D
  • Pipeline de rendu 3D
  • Accélération matérielle du pipeline 3D

40
Accélérateur 2D (1/2)
  • Ancêtre des accélérateurs graphiques
  • cartes à coprocesseur graphique (carte
    programmable)
  • début 90 avec TIGA (TMS34020), ou P9000 (Carte
    Diamond Viper)
  • dépassé ensuite par les cartes accélératrices
  • MAIS principe darchitecture graphique
    programmable réutilisé tard en 3D

41
Accélérateur 2D (2/2)
  • Accélération des traitements 2Dligne,
    rectangle, curseur souris, overlay, bitBLT
  • Décompression MPEG2 (DVD)
  • Tuner TV
  • Acquisition vidéo
  • Cartes 2D seules nexistent plus
  • Carte 3D pure (3dfx voodoo)
  • Maintenant, carte 2D/3D

42
Principe du rendu projectifle pipeline de rendu
3D
Vertices
Transform Lighting
Face Culling User Clip Planes Frustum
Clipping Homogenous Divide Viewport Mapping
Vertex Operations Geometric pipeline
Triangle Setup
Texturing
Fog Effects
Alpha Test
Stencil, Depth Test
Pixel Operations
Rasterization
Alpha Blending
Dithering
Channel Mask
Framebuffer
43
Principe du rendu projectifle pipeline de rendu
3D
  • Planter le décor Transformplacer lobjet dans
    la scène par rapport à la caméra
  • opérations matricielles 3D
  • translation, rotation, mise à léchelle,
    projection

Vertices
Transform Lighting
Face Culling User Clip Planes Frustum
Clipping Homogenous Divide Viewport Mapping
Vertex Operations Geometric pipeline
Triangle Setup
  • Allumer les lumières Lightingmodèle de Phong
  • éclairement ambiant
  • éclairement diffus
  • éclairement spéculaire

Texturing
Fog Effects
Alpha Test
Stencil, Depth Test
Pixel Operations
Rasterization
Alpha Blending
Dithering
Channel Mask
Framebuffer
44
Principe du rendu projectifle pipeline de rendu
3D
  • Inutile de dessiner ce que lon ne voit pas
  • face culling orientation arrière
  • clipping hors champ
  • Homogenous divideprojection 3D-gt2D
  • Viewport mappingplacement dans la fenêtre

Vertices
Transform Lighting
Face Culling User Clip Planes Frustum
Clipping Homogenous Divide Viewport Mapping
Vertex Operations Geometric pipeline
Triangle Setup
Texturing
Fog Effects
Alpha Test
Stencil, Depth Test
Pixel Operations
Rasterization
Alpha Blending
Dithering
Channel Mask
Framebuffer
45
Principe du rendu projectifle pipeline de rendu
3D
  • Triangle setup préparation du triangle
  • Délimitation du triangle par ses bords pour
    chacune de ses lignes (scanline)
  • Interpolation bilinéaire des attributs des
    sommets pour chaque pixel
  • Couleur
  • Profondeur (z)
  • Coordonnées de texture UV

Vertices
Transform Lighting
Face Culling User Clip Planes Frustum
Clipping Homogenous Divide Viewport Mapping
Vertex Operations Geometric pipeline
Triangle Setup
Texturing
Fog Effects
Alpha Test
Stencil, Depth Test
Pixel Operations
Rasterization
Alpha Blending
Dithering
Channel Mask
Framebuffer
46
Principe du rendu projectifle pipeline de rendu
3D
  • Texturing
  • Combinaison de couleurs
  • Couleur déclairement
  • Couleur de la texture
  • Filtrage des textures
  • Bi-linéaire
  • Tri-linéaire (mip mapping)
  • Multitexturing
  • Techniques basées sur des texturesLight
    mapping, Bump mapping, Shadow mapping

Vertices
Transform Lighting
Face Culling User Clip Planes Frustum
Clipping Homogenous Divide Viewport Mapping
Vertex Operations Geometric pipeline
Triangle Setup
Texturing
Fog Effects
Fog Effects
Alpha Test
Stencil, Depth Test
Pixel Operations
Rasterization
Alpha Blending
  • Fog effects brouillardAltération de la
    couleur basé sur la profondeur z du pixel

Dithering
Channel Mask
Framebuffer
47
Principe du rendu projectifle pipeline de rendu
3D
  • Tests éliminatoires
  • Alpha test seuil sur le canal alpha
  • Stencil test Stencil Buffer (effets)
  • Depth test Z-Buffer (test de profondeur z)

Vertices
Transform Lighting
Face Culling User Clip Planes Frustum
Clipping Homogenous Divide Viewport Mapping
Vertex Operations Geometric pipeline
  • Alpha blending TransparenceMixe ancienne
    couleur (Framebuffer) nouvelle couleur

Triangle Setup
Texturing
Fog Effects
  • Dithering Illusion de couleur, motifUtile
    pour les résolutions à faible nombre de couleur
    ou palettiser

Alpha Test
Stencil, Depth Test
Pixel Operations
Rasterization
Alpha Blending
Alpha Blending
Dithering
Dithering
  • Channel Mask filtre sur les canaux de couleur
    (rouge, vert, bleu, alpha)

Channel Mask
Channel Mask
Framebuffer
Framebuffer
48
Accélérateur 3D
  • Transform Lighting (en soft) 3D Now, MMX
  • 31 août 1999 GeForce256 (nVidia)
  • GPU (Graphics Processing Unit)
  • pipeline 100 hard (TL, culling, clipping)

Vertices
T L
Vertex Shader
Culling, Clipping
Vertex
Triangle Setup
Texturing
Reg. combiners
  • Améliorations matérielles du pipeline 3D
  • Registers combiners (GeForce256)
  • Circuit câblé paramétrable pour le calcul de la
    couleur (texture)
  • Obsolète

Pixel Shader
Fog
Pixel
Rasterization
Framebuffer
  • Shader (Vertex Pixel) (GeForce3)Circuit
    programmable remplaçant une partie du pipeline 3D

49
GPU - Shader
  • Architecture SIMD
  • Nombre dinstructions limité
  • 128 GeForce3-4 Radeon8500
  • 1024 GeForceFX
  • Programmation
  • bas niveau (assembleur)
  • haut niveau (C) oulangages dédiés (HLSL, Cg,
    GLSL)

Vertices
Vertex Shader
Culling, Clipping
Vertex
Triangle Setup
Pixel Shader
Pixel
Rasterization
Framebuffer
50
GPU - Vertex shader
  • Architecture
  • Registres temporaires
  • Registres constants (mémoire)
  • ALU

Vertices
Vertex Shader
Culling, Clipping
Vertex
Triangle Setup
Pixel Shader
Pixel
Rasterization
Framebuffer
51
GPU - Vertex shader
  • Remplace létape de TL
  • Possibilités
  • Position Procédurale
  • Mélange de transformations (Vertex Blend)
  • Mélange de maillages (Morphing)
  • Déformation du maillage (Vertex Deformation)
  • Eclairage par sommet (Per Vertex Lighting)
  • Tissu, peau, interpolation, displacement maps
  • Coordonnées de texture
  • Brouillard particulier
  • Taille daffichage dun point

Vertices
Vertex Shader
Culling, Clipping
Vertex
Triangle Setup
Pixel Shader
Pixel
Rasterization
Framebuffer
52
GPU - Vertex shader
  • Possibilités
  • Mélange de transformations (Vertex Blend)

Vertices
Vertex Shader
Culling, Clipping
Vertex
Triangle Setup
Pixel Shader
Pixel
Rasterization
Framebuffer
53
GPU - Vertex shader
  • Possibilités
  • Déformation de maillage (Vertex deformation)

Vertices
Vertex Shader
Culling, Clipping
Vertex
Triangle Setup
Pixel Shader
Pixel
Rasterization
Framebuffer
54
GPU - Vertex shader
  • Possibilités
  • Displacement mapping

Vertices
Vertex Shader
Culling, Clipping
Triangle Setup
Pixel Shader
Rasterization
Framebuffer
55
GPU Pixel shader
  • Remplace létape du calcul de la couleur
  • Possibilités
  • Réflexion par pixel
  • Illumination par pixel (phong, BRDF)
  • Textures procédurales
  • Effets au niveau pixel

Vertices
Vertex Shader
Culling, Clipping
Vertex
Triangle Setup
Pixel Shader
Pixel
Rasterization
Framebuffer
56
GPU Pixel shader
  • Architecture

Vertices
Vertex Shader
Culling, Clipping
Vertex
Triangle Setup
Pixel Shader
Pixel
Rasterization
Framebuffer
57
GPU Pixel shader
  • Exemple  cartoon shading
  • Produit scalaire (lumière x normale) pour
    indexer une texture 1D

Vertices
Vertex Shader
Culling, Clipping
Vertex
Triangle Setup
Pixel Shader
Pixel
light
Rasterization
Framebuffer
1.0
dot product
0.0
1 dimensional texture
58
GPU Pixel shader
  • Exemple  cartoon shading
  • Zelda The Wind Maker
  • Exemple  cartoon shading
  • A Scanner Darkly

59
GPU Pixel shader
  • Exemple  bump mapping

60
GPU Pixel shader
  • Effet de flamme

61
GPU - Pixel shader
  • Eclairage par pixel (Per Pixel Lighting)

62
GPU - Pixel shader
  • Eclairage anisotropique

63
Conclusion - perspectives (1/2)
  • Modes graphiques assez peu de changement
    (éventuellement augmentation de résolutions)
  • Amélioration des bus et mémoires (débit,
    fréquence de fonctionnement)
  • Efforts concentrés sur le GPU
  • devient un  processeur  de plus en plus
    performant
  • effets visuels coûteux en temps-réel (lancer de
    rayons)
  • calculs scientifiques complexes (simulation de
    tissus, cheveux, )
  • possibilité de mettre 2 GPU en série nvidia SLI
    (Scalable Link Interface).

64
Conclusion - perspectives (2/2)
  • Nalu (Geforce 6800)
  • simulation physique de 762 cheveux ? génération
    de 4095 cheveux.
  • ombrage en multi-passes.
  • autres possibilités
  • simulation physique de tissu / fluides.
  • simulation de réactions chimiques.
  • voir www.gpgpu.org

65
Merci ?Question ?!
Write a Comment
User Comments (0)
About PowerShow.com