Videoadaptéry. Vývoj, typy, vlastnosti. 3D akcelerátory
Videokarty Počítače řady PC používají podobně jako většina počítačů k zobrazení informace vakuovou obrazovku, která je součástí monitoru. Videokarty (grafické karty, grafické adaptéry) jsou zařízení, která zabezpečují výstup dat z počítače na obrazovku monitoru. Videokarta má vliv na to, jaký software může uživatel na počítači provozovat a jak rychle se data na obrazovku přenášejí. Většina videokaret dovoluje práci ve dvou základních režimech: ●
●
textový režim: režim, který umožňuje zobrazovat pouze předem definované znaky, jako jsou písmena (A, a, B, b, C, c, ...), číslice (1, 2, 3, ...), speciální znaky (&, ^, %, ...) a pseudografické znaky (symboly pro vykreslování tabulek). Tyto znaky jsou přesně definované pomocí matic bodů a je možné je zobrazovat pouze jako celek. grafický režim: režim, ve kterém jsou informace zobrazovány po jednotlivých obrazových, bodech tzv. pixelech (Picture Element). Tento režim již nepoužívá předem definované znaky, ale může z jednotlivých pixelů vykreslit prakticky "libovolnou" (závisí na možnostech konkrétní karty) informaci.
Základní parametry každé videokarty jsou Parametr
Vysvětlení
Rozlišení v textovém Počet znaků, které je možné v textovém režimu zobrazit na jednom řádku, režimu a počet řádků, které je možné umístit na obrazovku Matice znaku
Počet bodů (ve vodorovném a ve svislém směru), ze kterých se může skládat jeden znak v textovém režimu
Rozlišení v grafickém Počet pixelů, které je možné v horizontálním a ve vertikálním směru režimu zobrazit Počet barev (barevná Počet barev, které je možné zároveň zobrazit. Udavá se většinou pouze hloubka) pro grafický režim. Počet pixelů, které videokarta dokáže vykreslit za jednotku času. Udává se pouze v grafickém režimu. Grafické karty, které jsou schopny zobrazit maximálně dvě barvy, jsou označovány jako monochromatické (černobílé). Rychlost
Moderní videokarty se skládají z následujících částí: ● ● ● ●
procesor paměť DAC převodník ROM BIOS
Schéma videokarty Při práci zapisuje procesor počítače obrazová data do videopaměti. Takto zapsaná data jsou potom čtena procesorem videokarty, který na jejich základě vytváří digitální obraz. Digitální obraz je posílán na vstup DAC (Digital Analog Convertor) převodníku, který z něj vytváří analogový obraz nutný pro moderní monitory, řízené spojitě (analogově) měnící se hodnotou signálů tří základních barev (Red - červená, Green - zelená, Blue - modrá) grafický čip Je mozkem celé karty, zpracovává instrukce od procesoru, provádí vlastní výpočty a předává data D/A převodníku, který je posílá do monitoru. Důležitá je datová šířka čipu, 64b je standard, lepší je 128 a více bitů. videopaměť Musí mít velkou kapacitu a musí být rychlá. Velikost paměti je závislá na rozlišení a na množství zobrazených barev. počet barev
počet bitů
označení
16
4
256
8
65536
16
High color
16,7 mil.
24
True color
rozlišení
8 bitů (256 barev)
16 bitů (HI color)
24 bitů (True c.)
640x480
512 kB
1 MB
1 MB
800x600
512 kB
1 MB
2 MB
1024x768
1 MB
2 MB
4 MB
1280x1024
2 MB
4 MB
4 MB
1600x1200
2 MB
4 MB
6 MB
Jako videopaměť se používají paměti DRAM a EDORAM nebo speciální druhy: VRAM – VideoRam, je obvyklou pamětí. Mohou k ní přistupovat dvě zařízení současně. WRAM – Windows Ram pracuje podobně jako VRAM, ale podporuje práci s dlouhými bloky (okny) dat. Je rychlejší a levnější než VRAM. SGRAM – Synchronus Graphic RAM pracuje synchronně se sběrnicí až do rychlosti 100 Mhz. Podporuje dlouhé bloky dat a přístup dvou zařízení. MDRAM – Multibank DRAM. Celková kapacita je rozdělena do částí (banků) po 32 kB. Každý bank má svou vstupně výstupní sběrnici a může se k nim přistupovat najednou. Není tak omezena kapacitou (pro 1024x768 v true color stačí 2,5 MB – porovnej výše s tabulkou) Dnes se nejvíc používá DDR SDRAM. Existují motherboardy s možností práce UMA (Unified Memory Architecture) s integrovaným gr. adaptérem. Jako videopaměť se používá RAM, což je nevýhodné. Generátor znaků Je v něm zakódován tvar většiny znaků. Nemá však velkou paměť, a tak se speciální znaky abecedy načítají z disku (codepage – znaková stránka). ROMBIOS Rozšiřuje BIOS motherboardu o BIOS videokarty. RAMDAC Je D/A převodník. Pracuje na frekvencích 135 – 230 Mhz, čím více, tím lépe. (pojmy DAC a DCA) Provedení karty PCI je standard, nastupuje AGP, může být i on-board
Typy adaptérů: MDA (Monochrome Display Adapter) textový režim 80x25, matice znaku 8x14 pixelů, RAM 4 kB, BIOS motherboardu CGA (Color Graphic Adapter)
textový režim
80x25 40x25
matice znaku
8x8
grafický režim
640 x 200, 2 barvy 320 x 200, 4 barvy
paměť
16 kB
některé CGA dovolovaly připojení TV koaxiálním kabelem
HGA (Herkules Graphic Card) současník CGA, měl dobrou rozlišovací schopnost a hustou matici znaku, ale byl vyráběn konkurencí, takže ho BIOS IBM-PC nepodporoval a kartu musela ovládat aplikace. Měl také jiné I/O signály, takže potřeboval speciální monitor.
textový režim
80x25
matice znaku
9x14
grafický režim
720 x 348, 2 barvy
paměť
64 kB
obnovovací frekvence 50 Hz
EGA (Enhanced Graphic Adapter) byl pokračovatelem CGA. Podporoval všechny předchozí a přidával své vlastní režimy. Hlavním režimem bylo 640 x 350 s 16 barvami z 64 dostupných. Paměť bývala od 64 do 256 kB VGA (Video Graphic Adapter) Všechny předešlé adaptéry přenášely do monitoru digitální signál. VGA vysílá analogový, a proto není kompatibilní se staršími monitory. rozlišení
barvy
320 x 200
256
640 x 480
2 ze 16
640 x 480
16 z 256
640 x 480
256 z 64K
SVGA (Super VGA) je vylepšovaná VGA. Chaotické používání režimů vedla k zavedení režim VESA – jednotné rozhraní BIOSU, způsob adresování RAM, a používání synchronizační frekvence. Už se neprodávají, nahradily je akcelerátory.
Grafické akcelerátory 2D pro konstrukci rovinných obrazců 3D pro konstukci prostorových objektů
Obecný postup 3D grafiky: ·
definice scény
·
matematický popis těles (polygony)
·
umístění těles a jejich abstrakce vzhledem k pozorovateli
·
popis povrchu těles: stínování, nebo texturování
·
filtrování a vyhlazení obrazu
·
stanovení pořadí a viditelnosti objektů
·
odeslání snímku do monitoru
Poznámky ke grafice (děkuji Dr. Rambouskovi): např. 640x480 = 307200 pixelů, při 256 barvách (8 bitů = 1 byte pixel) = nutno nejméně 512 KB (308 KB přímo), při 65536 barev (16 bitů = 2 byte pixel) = nutno nejméně 1MB (620 KB přímo) např. 800x600 = 480000 pixelů při 16,7 mil. barev (24 bitů = 3 byte pixel) = nutno nejméně 2MB (1,44MB přímo) např. 1024x768 = 786432 pixelů při při 16,7 mil. barev (24 bitů = 3 byte pixel) = nutno nejméně 4MB (2,36 MB přímo)
Měřítka v dokumentech milimetr Point - pt = 0,353 mm (Typografický bod - b = 0,3759 mm) Inch = 25,4 mm Pica = 4,233 mm - 12 pt Cicero = 4,512 mm - 12 b pro zobrazení na monitor též pixel = 1 obrazový bod Velikost písma se udává v typografických bodech (b = 0,3759 mm) petit = 8b garmond = 10 b cicero = 12 b Rozteč (pitch) se udává v cpi (characters per inch - znaků na palec) 15 cpi = condensed 12 cpi = elite 10 cpi = pica
BARVA · ·
Přímé barvy (vzorníky) diskrétních barev založených na referenčním manuálu firmy Pantone (Pantone Matching Systém). Procesní modely barev
·
Barevný systém RGB (Red-Green-Blue - červená-zelená-modrá) se uplatňuje v prostředí vyzařujících barev (obrazovka) - max 3byte = 24 bitů = 16,7 mil.
·
Barevný systém CMYK (Cyan-Magenta-Yellow-Black - azurová-purpurová-žlutá-černá) se uplatňuje v prostředí materiálů odrážejících barvy - max 4 byte = 32 bitů = 4,3 miliardy barev
·
Systém HSB (Hue-Saturation-Brightnes - odstín -nasycení jas)
·
Tisk barev
·
· · · · ·
S barvou jsou problémy - výsledek obvykle neodpovídá očekávání. Gamut (rozsah barev) oka, ale i monitoru je široký, zatímco gamut tiskáren je velmi úzký. Navíc nesouvisejí barevné systémy. Např. při scanování nelze systém odražených barev převést bez deformace na digitální zpracování v systému vyzařujících barev a opět při tisku změnit do systému odražených barev à snaha po co nejmenších barevných odchylkáchà snha o nejlepší možné mapování barev (přiřazení netisknutelné byrvy blízké tisknutelné) Kalibrace monitoru (analogové zařízení) Nastavení chromatičnosti (Hue, Saturation), tj. odstínu a nasycení každé ze tří základních barev monitoru R-G-B Nastavení barevné teploty obrazovky Nastavení gama křivky - posunutí gradační křivky ke světlejším či tmavším odstínům normální hodnota činí 2 - 2,5 Kalibrace tiskárny - daleko složitější
·
Při tisku se pracuje obvykle se separací do 4 plátů základních barev v systému CMYK a jejich soutisk na papíře. Přitom se musí hlídat součet maximálního pokrytí bodu (TAC Total Ink Converge - teoreticky 400%, leč to by vedlo k rozpíjení aj.) Proto se do toho ještě míchá černá (UCR Under Color Removal). Černá se ale přidává i nevynuceně, z důvodu docílení vyšší ostrosti a kontrastu tisku (GRC Gray Component Replacement)..
·
Při kalibraci se vybírá Printer type (druh tiskárny), maximální UCR, Film (separace), Dot Gain (procento růstu zrna - běžná tiskárna umí jen 0% nebo 100% barvy v bodu - 50% barvu dělá řidším rastrem bodů, které se pak ale mohou rozlézat). Ink Model určuje vstupně výstupní chrakteristiky a GRC nahrazené barevných složek černou.
Jak probíhá zpracování 3D scény 1. Inicializace rozhraní •
detekce nastavení OS, ovladačů grafické karty a prostředí, testuje se verze rozhraní API
2. Vertexový rozklad základní jednotky: pixel – obrazová částice 2D, definovaná souřadnicemi x, y texel – texturový element – výpočtový model pixelu z povrchu textury voxel – prostorový texel, definovaný souřadnicemi x, y, z - s voxely se pracuje při softwarovém renderingu v této fázi vzniká matematicky definovaný obraz. Je dána poloha objektů, jejich členění na polygony (mnohoúhelníky). Vrcholy polygonů nazýváme vertexy.
3. Práce geometrické jednotky – Vertex procesing •
zejména transformace a osvětlení
Transformace je převedení virtuální 3D scény na 2D projekci.. Provádí se tzv culling – odstraňování přebytečných informací o nezobrazovaných pixelech/polygonech. V poslední části (triangle setupu) je ostínovaný a osvětlený obraz převeden na trojúhelníky. Informace o jejich poloze, intenzitě a jasu nesou vrcholy trojúhelníků (vertexy). Osvětlení probíhá současně s transformací scény a je velmi náročné. •
difuzní část počítá, jak se povrch objektu chová po dopadu světla a jak je světlo intenzivní v jeho bezprostředním okolí.
•
spekulativní osvětlení počítá s odrazem světla od samotného objektu, od jeho okolí a se závislostí intenzity, barvy a polohy světla na úhlu pohledu.
Další funkce T&L je stínování (shading), které počítá část geometrické jednotky karty zvaná Vertex Shader. Obecně známe dva druhy stínování, Gouraudovo (per vertex shading) a Phongovo (per pixel shading). 4. Texturování Dnes je obecně využíván multitexturing, tedy překrývání textur, poloprůhledný a odrazových textur (light map) ad.
texturovými efekty (při Phongově stínování, bump mappingu, difrakci a jiných odrazových efektech, texturování kůží, chlupů, a při cartoon texturingu…) Novější karty používají Pixel shadef pro práci s
5. Renderovací jednotka v této části se provádí filtrování (barevné přechody), opět culling, anti-aliasing (vyhlazování) a nakonec samotný rendering (vykreslování). Po průchodu všemi těmito kroky je obraz ve své finální podobě zapsán do videopaměti (framebufferu) a posléze odeslán k zobrazení.