Lag (datorslang)

Den aktuella versionen av sidan har ännu inte granskats av erfarna bidragsgivare och kan skilja sig väsentligt från versionen som granskades den 10 mars 2018; kontroller kräver 185 redigeringar .

Lag (av engelska  lag , [læɡ]  - "delay", "delay") - en fördröjning i driften av en datorapplikation när den inte svarar på användarinmatning i tid. Dess derivata "lag" används i stor utsträckning av internetanvändare för att beteckna förseningar i driften av olika internettjänster och onlinespel. Spelare använder också ordet "lag" i förhållande till själva programmets förseningar. Hittas ofta i onlinespel. Ur teknisk synvinkel är det en manifestation av påverkan av latensen för dataöverföring och bearbetning på kvaliteten på realtidssystemet .

spelets reaktionsfördröjning

Analys

Även i ett enspelarspel består fördröjningen mellan att trycka och bilden av flera delar [1] [2] :

I ett nätverksspel läggs den tid det tar för paket att resa från dator till dator till detta .

Spelar också rollen som mikrolag eller stammar - frames som är ritade längre än andra [7] . Vanligtvis händer mikrolags när saker i spelet blir allvarliga [7] (skottlossning i FPS, tung trafik i ett lopp) - därför påverkar mikrolags upplevelsen av spelet ännu mer än den genomsnittliga fördröjningen.

För att minska förseningarna, tillämpa följande åtgärder:

Eftersläpning i onlinespel

Om förseningar från en knapp till en bild började bekämpas först på 2010-talet, började datanätverksförseningar spela en roll från de första åren av spel på Internet och är nästan alltid mer betydande än andra typer av förseningar (förutom speciella fall - eSports , det vill säga att spela på ett olastat lokalt nätverk). I synnerhet färdas ljus längs jordens ekvator på 130 ms - en sådan ping anses oacceptabel av moderna spelare, och detta är teoretiskt sett den minsta siffran när spelare befinner sig i olika delar av jorden.

Strängt taget levereras varje överfört paket med en fördröjning, men fördröjningar är vanligtvis bara märkbara förseningar som stör ett normalt spel. Samtidigt beror spelares uppfattning om lags på många faktorer, främst relaterade till noggrannheten och reaktionstiden som krävs vid ett givet spelögonblick [8] . Vanligtvis orsakas nätverksfördröjning av nätverkspaketförlust och tillhörande återöverföring av förlorade nätverkspaket.

Arkitekturen i Doom (1993) var den enklaste: varje spelare har ett komplett spelläge. Varje cykel (35 cykler per sekund, 1 cykel = 28 ms) skickar spelaren ut kontrollknappar till de andra. Så snart spelaren har samlat på sig knappar från alla deltagare i nätverksspelet spenderar han en ny cykel [9] . Samma ljus färdas genom USA på 15 ms, och den här arkitekturen räcker även för ett modemspel genom flera amerikanska delstater.

Det är sådan skillnad mellan moderna spel och Doom .

  1. En sådan arkitektur är felaktig i andra avseenden: den är instabil mot fusk , den låter dig knappast gå in i spelet du har startat eller kasta ut spelaren ...
  2. Telefonen använder kanalväxling  - PBX ger abonnenten en garanterad bandbredd med en stabil fördröjning. På Internet , paketväxling  - en deltagare skickar ett meddelande ( paket ) till en annan, och mellannoder tar reda på hur det ska levereras. Detta ökar kapaciteten för kanalerna och överlevnadsförmågan för Internet - men vilken som helst av noderna på nätverket kan lösa överbelastning genom att släppa paketet, fördröja det, starta det längs en annan väg, etc., vilket också ökar fördröjningen.
  3. Om paketen tar lång tid fördröjs kontrollen. Det är därför Doom inte spelar bra vid förseningar som överstiger spelcykeln.

Vanligtvis löses frågan om förseningar på detta sätt. Spelet har två tillstånd - "garanterat" och "avancerat" [10] . "Garanterat" är vad som hände på servern och kan inte ändras på något sätt genom att plötsligt anlända paket, och kan släpa efter avsevärt - mer än 100 ms. "Forward"-tillståndet bestäms av spelarens lokala kontroll och paketen för de spelare som har bra uppkoppling. Således, trots dålig anslutning, har varje spelare responsiva kontroller. Stereotypa nätverksfördröjningar ser ut så här:

Sedan Dooms dagar har det funnits två sätt att skjuta i spel - omedelbar beräkning av en kulas bana ( hitscan ) och en långsam projektil ( projektil ). (Intermediate - en snabb kula - implementeras extremt sällan och i mycket realistiska spel fokuserade på prickskytte- och artilleridueller kommer vi att utelämna det.) Med projektiler kommer spelet inte att avvika särskilt mycket från sanningen om spelaren siktar på det avancerade tillståndet, och träffar beräknas enligt den garanterade [11] . Det är omöjligt att beräkna banor på det här sättet - det finns inget avancerat tillstånd på servern alls, de är olika för olika spelare, och det finns kraftfulla typer av hitscan-vapen som ett prickskyttegevär , för vilka "hit-miss"-frågan är arkiverad . Därför används i många motorer ( Källa ) den så kallade fördröjningskompensationen  - servern gör ett antagande om vilken bild klienten såg vid skotttillfället [12] . Utåt ser det ut så här: spelaren lutade sig ur skyddet, gömde sig framgångsrikt och dödades redan där, på en säker plats [12] .

Inverkan av olika videoadapterfunktioner på fördröjning för en spelare

Baslinjen är ett enspelar- eller LAN -spel (nätverkslatenserna är försumbara), dubbelbuffring är avstängd, spelet är konfigurerat så att systemets bildhastighet är stabil och överstiger monitorns.

Berättelse

Under en lång tid reducerades den minskade spelfördröjningen till att öka bildfrekvenserna . Samtidigt hade spelkonsoler initialt en fördel - från de första generationerna producerade de en hög bildfrekvens (50/60 Hz), detta uppnåddes genom specialiserade lösningar som begränsade speldesignen [16] , men gjorde systemet billigare: för Exempelvis Sega Mega Drive 16-bitars med en frekvens på 7,6 MHz, och liknande prestanda 80386 är redan 32-bitars [17] och 12…40 MHz.

I början av 2000-talet började spel på PC konsekvent ge samma 60 Hz som på konsoler, och under hela 2000-talet förbättrades bildkvaliteten genom att programmera grafikkortet med shaders . Det tog flera renderingspass för att lägga till belysning, reflektioner, etc. [18] , och för att förhindra att processorn väntade gjordes renderingen försenad [19] . Den här tekniken har spelat ett grymt skämt: om grafikkortet laddas till det yttersta ökar fördröjningen från att klicka till bilden. Att begränsa bildfrekvensen, till och med upp till 95 %, vilket gör spelet praktiskt taget "CPU-beroende", minskar latensen [15] .

Latensen har legat i skymundan hela den här tiden eftersom det är svårt att mäta - det kräver en modifierad mus (om du trycker på knappen tänds en LED ) och en höghastighetskamera [2] . Forskarna kunde mäta en siffra på upp till 120 ms, och även vid en bildhastighet på 120 fps är det cirka 40 ms [13] [15] . En sådan fördröjning kallas ibland för "kikarfördelen" - att titta ut bakom ett hinder vet i förväg att försvararen är vid en given punkt och kan skjuta framåt, men försvararen kan inte [2] . 2020 dök nVidia Reflex -teknologi upp  - den tillåter spelet att övervaka laddningen av grafikkortet, och detta minskar förseningen avsevärt [2] . Tekniken är tillgänglig med vilken bildskärm som helst och även på relativt gamla grafikkort (från och med GeForce 900 ), men spelet måste stödja det. (Den andra delen av nVidia Reflex, latensberäkning, kräver en specifik bildskärm och tar hänsyn till allt utom mushastighet och bildskärmspixlar.)

Hundradelar av en sekund är viktiga i rytmspel , alla händelser är helt förutsägbara, och de spelas vanligtvis på konsoler, där utgångsenheten är en TV med sina egna bildförbättringsalgoritmer. Det är därför Guitar Hero och liknande spel har fördröjningskalibrering [20] .

se även

Anteckningar

  1. Utforska inmatningsfördröjning inifrån och ut . Hämtad 28 april 2022. Arkiverad från originalet 28 april 2022.
  2. 1 2 3 4 5 6 7 8 9 Vi introducerar NVIDIA Reflex: Optimera och mäta fördröjning i konkurrenskraftiga spel | NVIDIA . Hämtad 20 november 2020. Arkiverad från originalet 19 november 2020.
  3. 1 2 3 Minute Science: Input Lag vs. Svarstid - YouTube . Hämtad 28 april 2022. Arkiverad från originalet 28 april 2022.
  4. Faktorer som påverkar PC-skärmens lyhördhet | PC-skärmar . Hämtad 28 april 2022. Arkiverad från originalet 25 april 2022.
  5. Duck Hunt på en HDTV 2YouTube
  6. Spellägesinställningar på din Samsung TV | Samsung Australien . Hämtad 28 april 2022. Arkiverad från originalet 12 november 2020.
  7. 1 2 Hur man fixar stamning i spel - Bildfrekvens, bildtid och RTSS - YouTube . Hämtad 29 april 2022. Arkiverad från originalet 29 april 2022.
  8. Markera Claypool, Kajal Claypool. Latens kan döda: precision och deadline i onlinespel  //  Proceeding MMSys '10 Proceedings av den första årliga ACM SIGMM-konferensen om multimediasystem. - New York, NY: ACM, 2010. - P. 215-222 . - ISBN 978-1-60558-914-5 . - doi : 10.1145/1730836.1730863 .
  9. Doom nätverkskomponent | Doom Wiki | fandom . Hämtad 8 maj 2022. Arkiverad från originalet 7 juli 2022.
  10. Förutsägelse på klientsidan och serveravstämning - Gabriel Gambetta . Hämtad 8 maj 2022. Arkiverad från originalet 5 maj 2022.
  11. Fördröjningskompensation - Officiell TF2 Wiki | Officiell Team Fortress Wiki . Hämtad 8 maj 2022. Arkiverad från originalet 8 maj 2022.
  12. 1 2 Fördröjningskompensation - Gabriel Gambetta . Hämtad 8 maj 2022. Arkiverad från originalet 27 april 2022.
  13. 1 2 3 4 5 Nvidia Fast Sync bättre än G-Sync och V-Sync? - Youtube . Hämtad 29 april 2022. Arkiverad från originalet 25 mars 2022.
  14. (Kantlöst) Fönsterläge Ska du använda det? - Youtube . Hämtad 29 april 2022. Arkiverad från originalet 29 april 2022.
  15. 1 2 3 4 NVIDIA Reflex Low Latency - Hur det fungerar och varför du vill använda detYouTube
  16. James Hague. Stumbling Into the Cold Expanse of Real Programming Arkiverad 11 november 2020 på Wayback Machine . Översättning
  17. Till exempel släpptes Disneys Aladdin och Lejonkungen endast i skyddat läge 80386.
  18. Unreals återgivningspass - Overklig konstoptimering . Hämtad 28 april 2022. Arkiverad från originalet 19 april 2022.
  19. Multiple-Pass-rendering - Win32-appar | Microsoft docs . Hämtad 28 april 2022. Arkiverad från originalet 28 april 2022.
  20. Hur man fixar fördröjningen i Guitar HeroYouTube

Länkar