Электронная библиотека

Хакер


Хакер

Кризис жанра

Xakep, номер #009, стр. 009-068-4


Нет, понятно, что разработчики железа тоже обещали одно, а сделали другое, поэтому все эти вуды и ривы тоже сильно нагружают процессор (хотя я не понимаю, нафига нужна железяка, которая прилично работает на компьютере, который и без нее прекрасно со всем справится?). Но не только в этом дело.

Во сколько раз Pentium II-300 быстрее 486DX2-66? Всякие хитрые программы говорят, что раз в десять-пятнадцать как минимум. А во сколько раз графика Кингпина лучше думовской? Точных цифр тут, ясное дело, не получишь, но на глазок раза в два, в три. Чуешь несоответствие?

Ну ладно, это все субъективные впечатления, может, кто-то считает, что графика там в сто раз лучше. Но вот в Braveheart она однозначно почти такая же, как и в Doom'е (а местами и хуже). Однако это чертово Сердце требует себе такое железо, что закачаешься...

Так в чем же дело? Объясняю. В раньшее время, разрабатывая графический движок, программисты его почти весь писали на ассемблере, а уж критические места (отработку графики и пр.) просто непременно. Теперь это никому и в голову не придет. Зачем заниматься оптимизацией вывода графики, когда современное железо и так все потянет, когда в Windows есть встроенные средства поддержки любых существующих разновидностей железа, когда вообще проще весь код написать на языке С и так далее? Пашет - и ладно.

Остановись, мгновенье!

Еще один пример из прошлого. В моей любимой Elite имелось около тридцати разных товаров, примерно столько же оружия и техники, разные звания и рейтинги, ну и много чего еще. А знаешь, какова была величина сохраненки? 209 байт! Честно говоря, когда я просто просуммировал все, что нужно сохранять, у меня даже получилась бОльшая величина.

А сколько занимают сохраненки в современных играх? Если даже не брать SiN, в первом варианте которого требовалось сто с лишним мегабайт на сохраненку, все равно величины получаются жуткие. Ну, тоже самое Бравое Сердце имеет сохраненку 42 Мб. Я вот опять занялся расчетами, взял количество ресурсов, рабочих, построек, солдат и прочего, перемножил все это на количество городов, добавил варианты дипломатических отношений, погоду, виды на урожай, настроение героев. Словом, все, что мне только пришло в голову. Но набрать таким путем мне удалось где-то около мегабайта. Так откуда же взялись остальные 41?

На ZX Spectrum'ах, оснащенных дисководом, имелась клавиша Magic Key. При нажатии на нее все содержимое оперативной памяти сбрасывалось на диск. Хорошая была штука, часто ее использовали в тех играх, где сохраняться нельзя. Благо записать на флопик 48 килобайт - времени нужно немного.

Но вот современные разработчики игр, судя по всему, используют тот же самый прием. Если они сбрасывают на диск вообще всю оперативную память, занятую игрой, получается то, что в SiN'е получилось, а если только область данных - то, что в Бравом Сердце. Ну и что, скажешь ты, ведь данные-то и нужно в сохраненку вносить? Так-то оно так, только данные в памяти хранятся таким образом, чтобы их удобно было использовать программе. Поэтому там, скажем, записаны все имена собственные (названия городов, имена героев и вождей и т.д.). Но ведь это все есть в каком-то из основных файлов игры, верно? Так зачем же еще раз сохранять??

Назад на стр. 009-068-3  Содержание  Вперед на стр. 009-068-5