1. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie. Узнать больше.

Важно Как сделать из демки видео в Counter Strike 1.6

Тема в разделе "Игровые проблемы", создана пользователем LOMVi, 25 янв 2015.

  1. LOMVi

    LOMVi Постоянный пользователь

    Ник в игре:
    LOMVi
    Как сделать из демки видео
    Очень давно хотел написать статью по этой теме, но никак не получалось. Сейчас у меня есть свободное время, в распоряжении неплохой компьютер – так почему бы и нет?

    Все наверняка видели крутые ролики с нарезками крутейших убийств со спецэффектами, и задумывались – а как создать мувик? Сразу огорчу вас предупреждением, что в этой статье я только покажу как из обычной демки сделать видеоролик, без добавления ничего лишнего.

    Итак, допустим, вы только что сделали офигенное убийство, и срочно хотите всем показать вашу крутость. Или вас обвинили в читерстве, забанили, а вы хотите восстановить справедливость, кидаете всем демки, но всем лень их смотреть. Тогда нам остаётся только смонтировать из демки видео. Сначала я расскажу о технологии. Возможно, вы уже слышали как это всё делается в общих чертах, но лично я, когда готовился к написанию статьи, нашёл только неграмотные и нечитаемые советы, к тому же ещё и с неправильно написанными командами. Есть также офигенное видео от MovieNations, но лично мне было неудобно смотреть видео и при попытке повторить снова и снова перематывать его. Собственно, это и было основной мотивацией для написания. Кстати, ссылка на это видео будет внизу – если у вас хватит терпения дойти до конца, это будет вашим бонусом.

    Сразу скажу, что процесс создания из демки видео довольно сложен и долог, и требует терпения. Забудьте всякие Fraps и другие программы для записи видео – мы будет действовать хардкорно, по старинке. Сначала мы запустим демо, найдем нужный момент, потом будем этот момент оцифровать, а точнее – заставим наш бедный компьютер делать скриншоты (фотографии) игры по 30 раз в секунду. Потом мы всё это огромное количество фото объединим, сделаем видео, а потом, если хотите, наложим звук. Звучит довольно просто, не так ли?

    Запись демо
    Первый шаг – заснять демо. Я буду рассматривать случай с обычным киллом от первого лица – этот способ доступен всем. Если вы не в курсе, игра может записывать весь процесс от первого лица в .dem файле. Это не вызывает никакой нагрузки на игру и никак не повлияет на качество картинки. Проблема в том, что воспроизвести этот .dem файл сможет только сама игра. Кстати, есть ещё один вариант – запись HLTV демо, это уже серверное решение, выглядит так: кто-то запускает запись HLTV, клиент подключается к серверу как обычный игрок, и сидит в Spectators и просто всё записывает. Потом любой может скачать этот файл, открыть его, и просмотреть любой момент игры с любого ракурса – очень круто, согласны? Именно так и делаются ролики от третьего лица, но это, как я уже говорил, немного не наша тема. Мы пишем pov-демку, от первого лица (то есть от вас). Для этого просто пишем в консоли

    record demoname
    где demoname – это имя для файла, куда будет записываться демо. Не забывайте, что если такой файл уже есть – он перезапишется. Кстати, на многих серверах стоят специальные плагины, которые заставляют игровые клиенты игроков записывать демо автоматически. Для того чтобы прекратить запись демо, нужно ввести команду

    stop
    Не забывайте, что запись демо автоматически останавливается при смене карты.

    Проигрывание демки
    Удачные моменты записаны, перейдем к следующему пункту – вопроизведение демо-файла. Как мы помним, наша демка лежит в папке /cstrike или /cstrike_russian, и для её воспроизведения есть 2 команды: viewdemo demoname и playdemo demoname. Разница в том, что viewdemo запускает демо с бегунком для редактирования времени, а playdemo – просто запускает демо. Сразу видно, что viewdemo намного удобней, так что пишем в консоли

    viewdemo demoname
    и начинаем смотреть на свою собственную игру своими же глазами. Иногда, особенно если .demo файл большой (играли долго), нужно подождать пока демка прогрузится. Остановить проигрывание демки можно командой

    stopdemo
    или нажатием на кнопку «Stop» в окошке с бегунком.

    Оцифровка демки
    Отлично, теперь перейдем к самому интересному – оцифровке. Как я уже писал выше, мы будем делать по 30 кадров в секунду. Для этого существует команда startmovie moviename FPS, где moviename – это имя для нашего мувика (я думаю, вы уже поняли, откуда пошло слово «мувик», да?), а FPS (frames per second) – это количество кадров в секунду – обычно это либо 25, либо 30. Все кадры будут сохраняться в папку /cstrike или /cstrike_russian – в общем туда же, где лежит демка.

    Lifehack: если в будущем вы будете пользоваться сборкой HLAE, у вас будет возможность указать папку, куда записывать файлы.

    Как вы понимаете, просто воспроизводить нам игру и показывать по 100 кадров в секунду (обычно рекомендуют играть с FPS именно 100, то есть максимальным. это не относится к записи видео), и воспроизводить и ещё попутно делать по 30 кадров в секунду и сохранять их на жесткий диск – это немного разные вещи, так что при записи видео вы наверняка столкнетесь с немного замедленным процессом воспроизведения, который, возможно, будет сопровождаться скрежетом старенького жесткого диска – ничего страшного. Лично у меня на ПК с процессором intel i5 3570k, видеокартой GeForce GTX670 и обычным жестким (не твердотельным) накопителем с 7200 оборотами в минуту игра «замедлилась» где-то в полтора раза, на старом (очень, очень старом) ПК игра замедлялась раз в 10. Думаю, если писать кадры на SSD – игра и вовсе не будет замедляться. Впрочем, это не очень важно.

    Кстати, я говорил, что нужно довольно много места на накопителе? При формате картинок 1920х1020 (а у меня сейчас именно такое разрешение) каждая будет весить по 6 мегабайт, то есть 1 секунда с 30 кадрами будет весть 30*6 = 180 мегабайт. 10 секунд – почти 2 ГБ. Чуть не забыл, кадры будут делаться с тем разрешением, которые выставлено у вас в настройках компьютера, но если в игре у вас стоит другое разрешение – кадры будут просто растягиваться. Так что когда изначально записывал на FullHD мониторе кадры из игры, где стоит разрешение 800×600, вышло, мягко говоря, некрасиво: огромные картинки с растянутым изображением. Не надо так.

    Но вернемся к процессу съемки. Для удобства записи, а также учитывая ценность каждой снятой секунды, рекомендую вам забиндить кнопки с командами для записи и остановки записи видео. Делается это так:

    bind "f1" "startmovie moviename 30"
    bind "f2" "endmovie"
    Таким образом, при нажатии на F1 у вас начнется запись видео, а при нажатии на F2 – закончится. Только не забывайте при каждой записи переделывать название мувика.

    Ну что же, теперь всё готово. Запускаем демо, ждем нужный момент, жмем F1, ждем пока запишется нужное, жмем F2, останавливаем демо. Готово, клиент игры можно даже закрыть, если вы уверены что всё сделали правильно, и не придется переделывать.

    Собираем картинки в видео
    Следующий шаг довольно простой – нам нужно собрать все картинки в одно единое целое. Для этого мы воспользуемся программой pkBmp2Avi. Нужно распаковать архив, запустить pkBmp2Avi.exe, указать путь до папки /cstike или /cstrike_russian, и внизу кликаем на первую по счёту картинку. Внизу вводим нужный FPS (если снимали 30 кадров в секунду – то и собирать видео нужно с таким же FPS), и можно указать путь к .wav файлу – тогда программа склеит видео и к тому же добавит аудио, но учтите, что у вас не будет возможности редактировать исходный ролик. Вы можете либо забить на это и просто вставить крутую вырезку из крутой песни, либо отнестись посерьезней и добавить к видео звуки из игры (об этом написано ниже), либо не добавлять ничего, просто сделать видео, а потом обрабатывать его в профессиональном редакторе вроде Sony Vegas, с наложением музыки и прочего. Жмём на «Create» и выбираем кодек для сжатия – тут можно и поэкспериментировать, лично у меня при использовании кодека Intel быстро компилировалось видео объемом 700 мб, а кодек CinemaPak довольно долго компилировал, но в итоге получилось видео с объемом всего 70 мб – а это уже приемлемо. Уже можно запилить в ютуб:



    Запись со звуком
    Если вы всё же решили сделать видео со звуками стрельбы, вам придётся посидеть подольше. Сначала скачаем программу для записи звука - Audacity. Она бесплатная, никаких проблем с установкой быть не должно. Насколько я понял за 5-10 минут изучения информации, это самая простая программа для захвата аудио.

    Затем убедитесь, что программа пишет звук со звуковой платы, а не с микрофона, если всё же с микрофона – то либо попробуйте поковыряться в настройках программы, либо идем в пуск – панель управления, ищем и выбираем пункт про «звук», переходим на страницу «запись», где должны быть показаны звукозаписывающие устройства. Там жмем правой кнопкой и выбираем «показывать все устройства», и когда появится устройство «mix audio», или «стерео микшер», или что-то вроде такого, жмём на него правой кнопкой и включаем. Опять проверяем в Audicity, откуда пишется звук.

    Самое сложное в программе – начать запись. Проблема в том, что программа не может начать записывать звук по нажатию клавиш из игры, как хотелось бы. Приходится сначала начать записывать звук в программе, потом переключаться в CS, там начинать запись мувика, потом опять выходить и прекращать запись звука. А потом нужно будет долго и нудно синхронизировать звук. Я рекомендую делать это в нормальных редакторах вроде Sony Vegas.

    Источник: Ссылка
     
  2. zub.zer0

    zub.zer0 Постоянный пользователь

    Ник в игре:
    zub.zer0
    Можно например взять FRAPS и записать видео сразу со звуком, и места и рукоблудий меньше.
    а после перекодировать или сделать монтаж или сразу залить видео в инет.

    p.s. для перекодировки видео лучше использовать x264 level=4.1 preset=veryslow crf=20
    а по поводу звука, подойдет любой кодировщик, главное чтобы битрейт был не ниже 128.
     
    easy нравится это.
  3. zub.zer0

    zub.zer0 Постоянный пользователь

    Ник в игре:
    zub.zer0
    Чтобы убрать черные полосы спектатора сверху и снизу.

    [​IMG]

    Необходимо в файле
    \Counter-Strike\cstrike\resource\UI\Spectator.res

    поменять

    TopBar - visible= 1 -> 0
    bottombarblank - ypos=429 -> 1000
    bottombarblank - visible=1 -> 0
    bottombarblank - enabled=1 -> 0

    [​IMG]
     
    easy, What!? и ViP.Predator нравится это.