Hola, como están? estoy intentando usar la función sprite_create_from_surface() y no logro que funcione. Tengo un objeto que dibuja varios sprite y texto arriba de él, necesito copiar todas esas imágenes para después poder manipularla con la función draw_sprite_ext().
En create coloco:
surf = surface_create(75,100);
surface_set_target(surf);
draw_clear_alpha(c_black,1);
surface_reset_target();
ssurf = sprite_create_from_surface(surf,x-37,y-50,75,100,true,true,37,50);
surface_free(surf);
y luego en draw:
draw_sprite_ext(ssurf,0,x,y,gorooms,gorooms,goroomr,c_white,1);
Saludos y gracias!
Lo que te falta es primero dibujar todos los sprites y texto que quieras en la superficie. Esas instrucciones de dibujo irían después de draw_clear_alpha(c_black,1) y antes de surface_reset_target(); Otro método sería que eol objeto que dibuja esos sprites y texto dibujara en la surface en lugar de la pantalla. Pero sea como sea, se debe dibujar algo en la surface, pues aunque esté creada, está vacía, por lo que sprite_create_from_surface() crea un sprite vacío
Cita de: penumbra en Abril 15, 2014, 10:47:33 PM
Lo que te falta es primero dibujar todos los sprites y texto que quieras en la superficie. Esas instrucciones de dibujo irían después de draw_clear_alpha(c_black,1) y antes de surface_reset_target(); Otro método sería que eol objeto que dibuja esos sprites y texto dibujara en la surface en lugar de la pantalla. Pero sea como sea, se debe dibujar algo en la surface, pues aunque esté creada, está vacía, por lo que sprite_create_from_surface() crea un sprite vacío
Hola, gracias! ahora me queda mas claro. Logro hacerlo... pero debo dibujar las cosas sobre la superficie cada step. No existe una manera de dibujarlo solo una vez y guardarlo en una variable?
Saludos y gracias!