|
3D-программирование Вопросы, касающиеся программирования 3D мира |
26.02.2008, 13:24
|
#1
|
Легенда
Регистрация: 14.10.2007
Сообщений: 3,878
Написано 2,012 полезных сообщений (для 5,072 пользователей)
|
Есть три модели с одинаковым скелетом.
1-анимированая(Animated)
2-неанимированая(Model)
3-анимированый скелет составляющий основу предыдущих моделей. Т.е только скелет и анимация.
Гружу анимацию из 3 в 2 незапускается
Гружу анимацию из 1 в 2 тоже незапускается!
Ну ладно первый случай, но второй почему неработает? В чем дело?
Подробнее во вложении ниже.
Вот собственно сам код и модели.
Последний раз редактировалось jimon, 26.02.2008 в 13:42.
|
(Offline)
|
|
26.02.2008, 13:31
|
#2
|
.
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений (для 6,863 пользователей)
|
Ответ: LoadAnimSeq
Код не смотрел.
В общем, грузишь модель как анимированную (LoadAnimMesh), далее находишь чайлд, который тебе нада анимировать по имени (FindChild), далее грузишь AnimSeq на этот чайлд, и анимируешь этот чайлд.
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
26.02.2008, 13:44
|
#3
|
Легенда
Регистрация: 14.10.2007
Сообщений: 3,878
Написано 2,012 полезных сообщений (для 5,072 пользователей)
|
Ответ: LoadAnimSeq
Спасибо. Ща попробую.
|
(Offline)
|
|
26.02.2008, 13:56
|
#4
|
Легенда
Регистрация: 14.10.2007
Сообщений: 3,878
Написано 2,012 полезных сообщений (для 5,072 пользователей)
|
Ответ: LoadAnimSeq
Сообщение от MoKa
Код не смотрел.
В общем, грузишь модель как анимированную (LoadAnimMesh), далее находишь чайлд, который тебе нада анимировать по имени (FindChild), далее грузишь AnimSeq на этот чайлд, и анимируешь этот чайлд.
|
Пробую:
Graphics3D 1024,768,32,1
SetBuffer BackBuffer()
cam=CreateCamera():PositionEntity cam,0,0,-400
Model=LoadAnimMesh("Model.b3d")
;Model=LoadAnimMesh("Animated.b3d")
;Skeleton=LoadAnimMesh("Skeleton.b3d")
n=LoadAnimSeq(Model,"Animated.b3d")
CreateLight()
b=FindChild(Model,"Box01")
n=LoadAnimSeq(b,"Animated.b3d")
Animate b,3,1,n
Repeat
If KeyHit(57) Animate b,1,1,n
UpdateWorld
RenderWorld
Text 20,20,n
Flip
Until KeyHit(1)
End
Не работает...
|
(Offline)
|
|
26.02.2008, 15:03
|
#5
|
.
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений (для 6,863 пользователей)
|
Ответ: LoadAnimSeq
n=LoadAnimSeq(Model,"Animated.b3d") - это то зачем?
У тебя в вьювере в пайплайне работает анимация?
Да и не юзай в 3д максе группы, т.к. это будет какбы чайлд в чайлде..
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
26.02.2008, 19:51
|
#6
|
Разработчик
Регистрация: 02.04.2007
Сообщений: 353
Написано 54 полезных сообщений (для 289 пользователей)
|
Ответ: LoadAnimSeq
Это что получаеться что группы можно потом юзать в блице?
|
(Offline)
|
|
26.02.2008, 20:23
|
#7
|
.
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений (для 6,863 пользователей)
|
Ответ: LoadAnimSeq
Да, они находятся под как чайлды, и класс объекта Pivot, далее у них есть свои чайлды, ими могут быть и ещё чейлды содержащие своих "детей", и такая древовидная сеть большая.
Чайлд всегда может содержать другой чайлд. Но думаю там есть ограничения по входу одного в другое от роота (сама модель).
|
(Offline)
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 16:31.
|