hola a todos :) tengo un problema con la superficie en el evento draw_gui, el efecto de sombreado funciona bien:

https://i.gyazo.com/b5c03a4e2bb6de64d8140086dc1f2827.png

pero el evento Draw normal se ve diferente:

https://i.gyazo.com/a74bab22df12b14da93aaa6bc8c924ec.png

[gml]/// @description Cuadricula Draw event

//Creamos el Surface
var lighting = global.light;
var view_x = camera_get_view_x(view_camera[0]);
var view_y = camera_get_view_y(view_camera[0]);
var viewport_w = camera_get_view_width(view_camera[0]);
var viewport_h = camera_get_view_height(view_camera[0]);

if surface_exists(lighting) {
    surface_set_target(lighting);
    draw_clear(c_black);
   
    if instance_exists(o_player_00) {
        with o_player_00 {
            gpu_set_blendmode(bm_add);
            draw_circle_colour(x-view_x,y-view_y,radius,col,c_black,false);
            gpu_set_blendmode(bm_normal); 
            }
        }
    surface_reset_target();
   
    ///**Initialized el shader brillante
    shader_set(sh_lighting);
    var tex = surface_get_texture(lighting);
    var handle = shader_get_sampler_index(sh_lighting,"lighting");
    texture_set_stage(handle,tex);
   
    draw_surface_ext(lighting,view_x,view_y,1,1,0,c_white,0);  //AUQUE ESTE EN CERO EL SHADER CREA LA SOMBRA
   
    shader_reset();
    }
else {
    global.light = surface_create(viewport_w-25,viewport_h-25);
    }
   
//white Line
draw_set_color(c_white);
draw_set_alpha(0.5);
for(var i=0;i<= max(room_width,room_height);i+=32) {
    draw_line(0,i,room_width,i);
    draw_line(i,0,i,room_height);
    }
draw_set_alpha(1);[/gml]

se le perdio el brillo a el SHADER :(


Sospecho que es un asunto de orden de dibujado, trata de usar el código en el evento Draw End, o asegurate de que el código de la surface sea el último en ser ejecutado durante el evento Draw.

Hola amigo! Sera que le puede dar una revisada asi le puedo mandar un demo ?

Gracias!

Prueba primero cambiando el orden de dibujo para la surface, si no te funciona subes el demo para revisarlo.