Бета-тестеры - цикл рассказов Призрака - Страница 322


К оглавлению

322

— Нет уж, хватит, — сурово отрезал Банзай. — Кеша вот попробовал — еле откачали.

— Так то Кеша, — уныло буркнул Ксенобайт.

В том, что горемычный дизайнер снова умудрился чего-то напутать, ничего удивительного не было. Но вот последствия очень впечатлили всю компанию.

Задача была, в принципе, несложной: подключиться к одной из библиотек, куда Ксенобайт заранее сложил нарисованные Кешей модели, текстуры и прочий скарб, выбрать там нужную штуковину и установить ее в пространстве игры. Для удобства Ксенобайт даже сделал что-то вроде визуального интерфейса: здоровенный ангар со стеллажами, на которых лежали ящики. На каждом ящике было изображение содержимого или, на худой конец, ярлычок с текстовым описанием.

По мнению Ксенобайта, решительно все было сделано для удобства пользователя. Мелисса, правда, тут же рекомендовала оформить все в виде каталога, по которому нужную модель можно будет просто заказать, но пока они с Ксенобайтом спорили о теории интерфейсов, Кеша умудрился напортачить там, где никто не ждал. Как ему это удалось, осталось загадкой, но дизайнер завис где-то между редактором пространства и библиотекой, в области кода, ну никак не предусматривающей визуализации.

Ксенобайт потом утешал Кешу, что оказаться посреди выполняемого кода не так уж и плохо. Лучше, конечно, вляпаться в какой-нибудь архив, там даже по-своему красиво, но главное — все стоит на месте и можно спокойно обмозговать сложившуюся ситуацию. Даже если при этом тебя самого заархивирует. Это как йога: с непривычки действует на нервы, но со временем перестаешь замечать, что твоя левая ступня торчит у тебя из-за уха.

Вообще, затруднительно описать, что испытывает человек в виртуалке, вылетая по каким-либо причинам из зоны визуализации. Десятки предохранителей и фильтров обычно отключают пользователя прежде, чем с ним произойдет что-то уж совсем странное. Но уж если не повезет, то бедолага получает по полной программе: поток полной чепухи по всем каналам восприятия. Кеша провел в мире математической абстракции две минуты и четырнадцать секунд, но за это время, по его словам, насмотрелся такого, что волосы на голове встают дыбом. Мало того, под впечатлением пережитого он залез в вирт-редактор и нарисовал несколько «пейзажей», пытаясь передать свои впечатления. Надо сказать — получилось. Тестеры, глянув на эти абстрактные инсталляции, делали теперь все, чтобы не оказаться в схожей ситуации.

В результате доставкой объектов (а вернее, их экземпляров) из библиотек в игровое пространство занимался лично Ксенобайт. Программист, более других привычный к подобным казусам, ворчал, но не очень громко, прекрасно понимая, что в случае чего Мелисса моментально найдет ему еще какое-нибудь занятие.

Некоторые модели и даже целые сцены приходилось не возить из библиотек, уже подключенных к движку игры, а напрямую конвертировать из вирт-редактора, чтобы потом, собрав локацию, упаковать ее в новую библиотеку. Тут снова чуть не произошел конфуз, когда Ксенобайт — случайно — едва не упаковал локацию вместе с Мелиссой, Внучкой и Кешей.

Так или иначе, работа продвигалась. Тестеры начерно сотворили материк, после чего приступили к знакомой со времен Енотограда работе: обустройству локаций. Правда, на этот раз им приходилось возводить не бетонные коробки, а бамбуковые хижины, пагоды и усадьбы в абстрактно-восточном стиле, а вместо руин и свалок создавать парки и сады камней.

Впрочем, все это было лишь разминкой, небольшими тестовыми локациями, пока окончательно утверждались эскизы и сценарий стартовой местности игры. А пока Банзай решил занять всю компанию не менее важным, чем строительство, делом.

— Где выгружать?

— Я не знаю… Ну, давай вон на той полянке.

— Ладно.

Ксенобайт крутанул баранку погрузчика. Башня из напоминающих гробы ящиков качнулась и опасно накренилась. Не обращая внимания на сердитые вопли Банзая, программист бесцеремонно свалил ящики в кучу на указанной полянке.

— Ксен, ну ты совсем озверел, — поморщился Мак-Мэд. — Просто натуральный грузчик… А если сломается что-нибудь?

— Да что им сделается, — равнодушно махнул рукой Ксенобайт.

— И где теперь какой?

— А какая разница?

— Тоже правильно. Ладно, вскрывайте!

Махмуд, ворча, подошел к одному из ящиков и, примерившись, ловко вогнал под крышку ломик-активатор. Индикатор распаковки пробежался до ста процентов, после чего крышка отлетела в сторону. В похожем на гроб ящике лежало что-то очень похожее на труп, что, в общем-то, неожиданностью не было.

***

Кеша любил рисовать вирт-пространства. Еще больше он любил смотреть, как нарисованное им оживает в игровых мирах. И как никто другой он знал, что между этими двумя точками лежит целая куча тяжелой работы.

Полбеды, когда речь идет о какой-нибудь детали пейзажа, желательно статичной: например, куске стены. Гораздо сложнее разобраться, к примеру, с монстром, который должен не просто сидеть на полянке, а двигаться, атаковать, обороняться, бегать, прыгать, а порой — еще плавать и летать.

Патологически конфликтующий со всяким программированием Кеша сравнительно легко мог нарисовать достаточно сложную анимацию, просто выстраивая кадр за кадром. Но анимация персонажей для вирт-игр — штука более замысловатая. Ведь монстр должен не просто разыгрывать перед зрителем заранее определенное представление, а реагировать на поведение игрока, желательно — без видимых перескоков с одной анимации на другую.

322