lunes, 3 de julio de 2017

Uso de spriters en Gambas




Aprendiendo a usar spriters en gambas, empiezo con algo simple.

' gambas class file

' Como usar una imagen sprite en gambas by postapase (3 Julio 2017)

Private Cantidad_Sprites As New Picture[]

Public Sub Form_Open()

Me.Title = "Sprite"

End

Public Sub SepararImagenes(path As String, filas As Integer, columnas As Integer)
'subrutina extraida y modificada del ejemplo de Julio 1945

Dim i As Image
Dim fila As Integer
Dim columna As Integer
Dim imagenAncho As Integer
Dim imagenLargo As Integer
Dim fichero As Picture
Dim contador As Integer

i = Image.Load(path)

Cantidad_Sprites = New Picture[]

imagenAncho = i.w / columnas
imagenlargo = i.h / filas

For fila = 1 To filas
For columna = 0 To columnas

fichero = New Picture(imagenAncho, imagenLargo, Color.Transparent)
Paint.Begin(fichero)


'esta línea lo que hace es recortar la imagen i,
 y ese recorte sera la nueva imagen.
Paint.DrawImage(i, 0, 0, imagenAncho, imagenLargo, 1, Rect((columna - 1) * imagenAncho, (fila - 1) * imagenLargo, imagenancho, imagenlargo))
Paint.Stroke()
Paint.Fill

Paint.End()
fichero.Save("/tmp/dibujo" & Str$(contador) & ".png")
Cantidad_Sprites.Add(fichero)
contador += 1

Next
Next

End

Private Sub Accion()

Dim a As Integer

For a = 0 To Cantidad_Sprites.Max
PictureBox1.Picture = Cantidad_Sprites[a]
Wait 0.09
Next

PictureBox1.Picture = Null
Wait 0.1

End

Public Sub Button1_Click()

SepararImagenes("explosion.png", 1, 12)
Accion()

End

El ejemplo esta disponible en la granja de gambas.

Página para descargar spriters y hacer nuestras experiencias en gambas.
https://www.spriters-resource.com/

No hay comentarios.:

Publicar un comentario