Инструкция по созданию роликов. Создание ролика можно разделить на 4 основных этапа:
1)запись демки во время игры
2)просмотр демки и определение интересных интервалов
3)создание видео-файла из необходимых отрезков демки
4)редактирование видео-файла в видеоредакторе, сжатие видео-файла
А для начала нужно включить консоль.
Запускаем игру, нажимаем Параметры –> Клавиатура / Мышь, включаем "Консоль Отладки".
Теперь по нажатию на кнопку "~" ( "Ё" на русской раскладке ) у вас появляется окошко консоли.
1) Для того чтобы начать запись демки необходимо во время игры ввести в консоли команду
record my_demo
Чтобы остановить запись введите
stop
Но конечно вам не удастся поймать интересный игровой момент если вы во время схватки будите рыться в консоли и вводить команды.. Поэтому мы сделаем так чтобы эти команды выполнялись просто по нажатию на одну кнопку: пишем в консоли
bind "F6" "record my_demo"
bind "F7" "stop"
Теперь кнопка F6 будет начинать запись, а F7 – останавливать. Недостаток в том, что новые демки будут записываться поверх старых.
P.SФайлы демок занимают мало места на диске, а запись демки практически не влияет на производительность. Поэтому рекомендую вам при заходе на сервер сразу начинать запись – так вы гарантированно не пропустите тот самый момент. Обратите внимание, что при смене карты запись не останавливается, но при каждой смене сервера запись надо начинать вручную.
2) Вот наконец у вас есть длинная демка содержащая интересный эпизод где-то в середине.
Команда
demoui
Вызовет на экран панель управления просмотром с функциями быстрого перехода, паузы, перемотки, ускоренного/замедленного воспроизведения.
Нажмите Load и выберите файл с нужной демкой. Как только файл загрузится, автоматически начнётся просмотр. Следите за значением Tick. Вам нужно запомнить момент (tick) с которого будет начинаться ваш ролик и момент на котором он закончится. Для примера я буду работать с кусочком начинающимся с tick 6000 и заканчивающимся на tick 8000.
[img]http://bbs.nashalife.ru/attachment.php?s=44cb0fbe214827e4880f8307065975c2&postid=822947[/img]
3) Пора создать видео-файл. Особо отмечу, что не будет использоваться программа FRAPS или её аналоги. Во-первых FRAPS существенно влияет на производительность и не каждый компьютер сможет записать видео HD-качества с приличным fps, а во-вторых полнофункциональная версия FRAPS стоит денег.
Использование встроенного в движок Source механизма записи видео позволит вам записывать ролики с максимальным качеством картинки, любым разрешением и с тем fps, который вы захотите.
Настроим качество картинки перед началом записи видеофайла. Идём в Параметры –> Видео и выставляем настройки:
Формат: Ширина экрана 16:9
Разрешение: 852х480
Режим дисплея: Запускать в окне
Отношение сторон 16:9 – признанный формат для видеопродукции. Да и окошко с видео на YouTube с недавнего времени стало иметь именно такие пропорции.
Максимальный размер ролика поддерживаемый онлайн-сервисами для размещения видео 1280х720, но создание ролика в таком разрешении занимает заметно больше времени, да и места он занимает много и обрабатывается на серверах долго. Поэтому рекомендую начать эксперименты с разрешения 852х480, а когда настанет пора явить миру настоящий шедевр – смело выкладывайте 1280x720.
Использование оконного режима важно при создании видео. Почему объясню чуть позже.
И не забудьте в дополнительных настройках видео поставить детализацию, шейдеры и эффекты на максимум. Видео должно быть красивым
http://bbs.nashalife.ru/attachment.php?s=44cb0fbe214827e4880f8307065975c2&postid=822933
Приступаем к записи видео-файла. Возвращаемся к панельке demoui.
Нажимаем Edit, затем New-> PlayCommands
Задаём момент начала записи:
Start on: TimeUseTick 6000
Commands: host_framerate 30; startmovie mymovie avi
Задаём момент остановки записи:
Start on: TimeUseTick 8000
Commands: endmovie; stopdemo
Что это значит?
host_framerate 30 определяет число кадров в секунду в создаваемом ролике.
startmovie mymovie avi создаёт avi-файл с именем mymovie. Обратите внимание, что между mymovie и avi стоит пробел т.к. avi – не расширение, а дополнительный параметр. Если его опустить, вместо видео-файла на выходе получится тысяча кадров в виде отдельных картинок.
endmovie – остановка записи ролика
stopdemo – остановка проигрывания демки
http://bbs.nashalife.ru/attachment.php?s=44cb0fbe214827e4880f8307065975c2&postid=822937
Теперь перемотаем демку на несколько секунд до момента начала записи. Это позволит избежать мелких ошибок вызванных быстрой перемоткой демки. В панельке demoui сделайте переход Goto на tick 5000.
Нажмите Resume и начнётся проигрывание с момента tick 5000. Закройте все открытые внутри игры окошки: demoui, demo editor, консоль, иначе они попадут в видео-файл. Как только воспроизведение дойдет до tick 6000 выскочит окошко выбора уровня сжатия Video Compression
Именно из-за этого окошка мы должны запускать L4D в оконном режиме. В полноэкранном режиме вы его просто не увидите. Следует выбрать режим сжатия Full Frames (Uncompressed) чтобы избежать ошибок.
Нажимаем Ok и ждём пока запишется ролик.
http://bbs.nashalife.ru/attachment.php?s=44cb0fbe214827e4880f8307065975c2&postid=822939
4) Теперь в вашей папке C:\Program Files\Steam\steamapps\common\left 4 dead появился видеофайл mymovie.avi размером в несколько гигабайт. Он не будет нормально работать в вашем проигрывателе. Его необходимо перекодировать. Нам потребуются
-- программа VirtualDub. Скачайте по ссылке архив с программой размеров в 1.4мб- Скачать
-- кодек XviD для сжатия видео- Скачать
-- кодек LAME ACM для сжатия аудорожки- Скачать
Чтобы установить VirtualDub просто создайте папку на рабочем столе или в любом удобном месте и перенесите туда всё содержимое архива.
Установка кодека XviD тоже проста: просто запустите exe-файл.
Чтобы установить кодек LAME ACM создайте для него папку в любом удобном месте, перенесите в неё содержимое архива, нажмите правой кнопкой на файл LameACM.inf и выберите «Установить». Запустите программу VirtualDub.exe и через меню File -> Open Video File откройте файл mymovie.avi
С помощью VirtualDub можно склеить вместе несколько видеороликов. Для этого воспользуйтесь опцией File –> Append AVI Segment. Чтобы вырезать, вставить или удалить отрезок из ролика сначала выделите диапазон кнопками ← и →, расположенными под строкой прокрутки, а затем используйте меню Edit.
http://bbs.nashalife.ru/attachment.php?s=44cb0fbe214827e4880f8307065975c2&postid=822947
Выберем алгоритм сжатия видео.
Нажмите Video -> Compression, в появившемся окне выберите XviD MPEG-4 Codec и нажмите Configure. Меняя величину Target quantizer, вы определяете качество сжатия. Чем выше число тем сильнее будет сжатие и тем ниже будет качество картинки. Чем ниже значение, тем выше качество и тем больше размер файла. Для быстрых динамичных сцен оптимально задать параметр равный 2. Если резкого движения в ролике нет, то можно ограничиться величиной 5.
http://bbs.nashalife.ru/attachment.php?s=44cb0fbe214827e4880f8307065975c2&postid=822948
Аудио-дорожка в нашем ролике записана в формате wav. Перекодируем её в mp3.
Нажмите Audio –> Full Processing Mode, затем Audio –> Compression и выберите кодек Lame MP3 с параметрами 48000Hz, 160kbps
http://bbs.nashalife.ru/attachment.php?s=44cb0fbe214827e4880f8307065975c2&postid=822949
Готово!. Осталось выбрать File –> Save as AVI и дождаться завершения кодирования. Получившийся файл заливайте на youtube.ru. Ждём ваших работ.
http://bbs.nashalife.ru/attachment.php?s=44cb0fbe214827e4880f8307065975c2&postid=822951
Продвинутый скрипт для записи демок
Сохраните файл autoexec.cfg в папку
C:\Program Files\Steam\steamapps\common\left 4 dead\left4dead\cfg
А если вы уже создали его, то добавьте в него следующий строчки и по нажатию на F6 будет запускаться запись новой демки с именем demo_xx либо останавливаться запись текущей демки.
alias "r.a" "toggleconsole; clear; record _demo_01; alias r.sw r.of; alias r.xyz r.on; alias r.on r.b; echo [RECORDING]; console.echo;";
alias "r.b" "toggleconsole; clear; record _demo_02; alias r.sw r.of; alias r.xyz r.on; alias r.on r.c; echo [RECORDING]; console.echo;";
alias "r.c" "toggleconsole; clear; record _demo_03; alias r.sw r.of; alias r.xyz r.on; alias r.on r.d; echo [RECORDING]; console.echo;";
alias "r.d" "toggleconsole; clear; record _demo_04; alias r.sw r.of; alias r.xyz r.on; alias r.on r.e; echo [RECORDING]; console.echo;";
alias "r.e" "toggleconsole; clear; record _demo_05; alias r.sw r.of; alias r.xyz r.on; alias r.on r.f; echo [RECORDING]; console.echo;";
alias "r.f" "toggleconsole; clear; record _demo_06; alias r.sw r.of; alias r.xyz r.on; alias r.on r.g; echo [RECORDING]; console.echo;";
alias "r.g" "toggleconsole; clear; record _demo_07; alias r.sw r.of; alias r.xyz r.on; alias r.on r.h; echo [RECORDING]; console.echo;";
alias "r.h" "toggleconsole; clear; record _demo_08; alias r.sw r.of; alias r.xyz r.on; alias r.on r.i; echo [RECORDING]; console.echo;";
alias "r.i" "toggleconsole; clear; record _demo_09; alias r.sw r.of; alias r.xyz r.on; alias r.on r.j; echo [RECORDING]; console.echo;";
alias "r.j" "toggleconsole; clear; record _demo_10; alias r.sw r.of; alias r.xyz r.on; alias r.on r.k; echo [RECORDING]; console.echo;";
alias "r.k" "toggleconsole; clear; record _demo_11; alias r.sw r.of; alias r.xyz r.on; alias r.on r.l; echo [RECORDING]; console.echo;";
alias "r.l" "toggleconsole; clear; record _demo_12; alias r.sw r.of; alias r.xyz r.on; alias r.on r.m; echo [RECORDING]; console.echo;";
alias "r.m" "toggleconsole; clear; record _demo_13; alias r.sw r.of; alias r.xyz r.on; alias r.on r.n; echo [RECORDING]; console.echo;";
alias "r.n" "toggleconsole; clear; record _demo_15; alias r.sw r.of; alias r.xyz r.on; alias r.on r.o; echo [RECORDING]; console.echo;";
alias "r.o" "toggleconsole; clear; record _demo_15; alias r.sw r.of; alias r.xyz r.on; alias r.on r.p; echo [RECORDING]; console.echo;";
alias "r.p" "toggleconsole; clear; record _demo_16; alias r.sw r.of; alias r.xyz r.on; alias r.on r.q; echo [RECORDING]; console.echo;";
alias "r.q" "toggleconsole; clear; record _demo_17; alias r.sw r.of; alias r.xyz r.on; alias r.on r.r; echo [RECORDING]; console.echo;";
alias "r.r" "toggleconsole; clear; record _demo_18; alias r.sw r.of; alias r.xyz r.on; alias r.on r.s; echo [RECORDING]; console.echo;";
alias "r.s" "toggleconsole; clear; record _demo_19; alias r.sw r.of; alias r.xyz r.on; alias r.on r.t; echo [RECORDING]; console.echo;";
alias "r.t" "toggleconsole; clear; record _demo_20; alias r.sw r.of; alias r.xyz r.on; alias r.on r.u; echo [RECORDING]; console.echo;";
alias "r.u" "toggleconsole; clear; record _demo_21; alias r.sw r.of; alias r.xyz r.on; alias r.on r.v; echo [RECORDING]; console.echo;";
alias "r.v" "toggleconsole; clear; record _demo_22; alias r.sw r.of; alias r.xyz r.on; alias r.on r.w; echo [RECORDING]; console.echo;";
alias "r.w" "toggleconsole; clear; record _demo_23; alias r.sw r.of; alias r.xyz r.on; alias r.on r.x; echo [RECORDING]; console.echo;";
alias "r.x" "toggleconsole; clear; record _demo_24; alias r.sw r.of; alias r.xyz r.on; alias r.on r.y; echo [RECORDING]; console.echo;";
alias "r.y" "toggleconsole; clear; record _demo_25; alias r.sw r.of; alias r.xyz r.on; alias r.on r.z; echo [RECORDING]; console.echo;";
alias "r.z" "toggleconsole; clear; record _demo_26; alias r.sw r.of; alias r.xyz r.on; alias r.on r.a; echo [RECORDING]; console.echo;";
alias "r.of" "toggleconsole; wait 50; stop; alias r.sw r.on; alias r.xyz r.of; echo [STOP]; wait 150; toggleconsole;";
alias "r.on" "r.a";
alias "r.sw" "r.on";
alias "r.xyz" "r.of";
bind "F6" "r.sw"; //change the bind to whatever key you like here