Сообщение от shyrikkk
неполучаеться !!! не выходит !!!! код у тебя не правельный !!!
|
1. Ты грузил текстуру в цикле - это косяк.
2. Использованная тобой привязка к миллисекундам будет показывать не с нулевого кадра, а неизвестно с какого.
Вот даю рабочий код, в котором разделил твою функцию на две, загрузка и обновление.
Добавил флаг анимации - надо ли анимировать. Повторный запуск анимации по нажатию на пробел.
Ну и глобальных переменных добавил.
Graphics3D 640,480
SetBuffer BackBuffer()
camera=CreateCamera()
light=CreateLight()
RotateEntity light,90,0,0
Global sprite=CreateSprite ()
PositionEntity sprite,0,0,5
Global anim_tex
Global onAnimate = True
Global timeStart
Global frame
trLoad()
While Not KeyDown( 1 )
If(KeyHit(57) > 0)
onAnimate = True
frame = 0
EndIf
UpdateWorld
trUpdate()
RenderWorld
Flip
Wend
End
Function trLoad()
anim_tex = LoadAnimTexture( "b.jpg",1,128,128,0,30 )
EntityBlend sprite ,3
EntityTexture sprite,anim_tex,0
timeStart = MilliSecs()
End Function
Function trUpdate()
If(onAnimate = True)
If(MilliSecs() - timeStart >= 50)
EntityTexture sprite,anim_tex,frame
frame = frame + 1
If(frame=29) onAnimate = False
timeStart = MilliSecs()
EndIf
EndIf
End Function