|
width=ширина нового изображения (или его кадра
)
height=высота нового изображения frames= необязательный, число кадров (не указывается для одиночного изображения) |
| Иногда Вам нужно создавать графику "на лету" (используя другие изображения, команды рисования, и т.д.) вместо того чтобы загружать его. Эта команда даёт Вам возможность создавать одиночные и анимированные картинки. Вы указываете ширину, высоту, и необязательно, число кадров. |
|
;Пример CreateImage/TileImage/ImageBuffer
; Создаём необходимые переменные ; Одна переменная для создаваемого изображения, одна для таймера Global gfxStarfield, tmrScreen ; Устанавливаем графический режим Graphics 640,480,16 ; Создаём пустое изображение с 32 пикселями в ширину и 32 в высоту с 10 кадрами размерами 32x32 gfxStarfield=CreateImage(32,32,10) ; цикл по всем созданным кадрам изображения For t = 0 To 9 ; Устанавливаем целевой буфер для отрисовки ( в данном случае - картинку) SetBuffer ImageBuffer(gfxStarfield,t) ; рисуем 50 "звёзд" в случайных местах картинки For y = 1 To 50 Plot Rnd(32),Rnd(32) Next Next ; Двойная буферизация для быстроты и плавности отрисовки SetBuffer BackBuffer() ; Цикл до нажатия ESC While Not KeyHit(1) ; Обновляем экран каждые 300 миллисекунд. Поменяйте 300 на меньшее число для большей быстроты отрисовки ; замедление обновления экрана If MilliSecs() > tmrScreen+300 Then Cls ;очищаем экран ; Покрываем экран копиями случайных кадров изображения начиная с точки ; x=0 и y=0. TileImage gfxStarfield,0,0,Rnd(9) Flip ; смена буферов tmrScreen=MilliSecs() ; обновляем время End If Wend |