[ Главная · Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Урок № 1
DeDДата: Среда, 23.03.2011, 18:48 | Сообщение # 1
Pro Bomjik
Группа: Отцы
Сообщений: 79
Репутация: 32767
Статус: Offline
В этой же статье мы поговорим о всех тех интересных "фишках", которые можно организовать, используя один лишь движок CoD4.
Учтите, что большая часть команд работает только на devmap'е или при просмотре демки.

Солнце

Мувик Cereal Killers 1.337 многие сочли переполненным ненужными эффектами, но в нем впервые были использованы некоторые эффекты "на движке" CoD'а. К примеру, "крутящееся" солнце на 1:15. За угол, под которым падает свет от солнца, отвечает переменная r_lighttweaksundirection. Значение переменной - вектор x y z. Например: r_lighttweaksundirection "0 180 360". Для того чтоб солнце прокрутить на 360, необходимо динамически менять значения этого самого вектора. В этом нам поможет vstr. Данная команда позволяет работать с пользовательскими переменными. Вот как мы сделаем:

set solnce0 "r_lighttweaksundirection -50 0 0; wait 1; vstr solnce1"
set solnce1 "r_lighttweaksundirection -50 1 0; wait 1; vstr solnce2"
set solnce2 "r_lighttweaksundirection -50 2 0; wait 1; vstr solnce3"
...
set solnce360 "r_lighttweaksundirection -50 360 0;"

где:

set - команда, инициализирующая переменные
solnce0 - название переменной. Может быть любым, но желательно использовать следующие символы - a-z, A-Z,0-9, _
"..." - тут пишем значение
wait 1 - пауза в 1 миллисекунду
vstr solnce1 - обращаемся к следующей переменной

В solnce360 нет wait и vstr, т.к. полный круг уже пройден, а зацикливание нам не нужно.

Всё это сохраняем в текстовый файл, называем его, например, sun.cfg и кидаем в папку "main", находящуюся в директории, в которую был установлен CoD4 (обычно это "x:\Program Files\Activision\Call of Duty 4 - Modern Warfare\"). Затем, при просмотре демки с нужным нам фрагментом, в консоли пишем "/exec sun.cfg" (можно сделать бинд) и затем вызываем solnce0 - "/vstr solnce0" (опять же, можно сделать бинд, например bind F1 "vstr solnce0"). Можно прописать timescale 0.001 - это замедлит перемещение игроков, но солнце при этом будет крутится с обычной скоростью - смотрится эффектно. После timescale также можно прописать cl_freezedemo - при этом действие на экране застынет, а солнце будет продолжать крутиться! Если все было сделано правильно - наслаждаемся результатом. Рабочий пример скрипта в архиве.

Туда-обратно

И опять Mazarini, на этот раз с, наверное, лучшим мувом по CoD4 - Carrera Rapida. Все видели на 5:54 минуте, как оружие постепенно отдаляется и потом идет +15. Делается это аналогично примеру с солнцем, только в этом случаем нам поможет переменная cg_fovscale:

set fvscl0 "cg_fovscale 1.125; wait 1; vstr fvscl1"
set fvscl1 "cg_fovscale 1.124; wait 1; vstr fvscl2"
set fvscl2 "cg_fovscale 1.123; wait 1; vstr fvscl3"
...
set fvscl5 "cg_fovscale 0.2;"

В архиве с примерами есть 3 варианта:

fov.cfg - приближение с 1.125 до 0.2 и обратно
fov01 - только отдаление
fov10 - только приближение

Этот эффект также можно использовать совместно с timescale/cl_freezedemo.

360°

Этот эффект частенько появляется в CoD-мувиках - камера плавно крутится вокруг 3D-модельки персонажа. Система та же, переменная - cg_thirdpersonangle:

set spinr0 "cg_thirdpersonangle 0; wait 1; vstr spinr1"
set spinr1 "cg_thirdpersonangle 0.5; wait 1; vstr spinr2"
set spinr2 "cg_thirdpersonangle 1; wait 1; vstr spinr3"
...
set spinr720 "cg_thirdpersonangle 360; wait 1; vstr spinr721"
set spinr721 "cg_thirdperson 1;"

Пример взят из конфига vacuum'а и состоит из двух частей: поворот на 360 влево и вправо. Данный трюк отлично работает с cl_freezedemo - матрица, да и только.

Left Handed

В недавнем мувике Redesert от Rna многим понравилось оружие в левой руке. Сделать это очень просто, за положение оружия отвечают переменные cg_gun_y, cg_gun_x и cg_gun_z. Для того, чтобы переместить оружие влево, нужно увеличить значение cg_gun_y. Например, /cg_gun_y 10. Можете также поэкспериментировать со значениями x и z.

Ночь

В том же Redesert автор использовал еще один интересный прием: действие происходило в темное время суток. Для этого:

r_filmtweaksunlight 0 - выключаем тени (можно оставить, если планируется яркая луна)
r_filmtweakdarktint 0 0 1 - делаем все вокруг синим. Конечно же, выглядит неестественно, так что нужно будет поэкспериментировать со значениями R G B.
r_filmtweaklighttint 0 0 1 - делаем синим небо (так же нужно подбирать значения)

Для большего реализма можно подкрутить яркость и контраст: r_filmtweakbrightness и r_filmtweakcontrast.

Прикрепления: 9962972.jpg (31.7 Kb) · 1773459.jpg (48.7 Kb) · 1356591.jpg (37.8 Kb) · 8219357.jpg (18.2 Kb) · 4481077.jpg (22.7 Kb)








 
  • Страница 1 из 1
  • 1
Поиск: