Cita de: Naitsabes0 en Mayo 06, 2017, 04:49:06 AMCita de: wilodxd en Mayo 06, 2017, 03:13:26 AM
si quieres crear un sistema de iluminacion, ocupa 'surfaces' ~~
Las habría ocupado antes de hacer este post si supiera como crearlas bien para el juego que hago, pero como no logre armarlo bien, empece con este código, ademas los ejemplos hispanos son de :GM8: y unos pocos ingleses de :GMS:.
comienza creando una 'surface'
-en el event create del 'obj_oscuridad'-
"
globalvar surf;
surf = surface_create(view_wview,view_hview);
"
bien esto es para tener una 'plana' para dibujar
ahora dibujaremos en ella
-en el evento step del 'obj_oscuridad'-
"
surface_set_target(surf);
draw_set_color(c_black);
draw_rectangle(0,0,view_wview,view_hview);
surface_reset();
"
bien ya tenemos la plana de color negro ahora hay que borrar o hacer nuestras luces
-en el objeto que iluminara en el evento step-
"
surface_set_target(surf);
draw_set_blend_mode(bm_subtract);
//aqui puede poner el sprite de alguna 'luz'
draw_circle(x-view_xview,y-view_yview,32,0);
surface_reset_target();
"
finalmente dibujamos la surfaces en pantalla
-en el 'obj_oscuridad' en el evento draw-
"
if(surface_exists(surf)){
draw_surface(surf,view_xview,view_yview);
}else{
surf = surface_create(view_wview,view_hview);
}
"
bien pruebalo,no lo he probado pero deberia funcionar.