Mit jelent a vsync a játékokban? Grafikai beállítások a játékokban: mit befolyásolnak? A függőleges szinkron csatlakoztatása

Mi az a függőleges szinkronizálás a játékokban? Ez a funkció felelős a játékok megfelelő megjelenítéséért szabványos, 60 Hz-es LCD monitorokon. Ha engedélyezve van, a képkockasebesség 60 Hz-re korlátozódik, és nem jelennek meg megszakítások a képernyőn. A kikapcsolása növeli a képkockasebességet, ugyanakkor képernyőtépő hatás jelentkezik.

A V-sync meglehetősen ellentmondásos téma a játékokban. Egyrészt a vizuális kényelem érdekében játékmenet nagyon szükségesnek tűnik, feltételezve, hogy szabványos LCD monitorral rendelkezik.

Ennek köszönhetően játék közben nem jelenik meg hiba a képernyőn, a kép stabil és nincs hézag. Hátránya, hogy a képfrissítés 60 Hz-re van korlátozva, így az igényesebb játékosok bemeneti késleltetést tapasztalhatnak, vagyis enyhe késést tapasztalhatnak az egérrel való játék során (ez az egérmozgások mesterséges simításának feleltethető meg).

A függőleges szinkronizálás letiltásának is megvannak az előnyei és hátrányai. Mindenekelőtt korlátlan FPS képkockasebességet biztosít, és ezáltal teljesen eltávolítja az említett bemeneti késést. Játékokhoz praktikus. Counter-Strike típusú ahol fontos a válaszkészség és a pontosság. A mozgás és a célzás nagyon tiszta, dinamikus, az egér minden mozdulata nagy pontossággal történik. Bizonyos esetekben többet is kaphatunk FPS arány, mivel a V-Sync a videokártyától függően némileg csökkentheti a hardveres teljesítményt (kb. 3-5 FPS a különbség). Sajnos a hátránya, hogy függőleges szinkron nélkül képernyőtépő hatást kapunk. Amikor a játékban fordulunk vagy mozgást változtatunk, észrevesszük, hogy a kép két-három vízszintes részre szakad.

A V-Sync engedélyezése vagy letiltása?

Szükséges a függőleges szinkronizálás? Minden egyéni preferenciáinktól és attól függ, hogy mit szeretnénk kapni. A többjátékos FPS játékokban a célzás pontosságának javítása érdekében ajánlatos kikapcsolni a függőleges szinkronizálást. A képernyőtépő hatás általában nem annyira észrevehető, és amikor megszokjuk, észre sem vesszük.

Viszont be mesejátékok Biztonságosan engedélyezheti a V-Syncet. Itt nem annyira fontos a nagy pontosság, az első hegedűt a környezet, a vizuális kényelem játssza, ezért érdemes a jó minőségre fogadni.

A függőleges szinkronizálást általában a játék grafikai beállításaiban lehet be- vagy kikapcsolni. De ha nem találunk ilyen funkciót, akkor manuálisan kikapcsolhatja a videokártya beállításaiban - mindenki számára és csak a kiválasztott alkalmazásokhoz.

Függőleges szinkronizálás NVIDIA grafikus kártyákon

A GeForce grafikus kártyákon ez a funkció az Nvidia vezérlőpultján található. Kattintson Jobb klikk egérrel a Windows 10 asztalon, majd válassza az Nvidia Vezérlőpult lehetőséget.

Az oldalsávon válassza a 3D beállítások vezérlők lapot a 3D beállítások alatt. Az elérhető beállítások a jobb oldalon jelennek meg.

A beállítások két lapra vannak osztva - globális és program. Az első lapon beállíthatja az összes játék beállításait, és például azt, hogy mindegyikben engedélyezze vagy tiltsa le a függőleges szinkronizálást. Míg a második lapon ugyanazokat a paramétereket állíthatja be, de minden játékhoz külön-külön.

Válassza ki a globális vagy a program lapot, majd keresse meg a „Függőleges szinkronizálás” lehetőséget a listában. Mellette van egy legördülő mező - választhatunk a függőleges szinkronizálás kényszerített kikapcsolása vagy bekapcsolása között.

V-Sync az AMD grafikán

Az AMD grafikus kártyák esetében teljesen ugyanúgy néz ki, mint az Nvidiában. Kattintson a jobb gombbal az asztalra, majd lépjen a Panel Catalyst Control Centerbe.

Ezután nyissa meg a "Játékok" lapot a bal oldalon, és válassza a "3D alkalmazások beállításai" lehetőséget. A jobb oldalon megjelenik az elérhető opciók listája, amelyeket az AMD Radeon grafikus beállításai közül lehet kényszeríteni. Amikor a "Rendszerbeállítások" lapon vagyunk, mindenki számára kiválasztunk.

Ha minden játékhoz külön-külön kell beállítani a paramétereket, akkor kattintson a "Hozzáadás" gombra, és adja meg az EXE fájlt. Új könyvjelzőként felkerül a listára, és amikor átváltunk rá, csak ehhez a játékhoz állíthatunk be paramétereket.

Ha kiválasztotta a hozzáadott alkalmazás- vagy rendszerparamétereket tartalmazó lapot (általános), akkor a listában keresse meg a „Várakozás függőleges frissítésre” opciót. Megjelenik egy választómező, ahol erőszakosan engedélyezhetjük vagy letilthatjuk ezt az opciót.

V-Sync integrált Intel HD Graphics-on

Integrált Intel HD Graphics chip használata esetén vezérlőpanel is elérhető. Elérhetőnek kell lennie a jobb gombbal az asztalon vagy a Ctrl+Alt+F12 billentyűkombinációval.

Az Intel panelen lépjen a Beállítások mód fülre - Vezérlőpult - 3D grafika, majd a felhasználói beállításokra.

Itt találunk egy mezőt függőleges szinkronizálással, Vertical Sync. Kényszeresen engedélyezheti az érték "Engedélyezve" vagy "Alkalmazásbeállítások" beállításával. Sajnos az Intel HD kártya opciói között nincs kényszerletiltási funkció - csak a V-Sync engedélyezhető. Mivel a videokártyán nem lehet letiltani a függőleges szinkronizálást, ezt csak magának a játéknak a beállításaiban lehet megtenni.

Majdnem mindenben modern játékok a grafikus beállításoknál a „függőleges szinkronizálás” oszlop látható. És egyre több játékosnak vannak kérdései Hasznos ez a szinkronizálás?, a hatása, és hogy egyáltalán miért létezik, hogyan kell használni különféle platformokon. Ebből a cikkből megtudjuk.

A függőleges szinkronizálásról

Mielőtt közvetlenül a vertikális szinkronizáció természetének magyarázatához kezdenénk, egy kicsit elmélyülnünk kell a vertikális szinkronizálás kialakulásának történetében. Megpróbálok a lehető legvilágosabban fogalmazni. Az első számítógép-monitorok rögzített kép voltak, amelyeket egyetlen képkockás pásztázási jel szolgált ki.

Mire a kijelzők új generációja megjelent, élesen felmerült a felbontás változtatásának kérdése, ami több üzemmódot igényelt, ezek a kijelzők a jelek polaritását a függőlegeshez szinkronban használva adtak képet.

VGA felbontás szükséges több finomhangolás söpörni, és két jelzést kapott vízszintesen és függőlegesen. A mai kijelzőkön a beépített vezérlő a felelős a pásztázás beállításáért.

De ha a vezérlő a driver szerint beállítja a szükséges képkockák számát, akkor miért van szükség függőleges szinkronizálásra a beállított felbontáshoz? Ez nem ilyen egyszerű. Gyakran vannak olyan helyzetek, amikor a videokártya generálásának képkockasebessége nagyon magas, de a monitorok technikai korlátaik miatt nem tudja megfelelően megjeleníteni ezt a számú képkockát amikor a monitor frissítési gyakorisága lényegesen alacsonyabb, mint a grafikus kártya frissítési gyakorisága. Ez éles képmozgásokat, műtermékeket és csíkokat eredményez.

Nincs idejük megjeleníteni a memóriafájlból a "hármas pufferelés" bekapcsolt képkockáit, ezért gyorsan lecserélik magukat, és a következő képkockákat egymásra helyezik. És itt a hármas pufferelés technológiája szinte hatástalan.

A függőleges szinkron technológia ezeket a hiányosságokat hivatott orvosolni..

Bekapcsolt szavazással a monitor felé fordul alapfelszereltség a frekvencia és a képkockasebesség frissítése, megakadályozva, hogy a másodlagos memóriából származó képkockák az elsődleges memóriába kerüljenek, egészen addig, amíg a kép frissül.

A függőleges szinkron csatlakoztatása

A játékok túlnyomó többsége közvetlenül a grafikus beállításokban tartalmazza ezt a funkciót. De ez akkor fordul elő, ha nincs ilyen oszlop, vagy bizonyos hibák figyelhetők meg olyan alkalmazások grafikájával való munka során, amelyek nem tartalmaznak ilyen paraméterek beállításait.

Az egyes videokártyák beállításaiban engedélyezheti a függőleges szinkronizálási technológiát az összes alkalmazáshoz vagy szelektíven.

Hogyan lehet engedélyezni az NVidiát?

Az NVidia kártyákkal végzett legtöbb manipulációhoz hasonlóan ez is az NVidia kezelőkonzolon keresztül történik. Ott a 3D paramétervezérlő grafikonon lesz egy szinkronimpulzus-paraméter.

Bekapcsolt helyzetbe kell állítani. De a videokártyától függően a sorrend más lesz.

Tehát a régebbi videokártyákban a függőleges szinkron paraméter a fejezetben van globális paraméterek ugyanabban a 3D beállítások vezérlődobozban.

Videokártyák az ATI-től

A konfiguráláshoz használja a grafikus kártya vezérlőközpontját. Ugyanis a Catalyst Control Center a .NET Framework 1.1-et futtatja. Ha nincs meg, akkor a vezérlőközpont nem indul el. De ne aggódj. Ilyen esetekben van alternatíva a központ helyett, csak a klasszikus vezérlőpanellel kell dolgozni.

A beállítások eléréséhez lépjen a bal oldali menü 3D elemére. Lesz egy Wait for Vertical Refresh szakasz. Kezdetben az alapértelmezett függőleges szinkronizálási technológiát használják az alkalmazáson belül.

A gomb balra mozgatásával teljesen letiltja ezt a funkciót, jobbra mozgatásával pedig bekapcsolja. Az alapértelmezett beállítás itt található a legésszerűbb, mivel lehetővé teszi a szinkronizálás közvetlen konfigurálását a játék beállításain keresztül.

Összegezve

A függőleges szinkronizálás egy olyan funkció, amely segít megszabadulni a kép éles mozgásaitól, bizonyos esetekben pedig lehetővé teszi a képen lévő műtermékek és csíkok eltávolítását. Ezt pedig a vett képkockasebesség kétszeres pufferelésével érik el, ha a monitor és a videokártya képfrekvenciája nem egyezik.

Ma a v-sync a legtöbb játékban megtalálható. Ugyanúgy működik, mint a hármas pufferelés, de költséges sokkal kevesebb erőforrás, ami miatt ritkábban látható a tripla pufferelés a játékbeállításokban.

A függőleges szinkronizálás engedélyezésével vagy letiltásával a felhasználó választhat a minőség és a teljesítmény között. Bekapcsolásával simább képet kap, de másodpercenként kevesebb képkockát.

Ha kikapcsolja, megkapja több kereteket, de nem mentes a kép élességétől és lomposságától. Ez különösen érvényes intenzív és erőforrásigényes jelenetek, ahol különösen szembetűnő a függőleges szinkron vagy a hármas pufferelés hiánya.

Ez a titokzatos grafikon sok játék paramétereiben nem volt olyan egyszerű, mint amilyennek látszott. És most a döntés, hogy használod-e vagy sem, csak te és a játékbeli céljaid marad.

Biztos vagyok benne, hogy sok rajongó számítógépes játékok szembesült azzal az ajánlással, hogy tiltsa le az úgynevezett "vertikális szinkronizálást" vagy a VSync-et a videokártya beállításaiban a játékokban.

Számos grafikus vezérlő teljesítménytesztjében hangsúlyozzák, hogy a tesztelést a VSync letiltásával végezték.
Mi ez, és miért van szükség rá, ha sok "haladó szakértő" azt tanácsolja, hogy tiltsa le ezt a funkciót?
A függőleges szinkronizálás jelentésének megértéséhez egy rövid kitérőt kell tennie a történelembe.

Az első számítógép-monitorok rögzített felbontással és fix frissítési gyakorisággal futottak.
Az EGA monitorok megjelenésével szükségessé vált a különböző felbontások megválasztása, amit két működési mód biztosított, melyeket a képszinkronizációs jelek függőleges irányú polaritása állított be.

A VGA és magasabb felbontást támogató monitorok a sweep frekvenciák finomhangolását igénylik.
Ehhez már két jelet használtak, amelyek a kép vízszintes és függőleges szinkronizálásáért felelősek.
A modern monitorokban egy speciális vezérlőchip felelős a szkennelés beállításáért a beállított felbontásnak megfelelően.

Miért van elmentve a „függőleges szinkronizálás” elem a videokártya beállításaiban, ha a monitor képes automatikusan beállítani az illesztőprogramban beállított módnak megfelelően?
A helyzet az, hogy annak ellenére, hogy a videokártyák nagyon nagy számú képkocka létrehozására képesek másodpercenként, a monitorok nem tudják jó minőségben megjeleníteni, aminek következtében különféle műtermékek jelennek meg: sávozás és „szakadt” kép.

Ennek elkerülése érdekében a videokártyák biztosítják a monitor előzetes lekérdezésének módját a függőleges szkennelésről, amellyel szinkronizálják a másodpercenkénti képkockák számát - az ismerős fps-t.
Más szóval, 85 Hz-es függőleges frekvencia mellett a másodpercenkénti képkockák száma egyetlen játékban sem haladja meg a nyolcvanötöt.

A monitor függőleges frissítési gyakorisága azt jelenti, hogy egy képet tartalmazó képernyő másodpercenként hányszor frissül.
Katódsugárcsöves kijelző esetén hiába enged a grafikus gyorsító másodpercenként hány képkockát „kipréselni” a játékból, a frissítési gyakoriság fizikailag nem lehet magasabb a beállítottnál.

Az LCD-monitoroknál nem történik meg a teljes képernyő fizikai frissítése: itt az egyes képpontok világítanak vagy nem.
A videó interfészen keresztüli adatátvitel technológiája azonban biztosítja, hogy a képkockák a videokártyáról bizonyos sebességgel továbbításra kerülnek a monitorra.
Ezért bizonyos fokú konvenció mellett a "sweep" fogalma alkalmazható az LCD-kijelzőre.

Honnan származnak a képi műtermékek?
Minden játékban a másodpercenként generált képkockák száma folyamatosan változik, a kép összetettségétől függően.
Mivel a monitor frissítési gyakorisága állandó, a videokártya által továbbított fps és a monitor frissítési gyakorisága közötti deszinkronizálás képtorzuláshoz vezet, amely úgy tűnik, több tetszőleges sávra oszlik: ezek egyik részének van ideje frissíteni, míg a másiknak. nem.

Például egy monitor 75 Hz-es frissítési frekvenciával működik, egy játékban lévő videokártya pedig száz képkockát generál másodpercenként.
Más szóval, a grafikus gyorsító körülbelül egyharmadával gyorsabb, mint a monitor frissítési rendszere.
Az egyik képernyő frissítése során a kártya 1 képkockát, a következő egyharmadát generálja - ennek eredményeként az aktuális képkocka kétharmada megjelenik a kijelzőn, a harmadik pedig a következő harmadik képkockája váltja fel.

A következő frissítés során a kártya képes előállítani a keret kétharmadát, a következő kétharmadát, és így tovább.
A monitoron három pásztázási ciklusból minden másodikban megfigyeljük a kép egyharmadát egy másik képkockából - a kép elveszti simaságát és „megrándul”.
Ez a hiba különösen észrevehető dinamikus jeleneteknél, vagy például amikor a karaktered körülnéz a játékban.

Alapvetően téves lenne azonban azt feltételezni, hogy ha a videokártyának tilos lenne 75 képkocka/másodpercnél nagyobb sebességet generálnia, akkor a kép 75 Hz-es függőleges frekvenciájú kijelzőn való megjelenítésével minden rendben lenne.
A helyzet az, hogy a szokásos, úgynevezett "kettős puffer" esetén a monitoron lévő képkockák az elsődleges keretpufferből (front puffer) származnak, maga a renderelés pedig a másodlagos pufferben (back buffer) történik. .

A másodlagos puffer megtelésével a képkockák az elsődlegesbe kerülnek, de mivel a pufferek közötti másolási művelet bizonyos ideig tart, ha a monitor szkennelése éppen ebben a pillanatban frissül, akkor sem kerülhető el a képrángások.

A függőleges szinkronizálás csak ezeket a problémákat oldja meg: a monitor lekérdezi a frissítési gyakoriságot, és a képfrissítésig tilos a képkockákat a másodlagos pufferből az elsődlegesbe másolni.
Ez a technológia kiválóan működik, ha a másodpercenkénti képsebesség meghaladja a függőleges frekvenciát.
De mi van, ha a képkockasebesség a frissítési gyakoriság alá esik?
Például egyes jelenetekben az fps-ünk 100-ról 50-re csökken.

Ebben az esetben a következő történik.
A monitoron lévő kép frissül, az első képkocka az elsődleges pufferbe másolódik, a második kétharmada pedig a másodlagos pufferben „renderelődik”, majd a kép újabb frissítése következik a kijelzőn.
Ekkor a videokártya befejezi a második képkocka feldolgozását, amelyet továbbra sem tud elküldeni az elsődleges pufferbe, és a kép következő frissítése ugyanazzal a képkockával történik, amely még mindig az elsődleges pufferben van.

Aztán mindez megismétlődik, és ennek eredményeként olyan helyzet áll elő, hogy a képernyőn a másodpercenkénti képsebesség kétszer alacsonyabb a szkennelési frekvenciánál és harmadával alacsonyabb a lehetséges renderelési sebességnél: a videokártya először „nem tart ” a monitorral, majd éppen ellenkezőleg, meg kell várni, amíg a kijelző visszaveszi az elsődleges pufferben tárolt képkockát, és amíg a másodlagos pufferben lesz hely egy új képkocka kiszámításához.

Kiderült, hogy függőleges szinkronizálás és kettős pufferelés esetén csak akkor kaphatunk jó minőségű képet, ha a másodpercenkénti képkockák száma megegyezik a pásztázási frekvencia arányaként számított diszkrét értéksorozat valamelyikével. valamilyen pozitív egész számra.
Például 60 Hz-es frissítési gyakoriság esetén a másodpercenkénti képkockák számának 60 vagy 30 vagy 15 vagy 12 vagy 10 stb.

Ha a kártya potenciális képességei lehetővé teszik, hogy másodpercenként kevesebb, mint 60 és több mint 30 képkocka generáljon, akkor a tényleges renderelési sebesség 30 fps-re csökken.

Fordítás... Fordítás kínai (egyszerűsített) kínai (hagyományos) angol francia német olasz portugál orosz spanyol török

Sajnos jelenleg nem tudjuk lefordítani ezt az információt – kérjük, próbálja újra később.

Tanulja meg, hogyan lehet egyszerű algoritmussal szinkronizálni a képet a kijelző frissítési gyakoriságával és javítani a videólejátszás minőségét.

Bevezetés

A „digitális otthonról” szóló elképzelésünk fokozatosan valósággá válik. Az elmúlt években egyre több „digitális otthonba” szánt eszköz került kereskedelmi forgalomba. A kínált elektronikai kínálat nagyon széles – a zene- és videoközvetítést támogató multimédiás set-top boxoktól a teljes körű szórakoztató rendszerekig, hagyományos PC-házban.

Az otthoni médiaközpontok a számítógépes boltok árlistájának standard elemévé válnak, lehetővé téve a tévéműsorok nézését és rögzítését, digitális fényképek és zenék tárolását és lejátszását stb. Emellett egyes gyártók speciális készleteket is kínálnak, amelyekkel a felhasználó otthoni médiaközponttá alakíthatja számítógépét.

Sajnos az ilyen médiaközpontok nem mindig támogatják a jó minőségű videolejátszást. A nem megfelelő videóminőséget általában olyan tényezők okozzák, mint a streaming tartalom helytelen pufferelése és megjelenítése, a váltottsoros videó feldolgozása során a deinterlacing algoritmusok hiánya, valamint a video-audio adatfolyamok helytelen szinkronizálása. Ezeknek a problémáknak a többsége jól tanulmányozott, és vannak megoldásai, amelyeket a gyártók kellően figyelembe vesznek. Van azonban egy másik, kevésbé ismert és kevésbé nyilvánvaló probléma is, amely kisebb, de mégis észrevehető torzulásokhoz vezethet a videók megtekintésekor. Cikkünk részletesen leírja ezt a problémát, és megvizsgálja a megoldás egyik módját.

Az otthoni médiaközpontok növekvő eladásaival egyre több fogyasztó néz PC-n a tévét. Az amatőr rajongók által jelenleg keresett szegmens bővülésével a jó minőségű videók iránti igény is megnő.

Számos módszer létezik a számítógépen történő videolejátszás minőségének javítására, és sok videószoftver-gyártó sikeresen alkalmazta ezeket. Ugyanakkor néha az a tény, hogy A videolejátszó szoftvernek figyelembe kell vennie és biztosítania kell, hogy a videó szinkronizálva legyen a kijelző frissítési gyakoriságával. Az a tény, hogy a TV-ket kezdetben a műsorszóró stúdióból érkező videojellel való szinkronizáláshoz biztosítják. A tévéktől eltérően a számítógép-monitorok fix sebességgel frissítik a képernyőt, amit a grafikus adapter állít be, és semmi köze a videojelhez. Ez a jelentős különbség sok problémát okozhat, ha biztosítani szeretné, hogy a videó megfelelően legyen szinkronizálva a számítógép képernyőjével. Az alábbiakban megpróbáljuk Részletes leírás ezt a problémát, és javasoljon megoldást. Előtte azonban szeretnénk megismertetni az olvasóval néhány alapfogalmat, amelyekről a cikkben szó lesz.

Kijelző frissítési ciklusa

A számítógép képernyőjének frissítési gyakorisága (képernyő frissítési gyakorisága) szinkronizálva van a grafikus adapter (videokártya) frekvenciájával. Tekintsük a leggyakoribb példát - amikor a videokártya és a monitor támogatja a 60 Hz-es frekvenciát. Ez a kombináció annak köszönhető, hogy a monitor szinkronizálva van a videokártyáról érkező 60 Hz-es jellel. Valójában a monitor még a grafikus adapter kimeneti frekvenciájának enyhe eltérése esetén is fenntartja a szinkronizálást (például 60,06 Hz a szabványos 60 Hz helyett).

A frissítési ciklus során a képernyő képe újrarajzolódik a megjelenítési pufferből (grafikus adapter címezhető memóriájából). A kijelzőn minden vízszintes vonal sorban frissül a videomemória pufferében található új adatoknak megfelelően. ben frissítve Ebben a pillanatban az idővonalat pásztázási vonalnak nevezzük. 60 Hz-es grafikus adapter esetén a képernyőfrissítési folyamat 60-szor történik másodpercenként, így a PC-monitoron megjelenő kép is 60-szor másodpercenként frissül.

1. ábra - Kijelző frissítése

Képtépő műtermékek

Ügyeljen a nem egységes grafikus pufferfrissítés lehetséges problémájára. Ha a videomemória puffer tartalma megváltozott egy olyan időpontban, amikor a monitoron lévő kép még nem rajzolódott ki teljesen (a frissítési ciklus nem fejeződött be), akkor az új képnek csak a pásztázási vonalat követő része jelenik meg. a képernyőn (lásd az ábrát). Rizs. 2). Ezt a képműterméket, amely a régi képet a képernyő tetején, az újat pedig alul mutatja, szakításnak nevezik. Valójában ez a kifejezés nagyon leíró jellegű, mivel az eredményül kapott kép úgy néz ki, mintha kettétört volna.

2. ábra - A kép "résének" műtermékei

Csapat Flip

A „szakadások” megelőzésének egyik módja annak biztosítása, hogy megtörténjen a videomemória tartalmának frissítése utána hogyan fejeződik be a kijelző frissítési ciklusa és azelőtt mikor kezdődik a következő ciklus. Más szóval, a frissítésnek a fordított sweep során kell megtörténnie. Ez a módszer azonban megfelelő változtatásokat igényel a szoftverben, amelynek kellő pontossággal kell kiszámítania a képváltás sorrendjét.

Emiatt egy pufferváltási szinkronizációs algoritmust (Flip) javasoltak. A Flip parancs természeténél fogva nagyon egyszerű - lehetővé teszi a program számára, hogy a képernyőfrissítési ciklus alatt bármikor frissítse a képet, de az eredmény valójában csak az aktuális ciklus befejeződéséig kerül át a videomemóriába. Így a kép frissítése a monitoron a Flip parancs végrehajtását követő időközönként történik. A puffer szinkronizálási módszerrel a kép "elszakadása" megszűnik, mivel a Flip parancs biztosítja, hogy minden frissítési ciklushoz készen álljon egy teljesen új kép (lásd alább). Rizs. 3). A következő részben azonban bemutatjuk, hogy a Flip parancs használata önmagában nem garantálja, hogy minden probléma megoldódik.

3. ábra - Flip parancssor

Lehetséges problémák

A szinkronizálási algoritmus használata nagy előnyökkel jár, és segít kiküszöbölni a szakadási műtermékeket, de egy jelentős probléma továbbra is fennáll.

A Flip parancs használatakor a videó szoftveres megjelenítési feltételei megváltoznak. A Flip végrehajtásához a szoftvernek be kell állítania a képkockapuffer frissítési időközét (frame rate) egy bizonyos képkockasebesség szerint. Az egyetlen órajel, amellyel a képkockák szinkronizálhatók, a kijelző frissítési gyakorisága (vagy többszöröse). Vagyis új képkocka csak a frissítési ciklus elején jeleníthető meg – valójában a képkocka-intervallumok a kijelző frissítési gyakoriságához vannak kötve.

4. ábra – A képkockasebesség és a megjelenítési frekvencia eltérése

Ez azt jelenti, hogy ha a képernyő frissítési gyakorisága nem egyezik meg a lejátszott tartalom képfrissítési gyakoriságával, vagy nem annak többszöröse, akkor a kijelzőn lévő tartalom nem reprodukálható teljes mértékben. A Rizs. négy ennek a problémának egy speciális esete látható. Ebben a forgatókönyvben a tartalom képkockasebessége lassabb, mint a képernyő frissítési gyakorisága. A két frekvencia közötti fáziseltolódás miatt a Flip parancs intervallumai két képkocka esetén végül megnyúlnak egy teljes frissítési ciklusig (figyelje meg a 3. és 4. képkocka időzítését). Ennek eredményeként a 3. képkocka majdnem kétszer annyi ideig jelenik meg, mint amennyi szükséges. Ezért törekedni kell a képernyő képfrissítési és képfrissítési gyakoriságának összehangolására, bár ez nem mindig lehetséges.

A vizsgált helyzetet csak súlyosbítja, ha kicsi a különbség a képkockasebesség és a képernyő frissítési gyakorisága között. Ha a képkockaidő közel van a frissítési ciklusintervallumhoz, még a szoftver időzítő számításának kis pontatlanságai is azt okozhatják, hogy több egymást követő Flip parancs eltéved a frissítés kezdetéhez képest. Ez azt jelenti, hogy egyes Flip parancsok túl korán, mások pedig túl későn fognak futni, ami "duplikált" és "eldobott" kereteket eredményez. Ezt az esetet a Rizs. 5– az időzítő nem működik megfelelően (szabálytalan időközönként), ennek következtében a 2. és 4. képkocka nem, a 3. és 5. képkocka pedig kétszer jelenik meg.

5. ábra - A Flip használatának eredménye az időzítő hibáinál

Ez a jelenség akkor is előfordulhat, ha a tartalom képkockasebessége és a kijelző frissítési gyakorisága megegyezik. Nyilvánvaló, hogy csak egy időzítő és a Flip parancs használata nem elegendő a jó minőségű videó lejátszáshoz. Amint azt a következő részben elmagyarázzuk, a Flip parancsok megfelelő végrehajtásához a szoftvernek fenn kell tartania az intelligens szinkronizálást a képernyő-frissítési ciklusokkal.

Időzítés Flip parancsok

Ahogy fentebb említettük, a Flip parancs használata lehetővé teszi a képernyőfrissítési ciklusok figyelembevételét a videókockák renderelésekor. Minden újonnan továbbított képkocka csak egy teljes képernyőfrissítési ciklusban jelenik meg. Így a Flip parancs használatakor a szoftvernek nem csak azt kell pontosan kiszámítania, hogy az egyes kereteket mikor kell megjeleníteni, hanem meg kell határoznia az adott frissítési ciklust is, hogy optimálisan szinkronizálja a képkockák kimenetét.

A legjobb, ha a Flip parancsot a frissítési ciklus legelején hívja meg, közvetlenül a megfelelő keretfrissítési intervallum kezdete előtt (lásd a példát Rizs. 3). Ez adja a legnagyobb valószínűséget a parancs tényleges végrehajtására a megfelelő frissítési ciklus kezdete előtt, és biztosítja, hogy a keret a megfelelő időben kerüljön kiadásra. Vegye figyelembe, hogy azokban az esetekben, amikor a videó képkockasebessége és a képernyő frissítési gyakorisága nem egyezik, a Flip képkocka-frissítési ciklusának optimalizálása nem elegendő az elfogadható videóminőség biztosításához. Van néhány mód a tartalomkeretek bekeretezésére vagy módosítására, amelyek megoldják ezeket a problémákat, de ezek kívül esnek jelen kiadvány hatókörén.

Néhány Operációs rendszer olyan programozási felületeket biztosítanak, amelyeken keresztül az alkalmazások szinkronban tudnak tartani a kijelző frissítési ciklusával. Különösen a Microsoft DirectX 9.0 környezet számos olyan eljárást tartalmaz, amelyek esetünkben nagyon hasznosak lehetnek. Ezután a DirectX szabványos eljárásait tekintjük meg példaként a vizsgált probléma megoldására. Az olvasók ezeknek a példáknak a segítségével felfedezhetik a javasolt módszereket, és hasonló megoldásokat találhatnak más operációs rendszereken.

WaitFor VerticalBlank() egy szabványos eljárás a DirectDraw könyvtárban (az IDirectDraw felületen belül), amely a következő frissítési ciklus kezdetéig blokkolja az interfészhez való hozzáférést. Ez az eljárás használható szinkronizálásra, de egyszer vagy jelentős időközönként kell elvégezni, mert időigényes a hozzáférés. Ez az eljárás azonban akkor hasznos, ha a kezdeti szinkronizálást frissítési ciklussal végzi.

GetScanLine() egy szabványos eljárás, amellyel információt szerezhet arról, hogy a kijelzőn éppen melyik scanline frissítés van folyamatban. Ha a sorok teljes száma és az aktuális pásztázási sor ismert, nem nehéz meghatározni a kijelző frissítési ciklusának állapotát. Például, ha a megjelenítési sorok teljes száma 1024, és az eljárás GetScanLine() 100-at ad vissza, a jelenlegi frissítési ciklus jelenleg 100 és 1024 között van, ami körülbelül 10 százalékos befejeződött. Alkalmazás GetScanLine() lehetővé teszi az alkalmazás számára, hogy figyelje a frissítési hurok állapotát, és ennek alapján meghatározza, hogy melyik ciklushoz kösse a következő renderelt keretet, és állítson be egy időzítőt a kívánt pufferváltási időhöz. A következő egy példa algoritmus:

6. ábra

A képkockaváltási idő kiválasztása nem csak az új képkockák számítása alapján történik, hanem a képernyő frissítési gyakoriságának figyelembevételével is. Mivel a képkockák csak akkor jelennek meg a képernyőn, amikor a kijelző frissítve van, ezért meg kell győződni arról, hogy minden képkocka „elüti” a megfelelő frissítési ciklust. Így ideális esetben a képkeretezésnek pontosan meg kell egyeznie a képernyő frissítési gyakoriságával. Ebben az esetben minden egyes képkocka a megfelelő időben jelenik meg a kijelzőn.

Alternatív megoldás a rögzített tartalomhoz

Az általunk tárgyalt kérdések minden videolejátszási forgatókönyvre vonatkoznak, mind élő adások, mind rögzített videó lejátszása esetén. Ez utóbbi esetben azonban alternatív megoldáshoz folyamodhat. Ha kicsi a különbség a tartalom képkockasebessége és a kijelző frissítési gyakorisága között, beállíthatja a videó képkockasebességét (és ugyanígy beállíthatja a hangfolyamot is), hogy a tartalom minőségének romlása nélkül illeszkedjen a képernyő frissítési gyakoriságához. Példaként vegyünk egy 59,94 képkocka/másodperc sebességű (Bob deinterlaced) szabványos felbontású TV-jelet egy monitoron 60 Hz-en. A videó- ​​és hanglejátszás másodpercenkénti 60 képkockára való felgyorsításával biztosíthatja, hogy a képkockaszám megfeleljen a képernyő frissítési intervallumainak, és ugyanakkor ne legyenek képi műtermékek.

Összegzés

Ez a kiadvány a képszinkronizálási módszerekkel foglalkozik, különös tekintettel a képtépő műtermékek megelőzésére a Flip paranccsal. A cikk foglalkozik azokkal az esetekkel is, amikor a Flip parancs problémákat okoz a képernyő-frissítési ciklusokkal való szoros szinkronizálás miatt. A megfelelő képkockaidőzítés és a Flip parancsok használata azt okozhatja, hogy a képkockaidő és -intervallum eltér attól, amit a szoftveralkalmazás elvár. A cikk arra a következtetésre jut, hogy a Flip parancsok használatának helyes módja az átfordítási szinkronizálás és a képernyő-frissítési gyakoriság kombinálása, és a kép számítási ciklusának optimalizálása a későbbi kimenetre tekintettel. Így a Flip intervallumok szoftveresen állíthatók. Legjobb minőség A videó akkor érhető el, ha a tartalom képkockasebessége megegyezik a kijelző frissítési gyakoriságával. A gyakorlatban azonban ez nem mindig valósítható meg. Az ebben a cikkben ismertetett algoritmusok segítenek a képi műtermékek minimálisra csökkentésében.

A modern játékok egyre több grafikai effektust és technológiát használnak, amelyek javítják a képet. Ugyanakkor a fejlesztők általában nem veszik a fáradságot, hogy elmagyarázzák, mit is csinálnak pontosan. Ha nem a legproduktívabb számítógép áll rendelkezésre, néhány képességet fel kell áldozni. Próbáljuk meg átgondolni, mit jelentenek a leggyakoribb grafikus lehetőségek, hogy jobban megértsük, hogyan szabadíthatunk fel PC-erőforrásokat a grafika minimális következményeivel.

Anizotróp szűrés

Ha bármely textúra nem az eredeti méretben jelenik meg a monitoron, akkor további pixeleket kell beilleszteni abba, vagy fordítva, el kell távolítani a feleslegeseket. Ez a szűrés nevű technikával történik.

A bilineáris szűrés a legegyszerűbb algoritmus, és kevesebb számítási teljesítményt igényel, de ez adja a legrosszabb eredményt is. A Trilinear áttekinthetőbbé teszi, de még mindig műtermékeket generál. Az anizotróp szűrést a legfejlettebb módszernek tekintik, amely kiküszöböli az észrevehető torzulásokat a kamerához képest erősen dőlt tárgyakon. Az előző két módszertől eltérően sikeresen küzd az aliasing effektus ellen (amikor a textúra egyes részei jobban elmosódnak, mint mások, és jól láthatóvá válik a köztük lévő határ). A bilineáris vagy trilineáris szűrés használatakor a távolság növekedésével a textúra egyre elmosódottabbá válik, míg az anizotróp szűrésnek nincs ez a hátránya.

Figyelembe véve a feldolgozott adatmennyiséget (és sok nagy felbontású 32 bites textúra lehet egy jelenetben), az anizotróp szűrés különösen nagy igénybevételt jelent a memória sávszélességén. A forgalmat elsősorban a ma már mindenhol alkalmazott textúra tömörítésnek köszönhetően csökkentheti. Korábban, amikor ezt ritkábban gyakorolták, és a videomemória sávszélessége jóval kisebb volt, az anizotróp szűrés jelentősen csökkentette a képkockák számát. A modern videokártyákon szinte nincs hatása az fps-re.

Az anizotróp szűrésnek csak egy beállítása van - szűrőfaktor (2x, 4x, 8x, 16x). Minél magasabb, annál tisztábbnak és természetesebbnek tűnnek a textúrák. A nagy értéknél a kis műtermékek általában csak a döntött textúrák legkülső képpontjain láthatók. A 4x és 8x értékek általában elegendőek ahhoz, hogy megszabaduljanak a vizuális torzítások oroszlánrészétől. Érdekes módon a 8-szorosról 16-szorosra lépve a teljesítmény-találat még elméletben is meglehetősen kicsi lesz, mivel csak kevés, korábban szűretlen pixel igényel további feldolgozást.

Árnyékolók

A Shaderek olyan kis programok, amelyek bizonyos manipulációkat hajthatnak végre a 3D jeleneteken, például megváltoztathatják a világítást, alkalmazhatnak textúrákat, hozzáadhatnak utófeldolgozást és egyéb effektusokat.

A Shaderek három típusra oszthatók: a vertex (Vertex Shader) koordinátákkal működik, a geometriai (Geometry Shader) nem csak az egyes csúcsokat, hanem az egészet is képes feldolgozni. geometriai alakzatok, amely maximum 6 csúcsból áll, pixel (Pixel Shader) dolgozik az egyes pixelekkel és azok paramétereivel.

Az árnyékolókat főként új effektusok létrehozására használják. Ezek nélkül a fejlesztők által a játékokban használható műveletek köre nagyon korlátozott. Más szóval, a shaderek hozzáadása lehetővé tette olyan új effektusok elérését, amelyek alapértelmezés szerint nem szerepeltek a videokártyán.

A Shaderek párhuzamosan nagyon produktívan működnek, ezért a modern grafikus adapterek sok stream processzorral rendelkeznek, amelyeket shadereknek is neveznek. Például a GeForce GTX 580-ban 512 darab van belőlük.

Parallax leképezés

A parallaxis leképezés a textúrák domborítására használt jól ismert bumpmapping technika módosított változata. A parallaxis leképezés nem hoz létre 3D objektumokat a szó szokásos értelmében. Például egy játékjelenetben egy padló vagy fal durvának tűnik, miközben valójában teljesen sík marad. A megkönnyebbülés itt csak a textúrákkal végzett manipulációkkal érhető el.

Az eredeti tárgynak nem kell laposnak lennie. A módszer különböző esetekben működik játékelemek Használata azonban csak olyan esetekben kívánatos, ahol a felület magassága egyenletesen változik. Az éles cseppek feldolgozása helytelenül történik, és műtermékek jelennek meg az objektumon.

A parallaxis leképezés jelentősen megtakarítja a számítógép számítási erőforrásait, mivel ilyen részletes 3D-s szerkezetű analóg objektumok használatakor a videoadapterek teljesítménye nem lenne elegendő a jelenetek valós idejű rendereléséhez.

A hatást leggyakrabban kőburkolatokra, falakra, téglákra és csempékre alkalmazzák.

Anti-aliasing

A DirectX 8 megjelenése előtt a játékokban az élsimítás a SuperSampling Anti-Aliasing (SSAA) segítségével történt, más néven Full-Scene Anti-Aliasing (FSAA). Használata a teljesítmény jelentős csökkenéséhez vezetett, így a DX8 megjelenésével azonnal felhagytak vele, és helyette Multisample Anti-Aliasing (MSAA) lett. Annak ellenére, hogy ez a módszer rosszabb eredményeket hozott, sokkal produktívabb volt, mint elődje. Azóta fejlettebb algoritmusok jelentek meg, mint például a CSAA.

Tekintettel arra, hogy az elmúlt néhány évben a videokártyák teljesítménye jelentősen megnőtt, az AMD és az NVIDIA is visszaadta az SSAA technológia támogatását gyorsítóinak. A modern játékokban azonban még most sem lehet majd használni, mivel a képkocka/mp száma nagyon alacsony lesz. Az SSAA csak a korábbi évek projektjeiben vagy a jelenlegi projektekben lesz hatékony, de más grafikus paraméterek szerény beállításaival. Az AMD csak a DX9 játékokhoz valósította meg az SSAA támogatást, de az NVIDIA-ban az SSAA DX10 és DX11 módban is működik.

A simítás elve nagyon egyszerű. Mielőtt a keret megjelenik a képernyőn, bizonyos információkat nem natív felbontásban számítanak ki, hanem növelik és kettő többszöröse. Ezután az eredmény a kívánt méretre csökken, majd a tárgy szélei mentén lévő "létra" kevésbé észrevehetővé válik. Minél magasabb az eredeti kép és a simítási tényező (2x, 4x, 8x, 16x, 32x), annál kevesebb lépés lesz a modelleken. Az MSAA az FSAA-val ellentétben csak az objektumok széleit simítja ki, ami jelentősen megtakarítja a grafikus kártya erőforrásait, de ez a technika műtermékeket hagyhat a poligonokon belül.

Korábban az Anti-Aliasing mindig jelentősen csökkentette az fps-t a játékokban, most azonban kissé befolyásolja a képkockák számát, néha pedig egyáltalán nem.

mozaik

Számítógépes modellben a tesszelláció segítségével a sokszögek száma tetszőleges számú alkalommal megnő. Ehhez minden sokszöget több újra osztanak, amelyek megközelítőleg azonosak az eredeti felülettel. Ez a módszer megkönnyíti az egyszerű 3D objektumok részletességének növelését. Ebben az esetben azonban a számítógép terhelése is megnő, és bizonyos esetekben még az apró műtermékek sem zárhatók ki.

Első pillantásra a tesszelláció összetéveszthető a parallaxis leképezéssel. Bár ezek teljesen különböző hatások, mivel a tesszelláció valójában megváltoztatja az objektum geometriai alakját, és nem csak a domborművet szimulálja. Ráadásul szinte bármilyen objektumhoz használható, míg a Parallax leképezés használata nagyon korlátozott.

A Tessellation technológia a 80-as évek óta ismert a moziban, de a játékokban csak mostanában, pontosabban azután, hogy a grafikus gyorsítók végre elérték azt a teljesítményszintet, amelyen valós időben végre lehet hajtani.

Ahhoz, hogy a játék tessellációt használjon, egy DirectX 11-et támogató grafikus kártya szükséges.

Vertikális szinkron

A V-Sync a játék képkockáinak szinkronizálása a monitor függőleges frissítési gyakoriságával. Lényege abban rejlik, hogy egy teljesen kiszámított játékkeret jelenik meg a képernyőn abban a pillanatban, amikor a kép frissül rajta. Fontos, hogy a következő képkocka (ha már készen van) szintén legkésőbb és legkorábban jelenjen meg, amikor az előző kimenete véget ér és a következő elkezdődik.

Ha a monitor frissítési gyakorisága 60 Hz, és a videokártyának sikerül legalább ugyanannyi képkockát tartalmazó 3D-s jelenetet renderelni, akkor minden monitorfrissítésnél egy új képkocka jelenik meg. Más szóval, 16,66 ms időközönként a felhasználó a játék jelenetének teljes frissítését fogja látni a képernyőn.

Meg kell érteni, hogy ha a függőleges szinkronizálás engedélyezve van, az fps a játékban nem haladhatja meg a monitor függőleges frissítési gyakoriságát. Ha a képkockák száma ennél az értéknél kisebb (esetünkben 60 Hz-nél kisebb), akkor a teljesítményveszteségek elkerülése érdekében aktiválni kell a tripla pufferelést, amelyben a képkockákat előre kiszámítják és három különálló pufferben tárolják. , amely lehetővé teszi, hogy gyakrabban kerüljenek a képernyőre.

A vertikális szinkronizálás fő feladata az eltolt képkocka hatásának kiküszöbölése, amely akkor jelentkezik, ha a kijelző alsó részét egy képkockával töltik meg, a felső részt pedig már egy másik, az előzőhöz képest eltolva.

utófeldolgozás

Ez az összes olyan effektus általános neve, amelyet egy teljesen renderelt 3D jelenet már kész képkockájára (más szóval egy kétdimenziós képre) alkalmaznak a végső kép minőségének javítása érdekében. Az utófeldolgozás pixel shadereket használ, és olyan esetekben használatos, amikor a további effektusok teljes körű információt igényelnek a teljes jelenetről. Az egyes 3D objektumoktól elkülönítve az ilyen technikák nem alkalmazhatók műtermékek megjelenése nélkül a keretben.

Nagy dinamikatartomány (HDR)

Kontrasztos megvilágítású játékjelenetekben gyakran használt effektus. Ha a képernyő egyik része nagyon világos, a másik pedig nagyon sötét, akkor az egyes területeken sok részlet elveszik, és monotonnak tűnik. A HDR több színátmenetet ad a kerethez, és lehetővé teszi a jelenet részletezését. Használatához általában szélesebb árnyalatválasztékkal kell dolgozni, mint amennyit a szabványos 24 bites pontosság biztosítani tud. Az előszámítások fokozott pontossággal (64 vagy 96 bit) történnek, és csak a végső szakaszban állítják be a képet 24 bitesre.

A HDR-t gyakran használják a látás adaptálásának megvalósítására, amikor a játékban a hős sötét alagutat hagy egy jól megvilágított felületen.

Virágzás

A Bloom-ot gyakran használják a HDR-rel együtt, és van egy meglehetősen közeli rokona is - a Glow, ezért ezt a három technikát gyakran összekeverik.

A Bloom azt a hatást szimulálja, amely akkor látható, ha nagyon világos jeleneteket készít hagyományos fényképezőgépekkel. Az eredményül kapott képen úgy tűnik, hogy az intenzív fény a kelleténél nagyobb térfogatot vesz fel, és "felmászik" a tárgyakra, még akkor is, ha mögöttük van. A Bloom használatakor további műtermékek jelenhetnek meg színes vonalak formájában az objektumok határain.

Filmszemcse

A szemcsék olyan műtermékek, amelyek gyenge jelű analóg TV-ben, régi mágneses videokazettán vagy fényképeken (különösen gyenge fényviszonyok mellett készült digitális képeken) fordulnak elő. A játékosok gyakran megszakadnak ezt a hatást, mert bizonyos mértékig rontja a képet, és nem javít rajta. Ennek megértéséhez futhat az ember tömeghatás mindegyik módban. Néhány „horrorfilmben” például Silent Hill, a képernyő zaja éppen ellenkezőleg, hangulatot kölcsönöz.

elmosódás

Motion Blur – a kép elmosódásának hatása a fényképezőgép gyors mozgatásakor. Sikeresen használható, amikor a jelenetnek nagyobb dinamikát és sebességet kell adni, ezért különösen igény van rá versenyjátékok. A lövöldözős játékokban az elmosódást nem mindig érzékelik egyértelműen. A Motion Blur megfelelő alkalmazása moziszerű minőséget adhat a képernyőn zajló eseményekhez.

A hatás szükség esetén segít a fátyolban is. alacsony frekvenciaju módosíthatja a kereteket, és simábbá teheti a játékmenetet.

SSAO

Az ambient okklúzió egy olyan technika, amellyel fotorealizmust adnak a jelenethez azáltal, hogy hihetőbb megvilágítást hoznak létre a benne lévő tárgyakon, amely figyelembe veszi a közelben lévő más objektumok jelenlétét, amelyek saját fényelnyelési és -visszaverődési jellemzőikkel rendelkeznek.

A Screen Space Ambient Occlusion az Ambient Occlusion módosított változata, és közvetett megvilágítást és árnyékolást is szimulál. Az SSAO megjelenése annak volt köszönhető, hogy a GPU teljesítményének jelenlegi szintjén az Ambient Occlusion nem használható jelenetek valós idejű renderelésére. Az SSAO-ban megnövelt teljesítményért gyengébb minőséggel kell fizetni, de még ez is elegendő a kép valósághűségének javításához.

Az SSAO egyszerűsített séma szerint működik, de számos előnye van: a módszer nem függ a jelenet összetettségétől, nem használ RAM, tud működni dinamikus jelenetekben, nem igényli a keret előfeldolgozását, és csak a grafikus adaptert tölti be anélkül, hogy CPU erőforrásokat fogyasztana.

Cel árnyékolás

2000 óta készülnek Cel shading hatású játékok, amelyek elsősorban konzolokon jelentek meg. A PC-n ez a technika csak néhány évvel a szenzációs lövöldözős XIII megjelenése után vált igazán népszerűvé. A Cel árnyékolással minden képkocka szinte olyan, mint egy kézzel rajzolt rajz vagy egy gyermekrajzfilm töredéke.

A képregények hasonló stílusban készülnek, ezért a technikát gyakran használják a hozzájuk kapcsolódó játékokban. A legújabb ismert kiadások közül a Borderlands shootert nevezhetjük meg, ahol szabad szemmel is látható a Cel árnyékolás.

A technológia jellemzői a korlátozott színkészlet használata, valamint a sima színátmenetek hiánya. Az effektus neve a Cel (Celluloid) szóból ered, vagyis egy átlátszó anyag (film), amelyre animációs filmeket rajzolnak.

Mélységélesség

A mélységélesség a tér közeli és távoli széle közötti távolság, amelyen belül minden tárgy fókuszban lesz, míg a jelenet többi része elmosódott lesz.

A mélységélesség bizonyos mértékig egyszerűen megfigyelhető, ha egy olyan tárgyra fókuszálunk, amely közel van a szemünk előtt. Minden elmosódik mögötte. Ennek az ellenkezője is igaz: ha távoli tárgyakra fókuszál, akkor előttük minden homályos lesz.

A mélységélesség hatása hipertrófiás formában látható néhány fényképen. Ezt a fokú elmosódást gyakran próbálják szimulálni 3D-s jelenetekben.

A mélységélességet használó játékokban a játékos általában erősebben érzékeli a jelenlétet. Például, ha valahova a füvön vagy a bokrok között néz, a jelenetnek csak apró töredékeit látja a fókuszban, ami a jelenlét illúzióját kelti.

Teljesítményhatás

Annak kiderítésére, hogy bizonyos opciók beépítése hogyan befolyásolja a teljesítményt, a Heaven DX11 Benchmark 2.5 gaming benchmarkot használtuk. Minden tesztet Intel Core2 Duo e6300, GeForce GTX460 rendszeren végeztek 1280x800 pixel felbontással (kivéve a függőleges szinkronizálást, ahol a felbontás 1680x1050 volt).

Mint már említettük, az anizotróp szűrés szinte nincs hatással a képkockák számára. A letiltott anizotrópia és a 16x közötti különbség mindössze 2 képkocka, ezért javasoljuk, hogy mindig a maximumra állítsa.

A Heaven Benchmark élsimítása a vártnál jobban csökkentette az fps-t, különösen a legnehezebb 8x módban. Mindazonáltal, mivel 2x elegendő a kép észrevehető javulásához, javasoljuk, hogy ezt az opciót válassza, ha kényelmetlen a magasabban játszani.

A Tessellation az előző paraméterekkel ellentétben tetszőleges értéket vehet fel minden egyes játékban. A Heaven Benchmarkban enélkül jelentősen romlik a kép, maximumon pedig éppen ellenkezőleg, kicsit irreálissá válik. Ezért köztes értékeket kell beállítani - közepes vagy normál.

Több mint nagy felbontású hogy az fps-t ne korlátozza a képernyő függőleges frissítési gyakorisága. Ahogy az várható volt, a képkockák száma szinte a teljes teszt alatt, bekapcsolt szinkronizálás mellett egyértelműen 20 vagy 30 képkocka/s körül volt. Ez annak köszönhető, hogy a képernyőfrissítéssel egyidejűleg jelennek meg, és 60 Hz-es frissítési frekvenciával ez nem minden impulzusnál, hanem csak minden másodpercnél (60/2 = 30 fps) vagy harmadiknál ​​( 60/3 = 20 fps). képkocka/s). A V-Sync letiltásakor a képkockák száma nőtt, de jellegzetes műtermékek jelentek meg a képernyőn. A háromszoros pufferelésnek nem volt pozitív hatása a jelenet simaságára. Ez talán annak tudható be, hogy a videokártya meghajtó beállításaiban nincs lehetőség a pufferelés kikényszerítésére, és a normál deaktiválást figyelmen kívül hagyja a benchmark, és továbbra is ezt a funkciót használja.

Ha a Heaven Benchmark játék lenne, akkor maximális beállításokon (1280×800; AA - 8x; AF - 16x; Tessellation Extreme) kényelmetlen lenne játszani, hiszen ehhez nyilvánvalóan kevés a 24 képkocka. Minimális minőségvesztéssel (1280×800; AA - 2x; AF - 16x, Tesselation Normal) elfogadhatóbb 45 fps érhető el.