mikhailk
19.02.2011, 12:53
В ходе реализации баттла столкнулся с проблемой производительности на слабых компьютерах - нарушается синхронизация мувиклипов, которые должны отработать в определенной последовательности.
Собственно, сейчас организовал на таймерах. Нападающий персонаж 500мс движется до противника, потом включается проигрывание мувика нападения (замах, удар, отскок - всего 1000мс, непосредственно удар на 500мс), т.е., удар наносится на отметке 1000мс от начала проигрывания. Соответственно, у обороняющегося ставим задержку в 1000мс от начала проигрывания сцены, после чего показываем получение удара и выскакивание звездочек.
На большинстве компьютеров отрабатывает без проблем, но на некоторых "слабых" компьютерах фаза нападения проигрывается чуть медленнее, чем надо, и звездочки выскакивают еще до того, как удар нанесен (десятая доля секунды, но заметно). Вижу решение, в том, чтобы запускать анимации обороняющегося по событию, которое отправляется при достижении определенной метки в мувике фазы нападения, но может есть решение проще?
Можно, конечно, перенести запуск анимации обороняющегося с 1000мс на 1100мс...
Собственно, сейчас организовал на таймерах. Нападающий персонаж 500мс движется до противника, потом включается проигрывание мувика нападения (замах, удар, отскок - всего 1000мс, непосредственно удар на 500мс), т.е., удар наносится на отметке 1000мс от начала проигрывания. Соответственно, у обороняющегося ставим задержку в 1000мс от начала проигрывания сцены, после чего показываем получение удара и выскакивание звездочек.
На большинстве компьютеров отрабатывает без проблем, но на некоторых "слабых" компьютерах фаза нападения проигрывается чуть медленнее, чем надо, и звездочки выскакивают еще до того, как удар нанесен (десятая доля секунды, но заметно). Вижу решение, в том, чтобы запускать анимации обороняющегося по событию, которое отправляется при достижении определенной метки в мувике фазы нападения, но может есть решение проще?
Можно, конечно, перенести запуск анимации обороняющегося с 1000мс на 1100мс...