Hola.
Este codigo podria ayudarte.
1:tu decides su Depth: desde el objeto
2:este codigo lo puedes implementar en un objeto nuevo.
en evento create:
xscale = 1; yscale = 1;
alpha0=1;
c0= make_colour_rgb(255,255,255);
-En evento draw
draw_set_blend_mode(bm_subtract);
x0=mouse_x; y0=mouse_y;
x1=sprite_get_height(Spr_01)/2;
y1=sprite_get_width(Spr_01)/2;
draw_sprite_ext(Spr_01,0,x0,y0,xscale,yscale,0,c_white,alpha0);//tu sprite foco (blanco=100% opaco||negro=0% opaco)
//Sombra izquierda
draw_primitive_begin(pr_trianglefan);
draw_vertex_colour(-1,-1,c0,alpha0)
draw_vertex_colour(x0-x1,-1,c0,alpha0)
draw_vertex_colour(x0-x1,room_height+1,c0,alpha0)
draw_vertex_colour(-1,room_height+1,c0,alpha0)
draw_primitive_end()
///Sombra derecha
draw_primitive_begin(pr_trianglefan);
draw_vertex_colour(room_width+1,-1,c0,alpha0)
draw_vertex_colour(x0+x1,-1,c0,alpha0)
draw_vertex_colour(x0+x1,room_height+1,c0,alpha0)
draw_vertex_colour(room_width+1,room_height+1,c0,alpha0)
draw_primitive_end()
///Sombra Arriba
draw_primitive_begin(pr_trianglefan);
draw_vertex_colour(x0-x1,-1,c0,alpha0)
draw_vertex_colour(x0+x1,-1,c0,alpha0)
draw_vertex_colour(x0+x1,y0-y1,c0,alpha0)
draw_vertex_colour(x0-x1,y0-y1,c0,alpha0)
draw_primitive_end()
///Sombra Arriba
draw_primitive_begin(pr_trianglefan);
draw_vertex_colour(x0-x1,room_width+1,c0,alpha0)
draw_vertex_colour(x0+x1,room_width+1,c0,alpha0)
draw_vertex_colour(x0+x1,y0+y1,c0,alpha0)
draw_vertex_colour(x0-x1,y0+y1,c0,alpha0)
draw_primitive_end()
draw_set_blend_mode(bm_normal);
Espero te sirva, buena suerte!
Este codigo podria ayudarte.
1:tu decides su Depth: desde el objeto
2:este codigo lo puedes implementar en un objeto nuevo.
en evento create:
xscale = 1; yscale = 1;
alpha0=1;
c0= make_colour_rgb(255,255,255);
-En evento draw
draw_set_blend_mode(bm_subtract);
x0=mouse_x; y0=mouse_y;
x1=sprite_get_height(Spr_01)/2;
y1=sprite_get_width(Spr_01)/2;
draw_sprite_ext(Spr_01,0,x0,y0,xscale,yscale,0,c_white,alpha0);//tu sprite foco (blanco=100% opaco||negro=0% opaco)
//Sombra izquierda
draw_primitive_begin(pr_trianglefan);
draw_vertex_colour(-1,-1,c0,alpha0)
draw_vertex_colour(x0-x1,-1,c0,alpha0)
draw_vertex_colour(x0-x1,room_height+1,c0,alpha0)
draw_vertex_colour(-1,room_height+1,c0,alpha0)
draw_primitive_end()
///Sombra derecha
draw_primitive_begin(pr_trianglefan);
draw_vertex_colour(room_width+1,-1,c0,alpha0)
draw_vertex_colour(x0+x1,-1,c0,alpha0)
draw_vertex_colour(x0+x1,room_height+1,c0,alpha0)
draw_vertex_colour(room_width+1,room_height+1,c0,alpha0)
draw_primitive_end()
///Sombra Arriba
draw_primitive_begin(pr_trianglefan);
draw_vertex_colour(x0-x1,-1,c0,alpha0)
draw_vertex_colour(x0+x1,-1,c0,alpha0)
draw_vertex_colour(x0+x1,y0-y1,c0,alpha0)
draw_vertex_colour(x0-x1,y0-y1,c0,alpha0)
draw_primitive_end()
///Sombra Arriba
draw_primitive_begin(pr_trianglefan);
draw_vertex_colour(x0-x1,room_width+1,c0,alpha0)
draw_vertex_colour(x0+x1,room_width+1,c0,alpha0)
draw_vertex_colour(x0+x1,y0+y1,c0,alpha0)
draw_vertex_colour(x0-x1,y0+y1,c0,alpha0)
draw_primitive_end()
draw_set_blend_mode(bm_normal);
Espero te sirva, buena suerte!