 |
3D-программирование Вопросы, касающиеся программирования 3D мира |
01.01.2007, 23:14
|
#1
|
Оператор ЭВМ
Регистрация: 23.10.2006
Сообщений: 39
Написано одно полезное сообщение (для 0 участников)
|
Анимации. Как загрузить много анимаций?
Подскажите код Blitz3d:
У меня есть 5 анимаций одной модели),
у 1й анимации - 50 кадров,
2й - 100 кадров,
3й - 20 кадров.
4й и 5й - 10 кадров.
Мне необходимо загрузить их, и анимировать в нужные моменты. Это будет одна модель, у которой должны запускаться разные её анимации.
Напишите, пожалуйста мне код:
(напишите код загрузки 5 анимаций для одной модели)
select anim
case 1
(напишите код запуска 1-й анимации)
case 2
(напишите код запуска 2-й анимации)
case 3
(напишите код запуска 3-й анимации)
case 4
(напишите код запуска 4-й анимации)
case 5
(напишите код запуска 5-й анимации)
end select
|
(Offline)
|
|
01.01.2007, 23:35
|
#2
|
.
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений (для 6,863 пользователей)
|
Re: Анимации. Как загрузить много анимаций?
Mesh=LoadAnimMesh("...")
ExtractAnimSeq(Mesh,0,50)
ExtractAnimSeq(Mesh,51,150)
ExtractAnimSeq(Mesh,151,170)
ExtractAnimSeq(Mesh,171,180)
ExtractAnimSeq(Mesh,181,190)
select anim
case 1
Animate Mesh,1,1,1
case 2
Animate Mesh,1,1,2
case 3
Animate Mesh,1,1,3
case 4
Animate Mesh,1,1,4
case 5
Animate Mesh,1,1,5
end select
Молодец, вопрос оформлен подобающе, но поспешил, во-первых, относительно анимации модели и её формата, так-как есть и md2, анимационные комманды. И насчёт анимаций, 5 анимаций, и что? Нежно то расписать ещё и с какого по какой кадр, а не по скока.
|
(Offline)
|
|
02.01.2007, 00:15
|
#3
|
Оператор ЭВМ
Регистрация: 23.10.2006
Сообщений: 39
Написано одно полезное сообщение (для 0 участников)
|
Re: Анимации. Как загрузить много анимаций?
Спасибо, за ответ.
Меня ещё интересует вопрос:
в стандартном примере анимации "makbot" две анимации загружаются из разных файлов:
mesh_3ds=LoadAnimMesh("makbot\mak_robotic.3ds");an im seq 0
LoadAnimSeq(mesh_3ds,"makbot\mak_running.3ds");ani m seq 1
...
If ... then Animate mesh_3ds,1,.5,1
If ... then Animate mesh_3ds,2,1,0
...
Я тоже думал о том чтобы 5 анимаций одной модели были в 5ти файлах, возможно это реализовать как в этом примере только для 5ти анимаций?
|
(Offline)
|
|
02.01.2007, 00:43
|
#4
|
.
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений (для 6,863 пользователей)
|
Re: Анимации. Как загрузить много анимаций?
Да возможно, но зачем? Если у тебя глав. персонаж, то лучше всё в одном файле, это экономнее и удобнее. А если у тебя будет что-то подобие стратежки или рпг, где будут одинаковые скелеты, и для них анимации, то это как скин получается, тогда лучше делать модельки, и отдельно анимационные скелеты, которые и загружаются подобно как в примере.
|
(Offline)
|
|
02.01.2007, 17:29
|
#5
|
Оператор ЭВМ
Регистрация: 23.10.2006
Сообщений: 39
Написано одно полезное сообщение (для 0 участников)
|
Re: Анимации. Как загрузить много анимаций?
В 3дмаксе есть такое свойство анимации что он сглаживает её. Тоесть если мне надо сделать в диапозоне 1-50 анимацию "стоит" а в диапозоне 51-100 анимацию "встаёт" то получается что в 50м кадре и в 51м должен быть разрыв, который не должен быть сглажен. ... Надо будет посмотреть как там в 3дМаксе убрать сглаживание.
Ещё.
Да я делаю анимацию скелета человека.
Далее я хочу сделать разные модели этих людей и чтобы они двигались используя этот скелет.
Я с этим первый раз имею дело, тоесть сейчас в первый раз открываю это для себя.
Как это сделать?
Я это представляю так:
есть файл во всеми анимациями (скелет)
есть файлы каждой части тела (ноги, руки, тело...)
каждая часть тела становится Chield-ами для соответсвующей части скелета, тоесть её принимает координаты.
Или лучше модель тоже сделать в одном файле, а потом выделить от туда каждую часть?
|
(Offline)
|
|
04.01.2007, 04:39
|
#6
|
Бывалый
Регистрация: 12.10.2006
Сообщений: 737
Написано 131 полезных сообщений (для 452 пользователей)
|
Re: Анимации. Как загрузить много анимаций?
2MoKa или кто знает.
Ответьте пожалуйста.
Сообщение от MoKa
[code]
есть и md2, анимационные комманды.
|
А возможно в md2 несколько моделей сочетать, а не одну цельную?
Можно ли в нем экспортировать много кадров анимации? У меня, почему-то, 140 максимум.
И почему он экспортируется зеркально?
Сообщение от MoKa
[code]
тогда лучше делать модельки, и отдельно анимационные скелеты, которые и загружаются подобно как в примере.
|
А это вообще как в блице реализовать, чтобы анимационный скелет был отдельно от модели? Расскажи подробнее.
Возможно ли, наложить анимационную последовательносить, когда модели слегка отличаются? (оружие другое или еще чего...)
Заранее благодарен, avel/
|
(Offline)
|
|
04.01.2007, 19:29
|
#7
|
Дэвелопер
Регистрация: 19.03.2006
Сообщений: 1,241
Написано 10 полезных сообщений (для 17 пользователей)
|
Re: Анимации. Как загрузить много анимаций?
А это вообще как в блице реализовать, чтобы анимационный скелет был отдельно от модели? Расскажи подробнее.
Возможно ли, наложить анимационную последовательносить, когда модели слегка отличаются? (оружие другое или еще чего...)
Заранее благодарен, avel/
|
Вообще просто, тут я использую- B3D. Создаеш главный файл Модель +Скелет(все кости превязаны, и точно настроены!!!). Затем экспортируеш его правельно(дело в том что при экспорте нужно правельно паставить галочки(как я парился- ух кипел)). Далее создаеш создаеш анимацию удаляеш ВСЕ кроме Костей, И все.......  
|
(Offline)
|
|
05.01.2007, 01:41
|
#8
|
.
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений (для 6,863 пользователей)
|
Re: Анимации. Как загрузить много анимаций?
md2 - это не скелетная анимация, это повертексная, и уже почти забытая. Желаю и вам забыть о ней.
vlad - это он о 3Д Максе.
avel - да возможно, я с этим точно не работал, но примерно скажу, своё об этом представление. Сперва глянь вот это, из 3 сообщения Нунена:
mesh_3ds=LoadAnimMesh("makbot\mak_robotic.3ds");an im seq 0
LoadAnimSeq(mesh_3ds,"makbot\mak_running.3ds");ani m seq
|
Видишь, анимация загружена из отдельного файла. Как я представляю себе это, то первая модель это модель со скилетом и привязоными к костям точками. А вот в файле, только скилет, где названия костей, индентичны названию костей в моделе со скелетом, но в этом файле, нету модели, там только тот-же скелет, но с анимацией.
Относительно анимированию, частей тела, есть команда, которая поворачивает и двигает определённую кость, но это программно, реализовать можно, но написав свои функции, если подумать, не слишком и сложно.
Но если анимировать, каждую часть тела? Зачем, так нигде не реализовано! Например HL2, там ниже пояса, и выше, а голова програмно + тело может отправится в безанимационное состояние - только физика. Обычно так и делают в последних новинках.
Относительно разным моделям, и одинаковой анимации, конечно можно что-бы разные модели были, зачем тогда делать анимацию отдельно?
|
(Offline)
|
|
05.01.2007, 03:01
|
#9
|
☭
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений (для 2,707 пользователей)
|
Re: Анимации. Как загрузить много анимаций?
кста. loadAnimSeq возвращает номер секвенции, что очень удобно.
|
(Offline)
|
|
05.01.2007, 03:48
|
#10
|
.
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений (для 6,863 пользователей)
|
Re: Анимации. Как загрузить много анимаций?
Да тоесть, получется подобно с работой мд2.
Насчёт экспорта анимации из 3д макса, ну когда анимация плавная, с этим должно быть где-то там лекарство.
|
(Offline)
|
|
05.01.2007, 11:43
|
#11
|
Дэвелопер
Регистрация: 07.09.2005
Сообщений: 1,519
Написано 66 полезных сообщений (для 164 пользователей)
|
Re: Анимации. Как загрузить много анимаций?
2 MoKa : .MD2- это самый быстрый формат для Блица, не терпящего большого количества обьектов вообще, и как следствие костей в частности. В случае, если необходимо большое количество сложных "многочайлдовых" анимированных обьектов- вертексная анимация .МД2 остается единственным выходом. Поэтому забывать ёё, в отличии от .Х и .ЗДС не рекомендую.
|
(Offline)
|
|
05.01.2007, 11:46
|
#12
|
.
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений (для 6,863 пользователей)
|
Re: Анимации. Как загрузить много анимаций?
МД2 остается единственным выходом
|
А вот и не соглашесь я с вами, если есть ручки, то небольшие 2-3 функции, сделают это и с b3d
|
(Offline)
|
|
05.01.2007, 12:31
|
#13
|
Дэвелопер
Регистрация: 07.09.2005
Сообщений: 1,519
Написано 66 полезных сообщений (для 164 пользователей)
|
Re: Анимации. Как загрузить много анимаций?
Обоснуйте (с)
|
(Offline)
|
|
05.01.2007, 13:50
|
#14
|
.
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений (для 6,863 пользователей)
|
Re: Анимации. Как загрузить много анимаций?
Пишем, с нуля, скелет, анимацию, свой формат, и всё будет!
|
(Offline)
|
|
05.01.2007, 15:19
|
#15
|
Дэвелопер
Регистрация: 07.09.2005
Сообщений: 1,519
Написано 66 полезных сообщений (для 164 пользователей)
|
Re: Анимации. Как загрузить много анимаций?
Пишем, с нуля, скелет, анимацию, свой формат, и всё будет!
|
Шановний, це ганьба! (с)
Ты меня просто не слушаешь и говоришь в сущности глупости.
Как формат .БЗД вполне хорош: его минус- это разве что ограничение влияния одна-кость-на-вертекс. Но Блиц тормозит при увеличении количества обьектов в мире, а анимированный БЗД состоит из множества обьектов: это и чайлды модели, и кости.
МД2 же- это единый обьект. Тесты производительности БЗД и МД2 уже были, в т.ч. и я приводил их еще на старых Блицгеймсах: потери скорости БЗД впечатляют.
Потому новый формат с костной анимацией в Блице ничего не изменит: МД2 всё равно будет выигрывать в скорости в разы, и тем больше, чем сложней будет требуемая анимация модели.
P.S. Давайте не будем безосновательно флудить?
|
(Offline)
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 09:47.
|