Squirrel Posted November 18, 2020 Share Posted November 18, 2020 Доброго времени суток уважаемые разработчики! Суть проблемы проста. Вы делаете анимацию в блендере, скажем на 30кадров длиной, выставляете в настройках блендера 30кадров в сек скорость воспроизведения. И справедливо ожидаете что время воспроизведения как в аниматоре блендера так и в движке Unigine будет одинаковой = 1 сек. Но не тут то было. Если импортировать по дефолту с выставленными 30ю кадрами в тулзе движка, то вы получаете очень медленную анимацию при нормальной скорости воспроизведения (Playback speed = 1.0). Т.е. я предполагаю что тулзовмина которая производит импорт анимационной модели и семплинг ключей с заданным рейтом делает это как то через ж... коряво. Пожалуйста разберитесь и накажите кого попало) А если лень самим анимировать в блендере, я прилагаю простую тестовую модель с двумя анимациями. hands01.blend Link to comment
apokefal Posted November 25, 2020 Share Posted November 25, 2020 Здравствуйте Squirrel! В данный момент реализовано так: Есть анимация в 30 кадров. Внутри движок вычисляет текущее время как: new_time = time + ifps * speed; Потом это время используется как установка кадра: mesh_ptr->setFrame(0, time). Получается если Payback speed = 1.0 , то 30 секунд он воспроизведет всю анимацию, а если хотим за 1 секунду всё воспроизвести, то ставим Payback speed = 30. Т.е. в некоторых случаях придется самому вычислять корректное значение playback_speed num_frames / duration В будущем, настройки анимации будут улучшены. 1 Link to comment
Recommended Posts