Marzo 19, 2010, 03:26:09 PM Ultima modificación: Junio 22, 2010, 05:11:50 AM por hardraid
Creador:HardRaid
Version GM:  :GM8: :GM7:
Descripcion: Bueno la mayoria ya conoce el efecto blur no hay mucho que explicar lo que hace este script es nublar un sprite, cuanto mayor cantidad(argument0) mas nublado se va a ver. el codigo es simple pero puede optimizarse, pueden postear aqui y yo lo actualizo. DEJO UN EJEMPLO ADJUNTO DE DESENFOQUE(Modificado).
Codigo:


//Version modificada
//scr_blur(cantidad);
if(!variable_local_exists("sup")){sup=surface_create(sprite_width+(argument0*2),sprite_height+(argument0*2));}
surface_set_target(sup);
xx=surface_get_width(sup)/2;
yy=surface_get_height(sup)/2;
draw_sprite_ext(sprite_index,image_index,xx,yy,image_xscale,image_yscale,image_angle,image_blend,1);
draw_sprite_ext(sprite_index,image_index,xx-argument0,yy+argument0,image_xscale,image_yscale,image_angle,image_blend,1/8);
draw_sprite_ext(sprite_index,image_index,xx-argument0,yy-argument0,image_xscale,image_yscale,image_angle,image_blend,1/8);
draw_sprite_ext(sprite_index,image_index,xx+argument0,yy+argument0,image_xscale,image_yscale,image_angle,image_blend,1/8);
draw_sprite_ext(sprite_index,image_index,xx,yy-argument0,image_xscale,image_yscale,image_angle,image_blend,1/8);
draw_sprite_ext(sprite_index,image_index,xx,yy+argument0,image_xscale,image_yscale,image_angle,image_blend,1/8);
draw_sprite_ext(sprite_index,image_index,xx+argument0,yy,image_xscale,image_yscale,image_angle,image_blend,1/8);
draw_sprite_ext(sprite_index,image_index,xx-argument0,yy,image_xscale,image_yscale,image_angle,image_blend,1/8);
draw_set_blend_mode_ext(bm_one,bm_one);
draw_sprite_ext(sprite_index,image_index,xx,yy,image_xscale,image_yscale,image_angle,c_black,1);
draw_set_blend_mode(bm_normal);
surface_reset_target();
draw_surface(sup,x-xx,y-yy);




*El ejemplo adjunto muestra un efecto de desenfoque en objetos a cierta distancia como lo hace la vision humana y seguro la de la mayoria de los animales.
?Eres experto en Game Maker y quieres ense?ar lo que sabes? ?nete a nuestro proyecto como tutor. ?Tienes en mente un gran juego pero no sabes como usar Game Maker? Inscr?bete y un tutor te guiar?. Aprender?s dise?ando un juego para luego dise?ar el tuyo propio. Ap?ntate en http://www.comunidadgm.org/index.php?topic=10462.0.

bueno, muy bueno

pero un problemita

el script del ejemplo no es el mismo que el de tu post :-[
el del ejemplo da un semiefecto blur pero no funciona con transparencias

el del post si sirve, pero no da un tan lindo efecto con sprites sueltos , habr?a que probarlo sacandole una foto a la pantalla en cada step... se me ocurre otro efecto blur para pantalla completa, pero en pantallas chicas porque gastar?a muchos recursos

que tal si sacas una foto (foto1)
dibujas (foto1)
siguiente step: sacas foto2
dibujas (foto1 - alpha 1; foto2 - Alpha .5)
siguiente step: sacas foto3
dibujas (foto1 - alpha 1; foto2 - Alpha .6; foto2 - Alpha .3)

de ahi en mas eliminas la foto 1 corres de variable las foto 2 y 3 y sacas una nueva foto 3

no?

gastar?a recursos como loco claro :-[ xD
Cita de: CGM 2008CGM: Un poco mas serios, mejores Juegos.
Bienvenid@ a CGM. Recomenzamos desde cero, con un reglamento mas estricto, mejor definido y con mas ganas que nunca de hacer juegos con calidad comercial. El que avisa no es traidor: Leete las reglas si no quieres llevarte un capon makero.
Mercilessly!!
Plug-In para animaciones: http://ciberman.net/tweenline/

lo hice simple, hay q afilarlo un poco en eso estoy, ya probe lo de pantalla competa y salio bien pero lento XD y si el ejemplo es del script  XD de q va a ser sino?

EDT:ah no perdon jajajajaja me equivoque de archivoooo ese era otro blur q hice pero es muyyyy lento.
?Eres experto en Game Maker y quieres ense?ar lo que sabes? ?nete a nuestro proyecto como tutor. ?Tienes en mente un gran juego pero no sabes como usar Game Maker? Inscr?bete y un tutor te guiar?. Aprender?s dise?ando un juego para luego dise?ar el tuyo propio. Ap?ntate en http://www.comunidadgm.org/index.php?topic=10462.0.

gasta muchos recursos el script?

es que el juego que estoy haciendo ya es lento de por si(120 enemigos x room y hasta 200 aveces) como para lentificarlo mas

y... si, gasta muchos recursos porque debes sacar una foto y
se dibuja unas 9 veces... deber?as intentar desactivar instancias y ahi puedes usar el script... tambien tratar de dibujar los tiles solo que se veran...
pero es bueno el script y sencillo
Cita de: CGM 2008CGM: Un poco mas serios, mejores Juegos.
Bienvenid@ a CGM. Recomenzamos desde cero, con un reglamento mas estricto, mejor definido y con mas ganas que nunca de hacer juegos con calidad comercial. El que avisa no es traidor: Leete las reglas si no quieres llevarte un capon makero.
Mercilessly!!
Plug-In para animaciones: http://ciberman.net/tweenline/

no seria mas eficiente si se usaran surfaces.lo digo porque lo vi en un ejemplo, pero no lo entend? del todo.creo que usaba 2 surfaces o algo as?

No me lo abre el  :GM8:

Me pone error, y me lo borra el antivirus Panda2010...

Tu sabras...

Nueva version lijeramente modificada, ahora funciona con superficies.
?Eres experto en Game Maker y quieres ense?ar lo que sabes? ?nete a nuestro proyecto como tutor. ?Tienes en mente un gran juego pero no sabes como usar Game Maker? Inscr?bete y un tutor te guiar?. Aprender?s dise?ando un juego para luego dise?ar el tuyo propio. Ap?ntate en http://www.comunidadgm.org/index.php?topic=10462.0.

Yo no asignar?a variables locales en un script. Se me ocurre que el script podr?a recibir un segundo argumento que contenga el id de una surface creada anteriormente fuera del script.
Fuera de eso, est? bueno, queda bien el efecto.
Vim.