Diit.cz - Novinky a informace o hardware, software a internetu

Diskuse k Nvidia nabízí DSR i pro Kepler a Fermi

Nevím, jestli jsi to Jirko registroval (podle toho povídání o čtyřnásobku a příkladu s 2560 sníženým na 1280 soudím, že ne) – u DSR to není omezeno na dvojnásobky (resp. čtyřnásobky) rozlišení, je tam poměrně dost možností v rozsahu od nativního až po čtyřnásobné (je tam několik „násobičů“) třeba na full HD jde renderovat už ve virtuálních 2560 a pak se to přes scaler zmenšuje na 1920, takže se dá najít i vhodný kompromis, se kterým to vypadá líp a není to tak náročné)

Tu je to vidět, v čase 1:00 se dá vybrat faktor, ve 2:20 jsou pak vidět virtuální rozlišení, co to přidá do nastavení:

https://www.youtube.com/watch?v=oBVgyziMSbE

+1
-3
-1
Je komentář přínosný?

Takovou variantu neberu v potaz prostě proto, že zmenšování v neceločíselných násobcích produkuje poměrně hnusný výstup, respektive vypadá dobře jen ve specifických situacích. Není to nic nového, Nvidia to nabízela v minulosti, ATi a XGI po určitou dobu taky, především za DX8+ éry - a vždy si to odneslo kritiku (buďto jemné detaily působí zborceně, nebo je dopad na rozostření obrazu ještě výraznější - Nvidia věděla, proč zvolit způsob implementace, který znemožňuje vytváření screenshotů a tudíž objektivní srovnání kvality).

Pokud jde o poměr kvalita / výkon, má přednost MSAA (+AF/TRAA), pokud o kvalitu v absolutním měřítku, pak je lepší RG-SSAA. Oversampling je nouzovka a než obětovat 50%+ výkonu pro sporný nárůst kvality (v případě neceločíselných násobků), to je lepší zvýšit jiné detaily nebo celkové rozlišení, dovolí-li monitor. Samotný fakt, že oversampling na grafických kartách vyhynul v důsledku evoluce, ukazuje, jak ho uživatelé vnímali a jaký měl reálný přínos. Chápu, proč se k němu Nvidia vrací (při současných vysokých rozlišeních není řada nedokonalostí tak patrná a část jich skryje i gaussovský filtr), ale přesto není posun tak výrazný (a už z principu limitů této technologie ani být nemůže), aby mělo smysl jakkoli implementovaný oversampling upřednostňovat před jinými metodami AA, je-li je možné použít.

+1
-3
-1
Je komentář přínosný?

Aha, takže neregistroval :D

Jenže tohle je ideální (a Nvidia tvrdila, že je to tak i zamýšlené) právě pro ty situace, kde jiné AA nelze použít. Když to Nvidia představovala, padlo tam právě to, že ani ten supersampling, co se dřív používal, nelze vždy použít, protože s ním bývají potíže v kombinaci s některými technikami renderingu a efekty, při kterých vznikají artefakty (snad při post processingu). To v tomhle případě nehrozí, protože je to transparentní a je to až na konci celého procesu.

I když třeba nevypadá výsledek v 1,5násobném rozlišení dokonale, tak je to pořád lepší, než FXAA nebo žádné vyhlazování, u kterého třeba u drátů nebo u stébel trávy vypadávají pixely a místo linky je z toho pět teček v řadě (a her, které umí maximálně mizerné FXAA, je vagón).

Screenshoty nejdou dělat proto, že to zmenšuje až scaler grafiky (a to je imho jedna z velkých výhod, které tohle řešení má). A na udělání screenshotu stačí jakákoliv grabovací karta – vysloveně to doporučovali recenzentům, kteří mají FCAT, představa, že je to tak proto, aby lidi nemohli vidět, jak je to vlastně hnusné, je ujetá. :)

ad "Takovou variantu neberu v potaz prostě proto, že zmenšování v neceločíselných násobcích produkuje poměrně hnusný výstup, respektive vypadá dobře jen ve specifických situacích." - Znamená to, že třeba při ořezu fotek a jejich zmenšování taky postupuješ výhradně stylem buď poloviční rozlišení, nebo nic? A že fullHD videa sleduješ výhradně v nativním rozlišení nebo na 960×540? ;-)

+1
0
-1
Je komentář přínosný?

"Aha, takže neregistroval :D"

Pokud ti vysvětlím, že podobné režimy byly po léta ignorované a nakonec vypuštěné z důvodu diskutabilního dopadu na kvalitu při vysokých hardwarových nárocích, pak bych čekal, že se dovtípíš, proč je nevyzdvihuju.

Nesmíš vycházet z "technologických" údajů dodaných marketingovým oddělením :-). Supersampling, který Nvidia (i AMD) aktuálně nabízejí, je implementovaný jako nástavba multi-samplingu. To je důvod, pro který jej nelze použít ve všech hrách. Rozhodně se to nedá vykládat tak, že:

"ani ten supersampling, co se dřív používal, nelze vždy použít"

Naopak. To, co nelze použít, je právě nová a aktuální používaná implementace. Supersampling, který se používal dříve (=oversampling) je právě totéž, co Nvidia nabízí pod názvem DSR. Transparentnost není novinkou DSR, to je nativní vlastnost oversamplingu.

Marketingové oddělení Nvidia má poslední léta tendenci prezentovat dlouhodobě používané postupy nebo ze standardy jako DX, jako fíčury, které jsou zcela nové nebo unikátní pro její hardware. Pokud člověk ví, co se v tomhle oboru dělo posledních patnáct let, pak to zkrátka připomíná snahu o opíjení rohlíkem :-) DSR je marketingový název pro oversampling - nejstarší a nejméně efektivní metodu anti-aliasingu. Novinkou je pouze volitelný gaussian filtr, ale i filtraci jako takovou už jsme tu měli a to i ve spojitosti s oversamplingem (XGI Volari).

"Screenshoty nejdou dělat proto, že to zmenšuje až scaler grafiky (a to je imho jedna z velkých výhod, které tohle řešení má)."

Rád si nechám vysvětlit, v čem ta velká výhoda spočívá ;-)
---
edit: ke tvému doplnění: "A že fullHD videa sleduješ…" - pokud nechápeš, jaký je rozdíl mezi renderingem a záznamem videa z hlediska požadavků na anti-aliasing, pak je nějaká rozumná diskuse na tohle téma prakticky nemožná (hint: fotografie nebo snímek videa už obsahuje vše, co se při renderingu dohání anti-aliasingem => srovnáváš jablka a hrušky)

+1
-3
-1
Je komentář přínosný?

V podstatě si rozumíme. Jediný rozdíl je asi v tom, že já to považuju za dobrou věc, a ty za snahu Nvidie opíjet zákazníky rohlíkem. ;)

Ano, stávající implementace je nepoužitelná. Ale o tom jsem mluvil. Že to před deseti lety fungovalo jinak, je u současných karet irelevantní, a že vyrenderovat celý obraz větší a pak to smrsknout na menší rozlišení není žádné umění, je taky samozřejmost (třeba BF4 má něco takového tuším implementováno přímo do hry)

Marketingu Nvidie jsem rovnou řekl, že je to tak pitomě jednoduché (a přitom funkční), že nechápu, proč to v této podobě není standardní součástí ovladačů už deset let a že jen čekám, kdy se totéž objeví u AMD. Jediné, co v podstatě udělali, je, že scaler využívají misto upscalování obrazu k downscalování. Ale funguje to. Druhá věc, kvůli které to teď dává větší smysl, je, že se highendové grafiky začínají optimalizovat pro 4K (takže se na to hodí lépe než karty předchozích generací). GTX 980 je dost výkonná na to, aby kvanta starších her rozběhala v tom 4K (resp. 3840) a shodila to tím ideálním faktorem na polovic (1920). Velkou nevýhodou je to, že některé hry prostě s rozlišením nemění (nezvětšují) GUI (a když je titěrné, tak se stane nečitelným).

Ad scaler – downsampluje to bez dalšího dopadu na výkon a imho je i za tou pokročilejší filtrací obrazu a možností nastavitelného doostření obrazu, která u běžně používaných metod AA není (taky by nebyl problém udělat nastaveitelný PP filtr pro doostření obrazu, ale nikde to není). A konečně – díky této implementaci to bez toho dopadu na výkon jde zpětně zprovoznit i na starých grafikách.

Ad snímek obsahuje vše – to je právě to, před DSR stačí mít tam třeba prosté a nenáročné FXAA (které se bude také počítat na vyšším rozlišení a bude kvalitnější než v nativním), lze jej využít i jako nadstavbu v kombinaci s jakoukoliv méně náročnou metodu vyhlazování (třeba MSAA 2×), a výsledek bude podstatně lepší, než by byl u kombinace DSR+žádné vyhlazování, nebo u pouhého FXAA bez DSR.

+1
+2
-1
Je komentář přínosný?

"nechápu, proč to v této podobě není standardní součástí ovladačů už deset let"
Právě před deseti lety to bylo standardní součástí ovladačů prakticky všech výrobců, ale nikdo to nepoužíval, protože to má brutální dopady na výkon a jim neadekvátní posun v kvalitě obrazu. Pokud by o to zákazníci měli zájem, nikdy by to výrobci z ovladačů nevypustili. Jak jsem předeslal, dá se to dělat i líp. Třeba S3 dokázala formou oversamplingu realizovat i rotated-grid super-sampling a tam už byl posun v kvalitě markantní. Pokud by tohle v dnešní době nějaký výrobce zavedl, pak bych to považoval za zásadní fíčurku, která může mít vliv na rozhodování při výběru grafické karty. Ale klasický neefektivní oversampling, kterému už před deseti lety řekli zákazníci "ne", za smysluplný přínos považovat nemůžu.

"Ad scaler – downsampluje to bez dalšího dopadu na výkon"
Ale to dokázaly i ty DX6/7 grafiky. Dopad na výkon nikdy nebyl vyšší než teoretická ztráta fillrate. Pokud 100 MHz grafika se dvěma pixel-pipeline zvládala zmenšovat obraz do frame-bufferu bez prokazatelného dopadu na výkon, nemám důvod předpokládat, že by tatáž operace měla negativní dopad na výkon v případě čipu s 64 ROP, 2k stream-procesory a 4 GB paměti. Tenhle argument je argumentem jen na teoretické úrovni, v praxi to může konzumovat desetiny nebo setiny procenta dostupných prostředků.

K poslednímu odstavci: Ne, to funguje jinak. Snímač kamery nebo fotoaparádu zachycuje paprsky / obraz z prakticky celé plochy této buňky, takže barva výsledného pixel dokonale reprezentuje barvu daného úseku scény, která na tento pixel připadla (zjednodušeně se dá říct, že jde o supersampling s téměř nekonečně vysokým počtem vzorků).

Ve 3D je to jinak, pro určitý úsek scény se počítá barevná hodnota odpovídající pouze konkrétnímu bodu (obvykle) v centru. Ta neodráží barevnou hodnotu ve všech ostatních bodech daného úseku, což vede ke vzniku aliasingu. Metody jako filtrace nebo adaptivní algoritmy (FXAA) chybějící informaci nedoplňují, pouze se snaží upravit obraz tak, aby chybějící informace nepůsobila subjektivně příliš rušivě. Nikdy ale nedoplní to, co v obraze skutečně chybí, aby obraz bylo možné natolik flexibilně zvětšovat a zmenšovat bez výrazných dopadů na kvalitu, jako je tomu u fotografií a videa.

Pokud se vrátíme ještě k tvorbě screenshotů - existovala řada algoritmů anti-aliasingu (nebo pro jiné formy zlepšování obrazu), kterou nebylo možné zachytit prostým screenshotem, ale vždy výrobce doplnil do ovladače funkci (nebo poskytl software), se kterým bylo možné zachytit ve screenshotu to, co bylo vidět na monitoru. Implementovat funkcionalitu pro prosté zmenšení obrazu je natolik triviální záležitost, že je oprávněné ptát se, proč to Nvidia neudělala. Vzhledem k tomu, že Nvidia obvykle nepředkládá recenzentům to, co by si mohlo odnést negativní hodnocení (ať už jde o hardware jako Titan Z, nebo softwarové záležitosti jako byla nemožnost plnohodnotně otestovat rozostřující TXAA v době vydání Kepleru).

+1
+1
-1
Je komentář přínosný?

no vidis a me to casto prijde mnohem lepsi nez zmensovat prave ze 4 nasobku

+1
-5
-1
Je komentář přínosný?

Součástí ovladačů to bylo, ale ne v této podobě, tam bylo, jestli se nepletu, buď dvojnásobek, nebo nic. A když bylo na 2900 (která mimochodem v té době s bídou stačila soudobým monitorům) na výběr mezi běžným rozlišením a 30 fps, nebo SSAA na 12 fps, tak to logicky nikdo používat nebude. Dnes má třetina her cap na 60 nebo nedej bože 30 fps, a výkonná grafika jede na 30-60 %, a velká část her jede na 60+. To je mimochodem další "opíjecí" argument Nvidie – když už ty konzolové konverze využijí grafiku na půl plynu, tak ji můžete zaměstnat tímhle a aspoň to trochu zlepší kvalitu obrazu.

Ad scaler – jednak nevím, jestli něco takového v GPU zůstalo, jednak nevím, jakým způsobem to filtrovalo. Ale předpokládám, že v té době méně náročným a méně kvalitním. Tehdy se ale taky nesamplovalo ze 4K na fullHD při 60+ fps. A absolutně nemám představu, nakolik by bylo náročné něco takového udělat třeba čistě softwarově přes pixel shadery, nemá smysl teoretizovat.

Ad video vs. rendering, jasné, není to dokonalé, není to fantasticky přesné, není to zcela srovnatelné s videem, ale je to podstatně lepší, než dělat downsample u obrazu bez jakéhokoliv AA.

Nemyslím si, že nihilistický přístup buď dokonale, nebo raději nijak, je ten správný. Tváříš se, jakoby to akorát sráželo výkon a jako bonus z toho vypadl ještě hnusnější obraz než na vstupu, to prostě není pravda.

Ad je to záměr, aby to nešlo típat – to je prostě nesmysl, je dvacet velkých redakcí, které mají FCAT, a které to natípou dokonale (a nvidia jim ty karty navíc sama nacpala). Tohle by udrželi pod pokličkou stěží hodiny po vydání.

P. S. dokážete to natípat i vy (i když v o něco horší kvalitě kvůli osekanému formátu barev) na kartě od AverMedia, co se vám válela u někoho z redakce, takže se klidně můžeš pustit do hloubkové analýzy. A dokáže to odhalit i jakýkoliv z těch tisíců letsplayerů, co si koupili kartu na streamování her nebo nahrávání videa na YT, a také další velké nezávislé redakce, které ty karty využívají na srovnáváky kvality konzole vs PC.

Ptal jsem se i na SW aplikaci, jakou kdysi nabízelo AMD pro MLAA (BTW, pro druhou generaci už taky nic takového neměli), neudělali a neplánovali (ale on je asi taky rozdíl věrně ńasimulovat kód ze shaderů a věrně nasimulovat práci HW scaleru)

edit: hergot, špatné okno :)

+1
+1
-1
Je komentář přínosný?

Jeste k te kvalite. Hraju uz pres rok armu2/dayz v internim 2x oversample (3840x2400) a zadny jiny dostupny AA se tomu neblizi ani priblizne. MSAA a podobne pridavaji body-mass objektu, takze cini jinak castecne pruhledne stromy a vegetaci zcela nepruhlednymi, a nepouzit MSAA na stromy zase zpusobuje opticky sum ktery opet snizuje viditelnost. Zatimco oversample zajisti ostry klidny obraz a skvelou viditelnost za vsech okolnosti - hardware skill jaxvina.
To same v DayZ SA.
Akorat SLI ze 670tek je na to tak tak.

+1
+2
-1
Je komentář přínosný?

Pro psaní komentářů se, prosím, přihlaste nebo registrujte.