A héten írtunk a Microsoft DirectSR API-járól, aminek a célja, hogy a fejlesztők egységes kódútból működtessék a hasonló elven működő, azaz megegyező bemeneti adatokat igénylő felskálázó eljárásokat. Az elvi alapokat tekintve sokan az NVIDIA-féle, nyílt forráskódú Streamline SDK-hoz hasonló működést gondoltak el, de valójában szó sincs erről, ugyanis amíg a Streamline beépülő modulok formájában próbálja a rendszert egységesíteni, addig a Microsoft konkrétan egy erre szabott interfészt tervezett.
Hirdetés
A Streamline SDK nagyrészt azért nem lett sikeres, mert a legtöbb videojáték-motor eleve próbál hasonló egységesítést végrehajtani, ha felmerül a többféle felskálázás implementálásának lehetősége. Emiatt a fejlesztők értelmetlennek tartják tovább bonyolítani a kódot egy külső alternatívával, hiszen ez csak növelné a hibák lehetőségét, ami mindenkinek rossz lenne. Ugyanakkor az sem túl jó, hogy ha mindenkinek meg szeretnének felelni, akkor egyszerre be kell építeni az AMD FSR, az Intel XeSS és az NVIDIA DLSS, lehetőségek szerint aktuális verzióit, amit bármennyire megpróbálnak az érintettek magunka egyszerűbbé tenni, extra munkával mindenképpen számolni kell.
A Microsoft DirectSR API máshogy közelíti meg a kérdést. Ez a rendszer a jelenlegi formában nem is támogatja az FSR, XeSS és DLSS felskálázásokat. Ahhoz, hogy ezek működjenek, az érintett gyártóknak át kell majd írniuk az eljárásaikat a DirectSR specifikációinak megfelelően. Nyilván ezt mindenki meg fogja tenni, tehát gond itt alapvetően nincs, ugyanakkor a redmondiak számos tényező tekintetében egységes működést igényelnek. Nagyon leegyszerűsítve az adott videojáték-motor a DirectSR API-n keresztül biztosítaná az egységes bemeneti adatokat, amelyeket egy DirectSR meghajtóimplementáció dolgozna fel az adott GPU-n, majd az eredményt visszaadja a programnak.
Ennek a módszernek számos előnye van, egyrészt szükségszerűen közelebb viszi egymáshoz a szóban forgó gyártói implementációkat, másrészt utólagos fejleszthetőséget biztosít. Azzal ugyanis, hogy egy DirectSR meghajtóimplementáció felel az adatok feldolgozásáért, a mögöttes kód anélkül kicserélhető, hogy a programszinten bármilyen frissítést kellene eszközölni. Ráadásul maga a DirectSR API egy szabvány, vagyis pont olyan jellegű kompatibilitás várható el, mint amilyet biztosít például a DirectX API. Utóbbi nyilván nem jelenti azt, hogy nem fordulhatnak elő program- vagy meghajtóhibák, de ezek relatíve gyorsan korrigálhatók.
A nagy kérdés a rendszer fejleszthetősége lesz. Amíg különálló formában az AMD FSR, az Intel XeSS és az NVIDIA DLSS szabadon lépdelhetett előre, addig a DirectSR verziókat tekintve ügyelni kell az API lehetőségeire is. Jelenleg szerencsés véletlennek is tekinthető, hogy mindhárom gyártói alternatíva temporális analitikai felskálázó, amelyek a tartalomgenerálást tekintve gyakorlatilag működésben megegyezők. Mindez szuper alap a DirectSR-hez, de nem egyértelmű, hogy innen ki merre szeretne, illetve tudna továbblépni. Hosszabb távon az tűnik valószínűnek, hogy érkeznek majd olyan újabb felskálázó megoldások, amelyek valószínűleg a DirectSR-en kívül kezdik meg életútjukat, utána pedig a Microsoft magát az API-t az új lehetőségekhez fogja igazítani a gyártókkal való egyeztetéseket követően, ezzel teremtve meg a folyamatos egységesítés feltételeit.