Тема: Гусеница
Показать сообщение отдельно
Старый 16.01.2007, 19:34   #11
Vyacheslav
ПроЭктировщик
 
Регистрация: 03.01.2007
Сообщений: 133
Написано одно полезное сообщение
(для 4 участников)
Re: Гусеница

Да, над этой задачей нужно посидеть, логически подумать. В цикле проигрывать уже не нужно - это раз. Задержку можно перед циклом поставить, подождать, чтобы немного проиграло , или что-то типа этого, только оптимизировать:

 
Graphics3D 640,480,16,2
Const UPS=60
Dim cube (12)
cam=CreateCamera()
PositionEntity cam ,10,5,-25
 
cube(1)=CreateCube()
PositionEntity cube(1),0,0,0
SetAnimKey cube(1),0
PositionEntity cube(1),0,10,0
SetAnimKey cube(1),60
PositionEntity cube(1),20,10,0
SetAnimKey cube(1),120
PositionEntity cube(1),20,0,0
SetAnimKey cube(1),180
PositionEntity cube(1),0,0,0
SetAnimKey cube(1),240
 
cube(2)=CreateCube()
PositionEntity cube(2),0,10,0
SetAnimKey cube(2),0
PositionEntity cube(2),20,10,0
SetAnimKey cube(2),60
PositionEntity cube(2),20,0,0
SetAnimKey cube(2),120
PositionEntity cube(2),0,0,0
SetAnimKey cube(2),180
PositionEntity cube(2),0,10,0
SetAnimKey cube(2),240
 
cube(3)=CreateCube()
PositionEntity cube(3),20,10,0
SetAnimKey cube(3),0
PositionEntity cube(3),20,0,0
SetAnimKey cube(3),60
PositionEntity cube(3),0,0,0
SetAnimKey cube(3),120
PositionEntity cube(3),0,10,0
SetAnimKey cube(3),180
PositionEntity cube(3),20,10,0
SetAnimKey cube(3),240
 
cube(4)=CreateCube()
PositionEntity cube(4),20,0,0
SetAnimKey cube(4),0
PositionEntity cube(4),0,0,0
SetAnimKey cube(4),60
PositionEntity cube(4),0,10,0
SetAnimKey cube(4),120
PositionEntity cube(4),20,10,0
SetAnimKey cube(4),180
PositionEntity cube(4),20,0,0
SetAnimKey cube(4),240
 
AddAnimSeq cube(1),240
AddAnimSeq cube(2),240
AddAnimSeq cube(3),240
AddAnimSeq cube(4),240
 
Animate cube(1)
Animate cube(2)
Animate cube(3)
Animate cube(4)
 
l=CreateLight()
period=1000/UPS
time=MilliSecs()-period
 
Repeat
Repeat
elapsed=MilliSecs()-time
Until elapsed
ticks=elapsed/period
tween#=Float(elapsed Mod period)/Float(period)
 
For k=1 To ticks
time=time+period
 
If KeyHit(1) End
UpdateWorld 
Next
 
RenderWorld tween
Flip
Forever
(Offline)
 
Ответить с цитированием