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

Главная | Файлы | FAQ | Платформа | О сайте | Контакты | Зарегистрироваться | Войти
[ Новые сообщения · Участники · Правила форума · Поиск ]
  • Страница 1 из 1
  • 1
ArmA-2 редактор » ArmA-2 Operation Arrowhead | Combined Operations. Редактор » Ролики » Создание роликов через скрипты
Создание роликов через скрипты
PIONEERДата: Вторник, 17.11.2009, 00:44 | Сообщение # 1
Лейтенант
Сообщений: 589
Репутация: 16
Статус: Offline
Я решил понемногу обьяснять как делаются мультики через скрипты.
Итак,урок первый.
Начну пожалуй с разжовывания команд.
Создаётся камера через команду camCreate.
С этой командой идут два синтаксиса-"camera",который создаёт нормальную камеру и "seagull",создающий летающую камеру,типа с высоты птичьего полёта.
"seagull" я не пользуюсь и не видел чтоб кто-то ей пользовался,поэтому советую об "seagull" забыть и переключиться только на "camera".
Также с самого начала камере даётся идентификация.Я например всегда использую _cam.
В общем команда выглядит так-
_cam = "camera" camcreate [x,y,z].
Лучший способ создавать камеру на определённом месте уже был описан Goodspeedom.
Пишете в init игрока-hint format["position: %1", getpos player],и сразу в начале миссии вы получите координаты места на котором стоит игрок.
Это будет выглядеть что-то вроде этого-8627.95,9372.47,6.
Вписываете полученные координаты вместо x,y,z и камера будет создана точно в том месте.
Естественно есть несколько способов сделать это(например по отношению к какому-то обьекту),но я пришёл к выводу что это самый удобный и точный способ,поэтому говорить буду только о нём.
Далее следует команда cameraEffect.Она создаёт эффект для нашей камеры.Пишется так-cameraEffect ["эффект", "позиция"].
Здесь есть много команд,но опять таки общепринятые команды это-internal и back.Здесь как и везде далее к команде привязываем идентификацию созданную в начале скрипта(_cam например).
В общем команда выглядит так-
_cam cameraeffect ["internal", "back"].
Зачастую неплохо во время мультика отключить радио,что тут и делаем через enableradio false.
Главное не забыть в конце скрипта включить его обратно через enableradio true.
В начале для понта можно создать переход из темного экрана в игру через titleCut ["","BLACK IN",5].
Где 5,это время в секундах через которое совершается переход.Между первыми ковычками можно вставить текст.
Кроме BLACK IN есть ещё три команды-BLACK OUT(из игры в темный экран),WHITE IN(из светлого экрана в игру) и WHITE OUT(из игры в светлый экран).
Разделение через переходы в секундах совершается через ~*(где * означает время в секундах).
Далее идёт команда camsetpos.Она создаёт позицию камеры.
В общем команда выглядит так-
_cam camsetpos [7800,4335,5].
Позицию камеры можно создавать и на позициях обьектов через _cam camsetpos (getpos player).
Это создаст позицию камеры на месте где в тот момент стоит игрок.
Следующая команда наводит камеру на цель-camsettarget.
Цель может быть позицией,а может быть и обьектом.
В первом случае команда будет выглядеть так-
_cam camsettarget [7800,4335,5].
Во втором случае так-
_cam camsettarget t80. - где t80 это имя обьекта на карте.
Любые изменения и команды которые мы задаём в скрипте не будут применены в реальности пока не будет использована команда camcommit.
Если мы хотим чтоб изменения произошли моментально то пишем-
_cam camcommit 0.
Если мы хотим плавный переход то пишем-
_cam camcommit 5. - где 5 это время перехода в секундах,чем больше,тем медленнее и плавнее будет переход.
На этом закончу урок первый.




Хотите больше новостей? Подписывайтесь на мою рассылку
 
PIONEERДата: Вторник, 17.11.2009, 00:45 | Сообщение # 2
Лейтенант
Сообщений: 589
Репутация: 16
Статус: Offline
Насчёт вставления музыки.
Делаем это через команду playmusic "".

Между ковычками название музыки.Я не помню все названия,но вот их большинство-
от "track1" до "track16".Также ещё помню "7thlifeless" и "7thdecide".

Если нужно чтоб музыка закончилась раньше времени то пишем к примеру-
20 fademusic 0,где 20 время в секундах за которое мы хотим чтоб звук понизился,а 0 это до какой громкости мы хотим звук понизить(повысить).

0 это естественно выключенный звук,1 это полная громкость.
Если мы после этого хотим вставить другую музыку то не забывайте опять написать fademusic,но с 1 вместо 0,это звук включит.
Например-1 fademusic 1

В мультиках также можно замедлять или убыстрять время.
Делается через команду setacctime.
1 это время нормальное,номера ниже единицы это замедление,выше
единицы это убыстрение.
Пример-setacctime 0.2

Есть левая команда CamCommitted.
По идее она проверяет закончила ли камера последние изменения.
Если пишется с @,то скрипт останавливается пока камера не закончит изменения.

Пользу от этой команды я нашёл одну,о чём в своё время.
Пишется так-
@camCommitted _cam

Команда для приближения и удаления камеры(zoom)-
camSetFOV.
Чем ниже единицы тем ближе,чем больше тем дальше.
Пример-
_cam camSetFOV 1.700

Вот здесь я и нашёл пользу от CamCommitted.
Если я хотел сделать приближение,то оно у меня без этой команды почему-то не работало.
Пример как в моём мультике я это сделал-

_cam camsetpos [8469.21,9368.04,3]
_cam camsettarget of
_cam camcommit 0
@camCommitted _cam
~6
_cam camsetpos [8469.21,9368.04,3]
_cam camsetfov 0.200
_cam camcommit 0
@camCommitted _cam

Без @camCommitted _cam команда camsetfov не срабатывала.

Следующяя команда-CamSetRelPos.
В отличие от CamSetPos эта команда создаёт позицию камеры относительно либо какого-нибудь обьекта,либо какой-либо позиции.
В первом случае команда выглядит так-
_cam camsetrelpos t80

Во втором-
_cam camsetrelpos [8469.21,9368.04,3]

Через команду cutrsc(или cutobj) можно на экран поместить обьект поверх камеры,например вид через бинокль.
Выглядит так-
cutrsc [название обьекта ,его позиция ,номер].

Зачем нужен номер по-моему никто толком не знает.
В любом случае пишите "PLAIN DOWN",0 и никогда не ошибётесь.
Названия обьектов есть следующие,(пишу только релевантные)-
"tvset"-телевизор
"binocular"-бинокль
"default"-возвращение к обыкновенному виду.

Пример как сделать анимацию как солдат смотрит в бинокль и потом это показывается через камеру-

_cam camsetpos [8641.9,3357.61,5]
_cam camsettarget ofi
_cam camcommit 0
ofi playmove "StandToBinocStand"
~3.6
cutrsc ["binocular","PLAIN DOWN",0]
_cam camsettarget t80
_cam camCommit 0
~5
ofi playmove "BinocStandToStand"
cutrsc ["default","PLAIN DOWN",0]

Команда playmove "StandToBinocStand" заставляет юнит сыграть анимацию подношения бинокля к глазам,
playmove "BinocStandToStand"-прямо противоположное.

И нод конец опять используем команду CameraEffect,но с эффектом терминации-
_cam CameraEffect ["Terminate","Back"]

Заканчиваем мультик уничтожением камеры через команду CamDestroy.

Выглядит так-

CamDestroy _cam

На этом закончу уроки по мультикам.
Если чего-то вспомню то допишу позже.
Все дополнения на приват мне,credit отдам вам.




Хотите больше новостей? Подписывайтесь на мою рассылку
 
PIONEERДата: Вторник, 17.11.2009, 00:45 | Сообщение # 3
Лейтенант
Сообщений: 589
Репутация: 16
Статус: Offline
Скрипт, облегчающий позиционирование камеры при
создании роликов. Показывает координаты камеры
и объекта, на который она нацелена.

Порядок действий:
1. Создаем миссию и сохраняем ее.
2. Ставим любой юнит, даем ему имя UNIT и в строке
инициализации (этого юнита) пишем:
[freq, UNIT] exec "имя_скрипта.sqs"
где имя_скрипта - любое имя, которое вы этому
скрипту дадите.
3. Нажимаем Alt+Tab и запускаем Блокнот.
4. В Блокноте пишем следующее:

_target = _this select 0
_freq = _this select 1

_cam = "camera" camcreate [X, Y, Z]
_cam cameraeffect ["internal", "back"]
_cam camsettarget UNIT
_cam camcommit 0
_cam camCommand "manual on"

#Coord
titletext [format ["Camera: %1", getpos _cam],"Plain Down"]
~6
titletext [format ["Object: %1", getpos UNIT],"Plain Down"]
~6
goto "Coord"

[X, Y, Z] - координаты, какие Вы захотите, можно [0, 0, 0]

5. Сохраняем этот документ с именем "имя_скрипта" и расширением .sqs.
Сохраняем его в папку с Вашей миссией.
Внимание! Создастся текстовый файл типа "имя_скрипта.sqs.txt" -
переименуйте его в "имя_скрипта.sqs"!
6. Возвращаемся обратно в редактор и нажимаем кнопку Просмотр (Preview).

Результат: создается камера, направленная на UNIT, а внизу экрана
показываются текущие координаты и камеры и юнита.
Камерой можно управлять стрелочками и менять высоту кнопками
PgDown и PgUp. Обьективом камеры можно управлять на цифровой панели.

Методом позиционирования юнита в редакторе можно достигнуть
точного положения и направления обзора камеры.

Copyright by BattleMakers © 2001




Хотите больше новостей? Подписывайтесь на мою рассылку
 
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 запрещено! А то прокляну.