Стриймингът е

Стрийминг(англ.streaming) - в компютърните игри, зареждане на данни за играта, които "скоро ще са необходими" точно по време на играта. Например: веднага щом персонажът на играча се приближи до град, моделите и текстурите на града се зареждат на заден план.

Съдържание

Необходимостта от стрийминг

С увеличаване на линейната плътност на запис на дисково устройство сnпъти (при същите геометрични размери, брой глави и скорост на въртене), скоростта на четене също ще се увеличи със същитеnпъти; обемът ще се увеличи сn² пъти. С други думи, ако увеличите размера на твърдия диск 100 пъти, неговата скорост ще се увеличи само 10 пъти.

Този факт е добре известен на дългогодишните потребители: зареждането на игри, антивирусното сканиране, дефрагментирането, форматирането и т.н. на модерни (2009) компютри отнема много повече време, отколкото на компютри преди 10 години. Въпреки че в игрите тази разлика беше донякъде "скрита" от компресирането на данните от играта, числата са ясни: Warcraft II на мощни компютри за времето си се зарежда за една или две секунди; Warcraft III на мощни за времето си компютри - за около половин минута. (Дълго, почти минута, зареждане на Doom се дължи на неоптимален двигател, вижтеThe Doom Engineза подробности.)

Ненужно дългите времена за зареждане бяха първите, които се усетиха от програмистите за конзолите PlayStation и PlayStation 2. Когато компютрите получиха достъп до I / O устройства, без да консумират ресурса на процесора, стриймингът стана широко използван на компютрите.

Програмистът трябва да се справя с подобни проблеми.

  • Как да зареждате данни за играта по такъв начин, че потребителят да не изпитва забавяне.
  • Как да предотвратим "състезанията" между товарача и двигателя.
  • Какво да разтоварите, какво да запазите в паметта, какво да изтеглите.
  • Ами ако е необходимонямаше данни в паметта.
  • Как да увеличите максимално производителността на диска.

Във всеки от проектите тези проблеми се решават по свой начин - в зависимост от съотношението на обемите на моделите, текстурите, звуците и т.

Обикновено така го правят. Най-ниското ниво на детайлност на графиката никога не се разтоварва и служи като "спешно" решение, когато внезапно се наложи подходящ модел или текстура. За да се избегнат „състезания“, след всеки кадър зареждащият се синхронизира с енджина, маркирайки вече заредени части от играта като „налични“. Остава само да се разработи някаква метрика, която определя колко скоро ще е необходима текстура или модел. Тук вече няма шаблони: например в автомобилен симулатор пистата може да бъде разделена на няколко сектора и да се заредят тези, които са най-близо до колата на играча; в стрелец - на квадрати. Ако играчът се приближи до сектора, където е скрит гранатометът, трябва да се приеме, че ще се изисква не само моделът на гранатомет, лежащ на нивото, но и моделът на същия гранатомет в ръцете на играча, моделът на летящата граната, звуците на гранатомета и ефектите на експлозията ...

Производителността на диска се увеличава максимално, когато областите, които трябва да бъдат обработени в една транзакция, са наблизо. Следователно редът, в който се съхраняват данните на диска, също е важен. За да се движи главата напред-назад по-малко, на DVD игри, някои от данните трябва да бъдат дублирани. Евристични методи като генетично програмиране се използват за оптимално подреждане на информацията на DVD.