Родословная движков: история Source
Как движок Valve стал билетом в индустрию для новичков и моддеров — и почему он уже не так популярен, как раньше
cкриншоты из игр Counter Strike/ Half-life 2/ Portal/ Half-Life: Alyx/ Logo source/ Wikimedia/ Meery Mary для Skillbox Media
Если отсчитывать срок жизни Source с момента выхода Half-Life 2 в ноябре 2004 года, то в 2021-м ему исполнится семнадцать лет. За этот срок игровая индустрия пережила множество потрясений, но творения Valve всё это будто бы совершенно не коснулось.
Казалось бы, давно есть более совершенные инструменты — но Source долгое время пользовалась не только сама Valve, но и разработчики за пределами компании. Многие из игр на движке стартовали с модов. Впрочем, и сам Source начинался как модификация — а к ранним строчкам его кода приложил руку сам Джон Кармак.
Период полураспада
Этим выражением обозначают срок времени, в течение которого половина ядер радиоактивного вещества распадается, а его излучение снижается в два раза. Команда Half-Life выбрала термин в качестве названия игры, чтобы подчеркнуть её научно-фантастический сеттинг, — но эта игра слов также удивительным образом отражает путь, пройденный Source.
Но для начала стоит объяснить: а что же такое, собственно, игровой движок?
Профессионалы индустрии чаще всего сравнивают игровой движок с камерой, на которую снимают фильм, или с заводом, где собирают машины. И в том, и в другом случае речь идёт о наборе инструментов, нужных, чтобы сделать игру, — среди них система физики, освещения, наборы ассетов, редактор уровней и так далее. Создавать всё это заново каждый раз слишком затратно и долго, поэтому разработчики довольно быстро поняли, что проще не писать собственный движок, а лицензировать уже готовый.
К такому выводу, например, пришли Гейб Ньюэлл и Майк Харрингтон, которые в 1996 году ушли из Microsoft, чтобы в августе того же года основать собственную компанию — Valve. Их первым проектом стал шутер Half-Life, созданный на доработанном движке Quake: лицензию помог добыть Майкл Абраш, бывший коллега Гейба и Майка, который теперь работал в id Software.
Готовый редактор здорово помог разработчикам Valve, но им всё равно пришлось серьёзно улучшить движок, чтобы воплотить в жизнь свои амбициозные идеи. В конце концов, Half-Life была не просто шутером — она была первым шутером с более или менее серьёзным сюжетом, за которым игроки от начала до конца следили глазами главного героя, без перерывов на кат-сцены и текстовые описания.
«Наши игры не про то, что мы запираем тебя в комнате с ружьём и кучкой врагов и говорим: „Иди получай игровой опыт“. Взгляните на поездку на поезде в Half-Life — она кинематографическая по духу».
Гейб Ньюэлл,
The Final Hours of Half-Life 2, 2004 год
Программисты Valve создали для игры систему скелетной анимации, переработали искусственный интеллект и добавили поддержку драйвера Direct3D. Благодаря этому в игре появились заскриптованные сцены и дружелюбные напарники, а Quake Engine превратился в самостоятельную технологию.
Однако в ноябре 1998 года, примерно за неделю до выхода Half-Life, разработчики встали перед дилеммой. «Мы поняли, что у нас уже есть проекты, над которыми нужно начать работу, но не могли рисковать и добавлять новый код в релизную версию игры», — объяснял Эрик Джонсон, проектный менеджер Valve.
Тогда разработчики решили поделить движок на две версии — $/Goldsrc (далее — Goldsource), на котором работала готовая игра, и $/Src, куда они могли свободно добавлять новые фичи и инструменты. Goldsource также стал основой для экосистемы, которую компания выстроила вокруг Half-Life: на этом движке, например, студия Gearbox сделала дополнения Opposing Force и Blue Shift.
Его же использовали фанаты для создания многочисленных модификаций. Вдохновляясь подходом id Software, которые делились с игроками исходным кодом своих игр, Valvе также выложила инструменты Goldsource в открытый доступ.
В июне 1999 года Мин Ли и Джесс Клифф придумали сетевой шутер про противостояние спецназа и террористов. Вскоре интерес к моду возрос до такой степени, что Valve купила права на бренд и пригласила в компанию Ли и Клиффа. В сентябре 2000 года Counter-Strike 1.6 появилась на полках магазинов.
В рознице игра продавалась в одном наборе с Team Fortress Classic, ещё одним классическим командным шутером. Он тоже начинался как модификация — только но не к Half-Life, а к первой Quake. В 1999 году Valve наняла создателей мода, чтобы те портировали игру на Goldsource — так они хотели прорекламировать движок среди моддеров.
Тем временем в недрах компании шла работа над версией $/Src, которая вскоре станет самостоятельным движком. В процессе он отбросит значок доллара из названия и послужит для создания одной из самых значимых игр всех времён.
Второе пришествие
Новый движок не писался с нуля: как и его предшественник, он стал результатом глубокой модификации — и история его появления была напрямую связана с продолжением флагманской серии Valve.
Гейб Ньюэлл сразу решил, что Half-Life 2 станет чем-то большим, чем просто сиквелом.
«Что движет нами в первую очередь? Ну, я просто ненавижу идею, что люди впустую потратят время на наши игры. Зачем работать четыре года своей жизни над чем-то, что не будет инновационным и окажется бесполезным?»
Гейб Ньюэлл,
The Final Hours of Half-Life 2, 2004 год
В 1999 году, после недель споров и обсуждений, разработчики сошлись на ключевом концепте — интерактивности и правдоподобии игровой вселенной. В новой Half-Life у игроков будет больше способов взаимодействовать с окружением. Сам мир игры станет богаче и разнообразнее. Напарники превратятся из NPC-функций в полноценных персонажей.
Изначально Valve планировали купить для этих целей лицензию на движок Quake III, но быстро осознали, что ни одна существующая технология не потянет их амбиций. «То, что делает id, всегда находится на передовой прогресса, но мы хотели создать другую передовую», — объяснял сооснователь компании Майк Харрингтон.
Поэтому вместо того, чтобы вновь лицензировать чужой движок, программисты Valve принялись модернизировать $/Src. Они добавили в него две важные технологии:
- Редактор анимаций Faceposer: набор инструментов, разработанный Кеном Бёрдвеллом, позволил создать правдоподобную мимику, скелетную анимацию, а также сложную хореографию для скриптовых сцен.
- Физический движок Havok: сторонняя программа для симуляции физики. Её интеграцией в Source занимался Джей Стейли: благодаря его усилиям в Half-Life 2 появились, в частности, гравипушка и поездки на багги.
Второй пункт хорошо иллюстрирует модулярную природу движка Valve. В Source разные системы представляют собой отдельные модули, каждый из которых можно модернизировать независимо от всех остальных. Это значит, что разработчики не сломают обратную совместимость, когда добавят в движок новые инструменты, в том числе сторонние, а пользователям не придется переходить на новую версию движка после каждого обновления.
Разумеется, в процессе работы над Half-Life 2 программисты Valve также добавили в Source массу других улучшений: например, создание текстур на основе материала, из которого состоит объект, или динамические отражения на воде. Большинство нововведений служили практическим целям игры: в отличие от других студий, Valve гналась в первую очередь не за красотой графики, а за увлекательным игровым опытом.
«Это вопрос приоритетов. Джон [Кармак] и его ребята делают крутые вещи. Мы соединяем эти вещи с геймплеем… Нам нужно решить, хотим ли мы потратить время на работу над шейдером или же мы работаем над искусственным интеллектом. Так что в основе нашего процесса лежит вопрос: „Давайте начнём с момента, когда игрок запускает игру, — что он испытывает, что он чувствует?“ То, что мы делаем в техническом плане, исходит из этого».
Гейб Ньюэлл,
интервью с сайтом Rock, Paper, Shotgun, 2007 год
Когда публика впервые увидела техническое демо игры на конференции E3 2003 года, всех поразила фотореалистичная картинка и качество анимации, особенно в тот момент, когда модель Джи-Мэна пятилетней давности сменилась его же моделью из Half-Life 2.
Тогда многие посчитали, что в Valve переписали движок с нуля — но когда они смогли поиграть сами, выяснилось, что у Source и Goldsource много общего. Например, хитбоксы: их у каждого объекта в Half-Life 2 по две штуки — один достался от Havok, другой — прямиком от первых частей Quake. Этим, кстати, пользуются спидранеры, чтобы разгоняться до огромных скоростей за счёт махинаций с хитбоксом Havok.
Да и кроме того, было попросту тяжело не заметить, насколько похожи у обеих частей интерфейсы, физика движений и даже экраны подзагрузок между частями уровней. Сам Джон Кармак в конце 2004 года отметил в своём блоге, что в Half-Life 2 «ещё есть кусочки раннего кода Quake».
Их можно сравнить с остатками радиоактивного излучения, которые сохранились после многократных реакций ядерного распада: пускай Source и представлял собой новую технологию, он всё равно сохранил связь с первоисточником. Эта особенность и станет его главным преимуществом.
В чём сила, Source?
В 2003 и 2004 годах игровое сообщество так пристально следило за разработкой Half-Life 2, её переносами и скандалами со сливом одной из ранних версий игры, что почти не заметило, как параллельно с ней шла работа над ещё двумя проектами на Source, которые тоже увидели свет в ноябре 2004 года.
Речь идёт о Counter-Strike: Source и Vampire: The Masquerade — Bloodlines, которую создала сторонняя студия Troika Games. У этих игр были свои проблемы, вызванные тем, что движку не хватало документации и работающих инструментов: тот же Faceposer заработал как следует только в начале 2004 года.
Особенно не повезло Bloodlines: мало того, что её выпустили в незаконченном виде, с массой багов и недоработанных механик, так ещё и 16 ноября, в один день с Half-Life 2, — решение, похоронившее не только шансы игры на коммерческий успех, но и студию Troika Games.
Тем не менее сам факт того, что Valve была готова продать лицензию на новый движок сторонней команде, свидетельствовал о том, что студия будет и дальше поддерживать независимых разработчиков и сообщество фанатов.
Что произошло дальше, вы знаете сами. На Source сделали несколько знаковых игр: Portal, Team Fortress 2, Left 4 Dead, Garry’s Mod, Titanfall, Dota 2. Многие из этих игр начинались как моды. Большинство из них стали народными хитами: та же Portal 2 по-прежнему держит первенство в игровом рейтинге Steam. И это не говоря уже о менее значимых релизах, неофициальных модах, ремейках старых игр, а также десятках тысяч карт, созданных сообществом.
Почему же движок стал популярен даже среди людей, далёких от разработки? На то есть несколько причин.
Доступность инструментов
Прежде всего, Valve предоставила каждому, кто хочет попробовать себя в моддинге или мапмейкинге, доступ к набору под названием Source SDK. В него входят три программы: Hammer Editor, Model Viewer и Faceposer.
Первая из них начиналась ещё в 1996 году как редактор карт Worldcraft, который моддер Бен Моррис разрабатывал для Quake. Вскоре его наняла Valve, а программа, пережив несколько обновлений, получила свое нынешнее название. Hammer Editor — причина, по которой вокруг Counter-Strike до сих пор существует сообщество мапмейкеров. Инструменты редактора позволяют делать карты, не залезая во «внутренности» движка, — и при этом они всё равно будут выглядеть красиво и прекрасно играться в мультиплеерных матчах.
Добавьте к этому редактор моделей персонажей Model Viewer и Faceposer — и получите удобный набор для создания игрового контента, который при этом не требует глубоких познаний в разработке.
Сёрфинг в Counter-Strike
Некоторые из творений фанатов удивляют своей оригинальностью. Так, в 2004 году игрок под ником Marionwed построил для Counter-Strike 1.6 карту, которая на деле была… трассой для сёрфинга. Изначально он создавал surf_the-gap, чтобы играть с друзьями, но процесс оказался настолько затягивающим, что вскоре идея выросла в целый мод, вокруг которого появились отдельные серверы и сообщество.
Сегодня сёрфинг, превратившийся чуть ли не в отдельную дисциплину, продолжает жить и процветать в CS:GO, а на YouTube можно найти множество туториалов и записей забегов от лучших сёрферов.
Поддержка сообщества
Когда Valve запустила свою цифровую торговую площадку в марте 2004 года, у компании было три цели: упростить загрузку патчей для игр, усложнить жизнь пиратам и забрать себе часть выручки. Однако вскоре Гейб Ньюэлл понял, что платформа хорошо подходит для поддержки Source.
Во-первых, Steam дал возможность автоматически обновлять инструменты движка на всех компьютерах, подключённых к сервису. Для своего времени это было прорывом: тот же Epic Games Launcher с интеграцией Unreal Engine появится только спустя пятнадцать лет.
Во-вторых, Valve постаралась сделать так, чтобы эта платформа стала одним из главных мест сбора игроков. В 2011 году заработал Steam Workshop, где пользователи делились контентом, созданным на основе их любимых игр: картами, уровнями, артами, модами и так далее. Изначально сервис предназначался для Team Fortress 2, но довольно скоро он распространился на многие другие релизы — так что теперь у фанатов появился ещё один повод проявить свою креативность.
Ещё раньше, в 2005 году, компания запустила ресурс Valve Developer Community (VDC), задачей которого было заменить статичную документацию веб-энциклопедией, которую дополняют и редактируют пользователи Source.
Этим сайтом воспользовался в том числе Дэви Риден, автор The Stanley Parable — нашумевшего «симулятора ходьбы», чей остроумный сюжет с множеством развилок деконструировал приёмы нарратива и свободу выбора в видеоиграх. Первая версия проекта появилась в качестве мода к Half-Life 2, собранного Ридом в Source SDK.
«Всё, что я знаю, я почерпнул у сообщества, на Source Wiki и форумах. Каждый моддер, которого я знаю, просто сел и начал изучать инструменты, пользуясь ресурсами сообщества… Если ты пользуешься движком вроде Source, продукт, который ты создашь, на сто процентов зависит от того, сколько времени ты вбухал, чтобы научить себя им пользоваться».
Дэви Риден,
интервью с сайтом Shacknews, 2011 год
Поддержка моддеров
Наконец, как и в случае с Goldsource, компания Гейба Ньюэлла продолжила поддерживать моддеров и начинающих разработчиков, время от время нанимая создателей, чтобы те могли закончить своё творение и выпустить его в качестве полноценной игры.
Самым известным случаем стала, пожалуй, Portal — головоломка, где пазлы решаются с помощью пушки, стреляющей порталами. Игра началась как бесплатная демка Narbacular Drop, которую сделали студенты колледжа DigiPen в качестве дипломного проекта. Там её увидел разработчик Valve Робин Уокер, который предложил создателям показать свою игру в офисе компании.
Вскоре создатели проекта представили его Гейбу Ньюэллу, который тут же нанял всю команду, чтобы она сделала полноценную игру для Valve. В октябре 2007 года Portal вышла в легендарном сборнике The Orange Box, куда также вошли Half-Life 2 с двумя эпизодами и Team Fortress 2 — сиквел к моду, созданному на движке Goldsource. Работал над ним, кстати, всё тот же Робин Уокер.
Когда Гейба Ньюэлла спросили, зачем он нанял моддеров и молодые команды, основатель Valve ответил:
«Игроки должны понимать, насколько важно, когда команды разработчиков остаются вместе. Неважно, насколько хорошую работу делает команда, когда создаёт первую игру, она всегда сделает её намного лучше во второй или в третий раз… Эти ребята сделали кое-что, что лучше, чем 98% геймплея, который я вижу [в других играх]. Идея, что они никогда больше не будут работать вместе, была трагедией. Им нужна была возможность работать вместе и выпустить полноценную игру… Это оказалось хорошим решением».
Гейб Ньюэлл,
интервью с сайтом Rock, Paper, Shotgun, 2007 год
Новое поколение
Несмотря на то, что Source задумывался как технология, которая будет постоянно эволюционировать и обновляться, уже к началу 2010-х годов движок начал показывать свой возраст. Его визуал не мог соревноваться с более современными движками вроде Unreal или Frostbite. Инструментарий тоже.
Кое-кто всё же продолжал использовать Source: например, студия Винса Зампеллы Respawn Entertainment, которая сделала на движке обе части Titanfall и батл-рояль Apex Legends. Продюсер Дрю Маккой рассказывал, что разработчики выбрали Source из-за богатого набора инструментов, оставшихся после разработки других игр, и возможности быстро делать геймплейные прототипы.
Однако им все равно пришлось многое поменять. «В плане показа изображений это вообще-то довольно медленный движок», — говорил Маккой. Чтобы разогнать Source, программисты Respawn переделали почти каждую систему, от сетевых функций до анимации, из однопоточной в многопоточную, переписали звуковой код, добавили собственную систему освещения и ещё множество мелких улучшений.
«Дошло до того, что я ненавижу говорить, что это Source», — заявил Маккой.
Надо сказать, «настоящий» Source тоже не раз переживал значительные изменения. Несмотря на модулярную природу движка, время от времени он требовал доработок, которые ломали обратную совместимость. Так, на версии Source для Left 4 Dead не получится запустить моды для Half-Life 2 — слишком много отличий от «оригинала».
Valve понимала, что со временем их движку будет нужно полноценное обновление. Поэтому ещё в 2007 году, после релиза Half-Life 2: Episode Two, компания начала работать над преемником Source. Во многом поэтому мы так и не увидели третьего эпизода: левел-дизайнер Дарио Казале в беседе с IGN признавался, что команда не хотела браться за продолжение, пока не появится новый движок.
В 2015 году компания представила Source 2 на конференции GDC, а спустя несколько месяцев Dota 2 получила обновление Reborn, в результате которого игра переехала на новый движок. Вместе с ним пришло несколько важных нововведений:
- полностью переделанный Hammer Editor с современными инструментами для редактирования сетки полигонов;
- поддержка программного интерфейса Vulkan, предназначенного для обработки 3D-графики;
- новый физический движок Rubikon с возможностью симуляции тканей;
- улучшенная обработка звуков и голоса;
- поддержка 64-разрядных и 32-разрядных операционных систем, в том числе для мобильных платформ.
Первыми играми, созданными на Source 2, стали коллекционная карточная игра Artifact и автобатлер Dota Undergrounds, но впервые потенциал движка по-настоящему показала Half-Life: Alyx, шутер для устройств виртуальной реальности, выпущенный в марте 2020 года. Критики расхвалили усилия Valve по переносу культовой вселенной в формат VR, но популярности первых двух частей игра так и не достигла — и то же самое можно сказать о Source 2.
И дело тут даже не в качестве движка — просто конкуренты всё это время не сидели на месте. За последние десять лет лидерами рынка стали Unreal Engine и Unity, которые могут похвастаться не только более продвинутыми инструментами, но и мощной экосистемой, куда входят обучающие сайты, программные приложения, магазины ресурсов, а в случае с Unreal — ещё и полноценной интеграцией с Epic Games Store. Сегодня в этих двух движках делают всё — от изометрических RPG до шутеров от первого лица с фотореалистичной графикой.
И даже Respawn Entertainment в своей последней игре, Star Wars Jedi: Fallen Order, использовала Unreal Engine 4. Геймдиректор игры Стиг Асмуссен и Винс Зампелла объясняли свое решение просто: движок мощный, а разработчиков, которые знают Unreal, гораздо больше, чем разработчиков, знающих Source.
Что касается движка Valve, то на сегодня точно известно о разработке только одной игры с его использованием — это Sandbox, которую делает студия Гарри Ньюмана Facepunch. Впрочем, Source 2, как и его предок, рассчитан скорее не на разработчиков, а на игровое сообщество — мапмейкеров и моддеров.
«С помощью Source 2 мы хотим усилить продуктивность авторов. Учитывая, насколько важным становится контент, сделанный пользователями, Source 2 создан не только для профессиональных разработчиков, но и для того, чтобы пользователи могли участвовать в разработке их любимых игр. Мы сделаем Source 2 бесплатным для разработчиков контента».
Джефф Стейли,
GDC 2015: Valve Announces Source 2 Engine, 2015 год
В доказательство своих намерений Valve уже в 2014 году выпустила обновлённую версию SDK для Dota 2, а в 2020 году похожим набором обзавелась Half-Life: Alyx.
Неизвестно, станут ли эти программы началом новой Portal. Но можно сказать, что до сих пор мало где можно найти такие же эффективные дизайнерские инструменты, как в Source. Поэтому этот движок до сих пор лучше всего подходит для того, чтобы собрать собственный мод для Half-Life или карту для Counter-Strike и поделиться им с теми, кому это интересно. И пока у игр Valve есть поклонники, стоит быть уверенным — такие люди обязательно найдутся.