Выбрать книгу по жанру
Фантастика и фэнтези
- Боевая фантастика
- Героическая фантастика
- Городское фэнтези
- Готический роман
- Детективная фантастика
- Ироническая фантастика
- Ироническое фэнтези
- Историческое фэнтези
- Киберпанк
- Космическая фантастика
- Космоопера
- ЛитРПГ
- Мистика
- Научная фантастика
- Ненаучная фантастика
- Попаданцы
- Постапокалипсис
- Сказочная фантастика
- Социально-философская фантастика
- Стимпанк
- Технофэнтези
- Ужасы и мистика
- Фантастика: прочее
- Фэнтези
- Эпическая фантастика
- Юмористическая фантастика
- Юмористическое фэнтези
- Альтернативная история
Детективы и триллеры
- Боевики
- Дамский детективный роман
- Иронические детективы
- Исторические детективы
- Классические детективы
- Криминальные детективы
- Крутой детектив
- Маньяки
- Медицинский триллер
- Политические детективы
- Полицейские детективы
- Прочие Детективы
- Триллеры
- Шпионские детективы
Проза
- Афоризмы
- Военная проза
- Историческая проза
- Классическая проза
- Контркультура
- Магический реализм
- Новелла
- Повесть
- Проза прочее
- Рассказ
- Роман
- Русская классическая проза
- Семейный роман/Семейная сага
- Сентиментальная проза
- Советская классическая проза
- Современная проза
- Эпистолярная проза
- Эссе, очерк, этюд, набросок
- Феерия
Любовные романы
- Исторические любовные романы
- Короткие любовные романы
- Любовно-фантастические романы
- Остросюжетные любовные романы
- Порно
- Прочие любовные романы
- Слеш
- Современные любовные романы
- Эротика
- Фемслеш
Приключения
- Вестерны
- Исторические приключения
- Морские приключения
- Приключения про индейцев
- Природа и животные
- Прочие приключения
- Путешествия и география
Детские
- Детская образовательная литература
- Детская проза
- Детская фантастика
- Детские остросюжетные
- Детские приключения
- Детские стихи
- Детский фольклор
- Книга-игра
- Прочая детская литература
- Сказки
Поэзия и драматургия
- Басни
- Верлибры
- Визуальная поэзия
- В стихах
- Драматургия
- Лирика
- Палиндромы
- Песенная поэзия
- Поэзия
- Экспериментальная поэзия
- Эпическая поэзия
Старинная литература
- Античная литература
- Древневосточная литература
- Древнерусская литература
- Европейская старинная литература
- Мифы. Легенды. Эпос
- Прочая старинная литература
Научно-образовательная
- Альтернативная медицина
- Астрономия и космос
- Биология
- Биофизика
- Биохимия
- Ботаника
- Ветеринария
- Военная история
- Геология и география
- Государство и право
- Детская психология
- Зоология
- Иностранные языки
- История
- Культурология
- Литературоведение
- Математика
- Медицина
- Обществознание
- Органическая химия
- Педагогика
- Политика
- Прочая научная литература
- Психология
- Психотерапия и консультирование
- Религиоведение
- Рефераты
- Секс и семейная психология
- Технические науки
- Учебники
- Физика
- Физическая химия
- Философия
- Химия
- Шпаргалки
- Экология
- Юриспруденция
- Языкознание
- Аналитическая химия
Компьютеры и интернет
- Базы данных
- Интернет
- Компьютерное «железо»
- ОС и сети
- Программирование
- Программное обеспечение
- Прочая компьютерная литература
Справочная литература
Документальная литература
- Биографии и мемуары
- Военная документалистика
- Искусство и Дизайн
- Критика
- Научпоп
- Прочая документальная литература
- Публицистика
Религия и духовность
- Астрология
- Индуизм
- Православие
- Протестантизм
- Прочая религиозная литература
- Религия
- Самосовершенствование
- Христианство
- Эзотерика
- Язычество
- Хиромантия
Юмор
Дом и семья
- Домашние животные
- Здоровье и красота
- Кулинария
- Прочее домоводство
- Развлечения
- Сад и огород
- Сделай сам
- Спорт
- Хобби и ремесла
- Эротика и секс
Деловая литература
- Банковское дело
- Внешнеэкономическая деятельность
- Деловая литература
- Делопроизводство
- Корпоративная культура
- Личные финансы
- Малый бизнес
- Маркетинг, PR, реклама
- О бизнесе популярно
- Поиск работы, карьера
- Торговля
- Управление, подбор персонала
- Ценные бумаги, инвестиции
- Экономика
Жанр не определен
Техника
Прочее
Драматургия
Фольклор
Военное дело
Жизнь в мире компьютерных игр - Ли Нунан Дженнифер - Страница 20
В том, что касается использования памяти, Pirates! поставили перед нами весьма необычную проблему. Навигация и драки в игре были двухмерными, чтобы свести к минимуму необходимые для их обсчета ресурсы, но даже так большие фрагменты игры пришлось делать в текстовом формате. Ни для какой дополнительной анимации места попросту не оставалось. Мы, конечно, и так собирались оставить в стороне все промежуточные хождения, и все же то, что оставалось, выглядело слишком уж скудно. И мы решили попробовать использовать отдельные картинки – что-то вроде альбома, заполняют который сами игроки. К тому моменту видеокарты уже проделали большой путь и далеко ушли от глыбообразных крокодилов и шишкообразных обезьян, а мастерство Майкла Эйра росло с каждой созданной игрой. Передовые технологии и талант нашего художника позволили нам сделать весьма впечатляющую для того времени графику. Я хотел использовать в игре как можно больше этих замечательных изображений, но на все ресурсов по-прежнему не хватало. К счастью, нас спас программист Рэндал Мастеллер, который по-новому интерпретировал один старый добрый прием.
(window.adrunTag = window.adrunTag || []).push({v: 1, el: 'adrun-4-144', c: 4, b: 144})Операционные системы всегда оптимизировались для максимально эффективного хранения и отображения шрифтов, ведь без выведения текста на экран выполнить какие бы то ни было действия было бы нельзя. Именно шрифты загружались в память компьютера первыми, именно их легче всего было заменить или убрать. Программисты уже давно знали, что представление любой информации в форме шрифта позволяет загружать ее быстрее.
Обычно этот прием использовали при работе с небольшими картинками. Например, в моей первой символьной игре я использовал «звездочку» для изображения астероида, потому что ничего, кроме стандартных текстовых символов, у меня в распоряжении не было. Но шрифт вовсе не обязательно должен был состоять из букв и цифр. Если бы произошел этакий чудесный анахронизм и мой мини-компьютер Nova загрузился с игривым шрифтом Wingdings от Microsoft, то «звездочка» отобразилась бы как маленький конверт. При нажатии большой литеры M на экране высветилась бы классическая мультяшная бомба, вместо цифры 8 – миленький телефон с циферблатом. Конечно, остальные функции компьютера при таком раскладе стали бы недоступны, но идея здесь в том, что можно составить из маленьких картинок пользовательский шрифт, и он будет грузиться быстрее, чем если бы компьютер подгружал те же изображения через видеокарту.
Следующим шагом была загрузка в шрифтовом формате простых анимированных картинок – этот прием я использовал во Floyd of the Jungle. Каждое существо там изображалась одной буквой, а последние буквы алфавита были отведены под их слегка видоизмененные версии. Например, вместо символа «c» был крокодил с закрытой пастью, а вместо большой «C» – он же, только пасть была уже открыта. Если прописать команду быстрого переключения между двумя этими символами, на экране крокодил будет открывать и закрывать пасть. А если добавить в этот цикл еще пару крокодильих букв, то крокодил на экране научится ходить и щелкать челюстями одновременно. После загрузки шрифта в память на экран можно было вывести хоть одного крокодила, хоть сотню – это не требовало дополнительных ресурсов. Пока ваш алфавит не превышал максимально допустимого количества символов в шрифте – 256, – процессор компьютера мог переключаться между ними с той же легкостью, с какой он пролистывал текстовый файл.
Инструмент Рэндала позволял анализировать большую картинку и находить наиболее эффективный способ преобразования каждого блока размером 8 на 8 пикселей в шрифтовой символ. Эта техника представляла собой нечто вроде живописи цифрами: например, если верхний левый угол экрана был полностью занят небом, значит, символ «1» соответствовал сплошному блоку синего цвета, и все остальные большие куски синего также обозначались символом «1». Когда мы добирались до облака, цифрой «2» приходилось обозначать изогнутый кусок синего и белого, но потом наша задача опять упрощалась: подряд шел целый ряд белых кусков, и всем им соответствовал символ «3». Чем проще была картинка, тем больший размер изображения мы могли описать с помощью отведенных нам 256 символов. Когда игрок выбирал на экране пункт меню, мы стирали шрифт вместе со всем остальным, что было на экране, и загружали новое изображение.
Единственная проблема состояла в том, что нам при всем при том нужно было выводить на экран еще и настоящий текст. В игре могли быть сотни разных шрифтов (а с разными картинками для каждого экрана именно так у нас и получалось), но одновременно в память можно было загрузить только один шрифт, поэтому первые 70 позиций в каждом шрифте использовались для одинаковых наборов прописных и строчных букв, цифр и некоторых специальных символов вроде запятых и вопросительных знаков. Остальные 186 позиций, то есть скобки, амперсанты и прочее, заменялись на сборную солянку из цветных пикселей, которые слагались в целостную картинку, только если расположить их в нужном порядке – в таком случае они вдруг превращались в прекрасный приморский городок или в миловидную дочь губернатора.
Ни одна игра MicroProse не обходилась без толстенного руководства пользователя, поэтому ближе к концу работы над проектом к нашей команде подключился Арнольд Хендрик, вместе с которым мы стали писать 88-страничную книжицу, напечатанную в оттенках сепии. В руководство не входили примечания, касавшиеся защиты авторских прав: мы сделали специальную раскладную карту Карибского региона, прилагавшуюся в комплекте с игрой, чтобы скопировать игру было еще труднее. Такие предметы, как правило, становились коллекционной редкостью и часто их называли ощущалками, отсылая к тактильному развлечению, описанному в антиутопии Олдоса Хаксли «Дивный новый мир». Впервые такие артефакты были использованы в детективной игре 1982 года от компании Infocom под названием Deadline: она на долгие годы задала планку, ведь в ней были фото с мест преступлений, протоколы допросов, отчет коронера, письмо от адвоката семьи и даже три таблетки (сделанные из леденца), якобы найденные на месте преступления. Вся эта коллекция появилась на свет благодаря тому, что разработчик игры Марк Бланк не смог уместить в игре всю необходимую информацию, и только потом выяснилось, что Deadline куда менее популярен у пиратов, чем предыдущие игры издателя, и сообщество гейм-дизайнеров осознало, какой потенциал заложен в подобных «вещественных доказательствах».
Помимо работы над руководством, Арнольд помог нам тем, что разбавил киношную удаль Pirates! здоровой порцией реализма. Он настоял на соблюдении некоторых исторических фактов в режиме кампании и выступил против использования знаменитых персонажей, живших не в ту эпоху, которую мы изображали в игре, например Черной Бороды и Жана Лафита. В итоге реалистический фундамент позволил нам еще больше укрепить общую тему романтических приключений. Как Арнольд объяснил в заметках разработчиков, «эти люди были безумными пережитками великой эпохи, преступниками, которые никак не хотели сдаваться… В их жизни не было ни подковерных интриг, ни светлого будущего – лишь выбор из пули и веревки. Мы посчитали, что в них нет ничего привлекательного и интересного по сравнению с прославленными морскими волками и флибустьерами предшествующих эпох».
Однако у морских волков и флибустьеров была одна интересная особенность: они не могли умереть. Эррол Флинн не мог погибнуть в сражении или быть приговоренным к повешению, ведь это разрушило бы картину эпохи, которую он олицетворял. С другой стороны, игра, в которой нельзя проиграть, уже не игра: в ней непременно должен присутствовать риск неудачи. Что было еще хуже, я случайно убрал из игры сцену эффектного финала. В военных играх у нас было определенное количество миссий, и каждая из них заканчивалась красивым взрывом. Но пират всегда готов отправиться в новое приключение, пират – это стиль жизни, а не выполнение отдельных заданий. Я дал игроку возможность выбирать приключения на свой вкус и тем самым лишил себя привилегии объявлять, какая миссия была более трудной, а какая – менее. В Pirates! игрок мог, к примеру, выиграть битву или завладеть сокровищем, но окончательной победы, как и окончательного поражения, в игре предусмотрено не было.
(window.adrunTag = window.adrunTag || []).push({v: 1, el: 'adrun-4-145', c: 4, b: 145})- Предыдущая
- 20/70
- Следующая
