Mi az a Pixel Shader Verzió? Egy csomó játéknál azt írja hogy pixel shader verzió kicsi.
Szia!
A textúra egy egyszerű 2D kép, aminek a mérete változó, így egy 3D objektum felületének szimulálására használható. A példánkban szereplő kocka egyszerű doboznak látszik, amíg rá nem helyezünk valamilyen textúrát. Ha ez megvan, úgy néz ki, mintha ráfestettek volna valamit.
Shader
Jelenleg kétféle shader használatos: a vertex shader és a pixel shader. A vertex shaderek a 3D elemeket transzformálják, míg a pixel shaderek komplex bemenet alapján képesek megváltoztatni a pixelek színét; képzeljünk el egy fényforrást: a színek megvilágítás esetén fényesebbek, míg mások árnyékosabbak lehetnek, a szín erősségének csökkentésével.
A pixel shadereket gyakran használják komplex effektek megjelenítésére kedvenc játékainkban. Egy shader például képes arra, hogy a kard kontúrját jelentő pixelek fényessé tegyék azt. Egy másik shader pedig képes hatással lenni az összes vertexre úgy, hogy az objektum felrobbanást imitáljon. A játékfejlesztők egyre jobban hagyatkoznak a shader programokra és logikai egységekre, hogy egyre realisztikusabb grafikával szolgálhassanak. Ebből következően, a legtöbb grafikailag vonzó játék erőteljesen támaszkodik a shaderekre.
A Microsoft következő API-jával (Application Programming Interface), a DirectX 10-zel, egy harmadik shader is bemutatkozik, aminek a neve geometry (geometriai) shader. Ez képes lesz részekre bontani az objektumokat, módosítani vagy akár elpusztítani őket a kívánt végeredmény szerint. Ez a három shader típus programozás-technikailag nagyon hasonló, céljaik azonban különbözők.
Fill Rate
Az egyik reklámozott elem a grafikus kártyák dobozán a fill rate. A fill rate (kitöltési ráta) a grafikus kártya pixelek kirajzolására vonatkozó sebességbeli értéke. A régebbi kártyák rendelkeztek triangle (háromszög) fill rate-tel is, a maiak azonban két másik formáját alkalmazzák a fill rate-nek: a pixel fill rate-et és a texture fill rate-et. Mint fentebb említettük, a pixel fill rate azt mutatja meg, hogy hány pixelt képes a kártya megjeleníteni. A számítás módja a raszterműveletek (Raster Operation, ROP) megszorzása az órafrekvenciával.
A texture fill rate az ATI és az Nvidia esetében különbözően számoltatik. Az Nvidia ez alatt a pixel futószalagok száma, szorozva az órajellel, míg az ATI a textúraegységek száma szorozva az órajellel értéket érti. Mindkét megoldás korrekt, hiszen az Nvidia egy textúraegységgel rendelkezik pixel shaderenként.
Most, hogy felvérteztük magunkat ezekkel a definíciókkal, menjünk tovább a grafikus processzor legsűrűbben emlegetett elemei felé, s nézzük meg, mit csinálnak valójában.
Forrás: Tom's Hardware
Akkor leírom magyarul, jó?
A directx 7-ben jelent meg a T&L (transformation & lightning) ami egyszerűen fogalmazva annyit jelentett, hogy a processzor helyett a grafikus kártya processzora számolt bizonyos műveleteket. (Az ezt megelőző verziókban még a cpu számolt szinte mindent, a grafikus kártya processzora csak a legutolsó lépésben vett részt)
A dx8-as verziójával debütált a Microsoft-féle pixel/vertex shader.
A vertex shader a háromdimenziós térben lévő pontokra alkalmazható programokat jelenti, azaz a fejlesztők elkészítik a modelek drótvázát, amelyeket a programozók a VS segítségével a program futási idejében változtathatnak meg. Ebben az az újítás, hogy mindezen programokat a grafikus kártya futtatja és nem a cpu.
A pixel shader (képpont árnyaló) a képalkotási eljárás végén kap szerepet, amikor a képernyőre ténylegesen kikerülő képpontokra lehet a fentihez hasonlóan programokat készíteni.
DX8-ban a PS1.0 és PS1.1 jelent meg, Dx9-ben pedig a 2.0 , 2.0a , 2.0b és 3.0. (dx9 , dx9a, dx9b, dx9c)
A felsőbb Dx verziók pedig még újabb shader szinteket hoznak be.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!