Creador: Yo (Robin28)
Descripcion: Hace que la pantalla se vea borrosa y que los movimientos dejen una especie de rastro (motion blur)
Version de GM: :GM8: PRO o cualquiera que tenga surfaces
Notas:
init_blur(alpha) (alpha va de 0 a 1, recomendado entre 0,05 y 0,25)
[gml]globalvar blur_alpha,blur_activated,blur_surface;
blur_alpha=argument0;
blur_activated=1;
if view_enabled[0] blur_surface=surface_create(view_wview[0],view_hview[0]);
else blur_surface=surface_create(room_width,room_height);[/gml]
blur_step() (creo que es demasiado corto como para un script ??? )
[gml]if blur_activated surface_set_target(blur_surface);[/gml]
blur_draw() (debe ir al final del evento draw del objeto con menor depth)
[gml]if !blur_activated exit
surface_reset_target();
draw_surface_ext(blur_surface,-1,-1,1,1,0,c_white,blur_alpha);
draw_surface_ext(blur_surface,1,0,1,1,0,c_white,blur_alpha);
draw_surface_ext(blur_surface,-1,1,1,1,0,c_white,blur_alpha);
draw_surface_ext(blur_surface,0,-1,1,1,0,c_white,blur_alpha);
draw_surface_ext(blur_surface,1,1,1,1,0,c_white,blur_alpha);
draw_surface_ext(blur_surface,-1,0,1,1,0,c_white,blur_alpha);
draw_surface_ext(blur_surface,1,-1,1,1,0,c_white,blur_alpha);
draw_surface_ext(blur_surface,0,1,1,1,0,c_white,blur_alpha);[/gml]
blur_set(activado,alpha) (se puede hacer con las variables que mencione en notas)
[gml]blur_activated=argument0;
if argument1>0 blur_alpha=min(argument1,1);[/gml]
controles del ejemplo:
flechas para mover la pelota
teclas mas y menos para ajustar el alpha
tecla B para (des)activar el blur
PD: no es necesario dar creditos si se usa
Descripcion: Hace que la pantalla se vea borrosa y que los movimientos dejen una especie de rastro (motion blur)
Version de GM: :GM8: PRO o cualquiera que tenga surfaces
Notas:
- Son 3 scripts que se ponen en los eventos create, step y draw (respectivamente) del objeto con menor depth (usar un objeto especifico para controlar el blur)
- Puedes controlar que tan borroso se ve con el efecto cambiando la variable global blur_alpha (entre 0 y 1) o con el cuarto script
- FUNCIONA CON VIEWS!!!
- la variable global blur_activated controla si se usara el efecto o no
- Desactiva el color de fondo en la room...
- Consume menos recursos de lo que yo creia (me va perfecto a 60 fps)
init_blur(alpha) (alpha va de 0 a 1, recomendado entre 0,05 y 0,25)
[gml]globalvar blur_alpha,blur_activated,blur_surface;
blur_alpha=argument0;
blur_activated=1;
if view_enabled[0] blur_surface=surface_create(view_wview[0],view_hview[0]);
else blur_surface=surface_create(room_width,room_height);[/gml]
blur_step() (creo que es demasiado corto como para un script ??? )
[gml]if blur_activated surface_set_target(blur_surface);[/gml]
blur_draw() (debe ir al final del evento draw del objeto con menor depth)
[gml]if !blur_activated exit
surface_reset_target();
draw_surface_ext(blur_surface,-1,-1,1,1,0,c_white,blur_alpha);
draw_surface_ext(blur_surface,1,0,1,1,0,c_white,blur_alpha);
draw_surface_ext(blur_surface,-1,1,1,1,0,c_white,blur_alpha);
draw_surface_ext(blur_surface,0,-1,1,1,0,c_white,blur_alpha);
draw_surface_ext(blur_surface,1,1,1,1,0,c_white,blur_alpha);
draw_surface_ext(blur_surface,-1,0,1,1,0,c_white,blur_alpha);
draw_surface_ext(blur_surface,1,-1,1,1,0,c_white,blur_alpha);
draw_surface_ext(blur_surface,0,1,1,1,0,c_white,blur_alpha);[/gml]
blur_set(activado,alpha) (se puede hacer con las variables que mencione en notas)
[gml]blur_activated=argument0;
if argument1>0 blur_alpha=min(argument1,1);[/gml]
controles del ejemplo:
flechas para mover la pelota
teclas mas y menos para ajustar el alpha
tecla B para (des)activar el blur
PD: no es necesario dar creditos si se usa