Что-то непонятное с анимацией
Вложений: 1
Всем привет! Начну сразу с проблемы. Тут пример в котором бегает чел. Если нажать на W, то он идёт, если на SHIFT+W якобы бежит. Попробуйте сначала нажать на W и посмотреть какая анимация, потом нажмите на SHIFT+W, немного пробегите и снова нажмите на W. Очень странно, но анимация немного изменилась, причём изменилась так, как она и должна была быть в начале, но в начале анимация почему-то какая-то глючная. Вопрос очевиден - что с анимацией и как это исправить? Если есть дополнительные вопросы - пишите. В архиве модели с анимацией и код.
|
Ответ: Что-то непонятное с анимацией
Я бы начал копать с анимации, правильного указания кадров и лишних ключей, например что-то в анимации ходьбы(плечи или центр тяжести возможно) имеет лишний ключ поворота(или же не хватает ключа), однако почему это не повторяется не могу точно сказать, не юзал отдельных анимаций и таких проблем небыло.
|
Ответ: Что-то непонятное с анимацией
Скачал. Посмотрел.
Особых различий в анимации не заметил. Однако у меня был подобный глюк (по описанию) в моей игре Вот короче как я с ним справился: (не полностью, конечно, но это лучше чем совсем никак): В общем, у меня чел тоже был с двумя анимациями - бежит и идёт. Когда он бежал, то он наклонялся немного вперёд (анимация такая) а когда после этого шёл или стоял - то так и оставался в согнутом состоянии :-D смешно было наблюдать. Вот то, что я смог выясниь: В анимации бега в максе была задействована кость спины (ну, которая ответственна как раз за нагибание) А в анимации ходьбы - нет (т.е. в максе она тоже есть, но не делает никких действий - не крутится, не двигается и т.п.). Похоже, Блитз не обрабатывает те кости, которые в анимации не задействованы. В принципе, это правильно, однако при переключении с одной анимации на другую возникают баги - бежл чел пригнувшись, а затем вдруг стал идти, но кость спины в этой анимации не задействована - вот Блитз её и не обработал и она осталась как была согнутой. Как я с таким боролся: в анимации ходьбы задействовал совсем учть-чуть кость спины - сделал ей анимацию с поворотом на пол-градуса буквально - даже и не заметно когда наблюдаешь за анимацией. А вот Блитз отлично всё это схавал - глюк прошёл. Однако чтобы полностью исключить глюки нужно чтобы в каждой анимации каждая кость была задействована. У меня в анимации было до хрена костей, мне лень было каждой делать отдельно анимацию - я сделал только основное. Если у тебя есть такая возможность - лучше прямо при создании анимации юзай все кости буквально на полградуса даже если их тебе не надо юзать - подобные глюки не должны мучить такие модели. З.Ы. Анимацию ходьбы сам делал? Хорошая такая... :) |
Ответ: Что-то непонятное с анимацией
Анимацию делал не я) Но совет, как я понял, не только мне пригодится. Спасибо!
|
Ответ: Что-то непонятное с анимацией
Если это так как описал АВТОМАТ, тогда это наоборот порой отлично, я как-то раньше не замечал подобного, можно же делать морфы (устанваливая кадр вручную), к примеру установить кадр анимации где только ноги один, и для только рук другой (следующий), и что из этого выйдет, по идее должно сработать :)
|
Ответ: Что-то непонятное с анимацией
MoKa, не очень удобно это :(
Я сам думал об этом. Чтобы сделать отдельно анимацию ног и анимацию рук. Но ведь в Блитзе анимация может у одного энтити быть только одна, поэтому проигрывать обе разом не получится :( Либо я не очень хорошо понимаю, что ты хотел, объясни поподробнее, это вроде как интересно :) |
Ответ: Что-то непонятное с анимацией
ABTOMAT, есть функция для установления текущего кадра :) Юзай её, но я хз точно, т.к. ведь применение может влиять лишь на переменные, а обновление происходит при вызове UpdateWorld, но тут смотри, я думаю прокатит, т.к. данные заполняются для костей надеюсь при вызове назначения анимации.
AnimSetTime вроди так называется, глянь в справке :) |
Ответ: Что-то непонятное с анимацией
UpdateWorld(0) - чтобы не обновлялась анимация.
|
Ответ: Что-то непонятное с анимацией
HolyDel, но при вызове SetAnimTime будет изменяться? Если да тогда применение анимация производится непосредственно при вызове функции, хм я бы делал не так :) но эт неважно, чтож тогда это будет хорошо. :)
|
Ответ: Что-то непонятное с анимацией
хм, есть версия что в UpdayeWorld() всеже будет просчитыватся анимация, а вот уже ее прокрутка нет :). Потому как в скобках же задается параметр для дельта-тайминга, а в самой функции скорость прокрутки просто умножается на этот коэффициент. Хотя это всего лишь теория :)
|
Часовой пояс GMT +4, время: 11:19. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot