Direct3D: Porovnání verzí

Přidáno 20 bajtů ,  před 11 lety
m
Upřesnění
(Přidání a úprava obrázků)
m (Upřesnění)
''Line-List'' je množina izolovaných [[Úsečka|úseček]]. Program vytváří tyto úsečky pomocí [[Pole (datová struktura)|pole]] vrcholů, kdy jednotlivé úsečky jsou tvořeny po sobě jdoucími dvojicemi vrcholů, proto by počet vrcholů mělo být kladné sudé číslo. Pro seznamy úseček lze také použít materiály či textury. Barvy materiálu či textury se při kreslení objeví pouze na úsečce a nikdy mezi úsečkami.
 
''Line-Strip'' je grafické primitivum, které je tvořeno množinou spojených úseček. Program může pomocí tohoto primitiva vytvářet polygony, které nejsou uzavřené. Uzavřený polygon je takový polygon, jehož první vrchol je spojen prostřednictvím úsečky s posledním vrcholem. (pokud jsou souřadnice pozic prvního a posledního vrcholu shodné, potom lze samozřejmě pomocí tohoto grafického primitiva vytvořit i uzavřený polygon). Z počtu vrcholů, který lze pro toto primitivum použít, vyplývá, že všechny vrcholy polygonu nemusí být koplanární (leží ve stejné rovině).
 
''Triangle-List'' je množina izolovaných trojúhelníků[[trojúhelník]]ů. Jejich polohy mohou (ale nemusí) být zcela nezávislé, záleží jen na požadavcích aplikace, tedy na hodnotách souřadnic jednotlivých vrcholů [[Trojúhelník|trojúhelníků]]. Jednotlivé trojúhelníky mohou být zcela odděleny, protínat se navzájem, sdílet jednu úsečku nebo dokonce úplně splývat. Způsob úplného splynutí trojúhelníků lze použít například pro jednoduché statické stínování či renderování velkých objektů zároveň s jejich detailním vykreslením povrchu, kdy se nejprve vykreslí trojúhelníky s texturou určující hrubou strukturu povrchu a poté se trojúhelníky opakovaně vykreslí s detailní texturou (texturami) s částečnou průhledností (alpha-blending). Tuto techniku lze použít samozřejmě i pro další primitiva, jimiž jsou ''Triangle-Strip'' a ''Triangle-Fan''. Jednotlivé izolované trojúhelníky jsou dány polem po sobě jdoucích trojic vrcholů. Velikost pole by tedy mělo být kladné číslo dělitelné třemi. Pořadí jednotlivých vrcholů v každé trojici potom určuje normálový vektor roviny trojúhelníka, což je důležité pro renderování polygonů při zapnutém tzv. „back-face-cullingu“, což je test nasměrování orientovaných ploch, kdy normálový vektor daného trojúhelníka směřuje buď ke kameře či od kamery a podle nastaveného režimu se trojúhelník buď vyrenderuje či nikoliv.
 
''Triangle-Strip'' je množina spojených trojúhelníků, které se dotýkají hranami. Toto primitivum je obzvláště vhodné pro renderování komplexnějších souvislých ploch tvořených mnoha vrcholy. Pokud například program renderuje pruh tvořený z ''n'' čtyřúhelníků, což je ''2n2×n'' trojúhelníků, potom potřebný počet vrcholů k jednoznačnému definování pro kreslení pomocí tohoto primitiva je ''2(n + 1)''. Pro vykreslení stejného pruhu pomocí primitiva ''Triangle-List'' by bylo potřeba ''6n6×n'' vrcholů, což má samozřejmě velký vliv na výkon vykreslování scény, protože skrze grafickou pipeline prochází daleko větší množství dat. ''Triangle-Strip'' je tedy pro takovéto úlohy daleko vhodnější a v podstatě se jedná o nejvíce používané grafické primitivum pro vykreslování 3D scén.
 
''Triangle-Fan'' je grafické primitivum podobné primitivu ''Triangle-Strip'' s tím rozdílem, že všechny trojúhelníky sdílejí jeden vrchol. Podobně jako primitivum ''Triangle-Strip'' je toto primitivum daleko vhodnější pro vykreslování souvislých ploch než primitivum ''Triangle-List'' z důvodu menšího počtu potřebných vrcholů a zejména je vhodné například pro vykreslování podstav [[Válec|válcových těles]], kde je ve středu podstavy jiná barva než na okraji (pokud je však podstava pokryta texturou, potom potřeba středového vrcholu odpadá a v tom případě je výhodnější použít primitivum ''Triangle-Strip'' – o jeden vrchol méně).