Valve Source Engine, або Source (), — ігровий рушій, розроблений корпорацією Valve . Його особливостями вважаються модульна основа і гнучкість, синхронізація рухів губ з промовою, технологія вираження емоцій і система фізики, що працює по мережі. Використовує загальний для продуктів Valve формат моделей рушія .mdl.

Фізична частина Source'а включає в себе частину переробленого коду фізичного рушія Havok і принципи фізики «ганчірної ляльки». Рушій може працювати з відеокартою DirectX 6-11. Дебютом Source вважається 16 листопада 2004 року — дата виходу перших ігор на його основі: Half-Life 2, Counter-Strike: Source и Vampire: The Masquerade – Bloodlines.

Історія назви Ерік Джонсон пояснив народження назви рушія Source так:

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

Підтримувані платформи Спочатку Source був доступний на наступних платформах: Windows, Xbox, Xbox 360, PlayStation 3. З 2010 року доступний Mac OS X.

У квітні 2012 року на інтернет-ресурсі «Phoronix» була опублікована інформація про підготовку випуску Steam і платформи Source під GNU/Linux. У грудні 2012 року Source був офіційно портований під GNU/Linux, і першою грою на ньому, доступною для даної платформи став Team Fortress 2; ; раніше як Steam, так і Source були доступні в закритому бета-тестуванні.

Історія версій Точно версію рушія можна назвати тільки в іграх, що виходили до 2007 року включно. Так як наприклад в Source SDK при виборі гри обирається і рушій, де чітко написано версія, так само в консолі можна подивитися версію протоколу ().

У Left 4 Dead і наступних іграх конкретно версію рушія назвати не можна, можливість подивитися в консолі версію протоколу теж відсутня. Так само версії рушіїв 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.

Робоча версія У початкових стадіях розробки рушій Source Engine візуально виглядав як GoldSource, який використовувався в перших проектах Valve Software.. Ігрове меню в стилі Half-Life і перших версій Steam, текстури, які не накладалися повністю, і в деяких проявах кров виглядала також, як і в Half-Life Ігри на цій версії офіційно не випускалися, але вона використовувалася у вкраденій версії Half-Life 2. Гра була недопрацьована і мала дуже мало можливостей, наприклад, на деяких картах текстури виглядали занадто яскраво або ж дуже тьмяно. Гра Vampire: The Masquerade – Bloodlines розроблялася за технологією ранньої версії Source.

Релізні версії {| class="wikitable" | (Source Engine 6) | Перша релізна версія рушія, на якому дебютувала Half-Life 2. Від початку він підтримує масштабування, можливість оновлень, шейдерний рендерінг, лицьову анімацію, а також динамічне освітлення і затемнення. Спочатку він використовувався в деяких іграх до 2005 року, і пізніше був оновлений до Source Engine 7. Офіційно ця версія рушія визнана застарілою і не використовується жодною з ігор в Steam. | Half-Life 2 — до 2005 року.

Counter-Strike: Source — до 2005 року. Half-Life: Source — до 2005 року. |- |Source Engine 2005 (Source Engine 7: Source Engine) | Оновлена версія Source Engine 6. У порівнянні з попередником, він підтримує High Dynamic Range Rendering. Рушій також вважається застарілим, однак використовується в декількох Steam-іграх. | Half-Life 2 — до 15 травня 2010 року. Half-Life 2: Deathmatch — до 2006 року Counter-Strike: Source — до 2006 року. Half-Life: Source. Half-Life Deathmatch: Source — до 2006 року. Day of Defeat: Source — до 2006 року. Half-Life 2: Lost Coast. |- |Source Engine 2006 (Source Engine 7: Base Source Engine 2) | Це третя версія рушія, на якому були випущені кілька ігор. Також на ньому до 2010 року базувався ряд мультиплеєрних ігор Valve. Він був оновлений і підтримує оновлену лицьову анімацію, багатоядерний рендеринг (але його включення було неможливим) і оновлений High Dynamic Range Rendering. Ця версія рушія була популярною до виходу 2007, нею користувалися багато розробників відеоігор. Для цієї версії рушія було випущено велику кількість модифікацій з власними dll-файлами (крім того, випущеними для більш ранніх версій моди сумісні і з цією версією), які не працездатні на більш пізніх версіях, тому серед гравців вона залишається досить популярною і по сей день. | Half-Life 2: Episode One — до 15 травня 2010 року. Half-Life 2: Deathmatch — до 15 травня 2010 року. Counter-Strike: Source — до 15 травня 2010 року. Day of Defeat: Source — до 2009 року. Half-Life Deathmatch: Source. SiN Episodes: Emergence. Dark Messiah of Might and Magic. Source SDK Base 2006. Garry's Mod — до 28 вересня 2010 року. |- |Source Engine 2007 (Source Engine 14) | Це четверта версія рушія. Ця версія була сильно дороблена і оновлена — перша версія рушія носила назву Source Engine 8, яка потім оновлювалася до Source Engine 14. Вперше рушій був оновлений з виходом The Orange Box, також рушій став підтримувати оновлений шейдерний рендеринг, значно доопрацьовано динамічне освітлення і затінення, також з'явилася система м'яких частинок і була додана не повноцінна кінематографічна фізика. Рушій містить значні зміни в порівнянні з Source Engine 7, тому моди з власними dll, випущені для більш ранніх версій, не сумісні з даною і більш пізніми версіями. | Half-Life 2: Episode Two — до 15 травня 2010 року. Portal — до 15 травня 2010 року. Team Fortress 2. Day of Defeat: Source — до 15 травня 2010 року. Source SDK Base 2007.|- |Source Engine 2008 (Source Engine 14: Base Source 3) | Це п'ята версія рушія. У ній була доопрацьована кінематографічна фізика і додана глибина різкості. | Left 4 Dead|- |Source Engine 2009 (Source Engine 15) | Це шоста, сильно дороблена версія рушія. У цій версії були оновлені всі функції і значно дороблена система м'яких частинок, лицьова анімація, масштабування і можливість оновлень. | Left 4 Dead 2 Zeno Clash Postal III (випущена 23 листопада 2011 року)

Також з вересня 2010 року: Half-Life 2 Half-Life 2: Deathmatch Half-Life 2: Episode One Half-Life 2: Episode Two Portal Counter-Strike: Source Team Fortress 2|- |Source Engine 2010 (Source Engine 17) |Це сьома версія рушія. | Alien Swarm. . Day of Defeat: Source. |- |Source Engine 2011 |Це восьма версія рушія. | Portal 2 Dota 2 Counter-Strike: Global Offensive |- |Source Engine Multiplayer (Source Engine 19) | Нова модифікація рушія під потреби мультиплеєрної складової ігор. (Оновлення 8 листопада 2010 року) | Counter-Strike: Source Team Fortress 2 (до 2 листопада 2010 року) Day of Defeat: Source (до 2 листопада 2010 року) Garry's Mod (до 2 листопада 2010 року) Half-Life 2: Deathmatch (до 2 листопада 2010 року) |- |Source Engine Multiplayer (Source Engine 21) | Нова версія. (оновлення 30 листопада 2010 року і 2 грудня 2010 року) | Counter-Strike: Source Team Fortress 2 Day of Defeat: Source Garry's Mod (до 21 жовтня 2012 року) Half-Life 2: Deathmatch |- |Source Engine Multiplayer (Source Engine 23) | Нова модифікація рушія під потреби мультиплеєрної складової ігор. Містить в основному виправлення помилок попередніх версій, підвищення стабільності роботи, а також покращена сумісність з Big Picture Mode в Steam. (оновлення 21 грудня 2012 та 6 лютого 2013) | Counter-Strike: Source Team Fortress 2 Day of Defeat: Source Half-Life 2: Deathmatch

Технологічні можливості Основні

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

Система анімації Source дозволяє створювати виразних персонажів з нескінченною гамою емоцій на обличчі, що дозволяє їм донести до вас повідомлення, не сказавши ні слова. На додаток до цього персонажі володіють одним із найбільш просунутих штучних інтелектів, що робить їх вкрай умілими союзниками і ворогами.

За допомогою рушія з легкістю можна створювати красиві і реалістичні світи, що реагують на вашу присутність. Це дозволить розробникам відійти від створення скриптових сценок, які були стандартом для ігор минулого покоління, і відкрити двері для створення ігор абсолютно нових стилів Source Source містить в собі складний мережевий код, що забезпечує підтримку для 32 гравців по локальній обчислювальній мережі та інтернет. Рушій Source зроблений з розрахунком на регулярне оновлення, що виражається в його широких можливостях до модифікації і поліпшення без зміни будь-яких ключових архітектурних особливостей рушія. У комбінації з системою цифрового розповсюдження Steam рушій може оновлюватися одразу після виходу оновлення. Наприклад, якщо Source почне підтримувати фізичні карти, то всі ігри, поширювані через Steam і, які використовують власне Source, почнуть їх підтримувати. Подібне можна було спостерігати після додавання розробниками в рушій High dynamic range rendering.

Втім, тотальна модифікація всіх Source-ігор на практиці неможлива, тому що творцям модифікацій не доступна система оновлень, а отже, розвивати рушій можуть тільки самі розробники. В Source використовуються шейдери Direct3D версії 3.0.

High Dynamic Range Rendering Вперше цей ефект був представлений в грі Day of Defeat: Source, яка вийшла 26 вересня 2005 року. Підтримка High Dynamic Range Rendering стала однією з перших суттєвих модифікацій рушія. Ефект полягає в динамічній зміні яскравості всього або окремих ділянок зображення (наприклад, симуляція адаптації очей до денного світла).

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

Динамічне освітлення та затемнення До релізу збірки The Orange Box була допрацьована система освітлення. Крім старого типу промальовування тіней була додана можливість прорахунку тіней за технологією карт тіней, що дозволяє промальовувати правильні динамічні тіні (з урахуванням самозатінення та іншого). Геометрія світу освітлена за допомогою заздалегідь прорахованих карт освітлення. Статичне освітлення може з високою точністю прораховувати освітлення, включаючи віддзеркалення світла від дзеркальних або матових поверхонь, заломлення світла, часткове затінення (наприклад, напівпрозорі об'єкти). Будь-які об'єкти в світі можуть відбивати світло вловлене з інших об'єктів. Наприклад: білий квадрат на чорному тлі, оскільки квадрат світліше фону, то і невелика область навколо нього буде світліше. Глибина різкості використовується для того, щоб висунути деякі об'єкти на перший план, а інші, ті що позаду, уявити розмитими. Для додання потрібної атмосфери може використовуватися корекція кольору. Наприклад, можна стилізувати гру під чорно-білий фільм. В Source використовується динамічна зміна деталізації моделей і геометрії світу, що значно підвищує продуктивність на слабких комп'ютерах.