Анимационные группы Морровинда
Может пригодиться для какой надобности.
Материал из Tiarum
http://tiarum.com/wiki/Morrowind:Анимационные_группы_Морровинда
автор: Quentin Preik
редактирование: Garin
ccылка на оригинал: Morrowind Animation Groups
ссылка на сайт: preik.net
|
Прим. Garin:
Описание анимационных групп для игры TES 3 Morrowind. Единственное в своем роде. По крайней мере, другого такого в Интернете я нигде не встречал.
Перечень анимационных групп и их кодов сведены в таблицу в статье: Morrowind:Анимационные группы. Таблица
Если вы нашли описание других групп, или же более полное описание, сообщите, пожалуйста, мне (или опишите в посте, указав источник).
Содержание
-
1 Анимационные группы Морровинда
-
-
-
-
-
-
-
1.2 Сокращения (аббревиатуры), содержащиеся в Group Names
-
1.3 Death and Hit Animations (Анимации для атаки и смерти)
-
1.4 Idle Animations (Анимация бездействия):
-
1.5 Movement Animations (Анимация движения):
-
1.6 Weapon Animations (Анимация оружия):
-
-
1.6.2 Marksmen (Меткие стрелки):
-
1.7 Spell Casting Animations (Кастование заклинаний):
-
1.8 Attack Animations (Анимация атаки):
-
1.9 Sound Notes (звуковая дорожка примечаний):
-
-
1.9.2 Sound: soundid (звучание)
Анимационные группы Морровинда
Введение
Замечу, что это еще не 100%-й список; многого не обещаю, но, возможно, когда-нибудь я это и сделаю. В свое время я занимался этим прежде всего для себя, но затем подумал, что это будет полезно также и вам. Поскольку я заполнял этот список, я добавил также и описания для их использования, и т.п. Этот перечень также предполагает, что вы уже имеете начальные знания об анимации в игре Morrowind. Если вы имеете объект, чтобы анимировать в игре базовую анимацию бездействия, то следует позаботиться о том, чтобы движения в цикле происходили плавно и незаметно.
Группа анимации - это полная анимация какого-либо отдельного действия в TES3:CS.
Некоторые анимационные группы - бездействия (idle), стрельбы с арбалета (Crossbow), смерти (Death1), прыжков (Jump) подразделяются на несколько собственных поддействий.
Могут существовать отдельные вариации в каждой такой группе.
Например, есть: idle ( но нет Idle1- (!) ), а затем Idle2, Idle3 ..., Idle9, но также и Idlehh, Idle1h, Idle2c
Каждая анимационная группа описана в дорожке примечаний (Note Track, я вызываю нужное мне движение; но я не знаю, как именно его использует Bethesda). Это разбивает анимацию на различные события.
Анимация работы с оружием, в частности, имеет много таких пометок и все они должны присутствовать.
Примеры таких пометок - это Start и Stop, но также и старт удара сплеча - Chop Slash Start или старт большого колющего удара - Thrust Large Follow Start.
Создание вашей новой уникальной анимации начинается и заканчивается в дорожке примечаний (Note Track), где вы пишете примерно следующее:
Idle: Loop Start
Насколько я могу судить, это не зависит от условий: символ ':' должен всегда находиться непосредственно после имени группы (без пробела), но между двоеточием и примечанием фрейма (frame reference) обязательно должен быть пробел (пример: Idle: Loop Start ).
Вся основная базовая анимация обязательно имеет начало (Start animation) и конец (Stop animation), и это справедливо. Кроме того, много анимаций могут выполняться в цикле - они имеют как начало цикла (Loop Start), так и конец (Loop Stop). Вот небольшие примеры того, как они могут использоваться:
Idle3: Start
Допустим, вы имеете волка и вам требуется, чтобы волк задремал. За это в анимационном базовом файле для волка отвечает третий айдл (Idle3). Однако в текущем фрейме проигрывается первый айдл, в котором волк занимает следующую базовую позицию - стоит и пристально смотрит вперед. Дав с помощью функции команду Idle3: Start, мы начнем в следующем фрейме проигрывать третий айдл, в котором волк только собирается прилечь.
Idle3: Loop Start
Хорошо, мы хотим сделать так, чтобы его Idle3 отображал сон более правильно? Тогда между вызванным нами ранее фреймом Idle3: Start и новым положением (Idle3: Loop Start) волк должен будет присесть, независимо от того, какую в дальнейшем основную позицию сна вы хотите использовать, и только затем он должен будет принять основную позу сна рода собачьих. Включение отдельной анимационной петли после старта будет означать, что волк не собирается из положения стоя принять положение сна немедленно.
SoundGen: Moan
Что это? Мы подключили анимацию, но звуки воспроизводятся неправильно! Хорошо, вы определили, что независимо от того, в каком фрейме это происходит, но если ваш волчонок открыл пасть, то это обязательно должно сопровождаться соответствующим поскуливанием.
Актуальные волчьи звуки определены в TES3:CS. Независимо от того, проигрывается звук или нет, он должен будет начаться заново. Вы можете также вызвать специфический звук, используя дорожку Sound: Note и идентификатор звука - его ID. Но все же имейте в виду, что мы сейчас находимся в середине цикла! И это может проигрываться много раз и так долго, сколько наш волк будет спать. Это, в принципе, неплохо, если звук тонкий и тихий, а длительность одного вашего цикла в idle3 - около 10 сек, но если циклы чередуются с периодом в 1 сек, тогда звук будет проигрываться подряд много раз и будет раздражать игрока.
Idle3: Loop Stop
Между этим фреймом (Idle3: Loop Stop) и стартом цикла (Idle3: Loop Start) наш волк выполнял анимацию сна, скажем, он просто лежал и дышал. В Idle3: Loop Stop он должен находиться в той же позиции, в которой он был и в начале цикла Idle3: Loop Start. Если с этого момента он собирается продолжать спать - то анимация должна возвратить его в исходное положение сна, прописанное в первом фрейме цикла Idle3: Loop Start, или же волк будет разбужен. Это можно заранее определить в конструкторе, задав шансы на продолжение сна (Idle3) или пробуждение (Idle4), тогда игра сама выберет необходимое действие. Конечно же, если игрок атакует волка, то игра сразу выберет пробуждение.
Независимо от того, по какой причине волк должен проснуться, он будет анимирован из этой точки и вплоть до следующего пункта дорожки примечания (note), в противном случае он будет возвращен назад, к началу цикла (Loop Start) и будет продолжать спать (теперь это внутриигровые обстоятельства, где анимация может быть внутренней).
Idle3: Stop
Хорошо, волк принял решение проснуться, поэтому должны быть проиграны оставшиеся фреймы между концом цикла (Loop Stop) и окончанием текущей анимацией Idle3: Stop. В конце этого участка вы должны получить его нормальное (по-умолчанию) состояние (вспомните, он стоит прямо, на всех четырех лапах и пристально смотрит вперед) и готов сделать что-нибудь другое (начать другой цикл анимации). Помните, что вы, как мультипликатор, не должны беспокоиться, почему и по какой причине он проснулся - это не имеет никакого отношения к дорожкам примечаний (note track). Просто вам надо убедиться, что анимация проходит гладко на всех этапах - от положения подготовки ко сну, непродолжительного сна и подъема в исходное положение.
Работая в 3ds MAX, помните, что когда Вы делаете ваши анимационные примечания (note), вы можете установить более чем одну анимационную группу на одно примечание. Так, если ваша анимация продолжается от одной анимационной группы к следующей, вы можете сложить две и более анимационных команд на одно примечание (просто введите атаку (hit) и разместите следующее примечание в новой строке).
Сокращения (аббревиатуры), содержащиеся в Group Names
-
1h : 1 Hand weapon (одноручное оружие)
-
2c : 2 Hand Close (двуручное закрытое, где требуется держать обе руки в одном месте)
-
2w : 2 Hand Wide (двуручное широкое, например, staff, где руки держатся вместе, но рядом друг с другом)
-
hh : Hand to Hand (рукопашный бой)
Эти сокращения используются, чтобы обозначить множество различных вариантов анимационных групп, например, Idle и Idle2, но есть также и Idle1h, который использует анимацию использования одноручного оружия (1h) и т.п. В приведенном ниже списке я специально буду указывать на это, если такие анимационные подгруппы будут присутствовать, например: Idle, 1h, 2c, 2w, hh. Если вы увидели подходящую анимацию и вам хочется ее применить, используйте Idle1h, Idle2c, Idle2w, Idlehh и т.п. когда делаете свои примечания в note track. Ecть также и другие типы, например, IdleSpell для анимации бездействия, когда бандит готовится скастовать заклинание.
Death and Hit Animations (Анимации для атаки и смерти)
-
Death1 - Death5: Start, Stop
-
DeathKnockDown: Start, Stop
-
DeathKnockOut: Start, Stop
-
-
-
-
Shield: Block Start, Block Hit, Block Stop
Idle Animations (Анимация бездействия):
(Start, Loop Start, Loop Stop, Stop)
-
Idle, 1h, 2c, hh, 2w, Crossbow, Sneak, Spell, Storm, Swim
-
Movement Animations (Анимация движения):
(Start, Loop Start, Loop Stop, Stop)
-
-
-
Runforward, 1h, 2c, 2w, hh
-
-
-
SneakBack, 1h, 2c, 2w, hh
-
SneakForward, 1h, 2c, 2w, hh
-
SneakLeft, 1h, 2c, 2w, hh
-
SneakRight, 1h, 2c, 2w, hh
-
-
-
-
TurnRight, 1h, 2c, 2w, hh
-
-
Walkforward, 1h, 2c, 2w, hh
-
-
WalkRight, 1h, 2c, 2w, hh
Weapon Animations (Анимация оружия):
Анимация оружия имеет намного больше под-примечаний, чем другие анимационные группы, они описывают в фреймах все действия, в которых происходят различные события.
Melee:
Это группа оружия melee:
-
-
-
-
HandtoHand (Прим: Я должен еще проверить эту анимационную группу, также, как и ее подгруппы.)
Анимационная группа оружия Melee имеет следующие подпримечания (subnotes):
-
-
Equip Attach (на этом месте оружие появляется)
-
Существует три типа атаки для каждого Melee-оружия:
-
-
-
Thrust - Тянущий/толкающий удар
Каждая из трех типов атак содержит следующие подвиды:
И затем, после каждой установленной атаки, каждый из типов оружия имеет:
-
-
Unequip Detach (начиная с этой точки оружие исчезает)
-
Да, я понимаю, что все это довольно путанно. Я дам вам примеры немного более полных примечаний:
-
WeaponTwoHand: Slash Max Attack
-
WeaponTwoWide: Unequip Detach
-
WeaponOneHand: Chop Large Follow Start
Marksmen (Меткие стрелки):
Есть три группы анимации для метких стрелков:
-
-
-
ThrowWeapon (Я еще должен проверить подпримечания и группу анимации в целом)
Каждый из их имеет следующие примечания:
Здесь приведены некоторые избранные хорошие примеры:
-
-
Crossbow: Shoot Follow Start
-
ThrowWeapon: Unequip Detach
Spell Casting Animations (Кастование заклинаний):
SpellCast:
Прим.: Помните также, что у вас будут ваши IdleSpell и различные другие анимации кастования. Я должен включить их тут где-нибудь. Каждое заклинание - "На себя", "Прикосновение", ожидание (Idle) и т.п., должно возвращаться в ту же позицию, как указано в SpellCast: Equip Stop.
Attack Animations (Анимация атаки):
Существует 3 анимационных группы, зарезервированных для существ. Дело в том, что существа обычно не используют оружие для атаки:
Attack1:, Attack2:, Attack3:
Вне цикла каждый вызов AttackX: Stop должен завершаться позой по-умолчанию для следующего действия
Sound Notes (звуковая дорожка примечаний):
SoundGen:
Актуальный звук, который проигрывается для каждого источника звука (soundgen), выбирается в TES:CS - другие существа, использующие одну и ту же модель и анимационную группу, могут таким образом проигрывать другие звуки.
Sound: soundid (звучание)
(Идентификатор звука SoundID может быть найден в списке специфических звуков в TES3:CS)