Šiuolaikiniai vaizdo žaidimai turi svaiginantį grafikos nustatymų spektrą. Dauguma jų užtikrina geresnį našumą arba grafikos kokybę. Tačiau vertikalus sinchronizavimas, geriau žinomas kaip VSync, yra šiek tiek sudėtingesnis.
Pati „VSync“ neturi jokios įtakos grafinei kokybei, tačiau ją įjungus pašalinamas bjaurus ekrano plyšimas. Nors tai gali atrodyti niekam tikusi, tai taip pat gali sumažinti kadrų dažnį ir padidinti įvesties delsą – abu šie dalykai yra konkurencinio žaidimo bėda.
Nežinote, kaip pasiekti šį paslaptingą grafikos nustatymą? Išsiaiškinkime, kas verčia VSync pažymėti.
Kas yra VSync?
VSync yra priemonė, skirta sinchronizuoti vaizdo žaidimo kadrų dažnį su jį rodančio monitoriaus atnaujinimo dažniu. Vaizdo plokščių gamintojai sukūrė vertikalų sinchronizavimą, kad pašalintų vaizdinį artefaktą, vadinamą ekrano plyšimu. Jis pasireiškia kaip horizontalus rodomo kadro padalijimas, todėl viena kadro pusė atsilieka nuo kitos.
Nors tai gali atrodyti kaip laiko ir erdvės kontinuumo plyšimas, tai tiesiog jūsų GPU iškrauna kadrus greičiau nei maksimalus monitoriaus atnaujinimo dažnis. Atsižvelgiant į tai, kiek GPU kadrų dažnis viršija monitoriaus atnaujinimo dažnį, vieno monitoriaus atnaujinimo metu galite matyti du ar daugiau GPU kadrų, sujungtų horizontaliai.
VSync pašalina ekrano plyšimą apribodamas GPU kadrų dažnį iki monitoriaus atnaujinimo dažnio. Tačiau vien to nepakanka, kad būtų išvengta ekrano plyšimo. Šis nustatymas taip pat verčia GPU pateiktus kadrus rodyti kartu su monitoriaus atnaujinimo ciklu.
Norint išvengti ekrano plyšimo, labai svarbu, kad kelių kadrų dalys nebūtų matomos vienu metu. Ir VSync tai pasiekia neleisdamas GPU išstumti naujų kadrų monitoriaus atnaujinimo ciklo viduryje.
VSync sukuria daugiau problemų nei išsprendžia
Nors „VSync“ yra garantuotas sprendimas dėl ekrano plyšimo, tai nulemia našumą ir reagavimą. Norėdami suprasti, kodėl, pažvelkime į dvi pagrindines VSync funkcijas. Pirma, tai sumažina GPU kadrų dažnį, kad atitiktų monitoriaus atnaujinimo dažnį. Antra, jis taip pat sinchronizuoja GPU kadrų tempą, kad atitiktų monitoriaus atnaujinimo dažnį.
Ar pastebite, kad abu VSync mechanizmai sumažina GPU išvestį, kad atitiktų statinį monitoriaus atnaujinimo dažnį? Tai svarbi detalė. Kol monitorius atnaujinamas tam tikrais intervalais, GPU išleidžia kadrus tokiu greičiu, kuris yra atvirkščiai proporcingas pateikiamos žaidimo scenos sudėtingumui.
Privertus GPU sinchronizuoti kadrų tempą su monitoriaus atnaujinimo dažniu, jis negali perduoti naujausio kadro į monitorių. Žaidėjai tai apibūdina kaip įvesties delsą, kuri suvokiama kaip monitoriuje rodomas turinys, atsiliekantis nuo faktinių valdiklio įvesties. Šis įvesties delsas ypač ryškus greito tempo FPS žaidimuose, kur kryželis pastebimai atsilieka nuo jūsų tikrųjų pelės įvesties.
Tarsi delsa nebuvo pakankamai bloga, „VSync“ gali netgi sumažinti bendrą GPU našumą, žymiai sumažindama kadrų dažnį. Tai siejama su tendencija apriboti GPU kadrų dažnį, kad būtų galima stebėti atnaujinimo dažnį. Nors tai gerai, kai jūsų GPU kadrų dažnis yra didesnis nei monitoriaus atnaujinimo dažnis, jums kyla problemų, kai kadrų dažnis nukrenta žemiau atnaujinimo dažnio slenksčio.
Pavyzdžiui, sudėtinga scena, kuri priverčia didžiausią GPU kadrų dažnį iki 59 kadrų per sekundę, nebus rodoma 59 kadrų per sekundę greičiu monitoriuje, kurio atnaujinimo dažnis yra 60 Hz. The 16,67 milisekundės sinchronizavimo intervalas, kurio reikalauja VSync 60 Hz monitoriui, faktinis rodomas kadrų dažnis sumažės nuo 59 kadrų per sekundę iki 45 fps.
Dar blogiau, kad vaizdo žaidimo metu GPU našumas (taigi ir kadrų dažnis) labai skiriasi. Tokiais atvejais dėl VSync kai kurie kadrai ekrane laikomi ilgiau nei kiti. Žiūrovas tai suvokia kaip mikčiojimą arba nenuoseklų kadro žingsniavimą.
Kas yra adaptyvusis VSync ir greitas sinchronizavimas?
Laimei, „VSync“ būdingos problemos nebuvo prarastos AMD ir NVIDIA. Abu GPU gamintojai išleido savo pažangius VSync skonius, kurie sumažina pirmiau minėtas problemas. Šios parinktys pasiekiamos per žaidimo nustatymus arba dažniausiai priverstos per GPU vairuotojo valdymo rinkinys.
Adaptyvusis VSync
NVIDIA sukurta „Adaptive VSync“ pašalina visas bjaurias įvesties delsas ir našumo problemas, kurias sukelia GPU, neatsilikdamas nuo monitoriaus atnaujinimo dažnio. Šis VSync diegimas yra aktyvus tik tol, kol GPU gali atitikti monitoriaus atnaujinimo dažnio reikalavimą. „Adaptive Sync“ iš karto išjungia „VSync“ tą akimirką, kai tampa neįmanoma. Tai užtikrina sveiką pusiausvyrą tarp vaizdo žaidimų našumo ir ekrano plyšimo mažinimo.
Greitas sinchronizavimas
Taip pat NVIDIA sukurta „Fast Sync“ prideda „Adaptive VSync“ trigubo buferio magijos. Paprasčiausiai tariant, trigubas buferis reiškia, kad GPU atvaizduoja papildomą kadrą. Tai leidžia pasirinkti naujausią iš dviejų pateiktų kadrų, kurie bus siunčiami į monitorių laukiant monitoriaus atnaujinimo ciklo. Idėja yra sumažinti įvesties delsą rodant naujausią kadrą, tačiau tam taip pat reikia daug GPU galios.
Patobulintas sinchronizavimas
Kaip ir NVIDIA Adaptive VSync pasiūlymai, AMD specifinis patobulintas sinchronizavimas gali išjungti VSync, kai GPU atsilieka nuo monitoriaus atnaujinimo dažnio. Kaip ir NVIDIA greitasis sinchronizavimas, jis taip pat naudoja kelis buferius, kad sumažintų įvesties delsą perduodant naujausią kadrą į monitorių.
Peržengiant VSync
Išnagrinėjome, kaip „VSync“ pašalina ekrano plyšimą ir jo įgyvendinimo trūkumus. Nors NVIDIA ir AMD išleido sudėtingesnes VSync versijas, kurios sumažina šias problemas, yra visiškai naujas požiūris, kaip išspręsti šias problemas naudojant G-Sync ir FreeSync technologijas.
Tačiau tam reikalingi suderinami monitoriai, laidai ir vaizdo plokštės. Tiems, kuriems trūksta išgalvotos aparatūros, VSync įjungimas arba išjungimas turi nuspręsti, kur yra jūsų prioritetai. VSync veikia gerai, jei jūsų GPU yra pakankamai galingas, kad atitiktų monitoriaus atnaujinimo dažnį. Tačiau jums geriau be jo, jei nesate įvesties vėlavimo gerbėjas.