forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   3D-программирование (http://forum.boolean.name/forumdisplay.php?f=12)
-   -   проблема с аним. (http://forum.boolean.name/showthread.php?t=7525)

NitE 31.12.2008 21:57

Re: проблема с аним.
 
tormoz спасиб, тока странно, я вроде понял как делать и если писать простую прогу с нуля то всё работает, а в игру вставить немогу ё-маё )))
вообще спасибо те за советы - многие проблемы помогаешь решать )))

ELIAS получить в условиях просто AnimSeq(player)=1 или 2 или что те надо... ф функций если надо пишешь Return и тоже самое... а аним сек экстракнуть вообще из мебя проблемы не представляет... например
Код:

Global player=LoadAnimMesh("player.b3d")
fuckingpieceofasscockshit=ExtractAnimSeq(player,10,70)
Animate player,1,1,fuckingpieceofasscockshit,0



хотя нет, всёравно неясно как переключать 2 анимаций (отдельно загруженных)
tormoz может покажешь кодом ? )

а вот теперь разобрался, хотя проблема была вовсе не в анимсек а в операторе Or )))

ELIAS 31.12.2008 22:19

Ответ: проблема с аним.
 
Цитата:

ф функций если надо пишешь Return и тоже самое... а аним сек экстракнуть вообще из мебя проблемы не представляет... например

Global player=LoadAnimMesh("player.b3d")
fuckingpieceofasscockshit=ExtractAnimSeq(player,10 ,70)
Animate player,1,1,fuckingpieceofasscockshit,0
Я так и делал! И сейчас твой код копирнул, заменил - ничего не анимируется!!! :( Че такое(((

NitE 31.12.2008 22:27

Re: проблема с аним.
 
слабо понятно что у тя там происходит, кин сюда модель, я те напишу код...

tormoz 31.12.2008 22:31

Ответ: проблема с аним.
 
Код:

;------загрузка--------
player=LoadAnimMesh("player.b3d")
ExtractAnimSeq(player,0,9)
ExtractAnimSeq(player,10,70)
ExtractAnimSeq(player,71,100)

;-----------цикл-------
If key_move
  a_mode=1
  a_speed=0.5
  a_player=1
  a_tran=20
endif

If key_attak
  a_mode=3
  a_speed=1
  a_player=2
  a_tran=2
endif

If key_jump
  a_mode=3
  a_speed=1
  a_player=3
  a_tran=8
endif

aseq_player=AnimSeq(player)
If aseq_player<>a_player
  Animate player,a_mode,a_speed,a_player,a_tran
EndIf


NitE 31.12.2008 22:49

Re: проблема с аним.
 
aseq_player<>a_player

вот про такую фичу я ваще незнал )))... я впринципе так и пытался сделать, но черезжопными способами, а у тя всё просто и красиво )) спс

да кстати у тут ещё такой вопрос, как сделать чтобы до того как играть следующую анимацию (в рандомный момент проигрывания предыдущей) модель ставилась в изначальное положение ?? а то у меня некоторые анимируемые кости остаются в положений преюдущей анимаций во время проигрывания следующей, и это плохо... что делать ?? пробовал SetAnimKey, один хрен...

ELIAS 31.12.2008 22:57

Ответ: проблема с аним.
 
Цитата:

слабо понятно что у тя там происходит, кин сюда модель, я те напишу код...
Ты мне скажи лучше какие ты галочки ставищь при экспорте? А лучше скриншот сделай настроек экспортёра ;) Неполучится, тогда кину модель!
Спасибо:)

NitE 31.12.2008 23:00

Re: проблема с аним.
 
читай это http://blitz-coder.narod.ru/text/hl2/hl2import.htm потом там ещё внизу ссылка на следующую статью, её тоже прочитай... но модель всёравно кинь (ведь не комм. проект делаешь) )))

ELIAS 01.01.2009 15:14

Ответ: проблема с аним.
 
Спасибо, NitE, по-настоящему полезная информация. :)
И у меня всё анимируется по тому способу что описан на этой странице http://www.blitz-coder.narod.ru/text/export/export.htm
Но, опять же как мне проиграть какую-нибудь определённыу секцию анимации??? Если следовать этому способу, то придётся каждую секцию анимации сохранять в отдельный файл((( Это долго, это неудобно, это органичивает возможности...(((
Только пожалуйста, если выход есть, то пишите кодом. Спасибо :)

ЗЫ: Комм.проект делаю:)

NitE 01.01.2009 15:29

Re: проблема с аним.
 
если дашь модель я те напишу, а так как уже неоднократно говорилось ExtractAnimSeq
а шо за проект делаешь 0о?

ELIAS 01.01.2009 16:31

Ответ: проблема с аним.
 
Вот здесь скачивай Скачать SceletonAnim_from_ELS.rar с WebFile.RU
Тут и бб файл и макс модель и экспортнутая модель и экспортнутая анимация. И всё это 36 кб! :)
Пробел нажимаешь и проигрывается вся анимация!

Вот ты сделай, чтобы если нажимаешь пробел, проигрывалась анимация с 0 по 50 кадры. А если нажимаешь на ентер, то проигрывается анимация с 75 по 100 кадры.

ЗЫ: Делаю 3Д аркаду-платформер:)

NitE 01.01.2009 16:38

Re: проблема с аним.
 
так что те сделать надо ?

ELIAS 01.01.2009 16:59

Ответ: проблема с аним.
 
Я же сказал, что мне нужно чтобы проигрывались определённые секции анимации. Сечас при нажатии пробела, проигрывается вся анимация от 0 до 100 кадра. А мне нужно чтобы если нажимаешь пробел, проигрывалась анимация с 0 по 50 кадры. А если нажимаешь на ентер, то проигрывается анимация с 75 по 100 кадры.

tormoz 01.01.2009 17:43

Ответ: проблема с аним.
 
Блин, нафига и кому я код писал ?

При скелетной анимации не забываем, что анимируемый меш нужно выдернуть FindChild
Получится 2 объекта:
модель - ее двигаем поворачиваем и тд
аним меш - его анимируем

ELIAS 01.01.2009 18:12

Ответ: проблема с аним.
 
tormoz, что то я не вижу ни в одном твоём коде на этой странице даже функцию findchild.... Вообщем не получается у меня,,шзхжъы(((((((((((((((((((((((((((((((((((((( (((((((((((((:''((

tormoz 01.01.2009 18:19

Ответ: проблема с аним.
 
Код:

;------загрузка--------
player_all=LoadAnimMesh("player.b3d")

player=FindChild(player_all,"имя_меша_в_максе")
ExtractAnimSeq(player,0,9)
ExtractAnimSeq(player,10,70)
ExtractAnimSeq(player,71,100)

;-----------цикл-------
If key_move
  a_mode=1
  a_speed=0.5
  a_player=1
  a_tran=20
endif

If key_attak
  a_mode=3
  a_speed=1
  a_player=2
  a_tran=2
endif

If key_jump
  a_mode=3
  a_speed=1
  a_player=3
  a_tran=8
endif

aseq_player=AnimSeq(player)
If aseq_player<>a_player
  Animate player,a_mode,a_speed,a_player,a_tran
EndIf

Двигать, позиционировать и поворачивать только player_all
player - объект для операций с анимациями


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

vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot