Среда, 27.11.2024, 15:36

Приветствую Вас Гость | RSS

Меню
Разделы новостей
Мои статьи [1]
Уроки [9]
Оптимизация [8]
Опрос
АЛЬКОТА БУДЕТ ИГРАТЬ НА НАШИХ СЕРВЕРАХ?
Всего ответов: 215


Главная » Статьи » Уроки

Запись демок
В играх на движке Source действительно можно записывать ход игры в
специальном формате, который затем проигрывается внутренними средствами
движка. Называются такие файлы демо-роликами и предназначены (что
понятно из названия) для демонстрации игровых приемов. В реальности
демо используются чаще для контроля во время соревнований (все игроки
обязаны записывать демо от первого лица), либо для документирования
игры читеров с последующим предъявлением админу.

Для записи демо
необходимо выполнить команду консоли "record" с параметром "имя файла"
(вызов консоли по клавише "ё" - в левом верхнем углу клавиатуры). Имя
файла может быть в принципе любым, но желательно использовать только
латинские буквы и цифры. В противном случае нет гарантии что он потом
прочитается. При запущенной игре (независимо от того зашли вы на
чью-либо сторону или висите в зрителях) нужно вызвать консоль, написать
к примеру "record 12345" , нажать клавишу "Enter" - и запись пошла,
теперь можно вернуться к игре. Все что вы видите на экране отобразится
позже при просмотре ролика. Остановить запись можно командой консоли
"stop". Чтобы просмотреть запись набираем там же "playdemo 12345".
Включится встроенный проигрыватель. Сам файл сохранится в папке дода
как "12345.dem". Не забывайте, что размеры файла определяются длиной
записи (приблизительно мегабайт на минуту), так что для длительных
роликов необходимо обеспечить достаточное количество свободного места
на логическом диске. Имя файла рекомендуется также продумать заранее
(если это имеет значение), поскольку переименованные демки имеют
тенденцию становиться нечитабельными.

Записанные (или
полученные от других) демки можно также просматривать специальным
встроенным просмотрщиком. Чужие демки нужно скопировать предварительно
в папку ДоДа (типа "Диск:\Program Files\Steam\SteamApps\вашe steam
имя\day of defeat source\dod"). Для запуска достаточно запустить игру и
нажать в основном меню Shift + F2, откроется удобный плейер демок, с
клавишами управления. Для начала нажимаем "Load" и находим демо-файл,
по загрузке включится воспроизведение. Демку можно останавливать,
перематывать, просматривать в замедленном темпе, во время
воспроизведения перескакивать к определенному кадру. Кроме того, можно
воспользоваться встроенным редактором, например для выделения из
длинной записи наиболее интересного фрагмента. Правда изменения файла
как такового не происходит, редактирование ограничивается на самом деле
установкой маркеров, где и когда нужно выполнить определенное действие.
Набор действий сохраняется в отдельном файле, в нашем примере
"12345.vdm" и для воздействия должен располагаться в том же каталоге
что и демо.

Есть много причин иметь демку не в формате dem,
который воспроизводится только в HL2, а в одном из распространенных
видео-форматов, как фильм. Например Вы хотите показать свои геройства
друзьям, а они кроме как в "Age Of Empires" ни во что отродясь не
играли (даже если у них есть HL2, это не означает, что у них есть и
DoD, то же касается различных модов игры), или запись производилась на
карте, которая мало у кого есть (тогда придется вместе с демкой и файлы
карты высылать), или (весьма распространенная причина) Вы подозреваете,
что после очередного апдейта и сами не сможете посмотреть свои старые
демки. Движок Source позволяет конвертирование демок в обычный
видео-формат, наподобие mpeg или avi, но к сожалению не напрямую.


Команда консоли "startmovie" вызывает запись происходящего на экране в
виде набора последовательных скриншотов и сопутствующего звукового
файла. Сразу хочу предупредить что тут нужно ОСОБЕННО следить за
наличием свободного места, поскольку все данные сохраняются в
некомпримированном виде. Итак, создаем сервер с какой-нибудь картой (не
имеет значения какой, но лучше той, на которой играется демо),
открываем консоль и вводим команду "playdemo 12345". Смотрим демо один
раз от начала и до конца, это необходимо чтобы прокешировать данные в
памяти, тогда не будет подтормаживаний при записи. Затем (тут необходим
некоторый навык) вводим в консоль ту же команду "playdemo 12345" и
сразу же затем (чем быстрее тем лучше) следующую "startmovie 54321 25".
Число 25 означает здесь частоту смены кадров. Во время записи
изображение будет подергиваться, но это нормально - все ресурсы уходят
на работу с жестким диском. Для остановки записи вводим "endmovie".


Работа Source на этом заканчивается, далее начинается работа с
программами видеообработки. Основная задача - собрать кучу bmp-картинок
в фильм - выполняется например с помощью бесплатного VirtualDub или его
дериватами NanDub и VirtualDubMod. В нем же можно приложить к фильму
записанную звуковую дорожку (лучше ее предварительно отконвертировать в
mp3 утилитой Lame). Вопросы кодирования видео здесь не рассматриваются,
можно только посоветовать перед воспроизведением демо установить
пониженное разрешение экрана (например 640х480), тогда и объемы будут
поменьше и кодирование побыстрее.

Список полезных комманд:
record [DEMO NAME]- записывать демо
stop - прекратить запись
playdemo [DEMO NAME]- смотреть демку (мотать только нельзя)
cl_drawhud (1/0) - востановить/убрать hud
r_drawviewmodel 0 -убирает оружие на экране
mat_filmgrain (1/0) -добавить/убрать эффект шума
mat_hsv (1/0) -чёрно-белое/цветное изображение
cl_demoviewoverride [0|1] - позволяет смотреть демки, записанные от 1го лица с видом от 3го лица
voice_modenable (1/0) включить/выключить панельку голосового чата

Источник: http://ironrats.clan.su/faq/#10
Категория: Уроки | Добавил: Фантомыч (13.05.2008)
Просмотров: 1919 | Комментарии: 1
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]


Вход
Поиск
Друзья
Статистика

Онлайн всего: 3
Гостей: 3
Пользователей: 0

1939-1945