«Человек на острие ножа» — Джон Кармак, вехи достижений и вклад в игровую индустрию

6ac82fe5edccb1febf6157c347c51f38.jpgФигура Джона Кармака в индустрии компьютерных игр (далее по тексту КИ) неоднозначна. Существует большое количество слухов и скандалов, связанных с его именем. Многие считают его неприятным человеком, и многие также считают его гением. Эти два свойства, кстати, не взаимоисключающи. Можно быть не самым приятным в общении человеком, но при этом делать удивительные вещи. В этой публикации мы не рассматриваем все заслуги Джона перед КИ, не обсуждаем его прения с членами команды, и не стараемся раскопать наибольшее количество скандалов. Даже историю Id Software затрагиваем не полностью, лишь вскользь касаясь пройденных Джоном вех.

Любой разработчик со стажем и любой отдавший всю свою жизнь индустрии может быть предметом глубоких исследований, множества публикаций, и даже книг. Однако все понимают, надеюсь, как много нужно времени, чтобы собрать всю эту информацию воедино, проверить и сопоставить факты, связаться с фигурантами, выработать четкую стратегию изложения. Чем больше проходит времени, тем плотнее пелена истории покрывает удаляющиеся от нас годы, откуда можно было бы извлечь знание. Одно дело если ты был очевидцем его, если читатель (или писатель) представляет старый пласт игроков и пласт людей интересующихся. Совсем другое дело если с материалом знакомятся люди, которые вообще не знакомы с играми Wolf3D, Doom, Quake и кому наборы букв IDDQD и IDKFA ничего не говорят. Как рассказать все и не утомить читателя? Как сосредоточиться на главном? Как не потратить недели и месяцы на публикацию казалось бы ненужной статьи?

Ответ прост. Выбрать то главное, что нужно донести до читателя. Выбрать стержень. Первопричину. То, что побудило написать эти строки. И я точно знаю, чего хочу в данный момент. Рассказать о том, почему я считаю Джона — человеком на острие ножа. Человеком авангарда. Рисковым экспериментатором и первопроходцем.

0641cfbc58d6ebad1228a6a2bcc5e86b.png

Необязательный прологВ мою юность, эпоху 286-ых, игроки были очень жадными до игр. Каждая из них была чем-то особенным, каждая из них была предметом изучения. Это была эра «до интернета», период черных рынков, время BBS, диалапа (dial-up) и пятидюймовых дискет. Время, когда игр не могло быть много, и когда времени на их доскональное изучение хватало. И дело было не в скудности ассортимента, а в том, как этот ассортимент проникал в Россию. Я бы мог сказать «на рынки России», но это было бы неправдой. Рынков — не было. Были черные рынки, были барахолки, были «друг дискетку принес». О том, чтобы купить игру «по-честному» не могло быть и речи.

Эти трудности делали PC-игры чем-то особенным для тех, кто имел у себя дома ПК. Их частенько сравнивали с играми Amiga или Sega, пытаясь выпятить «свою платформу», забывая (а чаще всего не зная), что «родитель» у обсуждаемых игр один и тот же. Что разработчик сразу закладывал для своей игры несколько платформ. Тот же незабвенный Flashback вышел на чудовищном количестве платформ: Amiga, Mega Drive/Genesis, MS-DOS (floppy disk & CD-ROM), SNES, Mega-CD, Atari Jaguar (список не полон). Но в силу незнания получалось так, что в диалогах звучали фразы «крутая игра с ПК». Думаю Амижники только посмеивались слушая подобное. И не зря. Невероятное количество игр шло на ПК с Амиги, которая была основной игровой площадкой.

Обычно у знакомых и друзей был либо ПК, либо приставка, чаще всего Spectrum. И я не помню людей, которые бы имели одновременно и то, и другое. Возможно, где-то рядом и произошло разделение на ПК-шников и консольщиков. Геймпада и клавиатуры. Тогда не использовалось слово «порт с чего-либо», и не было термина «кривое портирование». Игры Prince of Persia, Flashback одинаково радовали глаз, как на Амиге с Атари, так и на Sega c PC.

Однажды один подросток, во время очередной из множества своих бесцельных прогулок, набрел на Дом Книги, неподалеку от станции метро Политехническая, и увидел за прилавком девушку, которая с невероятно интеллектуальным лицом играла в невероятно реалистичную игру. Синие стены, коричневые солдаты и золотые кубки. Я хорошо помню, как она это делала. Одним пальцем. Невероятно долго разворачиваясь к двери, также долго собираясь с мыслями, перед тем как нажать «пробел» чтобы открыть ее. Медлительность приводила к смерти. И уровень начинался заново.

Мне хотелось воскликнуть «надо же тремя пальцами, кто ж одним то!», но я не мог себя пересилить. Лишь продолжал стоять, заворожено разглядывая картины на деревянных стенах. Все что я помню о том моменте можно описать двумя словами — жажда обладания. Игрой. Для меня тогдашнего было вполне очевидно предпочесть компьютерные игры девушкам. Оглядываясь на пройденный путь и положа руку на сердце, я вижу, что ничего не изменилось. Девушки по-прежнему прекрасны и притягательны, но и игры притягательны тоже. Как и в 1992 году чтобы затащить игру к себе, не нужны ни цветы, ни длительные ухаживания. Более того невероятно удобный онлайновый сервис Steam готов выставить самых лучших из них за умеренную цену.

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

Веха первая 8998865cba5304d5e1ab4b67248fa997.jpg

Многие из нас прекрасно знают, что Wolfenstein-3D не был первой «трехмерной» игрой, и не был первым шутером в истории игр. До него были Hovertank-3D и Catacomb 3-D. Интервал между ними не был большим, но отличались они разительно. Однако среди наиболее заметных и определяющих истоки жанра, на мой взгляд, стоит указать именно его. Wolfenstein-3D. Те, другие — были разминкой. Те, другие — не были так известны. Этот стал подобен хорошему фильму. Хорошая графика. Стиль. Качественный звук. Четкий и выразительный гейм-плей.

93cd9e642f54920742c60d5b38cd10d3.jpg

Известный факт, что свой движок Джон Кармак написал под впечатлением демо-версии движка игры — Ultima Underworld: The Stygian Abyss. Правда, версия Джона была существенно проще. Она не имела пола и потолка, не имела высоты в пространстве (ступеньки, комнаты расположенные на разных уровнях и другие перепады высот). Таким образом Wolfenstein-3D engine не был инновацией с точки зрения движка, но стал ею с точки зрения быстро работающего движка, и создания первого в истории шутера, который начал популяризировать жанр, механика которого была сосредоточена на постоянной беготне, стрельбе, сборе сокровищ и поиске секретов.

0d5fa36e8911b187e6b2681b9c504306.jpgКак хорошо можно видеть в Ultima уже есть все то, что появится спустя некоторое время в Wolfenstein-3D, и даже в Doom, а именно перепад высот, изменение направления взгляда, покрытый текстурой пол, затенение поверхностей по мере удаления от наблюдателя и т.д. Нельзя сказать, что разработанное Кармаком было революцией, но революционным было продвижение шутера, как жанра вперед. С игрой, которой не требовались сверх-мощности. Кратно увеличенное изображение можно видеть здесь (разрешение 1586×880, размер 1.003 килобайт)

С точки зрения технологии Wolfenstein-3D engine был довольно прост. Он использовал спрайты в качестве объектов и покрытые текстурами стены, которые были теми же спрайтами, но с фиксированной позицией. Стены были строго вертикальными в плане высоты, и могли быть либо параллельными друг другу, либо перпендикулярными (могли образовывать лишь прямые углы в 90 градусов). Не имели разницы в освещении. Но даже такого скудного набора хватило, чтобы создать впечатляющую картинку. Отрисовка видимого и невидимого пространства осуществлялась за счет рейкастинга.

b26dddcfd0f806d4c13633f4f6c4f988.gifРейкастинг в действии. Материал взят с википедии, со странички посвященной Wolfenstein-3D engine.

Уже в этой игре была заложена возможность пользовательских модификаций. Выстроив в текстовом файле набор значений из специальных символов вроде «x» или »0», можно было получить свой собственный уровень, где символ «x», к примеру, превращался в стену, а символ »0» в бочку. Не могу сказать, что именно отсюда растут ноги будущего подхода Id Software по части удобства пользовательских модификаций. Но факт остается фактом, сделать уровень для Wolfenstein-3D было возможным, а для Prince of Persia или Dune 2 — нет. К слову, 1992-год был очень богатым на игры, которые заложили фундамент будущего индустрии компьютерных игр.

Настоящие «трехмерные» стены, анимированные персонажи, объекты и сотни секретных тайников повсюду. Постоянная пальба, глубокий эксплорейшен (exploration), где было невыносимо уйти с уровня не найдя тот самый «последний секрет». Запоминающиеся боссы. В этой игре было все, что нужно для того чтобы ее проходить и не забрасывать до последнего. В то время игроку было достаточно врагов охраняющих клады и самих кладов, чтобы продолжать двигаться вперед.

Во время игры, конечно, мелькали мысли о том, что было бы здорово иметь такой же пол как и стены, такой же потолок как и стены, имевшие свой рисунок. Но, увы. Это было одним из ограничений данного движка. Технология только зарождалась. В качестве объектов насыщения использовались спрайты всегда ориентированные к игроку (позднее подобный принцип ориентации спрайта стал тем, что теперь называют billboard’s). Даже эти два средства, стены и спрайты насыщения позволили добиться весьма впечатляющей картинки. И они не смущали. Это не вызывало отторжения потому что иного 3D мы еще не знали. Нам не с чем было сравнивать.

c86670b4fdbad74693c2b73a67c66fec.jpg

Как сказал мой друг разработчик: — Если бы мы тогда увидели то, что мы видим сейчас… наверное у нас бы взорвались головы.

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

Веха вторая Для меня было вполне очевидным, что Первые — так и останутся первыми, став флагманом нового жанра, и что меня, как игрока ждут удивительные открытия и незабываемые впечатления. Тем не менее, на некоторое время id Software выпала из поля моего зрения. Игр до 1993 года было более чем достаточно, чтобы забыть об их существовании. Alone in the Dark, Flashback, The Legend of Kyrandia, Another World, Dune, Dune II, Star Control II, Wing Commander II. Все это делало эти и последующие годы тем, что по праву можно назвать «эрой золотого ренессанса» в мире КИ. Каждая игра была чем-то новым и незабываемым. И что важнее всего — это была эпоха экспериментов. Игры сегодняшних дней и рядом не лежат с той бездной безумного экспериментаторства со стороны разработчиков. Игры сегодняшних дней — осторожные и выверенные схемы с точки зрения игровой механики, эксплуатирующие давно забытые истины, но не сильно продвигающие индустрию вперед. Об этом я упомяну отдельно в конце публикации.35bdcd70a34a33626871422f81346f5b.jpg

Тема надо сказать довольно зыбкая и рискующая обрушить все повествование. Поэтому поспешим вернуться в 1993, к Джону Кармаку и той игре, что войдет в историю как Doom. И если Wolfenstein-3D может считаться дедушкой всех шутеров, то Doom определенно папка. И хронологически, и с жаргонной точки зрения. Даже термин «папка» впервые был мной услышан именно в клубах где проходили соревнования по Doom.«Идеи, заложенные в Wolfenstein-3D, получили в нем дальнейшее развитие, достигнув неприличных масштабов и породив зеркальный эффект. Когда брошенный в воду камень поднимает волну, и круги от него расходятся в разные стороны, затрагивая самые разные уголки КИ.

31a7a3d6b9014bdcb9949f684ce9a13d.jpg

Отличия от дедушки были довольно существенные. Пол и потолок теперь могли быть разных высот, на «полигоны» потолка могло быть нанесено небо, которое имело эффект параллакса, оно не двигалось вместе с уровнем, создавая дополнительный эффект глубины (предшественник будущих скайбоксов с тем же эффектом), стены перестали быть перпендикулярны и параллельны друг другу. Теперь они могли быть ориентированы к игроку под любым углом, и комнаты — перестали быть комнатами. Хочешь речку под ногами — пожалуйста. Хочешь овальную комнату — не проблема. Элементы уровня стали подвижными. Т.е. потолки и полы могли опускаться, стало возможным дистанционно открывать двери. Было добавлено покачивание игрока во время движения, и игрок перестал «ездить в танке» как это было в играх до этого.

Это был настоящий рывок вперед, тем более в пределах года. Правда были и ограничения, в силу псевдо-трехмерности. Невозможность наличия двух объемов (комнат или проходов) друг над другом. Уровни по структуре все равно оставались двумерными. Идеологически они оставались системой комнат, а не зданием, состоящим из них. Стены обязаны были быть вертикальными, без возможности их наклона относительно горизонтали. Игрок и персонажи, идеологически, как и в Wolfenstein-3D передвигались в одной плоскости, что не давало возможности перепрыгнуть другого персонажа, или проскочить под ним (в случае летающих противников). Масштаб спрайтов и текстур во всей игре должен был быть идентичным. Т.е. было невозможным усилить детализацию на отдельно взятом квадранте, или использовать длинную текстуру, или использовать текстуру большего разрешения.

С этим, кстати, прекрасно справлялся движок Кена Сильвермана, под названием The Build или просто Build. Отдельная ветка движка, использующая похожую идеологию, но обладавшая существенными от него отличиями. Которая, кстати подарила нам такие хиты как Duke Nukem 3D, Blood, Shadow Warrior, Redneck Rampage. Это тема отдельной и крайне длительной беседы (имеется в виду еще одна публикация, т.к. этот человек заслуживает, куда большего, чем статья).

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

Примечание: Мое знакомство с Doom состоялось куда позже. В предыдущей вехе я упомянул о 286-ой машине, которой я располагал. К 93-году ситуация не сильно изменилась. И в Doom я играл у друзей. А до этого был долгий рассказ одного из них о том, как великолепна игра. Я опущу описание всех эпитетов, широко раскрытых глаз и эпилептически взмахивающих рук, которыми сопровождался этот рассказ. Чтобы не утомлять вас давно ушедшим отмечу лишь пару фраз: — «Ты падаешь на землю лицом, лежишь, а вокруг ходят монстры тебя убившие», — «Ты лезешь по лестнице, поднимаешься наверх и видишь кромку пола, а там… стоит монстр и ты видишь его ноги».Живая фантазия, хорошо подпитанная тем, что я уже видел в других играх, нарисовала мне следующую картинку. Лестницу перед носом, покрытую желтой облупившейся краской, чудесные спрайтовые руки, перебирающие вверх по перекладинам, и многие другие детали. Понарисовав себе в голове черт знает чего, и, увидев затем то, как это было реализовано в Doom, я был разочарован. Тех самых «рук на перекладинах» я ждал и дождался лишь спустя долгие годы. Ровно, как и других вещей, которые мне тогда намечтались.Так я познакомился с термином «несбывшиеся ожидания». Впоследствии это явление будет сопровождать не одну игру, и не только для меня. Крупногабаритные проекты, которые будут растягиваться на несколько лет, всегда будут сопровождаться пиаром и рекламными акциями, которые в купе с горделивыми маркетинговыми лозунгами зачастую будут превращаться в крышку гробов для игр с хорошими и крупными гвоздями в этих крышках. Один из последних проектов Джона (и я говорю о Rage), будет для большинства людей тем самым несбывшимся ожиданием и фиаско Id Software. Я имею иное мнение, но не будем забегать вперед.

На Doom Engine, который впоследствии стал называться id Tech 1, было выпущено не так уж и много игр. На удивление. Без вторых частей их можно перечислить на пальцах одной руки. Doom, Hexen, Heretic и Strife. Изначально движки именовались как Doom Engine и Quake engine, но впоследствии, были «переназваны».

Надо сказать, что список игр сделанных на движке The Build был куда больше. И за счет модификаций в том числе. 3D Realms в отношении игроков и других разработчиков всегда была более открыта, и на создание собственных дата файлов (в случае Doom engine WAD-файлов) смотрела без нахмуренных бровей. Впоследствии id Software пересмотрела свою политику в отношении открытых ресурсов и открытых кодов, что добавило ей еще большей популярности, как среди игроков, так и среди разработчиков.

Джон никогда не останавливался на достигнутом результате. Жажда нового всегда толкала его вперед. Эксперименты с новыми технологиями и новые технические решения, вот что сопровождало его всю жизнь, и что идет рука об руку с ним и поныне. Следующей вехой в его жизненном пути стал полностью трехмерный движок, сменивший id Tech 1, и который открыл дверь в новую эру.Она повлекла за собой глобальные изменения в производстве игр, которые во многих случаях были восприняты аудиторией в штыки. Помните, чуть ранее я говорил о камне, брошенном в воду и волнах от него? Авангардный жанр 3D-Action игр как горн возвестил другим весть о том, что индустрия двинулась в чертоги трехмерности.

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

4d47320ca55e7c003a732d2f6e4ef962.jpg

Хорошо это или плохо, но Джон Кармак с шашкой наголо ворвался в строй двумерных конкурентов, начав разить их трехмерным лезвием. Последний из противников, уже упомянутый движок The Build сопротивлялся до последнего, но пал. Геройски. Сраженный угловатой низкополигональной железкой. Спрайты при всем своем очаровании не могли и далее составлять конкуренцию честному 3D. Именно оно теперь определяло спрос и моду.Трехмерность периода своего становления и поражала и ужасала. По настоящему трехмерные уровни, возможность городить десятки комнат друг над другом, выступающие конструкции и неровные поверхности — все это было в новинку. Спрайтов больше не было. Их заменили полигоны с натянутыми на них текстурами. С приходом полигональных моделей пришли и другие методики освещения, хотя «фейки» (иллюзии того чем движок на самом деле не располагал) как повелось, и как происходит до сих пор, еще со времен игр на движке id Tech 1, всегда присутствовали в играх, и будут присутствовать еще очень долго. Потому, что понятие и принцип иллюзии куда старше. Люди всегда будут обманывать людей.

f43d6a23ac9eaa71395c6c6e9613a08c.jpg

Чем отличался Quake engine от своего псевдо-трехмерного предшественника? Всем. Он идеологически был иным. Однако несколько черт все же перекочевали из id Tech 1 в Quake engine. А именно двоичное разбиение пространства, или BSP-дерево. Эта техника жива и поныне. В движке The Source, который подарил миру Half-life, а затем и Half-life 2. «Да столько воды утекло!», — скажете вы. И будете правы. Все что вы сейчас видите вокруг наследие того самого прорыва.Все что изменяется в нынешней индустрии — это количество полигонов (или треугольников) в кадре, шейдеры, разрешение текстур и т.д. То есть меняется количество, но не меняется качество. Бытует мнение, что подобного скачка в индустрии больше не будет. И здесь я выкажу свое сомнение. Вряд ли строившие Рим могли предположить, что его затем снесут орды варваров и вряд ли фараоны могли предвидеть, что их цивилизация останется лишь в виде пирамид и льва с обломанным носом, мумий и легенд с книгами. Все течет. Все меняется. И неизменность только лишь в постоянной изменчивости мира.

Вернемся к Quake engine и к тому, что он привнес в индустрию. Полигональная геометрия уровней и полигональная геометрия персонажей. Технология лайтмапов (light maps, или lite maps — я встречал оба наименования и не знаю какое из них истина), которая накладывалась на геометрию с текстурами вторым проходом. Объемы теней и света рассчитывались автоматически на основе расставленных в редакторе источников освещения. Эта техника широко используется до сих пор для запекания статического освещения. С тем лишь исключением, что увеличиваются размеры этой статики, меняются алгоритмы наложения (в последствие популярны стали цветные лайтмапы по методу Radiocity сменившие черно-белые).Для того чтобы рассчитывать свет на нестатических объектах (персонаж, подвижные объекты насыщения) были использованы динамические источники освещения и гуро-шейдинг (шейдинг по алгоритму Гуро). Динамические объекты до определенного момента не имели теней, обходясь самозатенением, и (или), заранее нарисованной светотенью на текстурах.

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

fafde7a96f9d63c3aca7ed53c76a0657.jpg6113e507f368038717f254d70dd8fe3e.jpg

Для меня Redneck Rampage 1997 года выглядит куда богаче Quake 2, даже с оглядкой на то что он не трехмерен. Положа руку на сердце, без слез на такую трехмерность я смотреть не мог уже тогда. Вероятно с 1997 года я и заболел своим ретроградством. Мне казалось, что лучше двумерная графика, чем такая трехмерная. Сейчас, спустя почти 20 лет я вполне доволен окружающим меня трехмерным великолепием. Но это как вино. Незачем навязывать кому-либо свой любимый сорт, ввязываясь в пьяные драки — лучше распивать его с теми, кому он по душе, в особенности если любишь притом деревенский самогон.

(Оригинал первого скриншота, и оригинал второго (разрешение 1280×512 ~ 230 килобайт каждый)).

Еще одной традицией, которую привнесли id Software (видимо поняв, что закрытость не играет на руку популярности) стала открытая архитектура движка, которая позволяла пользователям и разработчикам модифицировать движок. А затем и выработанная политика id Software в отношении собственных движков, коды которых открывались по мере разработки новых технологий и новых версий движков. Думаю, что не последнюю роль в принятии подобного курса сыграл сам Джон Кармак. Он и сам любил что-либо переделывать, модифицировать и видоизменять.

Такая открытость позволила многим разработчикам сделать ряд модификаций на базе Quake engine, в том числе и совершенно самостоятельные продукты. Не для кого ни секрет, что широко известный в наше время движок Source создан именно на базе Quake engine. То есть в основах своих Source имеет код разработанный в id Software. По неподтвержденной информации Джон Кармак очень восторженно отзывался о Half-life и о том как был модифицирован движок. То есть находился под впечатлением.

Впоследствии некоторые из тех разработчиков, что начинали с модификаций превратились в серьезных разработчиков. Одним из таких примеров может быть компания Ritual Entertainment. Начав с дополнения к Quake она добралась до такой известной игры как SiN.

Веха четвертая и пятая Четвертая и пятая вехи развивали уже существующий движок и именовались id Tech 2 и id Tech 3 соответственно. Я объединил эти вехи вместе потому, что и вторая версия движка (Quake II engine), и третья (Quake III engine) развивали уже заложенные в них идеи, наращивали лишь темп и детализацию, кости оставались теми же. Однако идеология компонент движка оставалась одной и той же. Принципиальных технологических скачков не намечалось. Более продвинутые шейдера, спецэффекты или импорт более тяжелых в плане полигонажа моделей в движок — никак не тянули на рывок или прорыв.Это по-прежнему была геометрия на основе BSP-дерева. Появились продвинутые лайтмапы на основе метода Radiocity. Они не только запекали статический свет на геометрию уровня, но и заботились притом об освещенности моделей, сообщая динамической модели, как и где она должна освещаться. В id Tech 2 впервые появилось цветное освещение, которое затем стало золотым стандартом для большинства игр.

Для хранения персонажей и объектов id Tech 3 использует трехмерные модели формата MD3. Формат является преемником более раннего формата использовавшегося в движке id Tech 2. Формат использует вершинную (вертексную) анимацию. Возможности анимации в формате MD3 превосходили формат MD2, так как аниматор мог использовать любое ему угодное количество кадров в секунду для анимации своих моделей, тогда как более ранний формат MD2 имел существенное ограничение — 10 кадров в секунду. Это позволяло создать более плавную анимацию, в том числе и анимацию более глобального характера.Еще одним улучшением формата MD3 являлось разбиение моделей на отдельные объекты. То есть голова, руки, и тело персонажа могли двигаться независимо друг от друга, а также иметь свои собственные, уникальные текстуры. Модели по прежнему освещались по методу Гуро, уровни по прежнему покрывались картами статического освещения.

Вполне очевидно, что движок лишь наращивал объемы, доходя до своей критической массы и пика своей популярности. В глобальном плане он не предлагал ничего нового, будучи, тем не менее, удобным и мощным инструментом. В тот период у id Tech 3 было всего два серьезных конкурента. Unreal Engine и Litthech.

Веха шестая В определенный момент игры добрались до точки переломного момента. Определил этот момент опять-таки Джон Кармак. Ему не сиделось на месте. И он решил предпринять новый шаг. Использовать переходную технологию для увеличения видимой детализации объектов при сохранении или даже минимизировании (в необходимых случаях) полигональных сеток. Пришло время новой модели унифицированного освещения и затенения на основе карт нормалей (unified lighting and shadowing model & normal maps). Можно сколько угодно рассуждать о невыносимо черных тенях, о пластиковом блеске тех лет, но отрицать того, что эта технология впервые и на полную катушку была использована именно в Doom 3, бессмысленно. Снова и уже в который раз Джон Кармак со своим детищем оказался впереди планеты всей.cbeedebe78306781f18cdf7e775a628b.jpgb024eee5dc65486b43186a015932a97a.jpg469e9f2db2ca203d57d01f3969f23cc4.jpgМне кажется, что одной из заслуг Джона Кармака является не только привнесение на рынок КИ новых технологий, но также их популяризация. Сначала шутера как жанра, а затем и технологий как инструмента. Сегодня сложно представить игру, не использующую ту технику на базе которой он выстроил Doom 3. О том, какое влияние имеет на общественность популяризация тех или иных изобретений или технических устройств вы легко можете вспомнить, вынув из кармана изделие Стива Джобса, буде таковой имеется.

Шутки шутками, ворчание ворчанием, но разве можно сейчас представить какой-либо шутер без карт нормалей? Технология, которая была длительное время несущей в ряде игр, по-прежнему остается переходной и вспомогательной. Детализация полигональных сеток по-прежнему нуждается в дополнительной детализации за счет карт нормалей. На дворе 2014 год. Doom 3 был выпущен в 2004. Технологии уже десять лет! А она живее всех живых. Меняются шейдера, появляются шейдера имитирующие физические материалы. Но мы до сих пор сидим на том, что было разработано давным-давно.

По меркам нашей индустрии срок в десять лет не мал. От безбожно старого четырехцветного Paratrooper 1982 года на ПК до первой псевдо-трехмерной игры на ПК прошло 10 лет (релиз Wolfenstein 3D состоялся в 1992 году), а до первой настоящей трехмерной игры 14 лет (релиз Quake состоялся в 1996). Смотрите сами, насколько отрезок в 10 лет существенен. И учтите что разработка Doom 3 шла в течение четырех (лет). Это означает, что уже в 2000 году Джон Кармак знал что делать, и знал, какие технологии будут использованы. Если не точно, то в общих чертах, по крайней мере.

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

В 2004 году, в тоже время когда вышел Doom 3 выходит Half-life 2. В отличие от детища Кармака HL2 использует комбинированную технологию по части бамп-маппинга и вместо использования карт нормалей как несущей технологии он использует «фото-текстуры» с поддержкой бампа (отключение которого не сильно влияет на картинку), а также увеличивает полигоны на персонажах. В результате геометрия уровней остается все той же и работает, как и раньше на базе BSP-дерева, но мастерски сработанный свет делает картинку максимально достоверной. Все это «помножается» на реалистичную воду, на фото-реалистичные текстуры, шейдеры декалей и спецэффекты с разными режимами наложения.В купе с персонажами в которых сосредоточено не менее 5.000 тысяч треугольников HL2 не нуждается в картах нормалей для имитации объема персонажей, т.к. объем и так уже есть. Вместе с упомянутыми фото-текстурами получается более чем достойное соперничество. Которое предложило игрокам альтернативное решение по части изображения в играх. Удивительное событие.

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

По уму — нужно бы взять и порадоваться. По уму — две разных игры это лучше, чем две одинаковых. Но, увы, игрок в массе своей (да и вообще потребитель) никогда не был настолько умен, чтобы позволить существовать в одной и той же вселенной двум сущностям без постоянных сравнений. Так любую «песочницу с машинками» сравнивают с Grand Theft Auto. А любой шутер измеряют «Кризисами».Детище Кармака подвергается критике. Карты нормалей в качестве несущей технологии делают картинку в известной степени нереальной и пластмассовой. Черным теням Doom 3 противопоставляют практически фотографическую светотень Half-life 2. Многих не трогает тот факт, что свет Кармака — динамический. Что он двигается. В реальном времени.

43e52e6dee94d325ac1ed470c4f1fc9e.jpg5d6a387ef9dc38ca7d6288c616ca827f.jpgfba4a1b0a0e1327e756ecfe892a29dd3.jpgВышедший тремя месяцами позже Half-life 2 предоставил игрокам еще один вариант шутера. Другого, принципиально отличающегося от Doom 3, как с визуальной точки зрения, так и с точки зрения гейм-плея. А ведь в этот же год вышли такие игры как: FarCry, Chronicles of Riddiсk, UT2004. На рынке определенно становилось все труднее и труднее держать марку. Никто не сомневается, что FarCry тоже топал к финалу вооруженный картами-нормалей, и что каждый кто их использовал называл — свежайшей внедренной инновационной технологией. Так устроен рынок. Но ни один не рискнул создать на базе такой технологии целую игру. Каждый подстраховался. И не было людей прыгнувших в омут с головой. Хотя нет… один там точно был.

После битвы Doom 3 и Half-life 2 на поле боя «подтянулись» остальные разработчики. Титаны уже провели свои показательные сражения, каждый сверкнул своими достоинствам

© Habrahabr.ru