Streaming ( anglicky streaming ) - v počítačových hrách načítání herních dat, která jsou „brzy potřeba“, přímo v průběhu hry. Například: jakmile se postava hráče přiblíží k městu, na pozadí se načtou modely a textury města.
Při zvýšení hustoty lineárního záznamu diskové jednotky o nkrát (při stejných geometrických rozměrech, počtu hlav a rychlosti otáčení) se o stejných nkrát zvýší i rychlost čtení ; objem se zvýší n²krát . Jinými slovy, pokud zvětšíte velikost pevného disku 100krát, jeho rychlost se zvýší pouze 10krát. Proto načítání her, antivirové skenování, defragmentace , formátování atd. na moderních ( 2009 ) počítačích trvá mnohem déle než na počítačích před 10 lety. I když ve hrách byl tento rozdíl poněkud „schován“ kompresí herních dat, čísla jsou jasná: Warcraft II na výkonných počítačích své doby nabitý za jednu dvě vteřiny; Warcraft III na výkonných počítačích své doby - zhruba za půl minuty [1] .
Zbytečně dlouhé načítání pocítili jako první programátoři pro konzole PlayStation a PlayStation 2 . Když byly počítače schopny přistupovat k I/O zařízením bez spotřebovávání zdrojů CPU, začalo se streamování široce používat také na počítačích. Jednou z prvních streamovaných počítačových her bylo Diablo II : když se postava přiblížila k bráně úrovně, to, co bylo za bránou, bylo s největší pravděpodobností načteno.
Kromě řešení problému dlouhého načítání vám streamování umožňuje dělat obrovské úrovně, které se úplně nevejdou do paměti. To je důležité pro set-top boxy, které mívají méně paměti než počítače své doby: například první PlayStation měl pouze 4 megabajty paměti (včetně video paměti ) [2] .
Programátor musí vyřešit následující otázky.
V každém z projektů se tyto problémy řeší svým vlastním způsobem - v závislosti na poměru objemů modelů , textur , zvuků atd.
Obvykle to tak dělají. Nejnižší úroveň detailů grafiky není nikdy vyložena a slouží jako „nouzové“ řešení, když je náhle potřeba vhodný model nebo textura. Aby se předešlo „závodům“, po každém snímku se nakladač synchronizuje s enginem a označí již načtené části hry jako „dostupné“. Zbývá pouze vyvinout nějakou metriku, která určí, jak brzy bude potřeba textura nebo model. Zde již nejsou žádné šablony: například v automobilovém simulátoru lze trať rozdělit na několik sektorů a načíst ty, které jsou nejblíže hráčovu autu; ve střílečce - do čtverců. Pokud se hráč přiblíží k sektoru, ve kterém je ukrytý granátomet , je třeba předpokládat, že nejen model granátometu ležícího na úrovni, ale také model stejného granátometu v rukou hráče, model bude vyžadován létající granát, zvuky granátometu a efekty výbuchu.
Výkon disku je maximalizován, když jsou v blízkosti oblasti, které je třeba vyřídit v rámci jedné transakce. Důležité je tedy i pořadí, v jakém jsou data na disku uložena. Aby bylo možné méně pohybovat hlavou, u her na DVD se musí některá data duplikovat. K optimálnímu uspořádání informací na DVD se používají heuristiky, jako je genetické programování .