Streaming

Den aktuelle version af siden er endnu ikke blevet gennemgået af erfarne bidragydere og kan afvige væsentligt fra den version , der blev gennemgået den 12. december 2020; checks kræver 4 redigeringer .

Streaming ( engelsk  streaming ) - i computerspil, indlæsning af spildata, der er "snart nødvendigt", lige i løbet af spillet. For eksempel: Så snart spillerkarakteren nærmer sig en by, indlæses byens modeller og teksturer i baggrunden.

Behovet for streaming

Med en stigning i den lineære optagetæthed af et diskdrev med n gange (med samme geometriske dimensioner, antal hoveder og rotationshastighed), vil læsehastigheden også stige med de samme n gange; volumen vil stige med n² gange. Med andre ord, hvis du øger størrelsen på harddisken med 100 gange, vil dens hastighed kun stige med 10 gange. Derfor tager indlæsning af spil, antivirusscanning , defragmentering , formatering osv. på moderne ( 2009 ) computere meget længere tid end på computere for 10 år siden. Selvom denne forskel i spil var noget "skjult" af komprimeringen af ​​spildata, er tallene klare: Warcraft II på kraftfulde computere af sin tid indlæst på et eller to sekunder; Warcraft III på kraftfulde computere fra sin tid - på cirka et halvt minut [1] .

Unødvendigt lang indlæsning var den første, der kunne mærkes af programmører til PlayStation- og PlayStation 2-konsollerne . Da pc'er blev i stand til at få adgang til I/O-enheder uden at forbruge CPU-ressourcer, blev streaming også meget brugt på pc'er. Et af de første streaming-pc-spil var Diablo II : når en karakter nærmede sig en niveauport, var det, der var bag porten, højst sandsynligt indlæst.

Ud over at løse problemet med lang indlæsning giver streaming dig mulighed for at lave enorme niveauer, der ikke passer helt ind i hukommelsen. Dette er vigtigt for set-top-bokse, som har en tendens til at have mindre hukommelse end pc'er på deres tid: for eksempel havde den første PlayStation kun 4 megabyte hukommelse (inklusive videohukommelse ) [2] .

Tilnærmelser

Programmøren skal løse følgende spørgsmål.

I hvert af projekterne bliver disse problemer løst på deres egen måde - afhængigt af forholdet mellem volumen af ​​modeller , teksturer , lyde osv.

Det er normalt sådan, de gør det. Det laveste niveau af grafikdetaljer aflæses aldrig og fungerer som en "nødløsning", når der pludselig er brug for den rette model eller tekstur. For at undgå "racer", efter hver frame, synkroniseres læsseren med motoren, hvilket markerer allerede indlæste dele af spillet som "tilgængelige". Det er kun tilbage at udvikle en eller anden metrik, der bestemmer, hvor hurtigt en tekstur eller model vil være nødvendig. Der er allerede ingen skabeloner her: for eksempel i en bilsimulator kan banen opdeles i en række sektorer, og de tættest på spillerens bil kan indlæses; i et skydespil  - i firkanter. Hvis spilleren nærmer sig en sektor, der har en granatkaster skjult i sig, må det antages, at ikke kun modellen af ​​granatkasteren, der ligger på niveauet, men også modellen af ​​den samme granatkaster i spillerens hænder, modellen af ​​granatkasteren. den flyvende granat, lydene fra granatkasteren og eksplosionseffekterne vil være påkrævet.

Diskens ydeevne maksimeres, når de områder, der skal håndteres i en enkelt transaktion, er i nærheden. Derfor er rækkefølgen, hvori dataene er lagret på disken, også vigtig. For at bevæge hovedet mindre, på DVD -spil, skal nogle af dataene duplikeres. Heuristik såsom genetisk programmering bruges til at arrangere informationen på DVD'en optimalt .

Noter

  1. Den lange, næsten et minuts, indlæsning af Doom skyldes en suboptimal motor, se Doom -motoren for flere detaljer ; andre spil som Quake eller Duke Nukem 3D passer ind i statistikken.
  2. PlayStation er meget praktisk at sammenligne med pc'en: Ældre konsoller har en patron ROM , som den PlayStation, der arbejder fra cd'en, selvfølgelig ikke har.

Se også

Links