[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]


  • Страница 1 из 1
  • 1
Модератор форума: Spidy, turBO, blitz3d  
Форум мира Blitz3D » Язык Blitz3D » 3D программирование » анимации (у меня проблема с анимации)
анимации
goДата: Пятница, 18.02.2011, 07:45 | Сообщение # 1
ламер
Группа: Пользователи
Сообщений: 6
Награды: 0
Репутация: 0
Статус: Offline
Graphics3D 800,600
SetBuffer BackBuffer()

player=LoadAnimMesh("player.b3d")
idle=ExtractAnimSeq(player,34,61)
run=ExtractAnimSeq(player,62,92)
run_back=ExtractAnim Seq(player,93,123)

PositionEntity player ,0,0,-25

Global head=FindChild(player,"Bip01 Head")

cam=CreateCamera®
PositionEntity cam ,0,0,-50

Global headyaw,headpitch
Global state
Const transpose = 10

While Not KeyHit(1)

If KeyDown(203) Then headyaw=headyaw+1:If headyaw > 80 Then headyaw = 80
If KeyDown(205) Then headyaw=headyaw-1: If headyaw < -80 Then headyaw = -80
If KeyDown(200) Then headpitch=headpitch+1: If headpitch > 20 Then headpitch= 20
If KeyDown(208) Then headpitch=headpitch-1 : If headpitch < -25 Then headpitch= -25

If KeyDown(17) And latch_key_Q = False Then Animate player,1,0.5,run,transpose:latch_key_Q = True:state=3
If Not KeyDown(17)Then latch_key_Q = False

If KeyDown(31) And latch_key_W = False Then Animate player,1,0.5,run_back,transpose:latch_key_W = True:state=1
If Not KeyDown(31) Then latch_key_W = False

If state=4 Then Animate player,1,0.5,idle,5

If Not KeyDown (17) Then

If state=3 Animate player,1,0.5,idle,5

End If
If Not KeyDown (31) Then

If state=1 Animate player,1,0.5,idle,5
End If

RenderWorld
UpdateWorld
Text 200,200, "state="+state

RotateEntity head,headpitch,0,headyaw

Flip
Wend

End

;------------------------------------------------------------------------------------------------
не могу зделать так штобы когда нажымаю w штобы шол вперёд а кагда атпускаю штобы была анимации idle

Сообщение отредактировал go - Пятница, 18.02.2011, 07:48
 
MOrtALДата: Пятница, 18.02.2011, 11:02 | Сообщение # 2
ламер
Группа: Пользователи
Сообщений: 12
Награды: 0
Репутация: 0
Статус: Offline
Global player
player=LoadAnimMesh("Models\Pl\Player.b3d")
anim=FindChild(player,"Body")
idle=ExtractAnimSeq(player,34,61)
run=ExtractAnimSeq(player,62,92)
run_back=ExtractAnim Seq(player,93,123)

If KeyDown(17) then
Animate anim, 1, 0.1,run
Else
Animate anim, 1, 0.1,idle
EndIf

If KeyDown(31) then
Animate anim, 1, 0.1,run_back
Else
Animate anim, 1, 0.1,idle
EndIf

Как-то тка .....сам не тестировал
Если не поможет...скинь пожалик модели...я разберусь

 
goДата: Пятница, 18.02.2011, 14:23 | Сообщение # 3
ламер
Группа: Пользователи
Сообщений: 6
Награды: 0
Репутация: 0
Статус: Offline
http://narod.ru/disk/5890346001/anim.rar.html
 
MOrtALДата: Суббота, 19.02.2011, 05:52 | Сообщение # 4
ламер
Группа: Пользователи
Сообщений: 12
Награды: 0
Репутация: 0
Статус: Offline
Может мне кажется или нет.....но у тя анимация idle в максе каряво сделана
 
goДата: Суббота, 19.02.2011, 09:37 | Сообщение # 5
ламер
Группа: Пользователи
Сообщений: 6
Награды: 0
Репутация: 0
Статус: Offline
idle=ExtractAnimSeq(player,32,61) попробуи так
 
MOrtALДата: Суббота, 19.02.2011, 14:45 | Сообщение # 6
ламер
Группа: Пользователи
Сообщений: 12
Награды: 0
Репутация: 0
Статус: Offline
Я говорю...у тя точно нормально анимация сделана когда чел не подвижен????
 
Форум мира Blitz3D » Язык Blitz3D » 3D программирование » анимации (у меня проблема с анимации)
  • Страница 1 из 1
  • 1
Поиск: