Суббота, 20.04.2024, 11:35Привет Гость
ArmA-2 Моды, миссии, кампании, аддоны, скрипты, редактор

Главная | Файлы | FAQ | Платформа | О сайте | Контакты | Зарегистрироваться | Войти
[ Новые сообщения · Участники · Правила форума · Поиск ]
  • Страница 1 из 1
  • 1
ArmA-2 редактор » ArmA-2 Operation Arrowhead | Combined Operations. Редактор » Статьи и справочники » Как сделать озвучку? (Урок)
Как сделать озвучку?
PIONEERДата: Среда, 03.03.2010, 22:08 | Сообщение # 1
Лейтенант
Сообщений: 589
Репутация: 16
Статус: Offline
Нынешнею лекцию посвещю озвучке cool
Виды:
1. Чат
2. Текст
3. Текст ролики

Чат - рация которая в виде текста изображается обычно синим цветов в углу экрана
Текст - просто текст белый высвечивается по середине или чучуть ниже его

Примечания:
Всегда нужно прописать setacctime 1 для предотвращение налаживания друг на друга звуков.
Рассмотрим озвучка чата:
Дескрипшен:
Ну тут все по старинке и как обычный звук

Code
class CfgSounds
{
    sounds[] = {};

    class STRD_SAY17
    {
     name = "STRD_SAY17";
     sound[] = {\sound\STRD_SAY17.ogg, db + 0, 1.0};
     titles[] = {0, ""};
    };
    class STRD_SAY18
    {
     name = "STRD_SAY18";
     sound[] = {\sound\STRD_SAY18.ogg, db + 0, 1.0};
     titles[] = {0, ""};
    };
};

Потом нам нужно вставить сами звуки

Code
setaccTime 1;
playsound "STRD_SAY17";
NAME sidechat " STRD_SAY17";
~5
setaccTime 1;
playsound "STRD_SAY18";
NAME2 sidechat "STRD_SAY18";

Тут все просто и понятно

Рассмотрим озвучку текста
Дескрипшен:

Code
class CfgSounds
{
    sounds[] = {};

    class STRD_SAY17
    {
     name = "STRD_SAY17";
     sound[] = {\sound\STRD_SAY17.ogg, db + 0, 1.0};
     titles[] = {0, "$STRD_SAY17"};
    };
    class STRD_SAY18
    {
     name = "STRD_SAY18";
     sound[] = {\sound\STRD_SAY18.ogg, db + 0, 1.0};
     titles[] = {0, "$STRD_SAY18"};
    };
};

Обратите внимание на titles[] = {0, "$STRD_SAY18"};
Вот он и определяет текст, тоисть код соотвецтвует коду из стригентейбла а все это активируем:

Code
setaccTime 1;
NAME say "STRD_SAY17";
~5
setaccTime 1;
NAME2 say "STRD_SAY18";

Текст будет говорить данный персонаж, а сам текст появится внизу экрана белыми буквами.

Настоятельно рекомендую все коды(дескрипшен, стриг) писать одним именем, так вы убирегете себя от возможных путаниц.

На счет роликов то тут развичто немного примечания для второго примера.
Озвучка в роликах происходит в точности как выше описал, только она производится для всех текстов(!).
Также рекомендую в редакторе игрока куда-нибудь в левую сторону засунуть, и все тексты что не произносит любой персонаж в ролике то ставим
А также команду
playsound "STRD_SAY17";
это для того чтоб звук произносился так как команда say отчитывает расстояния от говорящего до позиции камеры, получится текст без звука. Для персонажей которые рядом с камерой это писать ее не надо.

Есть еще такое понятие как шевеление губами при разговоре, тоисть произносится звук и персонаж шевелит губами. Получается полноценный диалог.
Для этого нужен lip файл. Чтоб не писать то тупо из ринзы:

Файлы Lip предназначены для синхронизации движения губ говорящего с произносимой фразой. Когда персонаж что-то говорит, вы можете озвучить данный текст звуковым файлом формата .ogg. А в дополнение к этому можно также создать файл Lip.
Файлы Lip должны находиться в папке Sound вместе со звуками. Каждый файл lip соответствует определенному звуковому файлу и должны иметь одинаковое имя (но разные расширения, .lip вместо .ogg). Например, если звуковой файл имеет имя lustyswearing.ogg, то файл lip должен называться lustyswearing.lip.
Губы персонажа двигаются только если используется команда say! При использовании радио- и чат-команд рот остается закрытым.
Описание формата Lip
Так что же представляет собой этот файл? Ниже приведен пример. Первая строка "frame=0.040" указывает на скорость анимации для губ (в демоверсии всегда 0.040). Остальные строчки состоят из пар [время], [позиция губ]. То есть в каждой строчке указывается, в какой время [время] звукового файла персонаж должен менять позицию губ на [позиция губ]. Значение [time] определяет время в секундах, а значение [mouth position] может меняться в пределах от 0 до 7.
Необходимо выделить достаточно времени для анимации речи, но и уложиться во временные рамки звукового файла! Например, представленный ниже файл lip соответствует звуковому файлу, имеющему длину около 1.5 секунды. Если вы выделите меньше времени в вашем lip файле, то в части фразы рот говорящего будет закрыт.
Заметьте, что в последней строчке в качестве значения [mouth position] стоит -1. Это означает, что анимация должна остановиться. Если вы забудите указать -1 в последней строчке, губы персонажа под конец фразы начнут трястись, создавая впечатление бормотания.
frame = 0.040
0.000, 1
0.040, 3
0.080, 2
0.120, 0
0.160, 1
0.240, 2
0.280, 1
0.360, 0
0.400, 1
0.440, 2
0.480, 3
0.640, 2
0.680, 1
0.760, 2
0.800, 1
0.920, 2
1.000, 5
1.040, 2
1.120, 0
1.320, 3
1.360, 2
1.480, 1
1.560, 0
1.600, -1

При значении 0 губы персонажа плотно сжаты, при 7 - широко открыты. Движок игры позволяет также использовать анимацию для каждой позиции губ, которая добавляется автоматически, и вы не можете это контролировать. Персонаж может улыбаться, злиться и т.д.

Чтоб не парится и создавать вручную то умельцы создали прогу.
Тупо берете файл(требования: формат - *.wav 16 hgz mono без этого не получится) и тупо копируем(зажимаем и переносим на ярлык проги и отпускаем) и в ту папку где был звук появится лип файл, можно копировать сколь угодно файлов, просто выделите все нужные файлы и копируйте.

Писал по быстрому.
Вот и все, все что не поняли - стучим в скайп.

Прикрепления: WaveToLip.rar (23.9 Kb)




Хотите больше новостей? Подписывайтесь на мою рассылку
 
ArmA-2 редактор » ArmA-2 Operation Arrowhead | Combined Operations. Редактор » Статьи и справочники » Как сделать озвучку? (Урок)
  • Страница 1 из 1
  • 1
Поиск:





Copyright web-pioneer.at.ua © 2011 | Используются технологии uCoz
Админ: PIONEER | web-pioneer@yandex.ru | Любое или частичное копирования материала с веб-сайта web-pioneer.at.ua запрещено! А то прокляну.