Anuncios Google

Impresión de Sprites [Editado: 09/01/2020]

Hola,

 

Vengo con otra duda, para variar XD.

Realizando la impresión con OneLua de un sprite mayor a 512 de ancho y con 10 frames, donde el 6to frame cumple con el ancho máximo, éste se distorsiona.Claramente la documentación del intérprete marca que el tamaño máximo de una imagen deber ser de 512x512, sin embargo me gustaría saber si hay manera de cargar una imagen (en este caso un sprite sheet) que está fuera de esos límites debido a la naturaleza de la imagen propia, pues varias "animaciones" están contenidas en la imagen, lo que lo hace ideal para el tratamiento de sprites, además de que perdería calidad si llegase a modificar la imagen.

Agradecería cualquier dato, ejemplo o sugerencia.

 

¡Saludos!

Solución

 


 

 

Editado, 09/01/2020:

Para no abrir otro tema en el foro decidí editar éste mismo, pues el problema que tengo es muy relacionado a los sprites.
Después de realizar múltiples ediciones del sprite, ajustando medidas y demás, no logro asimilar que puede estar mal, pues éste se imprime con "errores", me explico: cuando se realiza la impresión del sprite sin imagen u otro dibujo, éste se imprime sin "errores", es deicr, con un fondo transparente y realiza perfectamente la animación pero la cosa cambia cuando se imprimen imágenes o dibujos, los frames son mostrados con un fondo blanco o negro.

 

Pero una imagen dice más que mis palabras, abjo dejo un par de GIF en las que se pueden apreciar los detalles:

 

 

HZ

 

Después de quitar otras impresiones:

HZ

 

 

¡Saludos!


--[NO EXISTEN LOS LIMITES =D]--


Anuncios Google

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.
Imagen de PerezRE

Tema editado

Cualquier sugerencia o petición es bienvenida Guiño

Imagen de DevDavisNunez

Nueva hoja de sprites

Tu nueva hoja de sprites tiene transparencia?,
Eso es el unico error posible, ya que ONElua ha sido probado por mi en multiples ocaciones y con multiples sprites,
Recuerda que algunos programas quitan la transparencia y meten un color solido aun que tu imagen original no lo tenga, si puedes sube la imagen a algun servidor como mega, dropbox o mediafire y la reviso.




 

Imagen de PerezRE

Sprite

De hecho, la imagen contiene fondo transparente, por eso no logro asimilar que puede estar saliendo mal.

Aquí dejo la hoja de sprites.

¡Saludos! Gracias de antemano, DevDavisNunez.


--[NO EXISTEN LOS LIMITES =D]--

Imagen de DevDavisNunez

Revisado!

Hola buen dia PerezRE!,
Primero que nada disculpa, se me habia olvidado pasarme a SB.
Revise la hoja de sprite y esta correcta, de igual manera la probe con un codigo simple simulando el avanze y retroceso del sprite animado con otro fondo y no interfiere,

ONElua Sprite

Recuerda que para renderizar una imagen cargada como sprite se debe cargar indicando la ruta y las dimensiones de cada sprite, en este caso (90, 107)
y recuerda que en lugar del metodo blit se utiliza blitsprite(x, y, sprite), los sprites se inician desde la posicion 0 al numero de sprites -1, esa imagen que me pasaste seria del 0 - 9, te dejo el pequeño codigo de prueba,

local img = image.load("sprite.png", 90, 107)
local b = image.load("back.png")
local n = 0
while true do
	b:blit(0,0)
	img:blitsprite(n*5,0, n)
	buttons.read()
	if buttons.left then n -= 1 end
	if buttons.right then n += 1 end
	if n < 0 then n = 9 end
	if n > 9 then n = 0 end
	screen.print(10,10,n)
	screen.flip()
end




 

Imagen de PerezRE

Solucionado

Después de experimentar con los sprites y leer un poco más a detalle la documentación, me dí cuenta de que no es posible cargar una imagen mayor a 512x512, de lo contrario la función image.loadsprite o image.load devuelven nil.


--[NO EXISTEN LOS LIMITES =D]--

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.