Source

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск
Source
Игровой движок (Список)
Source engine logo and wordmark.svg
Разработчик Флаг США Valve
Предыдущий движок серии GoldSrc
Следующий движок серии Source 2
Аппаратная платформа ПК
Mac
Linux
Steam Machines
Xbox
Xbox 360
Xbox One
PlayStation 3
Android
Поддерживаемая ОС Windows
Linux (SteamOS)
Mac OS X
Android
Написан на языке C++
Лицензия проприетарная, не лицензируется — только внутреннее использование
Последняя версия Source Engine 24 / 2013

Source (рус. «Исходник») — игровой движок, разработанный компанией Valve Corporation и используемый ею для создания собственных компьютерных игр. Впервые был использован в Half-Life 2 и Counter-Strike: Source, вышедших в 2004 году.

История разработки[править | править код]

История разработки движка Source берёт начало в 1998 году: когда разработчики завершали работу над первой игрой своей студии, Half-Life, они поняли, что существуют наработки, которые бы им хотелось внедрить в её движок, но решили не рисковать, вводя новые решения в почти готовую игру, и разделить код движка:

« Эрик Джонсон, разработчик Valve:

«Когда мы были очень близки к релизу Half-Life (где-то в неделе до него), мы поняли, что есть несколько проектов, которые надо начинать разрабатывать, но мы не могли рисковать, что-то меняя в коде выходящей версии игры. Мы решили разделить код в VSS (Microsoft Visual SourceSafe) на $/GoldSrc и /$Src. В течение нескольких лет мы использовали эти термины непосредственно как «GoldSource» и «Source». По крайней мере, первоначально ветка кода GoldSrc относилась к исходному коду уже выпущенной версии, а Src относилась к будущему варианту, с более рискованной технологией, над которой мы работали. Когда пришло время показывать Half-Life 2 в первый раз на выставке Е3, это была часть нашего внутреннего общения, ссылаться на Source движок против движка GoldSource, и название прижилось.»[1]

»

Таким образом, название Source стали использовать для описания нового движка, а GoldSource стало названием предыдущего поколения технологии. Стоит отметить, что название в дословном переводе означает «исходник», однако слово source также употребляется в словосочетании source code — исходный код.

Первой игрой на этом движке стал многопользовательский шутер Counter-Strike: Source, вышедший в октябре 2004 года, он стал своеобразной демонстрацией движка (поэтому в его название и вписано название технологии), являя собой воссозданную с новейшей для того времени графикой версию классического шутера Counter-Strike.

Немногим позже было выпущено продолжение Half-Life — Half-Life 2, сюжетный научно-фантастический шутер, получивший, впоследствии, множество наград и отмеченный как имеющий графику, являющуюся одной из наиболее прогрессивных для своего времени. В этой игре очень активно применялся физический движок, в основу которого лег Havok, лицензированный Valve; при его помощи построены многочисленные головоломки, основанные на игре с физическими законами (в дальнейшем подобная тематика была сильно развита в другом проекте Valve — Portal (2007 год), во главу угла которой поставлена идея телепортации). Помимо развитой физический модели, Half-Life 2 отличалась наиболее передовой для своего времени технологией лицевой анимации. Графический движок, использующий DirectX девятой версии, также отличался сильной оптимизацией и мог работать на старых моделях видеокарт, понижая своё качество графики и переходя на более ранние версии DirectX, вплоть до шестой.

В дальнейшем Source, чья структура описана разработчиками как крайне гибкая и модульная, был использован в большинстве игр компании, постоянно подвергаясь доработкам и усовершенствованиям. Было добавлено множество современных эффектов, а также расширены разные возможности движка, в том числе, например, и по работе с локациями больших размеров (начиная с Half-Life 2: Episode Two, 2007), добавлены новые платформы к списку поддерживаемых: изначально Source был доступен на Windows; позднее добавились Xbox, Xbox 360, PlayStation 3, с 2010 года — Mac[2][3]; с 2012 года — GNU/Linux[4] (первой портированной на Linux игрой стала Team Fortress 2[5]), и т. д.

В 2015 году компанией была анонсирована принципиально новая версия движка, названная Source 2. Анонс состоялся на конференции разработчиков видеоигр Game Developers Conference 2015.

Технические характеристики[править | править код]

Скриншот из Half-Life 2, показана система освещения, качество текстур, деталей и разрушаемых объектов.

Source является игровым движком, поэтому содержит в себе связку различных компонентов, в числе которых: графический движок, физический движок и т. п.

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

Физический движок создан на основе Havok. Он позволяет рассчитывать многие физические объекты, такие как твёрдые тела, гибкие тела, верёвки, поверхности и т. п. Существует возможность создания реалистичных транспортных средств, от машины до катера на воздушной подушке и вертолёта. Для просчёта поведения транспортного средства на дороге или в воздухе используется много параметров, например сцепление колёс с дорогой, масса машины. Для придания реалистичного движения телу, используется физика «тряпичной куклы»; созданная заранее анимация может смешиваться с физикой реального времени.

С развитием Source, в него были добавлены: HDR-рендеринг, динамическое освещение и затенение с возможностями самозатенения объектов, мягкими тенями от объектов (присутствует возможность использования традиционных карт освещения), многоядерный рендеринг для многоядерных процессоров, развитая система частиц.

Средства разработки[править | править код]

Source SDK — набор утилит для создания модификаций на движке Source, бесплатно доступный через Steam игрокам. В набор входят: Valve Hammer Editor (редактор карт), Faceposer (утилита для создания лицевой анимации моделей), Model Viewer (программа просмотра моделей формата .MDL).

Помимо трёх основных утилит набор включает утилиту для распаковки базовых файлов при создании нового мода, а также файлы исходного кода библиотек части игр Valve, что позволяет вручную создавать игры с изменёнными характеристиками без декомпиляции движка. Однако для компиляции новых файлов необходимо знание языка C++ и компилятор (например, Visual Studio).

Версии движка Source[править | править код]

Ниже указаны различные внутренние версии движка Source (названия версий можно узнать в ряде случаев из консоли или из SDK, но далеко не во всех случаях).

Игры, использующие Source[править | править код]

Движок Source стал технологической основой при разработке разнообразных игр: на нем построены все игры самой компании Valve, выходившие в период с 2004 по 2016 годы, такие как Half-Life 2, Half-Life 2: Episode One, Half-Life 2: Episode Two, Portal, Portal 2, Left 4 Dead, Left 4 Dead 2, Dota 2[7], Counter-Strike: Source, Counter-Strike: Global Offensive и многие другие.

Движок пользовался спросом у сторонних компаний, в числе игр на лицензированном Source: Vampire: The Masquerade — Bloodlines, Dark Messiah of Might and Magic, Dear Esther, Tactical Intervention, The Stanley Parable, Titanfall, Titanfall 2 и прочие.

Для Source-игр было выпущено много пользовательских модификаций (для запуска мода может быть необходима игра, для которой он сделан, однако часто возможен запуск модификации и самой по себе), некоторых из которых переросли в самостоятельные игры. В их числе: Synergy, Insurgency: Modern Infantry Combat (позже издана как отдельная игра), Dystopia, NeoTokyo, Age of Chivalry (позже издана как игра, но на другом движке), D.I.P.R.I.P., Eternal Silence, Zombie Panic! Source, Pirates, Vikings and Knights II, Black Mesa (переиздана как игра), No More Room in Hell, Lambda Wars.

Примечания[править | править код]

  1. Valve Developer Community. Страница обсуждения участника Erik Johnson. Valve Developer Community (1 сентября 2005 года). Проверено 19 июня 2001. Архивировано 15 февраля 2012 года.
  2. «Valve to Deliver Steam & Source on the Mac». Valve (8 марта 2010). Проверено 8 марта 2010. Архивировано 15 февраля 2012 года.
  3. «Left 4 Dead 2, Team Fortress 2, Portal and Steam Coming to Mac in April». Kotaku (8 марта 2010). Проверено 8 марта 2010. Архивировано 15 февраля 2012 года.
  4. Michael Larabel. Valve's Gabe Newell Talks Linux Steam Client, Source Engine. Phoronix (25 апреля 2012 года). Проверено 28 апреля 2012. Архивировано 30 апреля 2012 года.
  5. Gabe Newell. Steam for Linux beta program is now open to the public!. Steam (20 декабря 2012 года). Проверено 20 декабря 2012. Архивировано 17 января 2013 года.
  6. Valve. Source engine games on SteamPipe (англ.). Steam Support (2013). Проверено 14 июля 2016.
  7. Позже была перенесена на Source 2.

Ссылки[править | править код]

  • Valve (англ.). — официальный сайт компании-разработчика. Проверено 7 марта 2015.
  • Valve Developer Community (англ.). — официальный сайт Valve для разработчиков. Проверено 7 марта 2015.
  • Source Engine (англ.). Giant Bomb. Проверено 7 марта 2015.
  • Source (англ.). MobyGames. Проверено 7 марта 2015.
  • Source Inside (рус.). Проверено 7 марта 2015.
  • Sean D Knight. The 10 Best Source Engine Games (2014) (англ.). Maximum PC. Проверено 7 марта 2015.
  • Jason Mitchell, Gary McTaggart и Chris Green. Перевод: Вячеслав Е. «Освещение в Valve Source Engine» (перевод) (рус.) 5. GameDev.ru (2 декабря 2008 года). — детальное описание системы освещения графической подсистемы Source. Проверено 16 июля 2009. Архивировано 15 февраля 2012 года.