Комментарии 6
1. Неплохо бы указать лицензию на гитхабе.
2. Можно упростить код, запустив цикл захвата не через Update, а через коротину и делая задержку в бесконечном цикле с нужным fps-ом:
3. Запуск захвата можно делать автоматически, без необходимости нажатия на пробел.
4. Остановку захвата можно делать автоматически, анализируя состояние флага isSleeping у всех RigidBody на иерархии. Как только все уснут — можно делать дамп анимации и стопать редактор через:
5. Метод Start может быть коротиной, автоматически стартуемой юнити, поэтому AnimationRecorderRagdollHelper можно упростить:
2. Можно упростить код, запустив цикл захвата не через Update, а через коротину и делая задержку в бесконечном цикле с нужным fps-ом:
yield return new WaitForSeconds(1f / fps);
3. Запуск захвата можно делать автоматически, без необходимости нажатия на пробел.
4. Остановку захвата можно делать автоматически, анализируя состояние флага isSleeping у всех RigidBody на иерархии. Как только все уснут — можно делать дамп анимации и стопать редактор через:
UnityEditor.EditorApplication.isPlaying = false;
5. Метод Start может быть коротиной, автоматически стартуемой юнити, поэтому AnimationRecorderRagdollHelper можно упростить:
private IEnumerator Start ()
{
yield return new WaitForSeconds ( _startingDelay );
....
В animator вроде как встроенный record mode есть, можно им записать было.
а как работает коллизия с полом, стенами, другими персонажами, если у вас не рэгдол, а одна большая анимация? или этого нет?
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Как мы оптимизировали Ragdoll анимацию смерти в Unity