Тема: Гусеница
Показать сообщение отдельно
Старый 28.01.2007, 21:15   #45
Fant
Бывалый
 
Регистрация: 05.09.2005
Сообщений: 623
Написано 4 полезных сообщений
(для 5 пользователей)
Re: Гусеница

ТОка хотел написать! Я все сделал, кроме в скобках...[n]
Graphics3D 640,480,16,2
Type track
Field obj
End Type 
;Ñîçäàåì îðèãèíàëüíû êóá
OriginalTrack=CreateCube()
ScaleEntity OriginalTrack,.025,.025,.025
HideEntity OriginalTrack
 
For a=0 To 9;äåëàåì 10 êóáèêîâ, êîòîðûå íóæíî ðàññòàâèòü ïî-÷åëîâå÷åñêè
t.track=New track
t\obj=CopyEntity (originalTrack)
 
RotateEntity t\obj,0,0,0
PositionEntity t\obj,-1,-.25,.6
SetAnimKey t\obj,0
RotateEntity t\obj,0,0,0
PositionEntity t\obj,-1,.25,.6
SetAnimKey t\obj,60
RotateEntity t\obj,0,0,0
PositionEntity t\obj,1,.25,.6
SetAnimKey t\obj,120
RotateEntity t\obj,0,0,0
PositionEntity t\obj,1,-.25,.6
SetAnimKey t\obj,180
RotateEntity t\obj,0,0,0
PositionEntity t\obj,-1,-.25,.6
SetAnimKey t\obj,240
AddAnimSeq t\obj,240
Animate t\obj,1,1,0, i*24
Next
 
Const UPS=60
cam=CreateCamera()
RotateEntity cam,0,0,0
PositionEntity cam,0,0,-1
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
Ну только расположить не могу (впрочем как и раньше). Они у меня все в одной точке начинаются! Понимаешь?

А теперь покажу, если сделать по-твоему. мне кажется оба варианта эквиваленты, но как же их расположить в форме прямоугольника! Вот в этом и загвоздка!

Graphics3D 640,480,16,2
Type track
Field obj[10]
End Type 
;Ñîçäàåì îðèãèíàëüíû êóá
OriginalTrack=CreateCube()
ScaleEntity OriginalTrack,.025,.025,.025
HideEntity OriginalTrack
 
For a=0 To 9;äåëàåì 10 êóáèêîâ, êîòîðûå íóæíî ðàññòàâèòü ïî-÷åëîâå÷åñêè
t.track=New track
t\obj[a]=CopyEntity (originalTrack)
 
RotateEntity t\obj[a],0,0,0
PositionEntity t\obj[a],-1,-.25,.6
SetAnimKey t\obj[a],0
RotateEntity t\obj[a],0,0,0
PositionEntity t\obj[a],-1,.25,.6
SetAnimKey t\obj[a],60
RotateEntity t\obj[a],0,0,0
PositionEntity t\obj[a],1,.25,.6
SetAnimKey t\obj[a],120
RotateEntity t\obj[a],0,0,0
PositionEntity t\obj[a],1,-.25,.6
SetAnimKey t\obj[a],180
RotateEntity t\obj[a],0,0,0
PositionEntity t\obj[a],-1,-.25,.6
SetAnimKey t\obj[a],240
AddAnimSeq t\obj[a],240
Animate t\obj[a],1,1,0, i*24
Next
 
Const UPS=60
cam=CreateCamera()
RotateEntity cam,0,0,0
PositionEntity cam,0,0,-1
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)
 
Ответить с цитированием