Загрузка...
скачать
Реферат на тему:

Source



План:

    Введение
  • 1 История названия
  • 2 Платформы, на которых доступен движок
  • 3 История версий
  • 4 Технологические возможности
  • 5 Материалы
  • 6 Основная физика
  • 7 Истоки
  • 8 Создание игр и модов к ним
  • 9 Модификации
  • 10 Игры на движке Source
  • Примечания

Введение

Valve Source Engine, сокращенно Source (англ. источник) — игровой движок, разработанный корпорацией Valve[3]. Его особенностями считаются модульная основа и гибкость, синхронизация движения губ с речью, технология выражения эмоций и система физики, работающая по сети. Использует общий для продуктов Valve формат моделей движка .mdl. Физическая часть движка Source включает в себя часть переработанного кода Havok Physics и принципы «Ragdoll-физики», также этот движок может работать с видеокартой DirectX 8-9.

Дебютом Source можно считать 16 ноября 2004 года — выход первых игр на его основе: Half-Life 2 и Counter-Strike: Source.


1. История названия

Эрик Джонсон объяснил рождение названия Source в сообщении Valve Developer Community:

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

2. Платформы, на которых доступен движок

Source доступен на следующих платформах: Windows, Xbox, Xbox360, PlayStation 3[4], с 2010 года доступен на Mac OS X[5][6].

3. История версий

Первая версия

В начальных стадиях разработки движок Source Engine визуально выглядел как GoldSource, который использовался в первых проектах Valve Software. Игровое меню в стиле Half-Life и первых версий Steam, текстуры, не накладывавшиеся полностью, и в некоторых проявлениях кровь выглядела также, как и в Half-Life. Впервые эта версия использовалась в украденной версии Half-Life 2 (в народе её обозначают как Half-Life 2: Beta или Half-Life 2 Leak), но она была не совершенна и имела очень мало возможностей, например, на некоторых картах (своеобразные уровни) текстуры выглядели слишком ярко или же очень тускло. Также в этой версии движка использовался фонарик, изначально использовавшийся в Half-Life.

Следующие версии
Source Engine 2004

Это первый движок (также имеет название Source Engine 7), на котором была выпущена первая игра. Изначально он поддерживает масштабирование, возможность обновлений, шейдерный рендеринг, лицевую анимацию, а также динамическое освещение и затемнение. Изначально он использовался в некоторых играх до 15 мая 2010 года. Официально эта версия движка признана устаревшей. Игры, в которых использовалась эта версия:

  • Half-Life 2 — до 15 мая 2010 года;
  • Half-Life 2: Deathmatch — до 15 мая 2010 года;
  • Counter-Strike: Source — до 15 мая 2010 года;
  • Half-Life: Source
Source Engine 2005

Это вторая версия движка (также имеет название Source Engine 7: Base Source 2, на котором была выпущена вторая игра. Он был обновлён, и помимо предыдущих функций он поддерживает High Dynamic Range Rendering. Была выпущена всего одна игра с этой версией:

  • Day of Defeat: Source — до 15 мая 2010 года;
  • Half-Life 2: Lost Coast
Source Engine 2006

Это третья версия движка (также имеет название Source Engine 8), на котором были выпущены несколько игр. Он был обновлен и поддерживает обновленную лицевую анимацию, многоядерный рендеринг (но его включение было невозможным) и обновленный HDR. Эта версия движка была популярной до выхода 2007, ею пользовались многие разработчики компьютерных игр. Было выпущено всего несколько игр:

  • Half-Life 2: Episode One — до 15 мая 2010 года;
  • Half-Life: Deathmatch Source
  • SiN Episodes: Emergence
  • Dark Messiah of Might and Magic
  • Garry's Mod — до 28 сентября 2010 года;
Source Engine 2007

Это четвёртая версия движка (имеет название Source Engine 14). Эта версия была сильно доработана и обновлена. Впервые движок был обновлен с выходом Half-Life 2: The Orange Box, также движок стал поддерживать обновлённый шейдерный рендеринг, значительно доработано динамическое освещение и затенение, также появилась система мягких частиц и была добавлена не полноценная кинематографическая физика. Игры, выпущенные на этой версии движка:

  • Half-Life 2: Episode Two
  • Portal
  • Team Fortress 2
Source Engine 2008

Это пятая версия движка (имеет название Source Engine 14: Base Source 3). В ней была доработана кинематографическая физика и добавлена глубина резкости. Всего одна игра была выпущена на этой версии движка:

  • Left 4 Dead
Source Engine 2009

Это шестая, сильно доработанная версия движка (также имеет название Source Engine 15). В этой версии были обновлены все функции и значительно доработана система мягких частиц, лицевая анимация, масштабирование и возможность обновлений. На ней было выпущено несколько игр:

  • Left 4 Dead 2
  • Zeno Clash

Так же с сентября 2010 года эта версия движка появилась и в предыдущих играх от Valve, а именно:

  • Half-Life 2
  • Half-Life 2: Deathmatch
  • Half-Life 2: Episode One
  • Half-Life 2: Episode Two
  • Counter-Strike: Source
  • Team Fortress 2 и другие.
Source Engine 2010

Это седьмая версия движка (также имеет название Source Engine 17). В этой версии добавлена звуковая подсистема. С этой версией были выпущены две игры:

  • Alien Swarm
  • Bloody Good Time
Source Engine 2011

Это восьмая и последняя на данный момент версия движка. На этом движке выпущена только одна игра:

  • Portal 2
Примечание

Определённо версию движка игр Valve можно назвать только у игр, выходящих до 2007 года включительно. Так как например в Source SDK при выборе игры выбирается и движок, где чётко написано Source Engine 2006/2007/2009, так же в консоли можно посмотреть версию движка (protocol version), исходя из этого есть названия Source Engine 7/14/15. В Left 4 Dead и последующих играх конкретно версию движка назвать нельзя, protocol version тоже отсутствует. Так же версии движков Counter-Strike: Source и Left 4 Dead 2 существенно различаются, но здесь у них отмечена одна версия, Left 4 Dead 2 вышла в 2009 году, а Counter-Strike: Source обновилась до движка Source Engine 2009 в 2010 году. В графическом плане превосходит движок Left 4 Dead 2 , но у Counter-Strike: Source больше мелких улучшений (например, заметно был улучшен сервер браузер), которые появились после выхода Left 4 Dead 2. Zeno Clash вышла раньше Left 4 Dead 2, хоть и в 2009, но, судя по системным требованиям, движок скорее такой же, как у Left 4 Dead, а не как у Left 4 Dead 2.


4. Технологические возможности

Half-Life 2, сцена атаки игрока (Гордона Фримена) мэнхэками Альянса. Демонстрация системы освещения, качества текстур и частично прозрачных поверхностей, а также деколей и разрушаемых объектов.

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

Система анимации Source позволяет создавать выразительных персонажей с бесконечной гаммой эмоций на лице, что позволяет им донести до вас сообщение, не сказав ни слова. В дополнение к этому персонажи владеют одним из наиболее продвинутых AI, что делает их крайне умелыми союзниками и врагами.

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

Source содержит в себе сложный сетевой код, обеспечивающий поддержку для 32 игроков по LAN и Internet и содержит в себе полный набор инструментов для левел-дизайна, анимации персонажей, создания демоверсий и многого другого.

Масштабируемость и возможность обновлений

Движок Source сделан с расчётом на регулярное обновление, что выражается в его широких возможностях к модификации и улучшению без изменения каких-либо ключевых архитектурных особенностей движка (вот почему, в частности, не наблюдается изменения версии движка с 1.0 до 2.0). В комбинации с системой цифрового распространения Steam движок может обновляться сразу после выхода обновления. Например, если Source начнет поддерживать физические карты, то все игры, распространяемые через Steam и использующие собственно Source, начнут их поддерживать. Подобное можно было наблюдать после добавления разработчиками в движок HDR (High Dynamic Range).

Впрочем, тотальная модификация всех Source-игр на практике невозможна, потому что создателям модификаций не доступна система обновлений, а значит, развивать движок могут только сами разработчики.

Шейдерный рендеринг

В Source используются шейдеры Direct3D версии 3.0

High Dynamic Range Rendering

Впервые этот эффект был представлен в Day of Defeat: Source, который вышел 26 сентября 2005 года. Поддержка HDR стала одной из первых существенных модификаций движка. Эффект заключается в динамическом изменение яркости всего или отдельных участков изображения (например, адаптация глаз к дневному свету).

Лицевая анимация

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

Динамическое освещение и затенение

К релизу Orange Box была доработана система освещения. Помимо старого типа прорисовки теней была добавлена возможность просчета теней по технологии Shadow Map, позволяющей прорисовывать правильные динамические тени (с учетом самозатенения и пр.).

Заранее просчитанное освещение

Геометрия мира освещена при помощи заранее просчитанных карт освещения. Статическое освещение (Vrad) может с высокой точностью (настраивается) просчитывать освещение, включая отражение света от зеркальных или матовых поверхностей, преломление света, частичное затенение (например, полупрозрачные объекты).

Косвенное освещение

Любые объекты в мире могут отражать свет уловленный с других объектов. Например: белый квадрат на чёрном фоне, поскольку квадрат светлее фона, то и небольшая область вокруг него будет светлее.

Глубина резкости

Глубина резкости используется для того, чтобы выдвинуть некоторые объекты на первый план, а другие, те что позади, представить размытыми.

Динамическая коррекция цвета

Для придания нужной атмосферы может использоваться коррекция цвета. Например, можно стилизовать игру под чёрно-белый фильм.

LOD

В Source используется динамическое изменение детализации моделей и геометрии мира, что значительно повышает производительность на слабых компьютерах.

Многоядерный рендеринг

С обновлением движка Orange Box до 15 версии появилась функция многоядерного рендеринга, позволяющая получить прирост производительности на многоядерных процессорах.

Система мягких частиц

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

Кинематографическая физика

Во время той же июльской пресс конференции Electronic Arts было объявлено, что бывший сотрудник Weta Digital Грей Хорсфилд занимается созданием системы кинематографической физики для Source. Примеры такой физики можно увидеть в последнем тизере Half-Life 2: Episode Two, в сцене с разрушающимся мостом. Кинематографическая физика поддерживает систему ключевых кадров, детали к которым добавляет физическая система.

Данная система добавляет следующие возможности к физическому симулятору движка Source:

  • Деформируемые объекты — до этого физические модели не могли быть изменены каким-либо образом, кроме как на основе заранее просчитанной анимации.
  • Динамическое разрушение игровой геометрии — до этого линии разрушения должны были указываться создателем карты.

Кинематографическая физика поддерживает систему ключевых кадров, однако её точное поведение на данный момент не известно. Вполне вероятно, что у аниматоров появится возможность создавать длительные сцены с маленьким количеством ключевых моментов, детали к которым будет добавлять физическая система. Возможно, что аниматоры будут создавать несколько конечных положений, используемых для просчёта движений между ними (наподобие технологии Endorphin NaturalMotion). В конечном итоге разработчики получают в руки технологию, которая позволяет им создавать гораздо более сложные сцены чем раньше, затрачивая на это те же самые ресурсы.

Эффекты частиц

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

Вода

Вода в Source Engine имеет динамически просчитываемые отражения, а также всплески и брызги.

A.I. System

В Source используется один из самых продвинутых A.I. Персонажи под управлением Искусственного Интеллекта, могут прыгать, бегать, летать, ползать, плавать, закапываться, атаковать. Сложное построение карт перемещений помогает NPC обходить вокруг препятствий, прятаться за ними. NPC ориентируются благодаря слуху, нюху, зрению.

Звуковая подсистема

Звуковой движок построен на основе звуковой библиотеки Miles Sound System версии 6.6a. Библиотека использует для вывода программный интерфейс DirectSound и программный цифровой сигнальный процессор.


5. Материалы

Система материалов

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

Карты нормалей

Для придания материалам объёма в Source Engine используются карты нормалей, которые определяют, как будут освещены отдельные точки на поверхности.

Смешивание текстур

В Source Engine поддерживается смешивание текстур, мягкие переходы от одной текстуры к другой.


6. Основная физика

Воссоздается благодаря переработанному физическому движку Havok. Он позволяет Движку рассчитывать многие физические объекты, такие как твёрдые тела, упругие тела, верёвки, поверхности и т. п.

Транспортные средства

В Source Engine используется технология для создания очень реалистичных транспортных средств, от машины до катера на воздушной подушке и вертолёта. Для просчёта поведения транспортного средства на дороге/в воздухе, используется очень много параметров, например сцепление колёс с дорогой, вес машины и т. п.

Верёвки, кабели

Динамическое поведение (например, могут встряхиваться или обрываться).

«Тряпичная кукла»

Для придания реалистичного движения тела, используется физика «тряпичной куклы» (в последних версиях Source Engine совмещена с анимацией).

Анимационная физика

В Source Engine анимация может смешиваться с физикой, что дает прирост реалистичности.


7. Истоки

Хотя Valve всегда заявляла, что Source разрабатывался полностью с нуля, ходят слухи, согласно которым этот движок является развитием движка GoldSource (Half-Life), который является модифицированной версией движка Quake engine. Подтверждением тому является схожая с GoldSource система доступа для разработчиков, а также комментарий в блоге Джона Кармака: «в движке Half-Life 2 по-прежнему есть куски кода из движка Quake». Однако у этой версии нет никаких серьёзных доказательств. Утечка кода Source в 2003 году и части кода Source-игр, доступные в рамках Source SDK, не подтвердили её — никаких совпадений найдено не было. Однако, в Valve Developer Wiki[7] было сказано, что Source — переделка движка GoldSrc.


8. Создание игр и модов к ним

Source SDK (Software Development Kit — «набор для разработчиков ПО») — набор утилит для создания игровых уровней на движке Source, бесплатно распространяемый Valve через сеть Steam всем игрокам, купившим любую Source-игру от Valve. Данный набор позволяет редактировать карты на двух версиях движка — 15-ой и обновлённой 7-ой (старая версия движка, используемая в Half-Life 2, не используется из-за совместимости с новой версией). Также выпущена версия Source SDK для SiN Episodes: Emergence, Left 4 Dead (Left 4 Dead Authoring Tools) и Left 4 Dead 2 (Left 4 Dead 2 Authoring Tools).

Утилиты

В стандартный набор входят:

  • Hammer Editor — утилита для создания карт
  • Faceposer — утилита для создания лицевой анимации моделей
  • Model Viewer — просмотрщик моделей формата .mdl

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

Source SDK Base

Также для обеих новых версий движка существуют специальные дополнения — Source SDK Base. По структуре они выглядят как игры и представляют собой уровень-заставку из дополнения Half-Life 2: Lost Coast с эффектами HDR, служащую для тестирования видеокарты. Также они служат базой для тестирования новых модов, причём у модов без качественных изменений становится возможной проверка HDR-эффектов на картах, поэтому при создании мода Source SDK базирует его на SDK Base. Некоторые модмейкеры не изменяют базу мода на какую-нибудь Source-игру по завершении его создания, а оставляют за основу Source SDK Base. Данный подход позволяет владельцам Half-Life 2 на старой версии движка играть в моды на новой версии при отсутствии других Source-игр, но в то же время вынуждает остальных пользователей закачивать дополнительный контент.


9. Модификации

Для движка Source было создано огромное количество любительских модификаций, самые качественные из которых доступны для загрузки через Steam и снабжены поддержкой Steamworks. На данный момент это следующие моды:

  • Synergy — кооперативная модификация, поддерживающая карты Half-Life 2, Half-Life 2: Episode One, Half-Life 2: Episode Two, Half-Life 2: Lost Coast и модификаций Minerva и Riot Act.
  • Insurgency: Modern Infantry Combat — довольно реалистичный командный шутер, посвященный войне в Ираке
  • Dystopia — футуристический командный шутер
  • Age of Chivalry — средневековые битвы
  • D.I.P.R.I.P. — футуристические гонки на выживание
  • Eternal Silence — битвы на космических кораблях
  • Zombie Panic: Source — зомби-шутер
  • Pirates, Vikings and Knights II — средневековые битвы пиратов, викингов и рыцарей

10. Игры на движке Source

Название игры Разработчик Дата первого выхода Платформы Версия движка
Counter-Strike: Source Valve Corporation 2004 год, 7 октября PC, Mac OS X Source Engine 2009
Day of Defeat: Source Valve Corporation 2005 год, 26 сентября PC, Mac OS X Source Engine 2009
Half-Life 2 Valve Corporation 2004 год, 16 ноября PC, Mac OS X, Xbox, Xbox 360, PlayStation 3 Source Engine 2009
Half-Life 2: Deathmatch Valve Corporation 2004 год, 30 ноября PC, Mac OS X Source Engine 2009
Half-Life 2: Episode One Valve Corporation 2006 год, 1 июня PC, Mac OS X, Xbox 360, PlayStation 3 Source Engine 2009
Half-Life 2: Episode Two Valve Corporation 2007 год, 10 октября PC, Mac OS X, Xbox 360, PlayStation 3 Source Engine 2009
Half-Life: Source Valve Corporation 2004 год, 1 июня PC Source Engine 2004
Half-Life Deathmatch: Source Valve Corporation 2006 год, 1 мая PC Source Engine 2006
Half-Life 2: Lost Coast Valve Corporation 2005 год, 27 октября PC Source Engine 2006
Portal Valve Corporation 2007 год, 10 октября PC, Mac OS X, Xbox 360, PlayStation 3 Source Engine 2009
Portal 2 Valve Corporation 2011 год, 19 апреля PC, Mac OS X, Xbox 360, PlayStation 3 Source Engine
Portal 2
Team Fortress 2 Valve Corporation 2007 год, 10 октября PC, Mac OS X, Xbox 360, PlayStation 3 Source Engine 2009
Left 4 Dead Valve Corporation и Certain Affinity 2008 год, 18 ноября PC, Mac OS X, Xbox 360 Source Engine
Left 4 Dead
Left 4 Dead 2 Valve Corporation 2009 год, 17 ноября PC, Mac OS X, Xbox 360 Source Engine
Left 4 Dead 2
Alien Swarm Valve Corporation 2010 год, 19 июля PC Source Engine 2010
Alien Swarm
DOTA 2 Valve Corporation 2011 год PC, Mac OS X
Garry's Mod Team Garry 2006 год, 29 ноября PC, Mac OS X Source Engine 2009
Vampire: The Masquerade - Bloodlines Troika Games 2004 год, 16 ноября PC Ранняя версия движка
SiN Episodes: Emergence Ritual Entertainment 2006 год, 10 мая PC Source Engine 2006
The Ship Outerlight 2006 год, 11 июля PC Source Engine 2006
Dark Messiah of Might and Magic Arkane Studios и Kuju Entertainment 2006 год, 27 октября PC Source Engine 2006
Zeno Clash ACE Team 2009 год, 9 октября PC, Xbox 360 Source Engine 2009
Postal III Running With Scissors, Акелла и TrashMasters 2011 год, предположительно (точная дата неизвестна) PC, Xbox 360, PlayStation 3
Nuclear Dawn InterWave Studios 2011 год, II квартал PC, Mac OS X, Xbox 360
Tactical Intervention FIX Korea 2011 год PC

Примечания

  1. Портирование еще ведется.
  2. Используется в Portal 2
  3. Valve State-of-the art games start here - source.valvesoftware.com/  (англ.).
  4. Как заявила сама VALVE, «Клиент Steam это Windows-приложение[] и разработка версии под операционную систему Linux пока не планируется[источник?]».
  5. Valve to Deliver Steam & Source on the Mac - store.steampowered.com/news/3569/. Valve (2010-03-08).
  6. Left 4 Dead 2, Team Fortress 2, Portal and Steam Coming to Mac in April - kotaku.com/5488375/left-4-dead-2-team-fortress-2-portal-and-steam-coming-to-mac-in-april. Kotaku (2010-03-08).
  7. Заметка об истоках движка в Valve Developer Wiki - developer.valvesoftware.com/wiki/Source
скачать

Данный реферат составлен на основе статьи из русской Википедии. Синхронизация выполнена 15.07.11 02:40:01

Похожие рефераты: View-source, Open-source, Closed source, The Splendid Source, Shared Source, Source Mage, Open Source.

Категории: Коммерческие игровые движки, Игры на движке Source, Half-Life 2.

Текст доступен по лицензии Creative Commons Attribution-ShareAlike.