Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для компьютеров > Blitz3D

Ответ
 
Опции темы
Старый 28.11.2009, 09:34   #31
Артем Валерьевич
Бывалый
 
Аватар для Артем Валерьевич
 
Регистрация: 25.12.2007
Адрес: г. Краснодар
Сообщений: 894
Написано 421 полезных сообщений
(для 1,079 пользователей)
Ответ: проблемы с анимацией

Дальше пойдет вопрос, а почему када я жму ескейп оно невыключается и мне приходится выдергивать из розетки....
(Offline)
 
Ответить с цитированием
Старый 28.11.2009, 14:47   #32
H@NON
Дэвелопер
 
Регистрация: 17.01.2007
Сообщений: 1,552
Написано 351 полезных сообщений
(для 774 пользователей)
Ответ: проблемы с анимацией

Объясню что тебе нужно разобрать. При загрузке модели, которую тебе нужно анимировать в программе используй команду LoadAnimMesh, именно она загружает модель со всеми чилдами входящими в нее, в отличие команды LoadMesh(), которая объединяет все чилды в один меш и мы уже не сможим получить доступ к ним. Если у тебя анимация и модель находиться в одном файле, то тебе, чтобы вычленить Часть анимации нужно использовать ExtractAnimSeq(entity, frameStart, frameEnd), если же ты хранишь анимацию в отдельном файле от модели, то тогда используй команду LoadAnimSeq(entity, "file.b3d"). Причем, при создании анимации со скелетом ты этот самый скелет крепишь именно к какому-то чилду в модели перед экспортом в б3д. Чтобы найти этот чилд с анимацией, тебе нужно воспользоваться командой FindChild(model, "name"), причем тут очень важен регистр твоего названия, например чилд с именем "aNiMaTe" и "animate" будут разными чилдами, учти это. Когда ты найдешь этот чилд с анимацией всю обработку анимации веди с ним, то есть запускай анимацию именно для этого чилда, а не для модели. Теперь пойми, что "Запускать" и "Обновлять" это разные вещи, обновление анимации ведет команда UpdateWorld() и ее лучше ставить прямо перед командой RenderWorld(), а вот чтобы ЗАПУСТИТЬ анимацию нужно единожды вызвать команду Animate. Я например пользуюсь следующей схемой : Проверяю нажата ли нужная кнопка, проверяю проигрывается ли необходимая секвенция, и если не проигрывается, то запустить анимацию, также и при отпускании, проверяю, если не нажаты кнопки движения (или действия), то проиграть анимацию ожидания, либо вообще остановить анимацию. Теперь приблизительный код, который должен у тебя сложиться в результате понимания всего что я тебе написал :
model = LoadAnimMesh("model.b3d")
animChild = FindChild(model, "Animate")
seqIdle = ExtractAnimSeq(animChild, 0, 19)
seqRun = ExtractAnimSeq(animChild, 20, 40)

Repeat
    If KeyDown(200) Then
            If AnimSeq(animChild) <> seqRun Then Animate animChild, 1, 0.2, seqRun
    Else
            If AnimSeq(animChild) <> seqIdle Then Animate animChild, 1, 0.2, seqIdle
    EndIf

    UpdateWorld()
    Renderworld()
Until KeyDown(1)

end

Последний раз редактировалось H@NON, 28.11.2009 в 20:51.
(Offline)
 
Ответить с цитированием
Эти 3 пользователя(ей) сказали Спасибо H@NON за это полезное сообщение:
KingMaks (28.11.2009), LUK (29.11.2009), Toon3D (08.12.2009)
Старый 28.11.2009, 19:22   #33
KingMaks
Знающий
 
Аватар для KingMaks
 
Регистрация: 26.11.2009
Сообщений: 313
Написано 35 полезных сообщений
(для 95 пользователей)
Ответ: проблемы с анимацией

все получилось))
тока чуток поправка:
model = LoadAnimMesh("model.b3d")
animChild = FindChild(model, "Animate")
seqIdle = ExtractAnimSeq(animChild, 0, 19)
seqRun = ExtractAnimSeq(animChild, 20, 40)

Repeat
If KeyDown(200) Then
If AnimSeq(animChild) <> seqRun Then Animate seqChild, 1, 0.2, animRun
Else
If AnimSeq(animChild) <> seqIdle Then Animate seqChild, 1, 0.2, animIdle
EndIf

UpdateWorld()
Renderworld()
Until KeyDown(1)

end
(Offline)
 
Ответить с цитированием
Старый 28.11.2009, 19:29   #34
H@NON
Дэвелопер
 
Регистрация: 17.01.2007
Сообщений: 1,552
Написано 351 полезных сообщений
(для 774 пользователей)
Ответ: проблемы с анимацией

откуда ты взял seqChild, animIdle и animRun ?
В коде ты этих переменных не объявлял, может опечатался ты?
(Offline)
 
Ответить с цитированием
Старый 28.11.2009, 20:10   #35
KingMaks
Знающий
 
Аватар для KingMaks
 
Регистрация: 26.11.2009
Сообщений: 313
Написано 35 полезных сообщений
(для 95 пользователей)
Ответ: проблемы с анимацией

тю блин точно во:

model = LoadAnimMesh("model.b3d")
animChild = FindChild(model, "Animate")
seqIdle = ExtractAnimSeq(animChild, 0, 19)
seqRun = ExtractAnimSeq(animChild, 20, 40)

Repeat
If KeyDown(200) Then
If AnimSeq(animChild) <> seqRun Then Animate animChild, 1, 0.2, seqRun
Else
If AnimSeq(animChild) <> seqIdle Then Animate animChild, 1, 0.2, seqIdle
EndIf

UpdateWorld()
Renderworld()
Until KeyDown(1)

end
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
H@NON (28.11.2009)
Старый 29.11.2009, 22:53   #36
LUK
Нуждающийся
 
Регистрация: 21.07.2007
Сообщений: 93
Написано 7 полезных сообщений
(для 13 пользователей)
Ответ: проблемы с анимацией

Зачем так все наехали на человека? Ну новичок, и что? Все такими были...

А проблема с костной анимацией - это довольно сложная вещь - сам когда-то с ней не одну неделю пропарился... так, что логично, что человек задал вопрос... после 10-20 неудачных попыток реализации...

А вообще, я рад, что он завел эту тему... наконец, на форуме появилась тема о анимации , где все уже 100% разжеванно... Сам когда-то в панике бился по поиску и по крохам искал как и что... а теперь есть все и в одном. Так, что пусть эта тема будет небольшим маном для новичков и хорошей памяткой для старожил...

Даже, в подпись добавлю ссыль...
(Offline)
 
Ответить с цитированием
Старый 29.11.2009, 22:55   #37
Dream
быдло
 
Регистрация: 05.08.2007
Сообщений: 1,435
Написано 614 полезных сообщений
(для 1,489 пользователей)
Ответ: проблемы с анимацией

спорим на пиво, что через месяц появится ещё одна тема, от новичка, с такими же вопросами?
(Offline)
 
Ответить с цитированием
Эти 3 пользователя(ей) сказали Спасибо Dream за это полезное сообщение:
Android (30.11.2009), DeadElf (30.11.2009), H@NON (29.11.2009)
Старый 29.11.2009, 22:59   #38
LUK
Нуждающийся
 
Регистрация: 21.07.2007
Сообщений: 93
Написано 7 полезных сообщений
(для 13 пользователей)
Счастье Ответ: проблемы с анимацией

Сообщение от DimasSup Посмотреть сообщение
спорим на пиво, что через месяц появится ещё одна тема, от новичка, с такими же вопросами?
Тогда даешь ему ссыль на:
http://forum.boolean.name/showthread.php?t=10955&page=3

И просишь модератора закрыть тему.

И еще - люди хватит флудить уже не по делу...
(Offline)
 
Ответить с цитированием
Старый 29.11.2009, 23:03   #39
Dream
быдло
 
Регистрация: 05.08.2007
Сообщений: 1,435
Написано 614 полезных сообщений
(для 1,489 пользователей)
Ответ: проблемы с анимацией

) перестаю флудить)) просто глупо тыкать носом. они же не щеночки, чтобы так указывать что и где...
(Offline)
 
Ответить с цитированием
Старый 29.11.2009, 23:26   #40
NitE
злобный флудер
 
Регистрация: 10.07.2007
Сообщений: 2,585
Написано 789 полезных сообщений
(для 1,476 пользователей)
Ответ: проблемы с анимацией

http://forum.boolean.name/showthread.php?t=7525
Костная анимация в B3D- если хочешь разобраться - читать тему от корки до корки!!!

модераторы закройте тему !

LUK, то что ты не видел миллиона идентичных тем - не значит что их нет...
(Offline)
 
Ответить с цитированием
Старый 29.11.2009, 23:29   #41
LUK
Нуждающийся
 
Регистрация: 21.07.2007
Сообщений: 93
Написано 7 полезных сообщений
(для 13 пользователей)
Ответ: проблемы с анимацией

Сообщение от NitE Посмотреть сообщение
LUK, то что ты не видел миллиона идентичных тем - не значит что их нет...
Я не говорил, что их нет... Это логично, что есть... Но когда этим вопросом занимался лично я - ничего нормального не нашел... (Да и проблема у меня была несколько другая...)

Сообщение от NitE Посмотреть сообщение
Костная анимация в B3D- если хочешь разобраться - читать тему от корки до корки!!!
Зачем мою подпись-то цитировать? =) =) =)

ЗЫ: Согласен, закройте тему, плз, и почистите флуд!

Последний раз редактировалось LUK, 01.12.2009 в 18:53.
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как управлять анимацией tormoz FAQ 3 12.12.2009 02:55
Проблема с анимацией Mark Castle 3D-программирование 18 04.11.2009 21:33
помогите с анимацией))) Sashka007 Blitz3D 2 08.09.2009 13:25
Помогите с анимацией... Dzirt 3D Моделирование 17 21.07.2009 16:36
Что-то непонятное с анимацией KRIK 3D-программирование 9 16.04.2008 14:51


Часовой пояс GMT +4, время: 12:28.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com