Source
Source — это движок для разработки 3D игр, созданный компанией Valve , является преемником GoldSource . Source используется как самой Valve, так и сторонними компаниями. Так же, как и GoldSource, движок может использоваться для создания различных модификаций от сообщества людей по всему миру.
![](/w/images/thumb/5/57/Screenshot-CSS-Source_engine_comparison.jpg/300px-Screenshot-CSS-Source_engine_comparison.jpg)
Скриншот из игры Counter-Strike: Source, использующей движок Source.
![](/w/images/thumb/f/f9/Screenshot-CSGO-Source_engine_comparison.jpg/300px-Screenshot-CSGO-Source_engine_comparison.jpg)
Скриншот из игры Counter-Strike: Global Offensive, использующей обновлённую ветку движка Source.
Contents
Рендерер
- Версии 3.0 (и ниже) шейдеры
- Bump mapping и Normal mapping для моделей и карты
- Авторские шейдеры на языке HLSL
- Отражения с помощью cubemap
- Шейдинг моделей с параметром Phong
- Динамическое освещение, вершинное освещение и light maps , множество типов света, включая мерцание, пульсацию и т.д.
- HDR и LDR освещение
- Вода с преломлением света, отражения мира в реальном времени с применением формул Френеля
- Вода также поддерживает карты потоков (во всех играх начиная с
)
- Вода также поддерживает карты потоков (во всех играх начиная с
- Продвинутая система частиц , испускающая как спрайты , так и модели
- Проецируемые на текстуру тени, учитывающие большое количество персонажей в сцене
- Энтити для блокирования видимости
- Поддержка открытых/закрытых пространств
- Деформируемые поверхности
- 3D Скайбоксы создающие более разнообразный горизонт и добавляющие эффект параллакса на удалённых объектах
- Динамически обрабатываемая органика (трава, деревья и т. д.)
- Subdivision поверхности, diffuse и specular бамп карты
- Диффузное освещение в реальном времени
- Каскадные карты теней в реальном времени из скайбокса (во всех играх начиная с
)
- Некоторый перечень имеющихся эффектов, но не ограничивающиеся ими: частицы, лучи, объёмный дым, искры, кровь, эффекты окружающей среды вроде тумана и дождя
- Масштабируемость
- Поддержка DX8-DX9 (DX6-DX9 с некоторыми изменениями и исправленными функциями шейдеров)
Система материалов
- Взамен традиционных текстур, Source работает с наборами материалов, которые определяют, из чего сделан объект, какая для него нужна текстура . Также определяется, как объект разламывается при разбивании, как он будет звучать при разбивании или волочении по другой поверхности, и какая у него масса и плавучесть. Эта система намного более гибкая по сравнению с любой системой, основанной только на текстурах
- Материалы могут взаимодействовать с объектами или NPC . Например, такие материалы как грязь или снег заставляют машины скользить, терять управление
Сетевой код в Source
- Проверен временем и игроками со всего мира
- Поддержка игры по локальной сети и через сеть Интернет
- Анализ прогноза для интерполяции нарушений работы сети
- Оптимизация для соединений 56кб/с с их большими потерями пакетов и высокой задержкой
Продвинутые персонажи
- Детализованные и правдоподобные персонажи
- Реалистичные глаза
- Фокусируются на игроке/объекте, а не просто параллельно направлены (в никуда)
- Правильное строение глаза, для реалистичного отражения
- Симуляция мускулатуры, обеспечивающая выдающиеся эмоции, речь и язык тела
- Речь, независимая от языка , персонажи могут естественно говорить на многих языках
- Скелетная система анимации
- Многоуровневая система анимации позволяет конструировать сложные анимации из множества частей
Физика
- Мир с более реалистичным взаимодействием
- Звуки и графические эффекты взаимосвязаны с физикой (событиями)
- Персонажи под управлением ИИ адекватно взаимодействуют с физически смоделированными объектами
- Верёвки/кабели, механизмы, расчёт сопротивляемости материалов, моделирование физики тряпичной куклы
- Может задаваться уровнем в зависимости от его конфигурации
- Движения анимируются костями
- Настраиваемые пользователем физические процессы
- Транспорт
- Занос и скольжение колёс
- Реалистичная подвеска с пружинами на каждом колесе
- Реалистичный уклон во время разгона/торможения и поворотов
- Индивидуально настраиваемые параметры - мощность(л.с), передача, максимальная скорость, скорость перемещения, материал шин, сцепление шин с поверхностью, упругость/гашение (демпфирование) вибрация пружины и т. д.
- Одновременно несколько игроков в транспорте в сетевом режиме
- Поддержка воздушной подушки для лёгкой симуляции
Продвинутый ИИ
- Система ввода/вывода позволяет контролировать ИИ в редакторе уровней Hammer
- Усложнённая навигация: персонажи, умеющие бегать, летать, прыгать, приседать, карабкаться по ступенькам и лестницам и зарываться под землю
- ИИ реагирует на окружающую среду, используя зрение, слух, обоняние
- Взаимодействие ИИ определяет статус друг/враг других сущностей
- В бою ИИ, использующий Battle AI, применяет отряды для группового реагирования - когда действовать заранее, отступать, вести огонь под прикрытием и т. д.
Звуковая система
- 7.1, 5.1 системы объёмного звука, поддержка системы из 4-ёх колонок
- Высококачественный пространственный 3D звук
- Пользовательская обработка плагинами DSP
- Автоматическая DSP обработка, основанная на окружающей геометрии
- ADPCM декомпрессия
- 16-bit 44KHz, стереозвук со всеми функциями
- MP3 декомпрессия (требуется лицензия Miles)
- Поддержка потокового аудио на любой волне
- Склейка wav-файлов в реальном времени
- Готовые эффекты Допплера для кодированных звуков
- Готовые эффекты, отражающие дистанцию для кодированных звуков
- Система комментариев
Пользовательский интерфейс
- Браузер серверов - показывает все активные игровые сервера и позволяет игроку выбрать, на каком из них играть. Игроки могут фильтровать и сортировать списки серверов для ускорения отображения и выбора сервера.
- Friends instant messenger - (На стадии разработки) позволяет игрокам общаться с одним или несколькими друзьями в и вне игры, а также вступать приглашать друзей в игру. Не стоит больше беспокоиться, попадёте ли вы на один сервер, вы легко можете воспользоваться данной функцией. Кнопка Друзья была удалена из игрового меню и перешла в Steam Community в игре ⇧ Shift + Tab ⇆.
- Category:VGUI - собственный графический пользовательский интерфейс компании Valve, имитирующий большинство элементов управления Windows, но отображаемый средствами движка Source для внутри- и внеигрового отображения UI. Некоторые особенности:
Программирование
- Весь код написан на C/C++ с использованием Visual Studio .NET 2003. Лёгкое и быстрое создание новых сущностей из существующих базовых.
- Встроенная система мониторинга производительности
- Система измерения производительности графики, встроенная в движок
- Модульный дизайн кода (через DLL библиотеки) позволяет заменять компоненты кода для лёгкой модернизации или замены
- DX9 шейдеры записаны на языке HLSL .
- Система VScript позволяет использовать на картах внешние языки программирования, такие как Squirrel и Lua , для создания более сложных систем (во всех играх начиная с
)
Инструменты
- Faceposer
- Инструмент моделирования мимики для создания речи и эмоций
- Valve Hammer Editor
- WYSIWYG Редактор уровней. Работает по системе "Что видишь, то и получишь" (What You See Is What You Get)
- Создание брашей для геометрии мира
- Редактор ландшафта
- Расположение детализированных моделей для уровней (en) и ИИ NPC
- Задание навигационных точек/маршрутов для NPC
- Расположение триггеров , обрезка брашей , логики и т.д.
- Возможность дизайнеру карт управлять вводами/выводами сущностей для контроля ИИ
- Model Viewer
- Studiomdl
- Vbsp , Vrad , Vvis , Vmpi
- Инструменты для компилирования карт (bsp , освещения и видимости)
- VMPI - инструмент для компиляции, позволяющий распределять создание уровней через множество компьютеров, значительно уменьшая время расчёта
- Экспортёры
- XSI , Autodesk 3Ds Max и Autodesk Maya плагины для экспорта моделей в формат "smd "
Игры на Source
Valve
Игры созданные Valve:
Counter-Strike: Source
Half-Life 2
Half-Life 2: Deathmatch
Half-Life 2: Episode One
Half-Life 2: Episode Two
Half-Life 2: Lost Coast
Half-Life
Half-Life Deathmatch: Source
Portal
Team Fortress 2
Day of Defeat: Source
Left 4 Dead
Left 4 Dead 2
Alien Swarm
Portal 2
Counter-Strike: Global Offensive
Полный список игр можно найти здесь
Сторонние
Игры и моды, сделанные сторонними компаниями и командами модмейкеров:
Insurgency
Black Mesa
INFRA
Day of Infamy
The Stanley Parable
The Ship: Murder Party
- Blade Symphony
Contagion
Dino D-Day
Zeno Clash
Dark Messiah of Might and Magic
The Beginner's Guide
Nuclear Dawn
- Double Action
- Consortium
Revelations 2012
- Divinia Chronicles
SiN
- Vampire: The Masquerade
Lambda Wars
- Bloody Good Time
- Tactical Intervention
Dear Esther
- Vindictus
Zombie Panic! Source
No More Room in Hell
E.Y.E: Divine Cybermancy
- Apex Legends
- Infestus
- G-String
- Postal III
Jabroni Brawl: Episode 3