GoldSrc
GoldSrc — это проприетарный игровой движок, разработанный компанией Valve. Он был создан на основе сильно модифицированного кода движка id Tech 2 (Quake engine) от id Software и впервые использован в компьютерной игре Half-Life (1998). Движок стал основой для ряда культовых игр конца 1990-х — начала 2000-х годов и оказал значительное влияние на развитие жанра шутеров от первого лица.
История
Происхождение от Quake engine
В середине 1990-х годов молодая компания Valve, основанная бывшими сотрудниками Microsoft Гейбом Ньюэллом и Майком Харрингтоном, приобрела лицензию на использование движка id Tech 2, разработанного Джоном Кармаком и его командой из id Software. Изначально предполагалось, что игра Half-Life будет создана на стандартном движке Quake, однако в процессе разработки код был подвергнут глубокой переработке.
Разработка и модификация
Программисты Valve, включая Бена Морриса и Алана Йорка, значительно расширили функционал исходного движка. Были добавлены:
- Система скелетной анимации для персонажей (вместо вертексной анимации в Quake).
- Улучшенный рендеринг с поддержкой 16-битного цвета и альфа-канала.
- Реалистичная система частиц (дым, искры, вода).
- Поддержка объемных источников света (динамическое освещение).
- Звуковой движок с поддержкой 3D-позиционирования (использовалась библиотека A3D, а затем EAX).
- Сетевой код, оптимизированный для многопользовательской игры.
Название
Название «GoldSrc» возникло как внутреннее кодовое обозначение. По одной из версий, оно отсылает к «золотому» (gold) статусу завершения разработки Half-Life, когда код был «заморожен» для отправки в тираж. Другая версия связывает название с тем, что движок был «золотым стандартом» для Valve на тот момент. Внутри компании движок также называли «Half-Life engine».
Эволюция и версии
После выхода Half-Life в 1998 году движок продолжал дорабатываться. Основные версии:
- GoldSrc 1.0 — базовая версия Half-Life.
- GoldSrc 1.1 — версия, использованная в Half-Life: Opposing Force (1999) и Team Fortress Classic (1999). Добавлены новые типы текстур, улучшена поддержка мультиплеера.
- GoldSrc 1.2 — версия, на которой вышли Half-Life: Blue Shift (2001) и Half-Life: Decay (2001). Внесены исправления ошибок, улучшена совместимость.
- GoldSrc 2.0 — версия, использованная в Counter-Strike 1.6 (2003) и Condition Zero (2004). Включала оптимизации для сетевой игры, улучшенную поддержку голосового чата и новые возможности для моддинга.
- GoldSrc 2.1 — последняя значительная версия, на которой вышли Day of Defeat: Source (2003, хотя это уже Source) и некоторые моды. В 2004 году Valve объявила о прекращении поддержки GoldSrc в пользу нового движка Source.
Архитектура и возможности
Основные компоненты
GoldSrc состоит из нескольких ключевых модулей:
- Ядро (Engine) — базовый код, отвечающий за рендеринг, физику, звук, ввод-вывод.
- Клиент (Client) — часть, работающая на компьютере игрока.
- Сервер (Server) — часть, отвечающая за игровую логику, синхронизацию и обработку действий игроков.
- Игровая логика (Game DLL) — динамически подключаемая библиотека, содержащая правила конкретной игры (например, Half-Life или Counter-Strike). Это позволяло создавать моды без изменения исходного кода движка.
Рендеринг
Движок использует программный рендеринг (позже — аппаратное ускорение через Direct3D и OpenGL). Поддерживаются:
- Текстуры разрешением до 256x256 пикселей.
- 8-битный палитровый режим (256 цветов) и 16-битный цвет.
- Динамическое освещение от источников (точечные, прожекторные).
- Туман (Fog) и эффекты частиц.
- Спрайты (2D-изображения, всегда повёрнутые к игроку).
Физика
Физическая модель GoldSrc была относительно простой по современным меркам. Она включала:
- Детекцию коллизий на основе ограничивающих параллелепипедов (AABB) и выпуклых многогранников.
- Симуляцию гравитации и трения.
- Реализацию «физики тряпичных кукол» (Ragdoll) — впервые в Half-Life 2, но на GoldSrc она была реализована в модах, например, в Natural Selection.
Сетевой код
GoldSrc использует клиент-серверную архитектуру. Для многопользовательской игры применяется протокол UDP. Ключевые особенности:
- Авторитарный сервер — сервер является единственным источником правды о состоянии игры.
- Лаг-компенсация — алгоритм, позволяющий игрокам стрелять по противникам, которые видны на их экране, даже если на сервере они уже сместились.
- Предсказание движения — клиент локально предсказывает движение игрока, чтобы уменьшить задержку отклика.
Игры на движке GoldSrc
GoldSrc стал основой для множества игр и модов, многие из которых стали культовыми:
Официальные игры Valve
- Half-Life (1998) — первая игра на движке, определившая стандарты сюжетных шутеров.
- Half-Life: Opposing Force (1999) — дополнение, рассказывающее о событиях с точки зрения морского пехотинца.
- Team Fortress Classic (1999) — многопользовательский командный шутер, порт мода Team Fortress для Quake.
- Half-Life: Blue Shift (2001) — дополнение про охранника Барни Калхауна.
- Half-Life: Decay (2001) — кооперативное дополнение для PlayStation 2.
- Counter-Strike (2000) — первоначально мод, затем официальная игра, ставшая одной из самых популярных в жанре.
- Counter-Strike: Condition Zero (2004) — версия с одиночной кампанией и улучшенными ботами.
- Day of Defeat (2003) — многопользовательский шутер о Второй мировой войне.
- Deathmatch Classic (2001) — дань уважения Deathmatch из Quake.
- Ricochet (2000) — аркадная игра с фрисби.
Известные моды
- Counter-Strike (1999) — создан Minh Le и Jess Cliffe.
- Day of Defeat (2001) — создан сообществом.
- Natural Selection (2002) — гибрид шутера и стратегии в реальном времени.
- The Specialists (2002) — мод, вдохновлённый фильмами в стиле «Гонконгского боевика».
- Sven Co-op (1999) — кооперативный мод для прохождения одиночных кампаний.
- BrainBread (2003) — мод про зомби.
Наследие и влияние
GoldSrc стал важной вехой в истории игровой индустрии. Его ключевое значение заключается в:
- Доступности для моддинга — открытая архитектура с возможностью замены игровой логики через DLL привела к появлению тысяч модов, многие из которых стали самостоятельными играми (Counter-Strike, Day of Defeat, Team Fortress Classic).
- Стандартизации сетевой игры — GoldSrc задал стандарты для многопользовательских шутеров, включая систему голосового чата, лаг-компенсацию и авторитарный сервер.
- Создании экосистемы — Valve использовала GoldSrc для запуска платформы цифровой дистрибуции Steam в 2003 году, первоначально требовавшей установки Counter-Strike 1.6.
- Технической основе для Source — многие идеи и архитектурные решения GoldSrc были перенесены в движок Source, который стал основой для Half-Life 2 и последующих игр Valve.
Хотя GoldSrc технически устарел к середине 2000-х годов, его влияние на жанр шутеров от первого лица и на развитие игрового моддинга остаётся значительным. В 2020-х годах движок всё ещё используется сообществом для создания модов и ретро-игр, а также поддерживается в Steam через обновления совместимости.
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →