Поколение jDooM

Игровая мода 2001—2002 годов полна ностальгией по прошлому. Индустрию буквально захлестнула непрерывная череда однотипных событий: серии сиквелов классических игр, постоянные обращения к “вечным” темам и неувядающим “стилям” геймплея, появление мириад проектов хоть каким-то боком относящимся к “раскрученным” игровым вселенным… Создавалось ощущение, что разработчики выдохлись в пути, а их хваленая “гениальность” с годами полностью перетекла в кошельки и необъятные животы под дорогими пиджаками. Даже молодые авторы периодически чувствовали эту эпидемию на “ретро”. Правда, пользовались они ей гораздо более творчески, нежели их “старшие” братья по цеху…
Различие в подходах к делу весьма ярко можно показать на примере всего лишь одной игры. Для многих – первой, для многих – единственной. Игры, без сомненья, с большой буквы. DooM. Если прежнее поколение программистов привыкло смотреть на нее как на пройденный этап, выработанный ими до конца, то но новое все чаще видит там именно свое будущее.

Бойкий пенсионер
Появление благородного старца, на чьих похоронах в 1996 году было вылито не одно ведро помоев о “конце эры спрайтов”, “запрете на “смерть вперед ногами” и “неправильной трехмерности” (это значило невозможность существования на одном уровне игры двух точек, различающихся только по координате высоты), может удивить человека далекого от событий в мире электронных развлечений, но только не нас.
Первые признаки возрождения начали появляться примерно в конце 2000 года, когда терзаемый муками о неразглашении Джон Кармак (John Carmack, id Software) официально признал то, что и так уже все знали: DooM’у III быть. Пока старая гвардия смахивала слезы умиления с ресниц на седые бороды, а молодежь вертелась под ногами с криками “что это, папа?”, хорватские ребята из Croteam… Ну дальше вы знаете: все очнулись окончательно счастливыми, новички визжали от избытка чувств не хуже безголовых камикадзе, а ветераны начали перемывать мельчайшие косточки теме “что лучше: Serious Sam сейчас или DooM тогда”. Процесс происходил нервно и продолжался весьма долго. Сравнивали геймплей, атмосферу, баланс оружия, сингл, мультиплеер, сюжет. Логичный вывод спора — “лучше — DooM сейчас” — поразил многих. Большинству, с каким бы усердием оно не чесало языки во здравие шедевра id Software, никогда не приходило в голову пустить на свой P4-1.7 Ггц DOS-приложение с опасной для здоровья графикой 320×200.
"DooM сейчас” никто особенно не хотел. Да, фанаты были. Были и люди, теоретически знающие о неких самодельных омолаживающих средствах, готовых растянуть безобразную картинку на всю ширину “продвинутого”, 800×600х16bit, разрешения посредством 3D-ускорителя. Однако почти все столкнувшиеся с подобными программами, с ужасом вспоминали полосатые текстуры неба в щелях между полигонами уровня и ужасного вида стены, при любом удобном случае сворачивающиеся в самые замысловатые фигуры. Даже огромный послужной список “фич” (features) каждого подобного проекта не привлекал народные массы геймеров.

Через тернии к звездам
Собственно сама история “реставрации” DooM выглядит не такой уж и безумной. Все началось с желания портировать игру на новомодную операционную систему Windows 95. В Windows’е игра, конечно, шла и без портирования, но только как DOS-приложение. Первая попытка стала удачной, но почти ничего нового не привнесла. Разве что для смены управление и настройки сетевой игры теперь не надо было запускать отдельный файл конфигурации.
Долгожданное увеличение разрешения (до 640×480 и выше) появилось только в Windows-версии Final DooM, прощальной песне шедевра, датированной 1996 годом. Однако уже несколько месяцев был “полностью трехмерный” Quake, ломая писсуары, бегал Duke Nukem 3D, появлялись первые весточки о грядущих Unreal и Prey. До “железной революции” с ее “крейсером “Авророй” — чипсетом Voodoo Graphics от 3dfx Interactive — оставалось полгода. Поэтому на деле вся операция приведения стареющего хита в божеский вид означала не более чем растяжку картинки в два раза, при весьма осторожном масштабировании некоторых элементов. Но и этот минимум резво “бегал” лишь на “Hi-End”-системе того времени — процессоре Pentium.
Когда появился первый ускоритель (а вместе с ним и профессиональные языки программирования для работы с графикой на PC, внепроцессорная (CPU) растеризация поверхностей, различные виды фильтрации текстур и разнообразные спецэффекты), было уже несколько поздно: id Software официально отказалась от поддержки серии DooM и вся тяжесть модернизации пала на плечи любителей-программистов.
Нельзя сказать, что массы пылали энтузиазмом продолжить дело id. Одно дело — рисовать похабные текстуры из выкроек журнала “Playboy” и упорно конструировать .wad-файл “Moja kvartira” с монстрами “Batya” и “Maman”, тусующимися около “секретки” на кухне, и совершенно другое — создать новое программное ядро, ориентируясь на весьма туманные (на тот момент) возможности ускорителей и новых API. К тому же сумбур вносила сама легендарная компания, обещая на всех углах выкатить к Рождеству некую Quake II — “в лучших традициях DooM”, как они сами говорили тогда.
С выходом Quake II, SiN, Half-Life и прочих стало окончательно ясно, что DooM как геймплей, к сожалению, умер и настала пора для его скорейшей эксгумации и оживления.
Первопроходцев было море, но редко кто дотягивал до стадии alpha-версии. “Бетами” полнился интернет, а статус релиза ни о чем не говорил и почти со стопроцентной гарантией вешал систему. Или начинал жонглировать полигонами с первых кадров игры. Кроме того, было несколько попыток заменить монстров на трехмерные модели, навсегда отвязав проектировщиков дополнений от необходимости масштабировать практически не приспособленные к этому низкодетализированные спрайты (кстати, оригинальные спрайты DooM’а делались из отсканированных изображений реальных объектов. В закромах id Software до сих пор валяется макет arachnotron’а с отломанной ногой и резиновый shotgun).
Прогресс шел медленно, но неукротимо. С годами дополнения уже почти не падали, почти хорошо “держали” сеть, не слишком часто разражались очередным глюком и постепенно начали наполняться весьма интересными дополнительными функциями. Одно было плохо: удачные находки очень тонко размазывались по всем более или менее достойным дополнениям ровным слоем. Собрать все в одном месте, не запутавшись в трех соснах программирования должен был очередной гений. Человек, созданный для прорыва…

Jaakko. Особенности северной гениальности
На домашней странице Яакко Керьанена (Jaako “SkyJake” Keranen) перед нами открывается небольшая, но достаточно любопытная биография…
“Если я (Яакко, — А.К.) сейчас не на учебе, то я, вероятно, сижу перед моим компьютером и потихоньку программирую или пишу новую песню с моей верной клавиатурой Casio. Не будет сильным преувеличением сказать, что я полностью поглощен компьютерами. Это, видимо, оттого, что вырос вместе с ними. Программирование стало моим главным хобби после того, как я обнаружил, какие фантастические вещи скрываются в обыкновенном мануале для Commodore 64. Редактируя примеры и кусочки программ на BASIC’е, я сделал первый шаг в удивительный мир программирования, мир, который я не оставил и поныне. С течением времени компьютеры вокруг меня становились все лучше: Commodore 64 сменил сначала Amiga 500, а потом — сверхзвуковой IBM PC с Intel 80286. Вот были денечки! Вскоре после перехода на PC я узнал о языке программирования под названием “Си”, он стал моим любимым языком. Если правильно помню, то уже в 7-м классе (тринадцатилетним) я начал баловаться программированием на нем”
Не думайте, что наш гений однобок…
“Мне нравится астрономия, научная фантастика и фэнтази, все направления музыки — от классической до обыкновенной “попсы”, люблю писать, старомодно рисовать карандашом на бумаге и моделировать разное в 3D Studio”
Еще на своей страничке Яакко рассказывает, что ему 21 год, он студент Политехнического Университета города Тампере, умалчивает о своей недавней службе в армии родной Финляндии и выносит в отдельный пункт дело всей жизни на данном этапе — проект “jDooM” на движке собственного изготовления, Doomsday.

jDooM. Без остановки на отдых
Первым публичным выходом в свет проекта jDooM стала версия 0.80, выпущенная Яакко вскоре после “дембеля”, в начале лета 2001 года. Это была рядовая омолаживающая “припарка” для стандартных DooM’овских .wad’ов с джентльменским набором “высокие разрешения, поддержка D3D и OpenGL, спецэффекты”. Сколько-нибудь значительным была лишь невероятная для бета-версии устойчивость продукта и неожиданно гармоничная картинка. В версии 0.82, на которую в июле 2001 года “подсела” половина России, все выглядело еще любопытнее.
Яакко тем временем продолжал работать ударными темпами и впереди забрезжила надежда на фианальный релиз.
Версия 1.0 подарила нам давно желаемую поддержку 3D-моделей в формате .md2 (Quake2-engine) и множество невидимых глазу изменений и дополнений, кои, однако, сильно улучшили игру в целом.
На этом обычно энтузиазм автора заканчивается. Релиз есть, все работает, чувство самореализации удовлетворено. Что еще надо? Версии 1.01 не ждал практически никто. Карьанен выпустил ее в начале осени.
3D-модель оружия в руках, объемный звук через EAX и A3D, поддержка внешних музыкальных файлов в самых популярных форматах, совместимость со scroll’ером мышек, масса очередных мелких улучшений — бег новых версий, никак не желая останавливаться, к этому моменту перешагнул рубеж “1.12” (и “1.5.5” для самого движка Doomsday). К Керьанену начали подтягиваться единомышленники.
Одним из них стал 27-летний москвич Cheb, создатель “chebpack”’а трехмерных моделей для jDooM. Я связался с ним и попросил ответить на несколько вопросов для нашего издания…

Мини-интервью с Cheb’ом
Собирая материалы, так и не смог найти твоего реального имени: только Cheb. Если не трудно, представься.
Можно и представиться. Но тогда зачем, спрашивается, я вообще затевал всю историю со своим инкогнито, напускал туману… Пусть лучше я буду Cheb'ом и дальше.

ОК. Тогда первый вопрос: скоро ли будут готовы новые модели для jDoom 1.12+ (совместимость старых моделей распространяется только до версии 1.11)?
Модели как таковые уже готовы, осталось лишь написать скрипты для подключения их к ядру. 70% работы я сделал — это монстры. Осталось написать скрипты для экранного оружия и статических объектов, что значительно проще. Но это уже будет зависеть не от меня: появились некоторые неотложные дела и все лимиты времени исчерпаны окончательно. Я планирую полностью свернуть свою деятельность до июля; совершенствованием моделей и выпуском полной версии КМ2 будут заниматься другие люди. Благо, у меня, кажется, появились преемники.

Как много людей написали о несколько странной модели Supershotgun’а (модель похожа на… некий фаллический символ. Что, впрочем, хорошо укладывается в практику психоанализа)?
Кстати, ее делал не я. И вообще, по большому счету, мой вклад не так уж велик — больше половины моделей осталось в наследство от Эдмундо Бордю (Edmundo Bordeu, известный “вольный” 3D-моделлер), в том числе ружья. В настоящее время я поддерживаю контакт с еще одним энту­зиастом (кстати, нашим соотечественником), который решил приложить свои усилия именно к совершенствованию экранного оружия. Он хорошо умеет работать с 3D-графикой, и я думаю, когда он освоится с чертовой уймой jDooM'овских тонкостей, всех поклонников игры будет ждать приятный сюрприз.

Какие новшества ждут нас в будущих chebpack'ах?
Во-первых, новый высококачественный какодемон, который так и застрял чуть-чуть недоделанным (и это точно уже до июля). Во-вторых, полностью переделанный барон/рыцарь ада, на которого сейчас больно смотреть без слез (я, конечно, улучшил и эту модель, но это — типичный тяп-ляп на коленке). А в целом же почти все модели будут доработаны. С этим, кстати, связано то, что будущие версии jDooM’а (с установленным chebpack’ом второго поколения) потребуют для “гладкого” геймплея что-то наподобие GeForce 1-2.

Почему все-таки именно jDooM всколыхнул ностальгию к этой игре: ведь были же и раньше VaVoom, DooM Legacy, ZDooMGL?
Мне кажется дело в том, что Яакко сделал упор не на улучшении геймплея, как в этих портах (которое проявляется, в основном, на специально для этих портов сделанных уровнях, по определению не таких массово известных как оригинальный DooM), а на визуальном качестве, на которое простые геймеры слетаются, как мотыльки на лампу… Только посмотрите, как элегантно Яакко решил проблему оригинального неба, которого не хватает по вертикали: все предыдущие попытки рождали крайне неэстетичные результаты, вроде небесной текстуры, грубо растянутой до зенита. А он просто взял, и скрыл верх неба в дымке (кстати, цвет этой дымки вычисляется автоматически, путем усреднения цвета по верхнему краешку текстуры неба). А может быть jDooM просто появился очень вовремя — как раз в тот момент, когда растущие возможности «железа», наконец, сломали жесткие рамки ограничений и позволили сделать DooM и трехмерным, и не корявым.
Надеюсь, результаты моих скромных усилий тоже внесли свою лепту… Дело ведь не в том, что в мире мало талантливых художников по трехмерной графике, дело в том, что никому неохота было этим заниматься: все сидят и ждут, пока id Software выпустит DooM III. А я, например, сильно сомневаюсь, что его можно будет использовать для проигрывания уровней от старого DooM'а (и в том числе тысяч и тысяч других, созданных самими геймерами). Так что, надеюсь, у jDooM'а весьма неплохое будущее.


Рекомендуем почитать: