Hirdetés

Bemutatkozott a DirectX 11.2 előzetese - frissítve!

A tegnap kiadott Windows 8.1-es frissítés előzetes verziója több érdekességet is tartalmaz. Például új DirectX is érkezik 11.2 jelzéssel. Fontos, hogy az aktuális verzió a végleges megjelenésig változhat, így a Microsoft leírása csak körvonalazza a várható funkciókat, de a cég fenntartja a jogot, hogy a bizonyos eljárásokat hozzáad vagy elvesz.

Ez tulajdonképpen mindig így működött szóval nincs ebből probléma, viszont ezzel nekünk is meg van kötve a kezünk, hiszen változások is előfordulhatnak. Az előzetes verzió főbb tulajdonságait mindenesetre ismertetjük:

HLSL újítások: Az új DirectX API lehetőséget ad a HLSL programok különálló összeállítására és linkelésére, aminek hála a programozók előre lefordított HLSL funkciókat kreálhatnak, és a futtatás során ezek linkelhetők. Megjelenik a Function Linking Graph (FLG) is, amivel olyan shaderek kreálhatók, melyek olyan előre lefordított funkcióhívások sorozatából állnak, amik értékeket adnak át egymásnak. Mindezt kiegészíti a HLSL fordító beépítése az API-ba. Ezt korábban az adott gyártó grafikus meghajtója tartalmazta, és ez továbbra sem tűnik el, viszont ahhoz, hogy egy program felkerüljön a Windows Store áruházba, az API beépített fordítóját kell használni.

Képkockapuffer skálázása: Ez egy nagyon érdekes újítás az API-n belül. Egy korábbi írásunkban részleteztük, hogy a fejlesztőknek a gyengébb hardverek mellé társított extrém felbontású panelek nem tetszenek, és ezt a Microsoft is problémának tekinti. A DirectX éppen ezért bevezeti a képkockapuffer skálázását. Itt tulajdonképpen arról van szó, hogy a fejlesztőnek nem szükséges egy előre meghatározott leképzési felbontás mellett döntenie, hanem választhatja a kijelző natív felbontását is. Ezután a program futtatásának sebessége mérhető, és ha kezd csökkenni a tempó, akkor kérvényezhető a felbontás menet közbeni csökkentése. Ezzel extra sebességet lehet nyerni, de nyilván hatása lesz a képminőségre, hiszen egy bizonyos ideig kisebb felbontáson történik majd a feldolgozás. Természetesen amint nő a sebesség vissza lehet váltani a nagyobb, akár natív felbontásra. Ez egy értékes funkció, így várhatóan a fejlesztők kihasználják majd a jövőben, főleg ha továbbra is a gyenge grafikus vezérlőkhöz társítják a gyártók a legnagyobb felbontású paneleket.

DXGI Trim API: Ez szintén hasznos funkció, hiszen a program megmondhatja a grafikus meghajtónak, hogy a részlegesen lefoglalt puffereket igényelhetik más programok is. Ezzel csökkenthető egy adott alkalmazás memóriaigénye. Ehhez kapcsolódó újítás, hogy egy DirectX-et használó program direkten elérheti az adott hardver alapértelmezett puffereit. Fontos megjegyezni, hogy az előbbi szolgáltatásokhoz WDDM 1.3-as grafikus driver szükséges, illetve az utóbbi funkciót a hardvernek is támogatnia kell.

Alacsony késleltetésű prezentációs API: Ez a funkció lehetővé teszi, hogy a felhasználói felület változását az eddigieknél gyorsabban prezentálja a hardver. Ebből a szempontból a Windows 8-cal eddig sem volt lényeges probléma, de a gyorsulás mindig kedvező. Ehhez a szolgáltatáshoz új grafikus driver szükséges, és ez az oka annak, hogy a Windows 8-hoz telepíthető meghajtók a Windows 8.1-hez egyszerűen nem jók. A támogatás beépítése egyébként nem okozhat gondot egyik gyártónak sem.

A fentebb leírt fontosabb újítások általános funkciók, tehát a megfelelő grafikus driverek elkészítése után minden DirectX 11-et és 11.1-et támogató hardver képes lesz kihasználni az előnyöket. Ebből a szempontból a DirectX 11.2 nem tekinthető radikálisan új API-nak, hiszen a bevezetett szolgáltatásokat a régebbi grafikus processzorok is kezelik. Ez persze nem gond, hiszen a felhasználók és a fejlesztők minden bizonnyal örülnek ennek. Az elnevezés ugyanakkor a fentiek alapján félrevezető, hiszen számos olyan hardver van a piacon, ami támogatja a DirectX 11.2-t, de a DirectX 11.1-et viszont nem. A Microsoft előzetes állásfoglalása szerint csak arra a hardverre írható rá a DirectX 11.2 támogatás, amelyik a D3D_FEATURE_LEVEL_11_1 szintet is támogatja. Ennek jelenleg csak a GCN architektúrára épülő AMD Radeon grafikus vezérlők felelnek meg.

A grafika jelentős javítása szempontjából az új API csak egy alapvető változást tartalmaz, de ez igen fontos is egyben, hiszen a fejlesztők kérték a beépítését, és az új generációs konzolok is támogatják (némileg fejlettebb formában). Ez a Tiled Resources funkció, aminek segítségével megoldható a hardveres virtuális textúrázás (ismertebb néven megatextúrázás) és hatékonyabb hardveres textúra streaming algoritmusok kreálhatók, valamint az eljárás jelentősen több adat kezelésére ad lehetőséget. Jó hír, hogy a Microsoft egy rendkívül átfogó megoldást használ erre, így olyan grafikus processzorok is támogathatják, melyek nem kezelik direkten a virtuális memóriát.

A Tiled Resources támogatása ugyanakkor így is teljesen opcionális, tehát nem kötelező, csupán ajánlott beépíteni a funkció kezelését. Az AMD már bejelentette, hogy a GCN architektúrára épülő AMD Radeon grafikus vezérlők teljes mértékben támogatják a Tiled Resources eljárást. Elvi szinten a rendszer, megfelelő szoftveres háttér mellett működhet bármelyik DirectX 11-et vagy 11.1-et támogató grafikus vezérlőn, de azok a hardverek előnyt élveznek, amelyeket alapvetően efféle igénybevételre terveztek. Információink szerint az NVIDIA készít támogatást a Tiled Resources funkcióra, viszont az Intel erről még nem nyilatkozott.

Sajnos az új DirectX nem vezet be új shader modellt, így ebből a szempontból nem került közelebb az új generációs konzolok képességeihez. Az újítások viszont így is értékesek, főleg annak tudatában, hogy nagy többségük bármelyik DirectX 11-es és 11.1-es grafikus vezérlőn működik egy friss driver telepítése után.

Kiegészítés: A Microsoft a hír megjelenését követően tájékoztatott minket arról, hogy a fentebb részletezett Tiled Resources eljárásnak két változata van az új DirectX API-n belül. Az egyik opció a DirectX 11-et (D3D_FEATURE_LEVEL_11_0) támogató hardvereknek készült, míg a másik verzió a DirectX 11.1-et (D3D_FEATURE_LEVEL_11_1) kezelő grafikus vezérlőkhöz érhető el. A két megoldás között nincs képminőségre vonatkozó különbség, viszont a DirectX 11.1-es verzió gyorsabban fut. Fontos kiemelni, hogy a támogatott DirectX szinttől függetlenül nem mindegyik hardver felel meg a Tiler Resources egyéb követelményeinek, és pontosan ezért opcionális ennek a funkciónak a támogatása.

Azóta történt

Előzmények

Hirdetés