Дорогие мои человеки помогите кто чем может. При прорисовки на экране спрайта (летящий патрон) происходит явное замедление всего процесса. Коип мощный и исходный код вроде не карявы.
Code
Graphics3D 800,600,32
SetBuffer BackBuffer()
Global camera=CreateCamera() ;Камера
PositionEntity camera,0,0,-850 ;Каординаты камеры
Global swet1=CreateLight() ;освещение
Global samolet1_anime1 = LoadAnimMesh("obekt/samolet1_anime1.b3d") ;загрузка главного самолёта
Global samolet1_x, samolet1_y, samolet1_z ;каординаты главного самолёта
Global patron1_sprait1 = LoadSprite("sprait/1.png",4) ;загрузка патрона
ScaleSprite patron1_sprait1,100,15 ;маштаб спрайта
Global time_patron1_sprait1 ;переменная контроля скорости стрельбы
Type Patron1 ;списак потронов
Field x,y ;начало полёта патрона
Field ps1 ;копия потрона
End Type
HideEntity patron1_sprait1 ;скрываем патрон
;-------------------------------------------------------
While Not KeyDown(1)
;------------------ управление -------------------------------------
If KeyDown(205) And samolet1_x < 750 Then samolet1_x = samolet1_x + 1
If KeyDown(203) And samolet1_x > -750 Then samolet1_x = samolet1_x - 1
If KeyDown(200) And samolet1_y < 550 Then samolet1_y = samolet1_y + 1
If KeyDown(208) And samolet1_y > -400 Then samolet1_y = samolet1_y - 1
PositionEntity samolet1_anime1,samolet1_x,samolet1_y,samolet1_z
;------------- обработка выстрела ----------------------------------------------------------
If KeyDown(29) And MilliSecs() > time_patron1_sprait1 + 1000 Then ;нажимаем кнопку агонь ...
time_patron1_sprait1 = MilliSecs()
p1.Patron1 = New Patron1 ;создаём патрон
p1\x = samolet1_x ;начальное положение патрона
p1\y = samolet1_y
p1\ps1 = CopyEntity (patron1_sprait1) ;копия потрона
w = w+1
EndIf
For p1.Patron1 = Each Patron1 ;проверяем все патроны
If p1\x < 850 Then ;если патрон на экране
p1\x = p1\x + 4 ;скорость патрона (пиксели)
PositionEntity p1\ps1,p1\x,p1\y,0;рисуем патрон
Else ;если патрон за приделами экрана
FreeEntity p1\ps1
Delete p1 ;удаляем патрон
w = w-1
End If
Next
;-------------------------------------------------------------------------------------------------------
UpdateWorld()
RenderWorld()
Flip 0
Wend
;--------------------------------------------------------------------------------------
WaitKey()
End
Слегка поясню самолетик мечется в двух координатах и стреляет в одном направлении (в стиле игры Галактика). Когда начинаю стрелять самолётик начинает двигаться медленней. Что делать как быть, помогите.