Страницы: 1

Ответить
RSS
C# OpenTK Анимация, Вопрос по анимированию модели
 
Всем привет.
Ребята, может кто-то подсказать с помощью чего можно анимировать 3D модель в OpenGL.
Кто какие библиотеки\техники использует?
Может быть, Assimp может это как-то организовать(использую его для загрузки моделей).
Вступай в ряды авторов esate.ru!
 
Привет!
Смотря какую анимацию нужно получить. Если нужно воспроизвести анимацию из файла, то Assimp подойдет, к примеру тыц и перевод. В файле скорее всего будет скелетная анимация. И нужно будет зачитать матричные преобразования  и их веса/коэфециенты из файла с помощью Assimp или иной библиотеки, и применить их на указаных в файле вершинах, которые привязаны к костям. Все это сделать в таймере/апдейте приложения.
Если нужно, что то более примитивное, то просто (видео пример) делаем матричные трансформации вершин в таймер/апдейте. В зависимости какие сделаем преобразование, - такие получим анимации.
 
Цитата
badcat написал:
Если нужно воспроизвести анимацию из файла, то Assimp подойдет, к примеру  тыц  и  перевод . В файле скорее всего будет скелетная анимация.
Я это дело пробовал, на последних версиях ассимпа не прокатывает.
Цитата
badcat написал:
Если нужно, что то более примитивное, то просто  (видео пример)  делаем матричные трансформации вершин в таймер/апдейте.
Штуки из этого видео я уже давно на нескольких языках реализовывал, это не то.

Решил описать сам себе:
Assimp - крутая штука для быстрой загрузки некоторых, отрисованных не в самых новых версиях редакторов моделек некоторых форматов.
Заанимировать модельку тоже нужно, но исходники искть нужно прямо на gitHub или Bitbucket в открытых уже работающих репозитариях и, желательно, на языке Си (портирование кода пройдет не без потерь со стороны нервных клеток, но это, все же, реально).

В проектах, рассчитаных для не сильно производительных ПК, десяток движущихся по какой-то логике моделек может быть достаточно что бы высадить Вам FPS до минимума, и это печалит. Чаще всего это связывают с языком, а именно с тем, что это не С и работать графика быстро не может, однако это не так.

Самый лучший вариант - разработать свой формат анимации и свой алгоритм для ее воспроизведения и оптимизировать его при любой возможности.
Здесь даже не так важно OpenGL это или DirectX.

badcat, Спасибо за ссылки, в любом случае)
Вступай в ряды авторов esate.ru!
 

Как я понял вопрос все решен. Или всетаки нет?

Freaky_Brainstorm написал:
но исходники искть нужно прямо на gitHub или Bitbucket в открытых уже работающих репозитариях

Исходники библиотеки?

Freaky_Brainstorm написал:
работать графика быстро не может, однако это не так.

Не совсем понял двойное отрицание). Это в случаи своего формата сможет работать быстро, верно? То есть другие форматы не подойдут?

 
Цитата
badcat написал:
Как я понял вопрос все решен. Или всетаки нет?
Для меня - да.
Цитата
badcat написал:
Исходники библиотеки?
Исходники кода для работы с Assimp.Net
Цитата
badcat написал:
Не совсем понял двойное отрицание). Это в случаи своего формата сможет работать быстро, верно? То есть другие форматы не подойдут?
Бытует мнение, что код на C/C++ быстрее кода на C# из-за его (C#) технических особенностей.
Я имел в виду то, что не отрицаю этого, но если грамотно все построить, то можно достич хорошей производительности и на C#, но (в моем случае) не при помощи Assimp, а при помощь собственных наработок.
Вступай в ряды авторов esate.ru!
 
Понятно. Спасибо за ответ.
Успехов в развитии наработок
Страницы: 1

Ответить
Читают тему (гостей: 1)
Форма ответов
Текст сообщения*
Загрузить файл или картинкуПеретащить с помощью Drag'n'drop
Перетащите файлы
Ничего не найдено
Загрузить картинки
Отправить Отменить
 
^
Регистрация
Регистрируясь, вы принимаете правила сайта. Если вы не получили код подтв. регистрации - не забудьте проверить папку спам.
Логин*
Email*
Пароль*
Подтверждение пароля*
 
Логин*
Код*
 
×
Восстановление пароля
Пожалуйста, заполните поля, после чего вы получите код подтверждения на ваш Email. Если код не пришел в течении нескольких минут - проверьте папку спам.
Логин

или Email
Логин*
Код подтверждения*
Новый пароль*
Подтверждение пароля*
×
Авторизация
  • Используйте вашу учетную запись на Facebook.com для входа на сайт.
  • Используйте вашу учетную запись VKontakte для входа на сайт.
  • Используйте вашу учетную запись Google для входа на сайт.
Авторизуйтесь с помощью соц. сети или с помощью аккаунта на сайте:
×