что такое движок source
Общая информация о технологии
Разработчик: Valve Corporation
Серия движков: Source Engine
Дата анонса: 2004 год
Написан на языке: C++
Лицензия: Проприетарное программное обеспечение (Source Engine является частной собственностью Valve)
Последняя версия: Source Engine 2
Source engine вышедший из тени такого гиганта как Valve значительно превзошел возлагаемые на него надежды и проложил себе собственную дорогу к славе. Source разработан Valve Software движок, основанный на Qake Engine поставил собой точку на старых технологиях и подстегнул сообщество к созданию новой эры движков. Первое заявление Гейба Ньюела после приобретения движка «Когдда мы сели и увидели движок, мы поняли, что для создания грандиозного шутера от первого лица, не нужно делать инновационной разработки в этой области в которой, уже все сделано Кармаком».
В первых версиях движка была даже воплощена поддержка динамического освещения, но позднее, из-за недостаточной мощности компьютеров того времени, было принято решение убрать данную технологию. Графический движок был сильно переработан, что бы Half-Life не выглядел как его прямой конкурент Quake. Half-Life должен был не только выглядеть лучше Quake, но и быть лучше Quake в техническом плане. Из-за этой проблемы релиз Half-Life был перенесен почти на год. Half-Life была первой игрой в которой NPC персонажи разделялись на союзных и противников. В движок так же была добавлена скелетная анимация и лицевая мимика- это поистине гениальное нововведение, данная технология сейчас используется во всех физических моделях.
Задавая моделям скелет, программисты могут намного проще и качественнее создавать анимацию персонажей, что так же позволяло создавать различные сцены в играх быстрее и красивее. Нововведение так же сказалось и на лицевой мимике- если раньше персонажи, как правило, чревовещали своим голосом, то теперь их лица обрели свою жизнь. Этот движок позже регулярно перерабатывался и дорабатывался, как Valve, так и сторонними компаниями. Сами Valve обновляли его при помощи системы Steam. Компания Gearbox выпустила на нем несколько игр, из которых стоит отметить Half-Life: Blue Shift и Half-Life: Opposing Force. В модификации от Gearbox были добавлены текстуры большего разрешения, сглаживание и улучшена система лицевой мимики.
Для выхода Counter Strike: Condition Zero совместными усилиями Valve, Gearbox и TurtleRock была разработана новая версия движка, которая добавляла возможность использования высоко детализированных текстур. Текстуры накладывались сверху на другие и создавало ощущение шероховатости плоскости, как например щели, трещины и т.д. Так же были добавлены Alpha-текстуры, таким текстурам можно было задавать степень прозрачности, что используется в ряде сцен.
История разработки движка Source |
Немного истории разработки: началось все с 1998 года, когда разработчики завершая работу над своей первой игрой серии Half-Life, поняли, что в процессе разработки появилось множество наработок и деталей, которые им хотелось бы внедрить в движок, но т.к. игра уже была практически готова, они не рискнули вводить новые решения. В последующие же оды разработчики использовали термины для названия движка непосредственно как «GoldSource» и «Source». GoldSource развивался из исходного кода релизной версии движка, а Src осталась версией для экспериментов и относилась к будущей версии движка.
Таким образом, название Source стали использовать для описания нового движка, а GoldSource стало названием предыдущего поколения технологии. Стоит отметить, что название в дословном переводе означает «источник», однако слово source также употребляется в словосочетании source code — исходный код.
Первой игрой на движке Source стал многопользовательский шутер Counter-Strike: Source, вышедший в октябре 2004 года, он стал своеобразной демонстрацией движка, поэтому в его название и вписано название технологии, являя собой воссозданную с новейшей для того времени графикой версию классического шутера Counter-Strike.
Немногим позже было выпущено продолжение Half-Life — Half-Life 2, сюжетный научно-фантастический шутер, получивший, впоследствии, множество наград и отмеченный как имеющий графику, являющуюся одной из наиболее прогрессивных для своего времени. В Half-Life 2 очень активно используется физический движок, в основу которого лег Havok, лицензированный Valve. При помощи Havok Engine построены многочисленные головоломки, основанные на игре с физическими законами. В дальнейшем тематика головоломок с законами физики была интересно развита в другом проекте Valve — Portal выпущенном в 2007 году, основной идеей игры является перемещение с помощью телепортов. Помимо развитой физический модели, Half-Life 2 отличалась наиболее передовой для своего времени технологией лицевой анимации. Графический движок, использующий DirectX девятой версии, также отличался сильной оптимизацией и мог работать на старых моделях видеокарт, понижая свое качество графики и переходя на более ранние версии DirectX, вплоть до шестой версии.
В дальнейшем Source, чья структура описана разработчиками как крайне гибкая и модульная, был использован в большинстве игр компании, постоянно подвергаясь доработкам и усовершенствованиям. Было добавлено множество современных эффектов, а также расширены разные возможности движка, в том числе, например, и по работе с локациями больших размеров, добавлены новые платформы к списку поддерживаемых. Изначально Source был доступен на Windows, позднее добавились Xbox, Xbox 360, PlayStation 3, с 2010 года — Mac. С 2012 года была добавлена поддержка Linux первой портированной Valve игрой стала Team Fortress 2.
Технические характеристики Source |
Source является игровым движком, поэтому состоит из различных компонентов в числе которых: Физический движок, графический движок, аудио движок и т.д.
Одной из особенностей движка является его система анимации персонажей, в частности, лицевая анимация, которая содержит множество средств для создания выразительной мимики и точной синхронизации речи актеров с анимацией; также движок отличает продвинутый игровой искусственный интеллект, который может эффективно управлять противниками или союзниками игрока; он был одним из первых, где применялись сложные шейдерные эффекты; в играх на движке активно использовалась шейдерная вода, отражающая окружающий мир.
Portal 2 Concept Art by nofingerthumb
Физический движок создан на основе Havok. Он позволяет рассчитывать многие физические объекты, такие как твёрдые тела, упругие тела, верёвки, поверхности и т.п. Существует возможность создания реалистичных транспортных средств, от машины до катера на воздушной подушке и вертолёта. Для просчёта поведения транспортного средства на дороге или в воздухе используется много параметров, например сцепление колёс с дорогой, масса машины. Для придания реалистичного движения телу, используется физика «тряпичной куклы»; созданная заранее анимация может смешиваться с физикой реального времени.
hl inside.ru portal 2 046
С развитием Source, в него были добавлены: HDR-рендеринг, динамическое освещение и затенение с возможностями самозатенения объектов, мягкими тенями от (присутствует возможность использования традиционных карт освещения), многоядерный рендеринг для многоядерных процессоров, развитая система частиц.
sp sabotage darkness0196
SDK tools |
Помимо трёх основных утилит набор включает утилиту для распаковки базовых файлов при создании нового мода, а также файлы исходного кода библиотек части игр Valve, что позволяет вручную создавать игры с изменёнными характеристиками без декомпиляции движка. Однако для компиляции новых файлов необходимо знание языка C++ и компилятора.
Версии движка и обновления |
Ниже перечислены различные внутренние версии движка Source с перечнем игр, в которых применялась конкретная версия движка:
Ранние версии (2003) — ранняя версия движка применялась в утекшей в Сеть в 2003 году бета-версии Half-Life 2, игра была визуально похожа на Half-Life на GoldSource и не содержала множества технологий. На другой версии движка, уже близкой к дебютировавшей с Half-Life 2, создавалась игра Vampire: The Masquerade – Bloodlines.
Source Engine 2004 (Source Engine 6) — первая релизная версия движка, впервые примененная в Half-Life 2. Изначально поддерживает масштабирование, возможность обновлений, шейдерный рендеринг, лицевую анимацию, а также динамическое освещение. До 2005 года использовалась в: Half-Life 2, Counter-Strike: Source, Half-Life 2: Deathmatch, Half-Life: Source. Обновлёна до Source Engine 7.
Source Engine 2005 (Source Engine 7) — обновлённая версия. По сравнению с предшественницей, поддерживает High Dynamic Range Rendering, для демонстрации новых технологий освещения разработчики выпустили Half-Life 2: Lost Coast, в сущности эта игра представляет собой уровень, не попавший в финальную версию Half-Life 2. Движок считается устаревшим, используется в: Half-Life 2: Lost Coast; до 2006 года использовался в: Half-Life 2: Deathmatch, Counter-Strike: Source, Half-Life Deathmatch: Source, Day of Defeat: Source; до 2010 года в Half-Life 2; до 2014 года — в Half-Life: Source.
Source Engine 2006 (Source Engine 7: Base Source Engine 2) с комплектом разработчика: Source SDK Base 2006 — третья версия движка, на которой были выпущены несколько игр. Также на нём до 2010 года базировался ряд многопользовательских игр Valve. Он был обновлен и поддерживает обновленную лицевую анимацию, многоядерный рендеринг и обновленный HDR. Для этой версии движка было выпущено большое количество модификаций, кроме того, выпущенные для более ранних версий моды совместимы и с этой версией, которые не работоспособны на более поздних версиях, поэтому авторами модов она все еще используется. Использована в Half-Life Deathmatch: Source, SiN Episodes: Emergence, Dark Messiah of Might and Magic; до 2009 года использовалась в Day of Defeat: Source; до 2010 года в Half-Life 2: Episode One, Half-Life 2: Deathmatch, Counter-Strike: Source, Garry’s Mod.
Source Engine 2007 (Source Engine 14); с комплектом разработчика: Source SDK Base 2007 — четвёртая версия движка, сильно доработана и обновлена, использовалась впервые в играх Valve сборника The Orange Box. Обновлен шейдерный рендеринг, значительно доработано динамическое освещение и затенение, также появилась система мягких частиц и была добавлена кинематографическая физика, возможность, которая существенно расширила применение физического движка. Движок содержит значительные изменения по сравнению с Source Engine 7, поэтому игровые модификации, выпущенные для более ранних версий, не совместимы с данной и более поздними версиями. Используется в Black Mesa; до 2010 года в Half-Life 2: Episode Two, Portal, Team Fortress 2, Day of Defeat: Source.
Source Engine 2008 (Source Engine 14: Base Source 3) — очередная версия движка с улучшенной кинематографической физикой и некоторыми визуальными эффектами (например, глубиной резкости); применена в Left 4 Dead.
Source Engine 2009 (Source Engine 15) — шестая, сильно доработанная версия движка. Обновлены все функции, значительно доработана система частиц, лицевая анимация, масштабирование и возможность обновлений. Выпущена с игрой Left 4 Dead 2, позднее до этой версии были обновлены более ранние игры Valve. Используют: Left 4 Dead 2, Zeno Clash, Postal III, с сентября 2010 года на данную серсию перешли игры: Counter-Strike: Source, Half-Life 2, Half-Life 2: Deathmatch, Half-Life 2: Episode One, Half-Life 2: Episode Two, Portal, Team Fortress 2.
Source Engine 2010 (Source Engine 17) — седьмая версия движка. Используется в: Day of Defeat: Source, Bloody Good Time.
day of defeat source screenshot 25d74092
Source Engine 2011 — используется в Portal 2, Dota 2, Counter-Strike: Global Offensive, The Stanley Parable.
Source Engine Multiplayer (Source Engine 19) — вариант движка, адаптированный для нужд многопользовательских игр; до 2010 года использовали: Counter-Strike: Source, Team Fortress 2, Day of Defeat:Source, Half-Life 2: Deathmatch, Garry’s Mod.
Source Engine Multiplayer (Source Engine 21) — до 2012 года использовали: Counter-Strike: Source, Team Fortress 2, Day of Defeat: Source, Half-Life 2: Deathmatch, Garry’s Mod.
Source Engine Multiplayer (Source Engine 23) — улучшена работа с возможностью Big Picture Mode в Steam; до 2013 года использовалась в: Counter-Strike: Source, Team Fortress 2, Day of Defeat: Source, Half-Life 2: Deathmatch, Garry’s Mod.
steam big picture 001
Source 2 Engine |
Source 2 001
Компания Valve официально анонсировала Source 2 на конференции разработчиков игр GDC 2015 в Сан-Франциско 3 марта. По словам Valve, Source 2 будет «доступен бесплатно для всех разработчиков контента». Аналогичное заявление на днях сделала компания Epic Games, чей движок Unreal Engine 4 больше не требует ежемесячной подписки для его использования.
«В случае с Source 2 мы хотим увеличить продуктивность труда творческих людей, — сообщил ведущий программист Valve Джей Стелли (Jay Stelly) в пресс-релизе. — С учётом того, как всё более важен становится создаваемый пользователями контент, Source 2 предназначен не только для профессиональных разработчиков. Он позволяет самим игрокам участвовать в создании и разработке их любимых проектов».
Модель распространения от Valve по сравнению с конкурентами выглядит намного интереснее, движок бесплатен для всех, но если выхотите сделать игру на Source 2 будте добры продавать ее через нашу площадку Steam. Source 2 мощный инструмент способный удовлетворить потребности любого разработчика, подробные спецификации движка пока не объявлены, как и дата анонса, но упоминается версии с поддержкой API Vulkan — новая разработка компании Khronos Group, которая позволит создателям игр выжимать максимум из самого современного компьютерного «железа». Пока не заявлено ни одного проекта на Source 2, но в сети гуляет видео в котором на закрытой презентации разработчикам была показана игра Dota 2, запущенная с использованием Source 2. Сейчас у каждого пользователя с аккаунтом Steam есть возможность запустить Dota 2 на Source engine 2.
Ранее так же был опубликован ролик с демонстрацией работоспособности движка и его совместимость с технологией виртуальной реальности, в котором видна лаборатория Aperture Science из дилогии игр Portal.
Valve приложили огромные усилия для того, что бы не быть похожими на всех, в итоге получили уникальную технологию опережавшую свое время. Не смотря на довольно продолжительный срок существования Source engine игры на выглядят довольно не плохо и не стесняли разработчиков в реализации своих идей. Все благодаря постоянным обновлениям не только игр, но и самого движка о чем говорят множество Build версий Source. Игры созданые на Source не только легендарные серии, о которых сышал каждый геймер Half Life, Portal, Left 4 dead, но и игры, которые превратились в киберспортивные дисциплины Counter Strike: Global offensive, Dota 2. На данный момент Valve являются организаторами чемпионата с наибольшим призовым фондом (13 000 000$) и он досих пор растет. Сейчас с анонсом Source 2 повис в воздухе вопрос будет ли это прорыв и новая эра для игр или очередная технология, коих на данный момент довольно много. Как минимум монетизация движка очень впечатляет, а консоль Steam Machines, контролера, Steam Link, Steam Lighthouse (устройство для шлема виртуальной реальности) говорит о намерении Valve проникнуть во все сферы связаные с компьютерными играми. Что ж нам остается только ждать, когда мы сможем насладиться результатами трудов Valve и в полной мере ощутить на себе некст ген индустрии компьютерных развлечений.
Особенности Source Engine
Contents
Система Рендеринга
Особенностью Source является быстрая, надежная и гибкая технология рендеринга игрового мира. Высокопроизводительный, основаный на шейдерах, рендеринг доступный игровым разработчикам, помогает быстро создавать даже самые комплексные сцены быстро, и эффективно. Технология рендеринга использует продвинутые процессорные технологии, такие как многоядерный рендеринг, технологию параллельного вычисления (SIMD), также как последние графические процессоры интегрированы с DirectX, чтобы передать вам мир в ярких деталях.
Динамическое освещение и тени
Эффекты
Материалы
Моделирование и анимация
Продвинутые сетки персонажей
Создавайте правдоподобных персонажей с точными человеческими характеристиками:
Продвинутые инструменты анимации
Environments
Valve Hammer Editor, the Source map creation tool, is an intuitive design environment for constructing level architecture (geometry, texturing, lighting); placing and scripting models, entities, and NPCs; and compiling and running game levels. Included is the VMPI tool, which greatly reduces map build time by distributing compilation across multiple PCs.
Physics
Source’s highly scalable, network-enabled physics system is both processor and bandwidth efficient. Construct responsive, transformable worlds where AI characters interact with physically simulated objects, and sound and graphics follow from physics. Source’s physics features can be controlled by level design.
Game Mechanics
Innovative and seamless interaction between player and non-player characters is a hallmark of Source-powered games. A sophisticated AI system allows NPCs to follow players, join in the fight, or engage the player in epic non-scripted battles. AI characters can run, fly, jump, crouch, climb stairs, and burrow underground.
Programming
Authored entirely in C++, the Source engine is architected with extensibility, flexibility, and performance in mind. Licensees of Source technology have access to all of the source code that Valve uses to build the Source engine as well as our award-winning games. This allows your development staff to spend its time realizing your game design rather than starting from the scratch.
Audio
Source includes a powerful suite of digital audio technologies to create vibrant, dynamic soundscapes within the game world. Seamlessly blend sound effects, dialogue, and music with visual elements for an intensely immersive and realistic playing experience.
Networking
Source’s multiplayer network code is time and gamer tested by millions of players around the world, with an average of more than 9 billion multiplayer minutes played per month.
Console Support
Source offers an ideal development environment for next-gen console platforms, including the Xbox 360™.
Source SDK
Source SDK доступен бесплатно через Steam при покупке игры на базе Source, такой как Half-Life 2 или Team Fortress 2. Узнать больше о создании модов на основе Source можно здесь.
Source
Дебютом Source можно считать 16 ноября 2004 года — дату выхода первых игр на его основе: Half-Life 2, Counter-Strike: Source и Vampire: The Masquerade –Bloodlines.
Содержание
Поддерживаемые платформы [ ]
Half-Life 2: Lost Coast — демонстрация движка Source.
Изначально Source был доступен на следующих платформах: Windows, Xbox, Xbox360, PlayStation 3. С 2010 года доступен на Mac.
В апреле 2012 года на интернет-ресурсе Phoronix была опубликована информация о подготовке выпуска Steam и платформы Source под GNU/Linux.
В декабре 2012 года Source был официально портирован под GNU/Linux, и первой игрой на нём, доступной для данной платформы, стала Team Fortress 2; ранее как Steam, так и Source были доступны в закрытом бета-тестировании.
История версий [ ]
Определённо версию движка можно назвать только у игр, выходивших до 2007 года включительно. Так как например в Source SDK при выборе игры выбирается и движок, где чётко написана версия, так же в консоли можно посмотреть версию протокола.
Рабочая версия [ ]
В начальных стадиях разработки движок Source Engine визуально выглядел как GoldSource, который использовался в первых проектах Valve Software. Игровое меню в стиле Half-Life и первых версий Steam, текстуры, не накладывавшиеся полностью, и в некоторых проявлениях кровь выглядела также, как и в Half-Life. Игры на этой версии официально не выпускались, но она использовалась в украденной версии Half-Life 2. Игра была не доработана и имела очень мало возможностей, например, на некоторых картах текстуры выглядели слишком ярко или же очень тускло. Игра Vampire: The Masquerade – Bloodlines разрабатывалась по технологии ранней версии Source.
Технологические возможности [ ]
Демонстрация системы освещения в Half-Life 2.
Source обладает значительными преимуществами по нескольким ключевым аспектам разработки игр: анимация персонажей, продвинутый искусственный интеллект, реалистичная физика и шейдерный рендеринг.
Система анимации Source позволяет создавать выразительных персонажей с бесконечной гаммой эмоций на лице, что позволяет им донести до вас сообщение, не сказав ни слова. В дополнение к этому персонажи владеют одной из наиболее продвинутых систем искусственного интеллекта, что делает их крайне умелыми союзниками и врагами.
При помощи движка с легкостью можно создавать красивые и реалистичные миры, реагирующие на ваше присутствие. Разработчики могут отойти от создания скриптовых сценок (бывших стандартом для игр прошлого поколения), и создавать игры абсолютно новых стилей.
Source содержит в себе сложный сетевой код, обеспечивающий поддержку для 32 игроков по локальной вычислительной сети и Интернет.
Движок Source сделан с расчётом на регулярное обновление, что выражается в его широких возможностях к модификации и улучшению без изменения каких-либо ключевых архитектурных особенностей движка. В комбинации с системой цифрового распространения Steam движок может обновляться сразу после выхода обновления. Например, если Source начнет поддерживать физические карты, то все игры, распространяемые через Steam и использующие собственно Source, начнут их поддерживать. Подобное можно было наблюдать после добавления разработчиками в движок High Dynamic Range Rendering.
Впрочем, тотальная модификация всех Source-игр на практике невозможна, потому что создателям модификаций не доступна система обновлений, а значит, развивать движок могут только сами разработчики.
В Source используются шейдеры Direct3D версии 3.0
Модификации [ ]
Для движка Source было создано огромное количество любительских модификаций, самые качественные из которых доступны для загрузки через Steam через систему Steam Greenlight и снабжены поддержкой Workshop. На данный момент это следующие моды:
Создание игр и модов [ ]
Source SDK (англ. Software Development Kit — «набор разработчика приложений») — набор утилит для создания модификаций на движке Source, бесплатно доступный через Steam всем игрокам, купившим любую Source-игру от Valve. Также выпущена версия Source SDK для SiN Episodes: Emergence, Left 4 Dead (Left 4 Dead Authoring Tools) и Left 4 Dead 2 (Left 4 Dead 2 Authoring Tools) и некоторых других игр.
Также для обеих новых версий движка существуют специальные дополнения —Source SDK Base. По структуре они выглядят как игры и представляют собой уровень-заставку из дополнения Half-Life 2: Lost Coast с эффектами High Dynamic Range Rendering, служащую для тестирования видеокарты. Также они служат базой для тестирования новых модов, причём у модов без качественных изменений становится возможной проверка эффектов High Dynamic Range Rendering на картах, поэтому при создании мода Source SDK базирует его на Source SDK Base. Некоторые авторы модов не изменяют базу мода на какую-нибудь Source-игру по завершении его создания, а оставляют за основу Source SDK Base. Данный подход позволяет владельцам Half-Life 2 на старой версии движка играть в моды на новой версии при отсутствии других Source-игр, но в то же время вынуждает остальных пользователей закачивать дополнительные игровые данные.