Ок, я опоздал с обновлением.
Поездка прошла хорошо. Неделю просидел в четырех стенах и выходил из гостиницы только за колой. Она меня, похоже, немного испортила, потому что всякие мелкие отвлекающие факторы в офисе теперь раздражают куда больше. Наверное, я пока буду делать такие недельные исследовательские вылазки более-менее регулярно, пока у нас нет кранча. Где-то раз в три месяца.
Я пока не готов говорить о деталях Trinity, над которыми сейчас работаю. Я пытался начать движок Quake многими способами (дерево лучей, порталы и т. д.), пока не определился с архитектурой. Так что вполне возможно, что вещи, которыми я сейчас занимаюсь, в готовый проект не войдут, и я не хочу упоминать ничего такого, что кто-то может воспринять как обещание.
Хотя я уже в восторге от перспектив.
Многие занимаются разработкой игр только ради результата, и ради него они как бы терпят процесс. Уважаю эту точку зрения, но у меня немного другая мотивация.
Я сам очень горжусь теми отличными играми, которые выпускаю, но те вещи, которых мне удалось достичь в процессе разработки, запоминаются куда лучше. Я не помню ни одного из наших прошлых релизов, но помню все свои лучшие идеи вплоть до циклического заворачивания графического контроллера для бесконечного гладкого скроллинга в Commander Keen (даже вплоть до осознания преимуществ структур данных над параллельными массивами в ассемблере Apple II…) Знание строится на знании.
Я делю свою жизнь на периоды, которые потом разбиваю на категории в зависимости от того, сколько нового я за это время узнал.
Самым простым вещам я научился еще в школе на Apple II, но из-за нехватки ресурсов я не мог учиться быстро и многого не умел. Сегодня быть программистом намного проще: покупаешь дешевый PC, диск с Linux, доступ в Интернет – и у тебя есть все инструменты и ресурсы, чтобы довести свое умение программировать до какого угодно уровня.
За первые шесть месяцев работы на PC в Softdisk я узнал невероятно много. Впервые в жизни со мной работали программисты, у которых было больше опыта, чем у меня (Ромеро и Лейн Роут), вокруг было много книг и материалов, и я мог все время программировать и ни на что не отвлекаться. Отличный был период.
Потом были два года, которые закончились выпуском DOOM и разными консольными делами, когда мои умения и знания стабильно выросли сразу в нескольких областях – графика, сети, Unix, написание компиляторов, кросс-платформенная разработка, RISC-архитектура и т. д.
Первый год разработки Quake был чудесен. Я попробовал столько новых вещей, а Майкл Абраш все их оценивал. Многие программисты графики с классическим образованием наверняка удивятся, как мало я знал о традиционной 3D-графике, пока писал DOOM – черт, да у меня даже были проблемы с правильной стыковкой полигонов стен (вот откуда взялись все эти глупости с полярными координатами). Quake заставил меня делать вещи по уму и искать новое.
Последние шесть месяцев разработки Quake – в основном боль и страдания в попытках закончить эту чертову игру. Оно того стоило, но я вспоминаю это время без особого удовольствия.
За разработку Quake 2 я научился не очень многому (GLQuake, QuakeWorld, излучение, OpenGL, программирование инструментов, Win32 и т. д.), но она дала мне время проанализировать многие вещи и подготовиться к настоящему прорыву.
Я думаю, что грядущая разработка Trinity будет для меня такой же плодотворной, как и Quake. Я достигаю глубокого понимания некоторых вещей и исследую совершенно новые (не связанные с графикой) для меня области, которые должны хорошо сочетаться со всем остальным, что я делаю. После этого у нас еще и выйдет убойная игра:)
* * *
Кармак недолго пребывал в хорошем настроении. Со временем он, как и Ромеро в Ion Storm, начал понимать, что прошло то время, когда его команда была маленькой и дружной. Теперь офис id был пронизан злобой и ненавистью. И без того напряженные взаимоотношения Тима, Американа и других дизайнеров уровней достигли точки кипения. Адриан и Кевин были на ножах с Полом Стидом. Они слишком сильно друг другу не нравились, чтобы вместе работать над уровнями, понял Кармак. Решение: положить в основание следующей игры ту самую атмосферу ненависти. Quake III будет использовать большинство его наработок для движка Trinity, и при этом в игре останется только режим «смертельного боя», чтобы дизайнеры карт могли работать, не пересекаясь друг другом.
– РОМЕРО – ЭТО ХАОС, А КАРМАК – ПОРЯДОК, – СКАЗАЛ ОН. – ВМЕСТЕ ОНИ ОБРАЗУЮТ ИДЕАЛЬНОЕ СОЧЕТАНИЕ. НО ЕСЛИ ИХ РАЗДЕЛИТЬ, ЧТО ОСТАЕТСЯ?
Идея Кармака была воспринята не слишком хорошо. Адриан заявил, что не хочет делать очередной шутер про морпехов с дробовиками. Уже несколько лет id делает одну и ту же игру, думал он – пора заняться чем-нибудь другим. Американ его поддержал. Пол тоже согласился – он отстаивал идею создания сюжетной игры, свежей и ориентированной на персонажей, и набросал черновик дизайн-документа, где подробно описал сюжет. Кармак даже слушать не стал – он считал, что сюжет не важен. Даже Кевин, который никогда не спорил с командой, выказал свое разочарование, заявив, что Кармаку для этой игры придется искать другого менеджера проекта. id была компанией Кармака – теперь это было очевидно как никогда. А Quake III – игрой Кармака.
Дни Американа были сочтены. Его вызвали на собрание владельцев компании и уволили за недостаточное усердие. Кармак посчитал, что Американ, отработав свое, пошел по пути Ромеро. Когда Американ попросил объяснений, ему заявили, что увольняют, потому что он никому не нравится. Вот так всегда, подумал он. Во что компания превратилась после ухода Ромеро… Никакого баланса.
Не он один обнаружил в себе новообретенную симпатию к Ромеро. Даже Пол Стид, который никогда с ним не работал, начал думать, что увольнение Ромеро стало ужасной ошибкой.
– Ромеро – это хаос, а Кармак – порядок, – сказал он. – Вместе они образуют идеальное сочетание. Но если их разделить, что остается?
* * *
Изумрудно-зеленые двери лифта открылись на верхнем этаже Техасского бизнес-центра. Шел февраль 1998 года. Ромеро вышел наружу и обвел глазами свою шоколадную фабрику Вилли Вонки, которая наконец приняла законченный вид. Здесь было все, о чем Ромеро только мог мечтать. Бильярдный стол. Игровая комната с винтажными аркадными автоматами. Настольный футбол. Арена для «смертельных боев» с мониторами диагональю двадцать один дюйм, стоящими на столах из цельного дуба. Двенадцать телевизоров, настроенных на показ MTV. Рабочие места из рифленой стали, расставленные в форме одного из уровней игры. Кухня, ломящаяся от сладостей и вредной еды. И окна: стены и потолок офиса площадью две тысячи квадратных метров целиком состояли из окон, за которыми плыли облака. Осматривая все это, Ромеро мог думать только об одном: охуеть, на такой высоте мы точно будем делать игры высшего класса.