Гордон Фримен

Half-Life Inside: всё о вселенной Half-Life

Движок Source

Австралийский студент Торбен Шу занимается прекрасным делом: исследует способы взаимодействия систем отслеживания ключевых точек лица с традиционными алгоритмами компьютерных игр. Если вы смогли понять предыдущее предложение, мы вас поздравляем: ваш IQ значительно превышает среднее значение по стране.

Для нормальных людей попытаемся сформулировать проще… а впрочем, одно видео стоит тысячи слов. Оцените как с помощью обычной веб-камеры, программы FaceAPI и собственноручно написанного коннектора Торбен управляет движениями лица доктора Брина:

https://youtu.be/Phcdp7AjhBg
И общие возможности системы, включая интуитивное управление персонажем движениями головы:

https://youtu.be/qWkpdtFZoBE
Для желающих повторить этот подвиг Торбен выложил на своем сайте краткую инструкцию и архив с необходимым программным обеспечением, являющимся частью его дипломной работы.
Вышло обновление Source 2007 Engine, исправляющее следующие ошибки:
  • Исправлен эксплойт, который давал файлам, загружаемым на сервер, сохраняться в произвольных местах файловой системы;
  • Исправлено падение сервера, проявлявшееся при отключённом на нём HLTV и получении клиентского HLTV пакета;
  • Исправлено падение сервера, проявлявшееся при подделке клиентского сообщения об обрыве соединения;
  • Исправлено падение сервера, вызывавшееся посылкой искажённых внутриканальных данных.
Выделенный сервер Linux
  • Улучшена логика подключений, чтобы помочь серверам, которые автоматически не переподключаются к Steam.
Движок
  • Исправлены случаи, когда были видны сообщения об ошибках при параметре запуска «-nocrashdialog».
Игра
  • Теперь авторы карт могут использовать свои собственные частицы с помощью файлов _particles.txt в папке maps;
  • Исправлена ошибка миникритов, которая вызывала снижение ущерба оружия на близкой дистанции;
  • Исправлена ошибка, из-за которой Невидимый кинжал не заряжался с правильной скоростью;
  • Исправлен эксплойт setinfo, который позволял использовать запрещённые консольные команды при подключении к серверу;
  • Исправлена ошибка, при которой режим матчей прерывался, если mp_timelimit заканчивался до конца двух раундов на время;
  • Исправлен эксплойт «jointeam unassigned»;
  • Исправлена ошибка, которая позволяла возрождаться во время общения перед сменой уровня;
  • Исправлена ошибка, при которой консольная переменная «sensitivity» могла вызвать падение сервера;
  • Исправлены некоторые эксплойты, основанные на смене mat_dxlevel во время игры;
  • Обновлены эффекты воды для улучшения производительности.
Еще одна новость — если вы состоите в официальной группе Team Fortress 2, то можете сменить свою аватару профиля Steam Community на одну из этих:

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

Именно такая ситуация произошла с новой бета версией драйверов для видеокарт nVidia (185.66). Они позволяют включить эффект Ambient occlusion для целого ряда игр, в том числе в играх на движке Source: Half-Life 2 и эпизоды, Team Fortress 2, Left 4 Dead.

Но что вообще такое Ambient Occlusion? Более детальную информацию об этой технологии можно найти, например, в Википедии. Если описать кратко — эффект затенения, добавляющий в игровой мир едва заметные тени. Изображение, получаемое в результате, отображается не совсем корректно, но в целом выглядит реалистичнее. Динамический свет, из-за большой ресурсоёмкости при расчётах в реальном времени, не может также точно освещать сцену. Но это плюс для игр с динамическим освещением, таких как Call of Duty 4 или Crysis, а для игр Valve, использующих статичные карты света, — вопрос не так однозначен, т.к. благодаря им тени рассчитываются гораздо точнее.

Рассмотрим конкретный пример: в углах освещение всегда хуже, поэтому стыки стен выглядят немного темнее, чем остальные части стены. В играх на движке Source этот момент рассчитывается и отображается корректно, но если добавить ещё и Ambient occlusion, то тень в углах кажется слишком затемнённой:


Но у карт света есть свои ограничения: одно из них — разрешение. Именно поэтому небольшая труба на стене не отбрасывает тень, и именно в этом случае помогает Ambient occlusion, который улучшает качество картинки:


Подводя итоги: использовать Ambient occlusion или нет — зависит от ваших личных предпочтений. Объективного «лучше» или «хуже» здесь не существует. Для сравнения посмотрите несколько пар скриншотов, демонстрирующих одну и туже сцену с выключенным и включённым Ambient Occlusion:


Более того, эта графическая фишка требует дополнительных ресурсов и снижает тем самым число кадров в секунду. Но так как игры на движке Source сравнительно неприхотливы, такой фактор не должен стать большой проблемой для современных видеокарт. И, естественно, речь идёт исключительно о видеокартах компании nVidia, т.к. в драйверах от ATI такого функционала нет.
Вышло небольшое обновление движка Orange Box, исправляющее некоторые ошибки в Half-Life 2: Episode Two, Portal и Source-модах:
  • Движок теперь сообщает о SteamID, использующих формат Steam0 вместо Steam1
  • Исправлены проблемы в Half-Life 2: Episode Two, Portal и Source-модах, использующих текущую версию движка Orange Box
  • Отменено изменение, ограничивающее максимальное значение команды «rate» в 30000
Valve выпустили большое обновление, затрагивающее Team Fortress 2, Day of Defeat: Source, сам движок Source и браузер серверов. Изменения следующие:

Team Fortress 2
  • В панели Медика теперь отображаются проценты заряда UberCharge;
  • В панели Инженера теперь отображаются уровни и прогресс улучшений всех его строений;
  • Добавлена консольная переменная mp_tournament_allow_non_admin_restart server, позволяющая администраторам сервера разрешать всем остальным игрокам использовать команду mp_tournament_restart на сервере. По умолчанию включена;
  • К сущности gamerules добавлено новое свойство, в результате чего авторы карт могут указывать тип HUD для отображения. Также возможен выбор между HUD для CTF или CP, если на карте присутствуют как CTF сущности, так и CP;
  • Добавлена проверка при отображении CTF HUD, чтобы панель не указывала на отключённые зоны захвата, когда игрок несёт флаг. Также это позволяет авторам карт устанавливать более чем одну зону захвата для каждой команды;
  • Изменён механизм AutoTeam, который теперь перекидывает новых игроков за атакующую сторону на картах атаки/защиты, при условии, что количество игроков в командах одинаковое;
  • Исправлена ошибка, из-за которой модель Поджигателя не анимировалась в меню классов;
  • Исправлена ошибка, из-за которой игроки застревали в цикле обратного отсчёта «prepare to respawn…»;
  • Исправлена ошибка с Наташей, из-за которой наносимые повреждения были меньше чем 75%, а также немного увеличена сила снижения скорости с ней;
  • Исправлена ошибка, из-за которой отображались эффекты входа/выхода из телепорта тогда, когда не было соответствующего входа/выхода из телепорта;
  • Исправлена ошибка, из-за которой голос диктора объявлял «the cart is nearing the checkpoint» после того, как раунд уже был выигран;
  • Исправлена ошибка, из-за которой у замаскированных шпионов показывался эффект частиц от лечащего их раздатчика;
  • Исправлено падение сервера при попытке загрузки карты, на которой были контрольные точки с повторяющимися значениями индексов;
  • Исправлены несколько консольных сообщений об ошибках материалов;
  • Исправлена сущность звукового скрипта «Cart.Explode», которая использовала неизвестный звуковой канал;
  • Консольные переменные cl_bobcycle и cl_bobup помечены как читы.
Team Fortress 2 и Day of Defeat: Source
  • Исправлена ошибка, которая приводила к лагам или падению сервера, при использовании клиентами команд reloadresponsesystems, sv_soundemitter_flush, sv_soundemitter_filecheck, sv_findsoundname и sv_soundscape_printdebuginfo.
Движок Source
  • Исправлена клиентская проблема «timeout on mapchange»;
  • Исправлен эксплойт setinfo;
  • Переменная r_aspectratio помечена как чит.
Браузер серверов
  • «Quick List» переименован в «Map List»;
  • Из списка карт убран фильтр минимального пинга;
Valve собираются портировать движок Source на Linux. Именно так утверждают ведущие сайта Phoronix, специализирующегося с 2004 года на всём, что связано с этой платформой.

В прошлом году уже ходили слухи о том, что Valve может заняться портированием Source игр, после того, как они начали искать программиста, одной из обязанностей которого должно стать «портирование Windows игр на Linux платформу». Однако с тех пор разработчики так и не объявили о выходе Linux-клиента любого своего продукта. И тем не менее, Phoronix говорят, что они получили инсайдерскую информацию о том, что Valve сейчас занимаются именно этим процессом. Движок Source изначально проектировался как гибкий и масштабируемый, что должно позволить очень легко добавить поддержку OpenGL, использующийся как на Linux, так и на Mac OS X.

В поддержку своих слов Phoronix приводит тот факт, что Postal III, разрабатываемый Running With Scissors на движке Source, выйдет в том числе и для Linux платформы (также как и для Xbox 360, PlayStation 3, PC и Mac). Никаких больше фактов для утверждения у Phoronix нет, кроме, разве что своей незапятнанной репутации. Единственное что ещё они упоминают как подтверждающий момент — в блоге у одного программиста, Райана Гордона, занимающегося портированием многочисленных игр на Linux (Unreal Tournament 3, Duke Nukem 3D, Shadow Warrior, Quake III Arena, Unreal 200x, Call of Duty, Medal of Honor, America’s Army, Postal ½, Battlefield 1942, Serious Sam и другие) дважды была замечена игрушка Утяжелённого приятеля-куба из Portal.
С небольшой задержкой вышло обновление Team Fortress 2 с новой долгожданной картой — Badlands. Кроме этого, были обновлены карты cp_granary, ctf_well и cp_dusbowl. Полный список изменений таков:

Движок Source:
  • Изменён механизм загрузки карт света в видеокарту при запуске уровня. На некоторых конфигурациях железа это приведёт к значительному снижению времени запуска карты
  • Оптимизирована работа системы частиц на некоторых компьютерах
  • Статистика игрока теперь обновляется сразу после изменения, а не после смерти
  • Улучшено проигрывание закадровых звуков
  • Исправлено падение при нажатии Alt+Tab во время загрузки карты
  • Убрано ненужное распределение временной памяти в scenefilecache
Team Fortress 2:
  • Добавлена карта Badlands
  • Добавлена небольшая задержка (200 мс) перед тем, как снайперская винтовка может произвести критический выстрел после прицеливания
  • Добавлена серверная переменная mp_fadetoblack. Выполняет те же функции, что и в Counter-Strike, используется во время турниров и матчей
  • Добавлен новый звук, слышимый, когда огнемет поджигает цель
  • Осколки от взрывов теперь выглядят немного темнее
  • Исправлена ошибка, при которой бездействующие игроки не присоединялись к наблюдателям при mp_allowspectators 0
  • Карта ctf_well добавлена в стандартные файлы mapcycle.txt и motd.txt
  • Исправлен материал плитки пола
  • Исправлена ошибка, при которой урон некоторых оружий не учитывался статистикой
  • Небольшое исправление viewmodel подрывника, которое раньше вызывало проблемы с производительностью
  • Добавлен запуск .cfg файла, когда игрок выбирает соответствующий класс
  • В HUD добавлен новый таймер, показывающий значение mp_timelimit
  • Теперь, когда владелец уничтожает свои сооружения, это записывается в серверный лог
  • Исправлена ошибка, при которой обрезалась тень пушки
  • Обновлен материал стекла

  • Изменения в Granary:
    • Убрано временное продвижение возрождения в центре (с -3 до 0)
    • Исправлены некоторые проблемы с моделями (ворота первой точки Красных и Синих, а также труба около ворот Синих на второй точке)
    • Исправлены некоторые места, где игрок мог застрять
    • Отрегулирована поверхность, блокирующая игроков на красном контейнере. Раньше игроки, стоящие на ней, выглядели висящими в воздухе.
    Изменения в Ctf_Well:
    • Поезда теперь работают, как и в cp_well
    • Убраны остатки от контрольной точки на базе Красных, засоряющие консоль
    • Добавлен обучающий ролик
    Изменения в Dustbowl:
    • Добавлена новая точка выхода из ворот атакующих на втором этапе (слева от базы), позволяя им двигаться по левой стороне без угрозы попасть под огонь пушки
    • Убрана дыра на третьем этапе, позволявшая игрокам ходить по небу
    • Убрана дыра за домом с первой контрольной точкой на первом этапе
    • Убрана дыра над нижними воротами первого этапа
    • Исправлен большой выступ на крыше дома с первой точкой на первом этапе
    • Исправлен выступ, позволявший игрокам смотреть за пределы карты (скала около второй точки первого этапа)
    • Исправлены несколько мест, где ракеты или липкие бомбы могли проходить через модели
    • Заблокированы высокие окна на третьем этапе, теперь за ними нельзя строить пушки
SourceTV:
  • SourceTV теперь использует скрытый слот на сервере
  • Исправлена ошибка, при которой пламя огнемета не было видно в SourceTV
Вышло большое обновление, затрагивающее Team Fortress 2, движок Source и SourceTV. Список изменений следующий:

Team Fortress 2
  • Режим мгновенной смерти теперь является серверной настройкой (консольной переменной) и по умолчанию выключен
  • Заминированные строения теперь получают меньше повреждений от шпионов, заминировавших их
  • Лечебная пушка медика, в течении времени ожидания перед началом раунда, теперь заряжается быстрее, исключая необходимость пациенту наносить самому себе повреждения
  • Исправлена rcon/консольная команда, которая могла вызвать падение сервера
  • Игроки больше не могут играть за «гражданский» класс
  • Исправлена ошибка, при которой игроки могли прятать свои имена в таблице рекордов
  • Исправлен эксплойт, из-за которого убер-заряд не разряжался при переключении оружия
  • Исправлена ошибка, при которой в некоторых случаях не накладывались деколи
  • Исправлена ошибка, при которой следы критических выстрелов показывались только стреляющему
  • Исправлена ошибка, при которой в режиме спектатора, с видом из глаз, неправильно отображалось значение невидимости шпиона
  • Исправлена ошибка, при которой не отображались частицы телепорта
  • Исправлено дёрганье огнемёта при выстреле прямо в сооружение
  • Исправлено редкое падение, которое могло проявляться, когда пациент медика внезапно покидал сервер
  • Исправлена ошибка, при которой след от ракеты спонтанно появлялся на карте
  • Добавлен визуальный эффект набора какого-то достижения, видимое окружающим игрокам
  • Шрифты и цвета иконок достижений изменены для улучшенного восприятия
  • Улучшена точность собираемой статистики количества отыгранного времени на карте
  • Улучшена статистика по сбору данных о ничьих, для более точного понимания, почему они произошли
  • Исправлена ошибка, при которой, иногда, в статистику, не записывались данные о расстоянии повреждения из шприцемёта и пожарного топора
  • Исправлено редкое падение, вызываемое не найденным достижением во время объявления игры
  • Dustbowl
    • Теперь переключение на другую карту по истечении ограничения по времени не происходит до тех пор, пока одна команда полностью не выиграет на карте
    • Теперь команды получают очко за каждый захват контрольной точки, а не за подраунд
    • Подрывник больше не может кидать гранаты в проходы третьего этапа, стоя на последней точке захвата
    • Убраны дырки рядом с воротами, через которые снайперы могли убивать команду, ожидающую время окончания отстройки
    • На третьем этапе исправлены некоторые модели и браши, чтобы не допускать эксплойты с использованием выступов
    • После захвата первой точки, открывается доступ к лестнице, ведущей в верхнюю зону третьего этапа
    • Ограничена зона видимости первой контрольной точки на третьем этапе, чтобы убрать мешающую снайперскую точку
Движок Source
  • Исправлены некоторые проблемы с поддержкой буфера звука в Vista
  • WorldVertexTransition при dxlevel 80 + 81 теперь корректно использует вертексный альфа-канал для смешивания двух текстур
  • Улучшен внешний вид консоли в графической версии выделенного сервера
SourceTV
  • Релейные прокси теперь могут записывать демо-записи с tv_autorecord 1
  • Исправлена ошибка в коде интерполяции, приводящая к дрожанию изображения во время проигрывания демок
  • В логику авто-режиссера добавлены некоторые игровые события TF
Вышло очередное обновление движка Source. Радуются владельцы Vista, те, кто испытывал проблемы с проигрыванием демок или с записью последних из-под ретрансляторов SourceTV. Точный список изменений таков:
  • Исправлена ошибка, при которой неверно воспроизводился многоканальный звук под Windows Vista
  • Отныне промежуточные прокси SourceTV умеют записывать демки при использовании tv_autorecord 1
  • Исправлено дёрганое проигрывание демок

Опрос

Понравилась ли вам механика улучшения оружия в HL: Alyx?

Система Orphus