que metodos hay para hacerlo, mil gracias

Creo que te refieres a borrar los pixeles que tenga dibujados. En ese caso:
[gml]
surface_set_target(mi_surface)
draw_clear_alpha(c_white, 0)
surface_reset_target()[/gml]

para destruír la surface (al finalizar su uso)
[gml]surface_free(mi_surface)[/gml]

Hola penumbra es lo que hago, pero no se borran los pixeles dibujados, no se voy a revisar todo nuevamente. Muchas gracias

Gracias a todos el tema fundamental del error era que yo, trabajo con variables globales que suelo declarar en un room que se carga al inicio, y el programa no vuelve mas a ese punto, pero...cuando deje de trabajar a la surface como una variable global, logre lo que queria, pero me fue necesario usar alamas dirigidas al objeto que maneja las surfaces para borrarlas, pues si no lo realizaba las cosas de esa manera me daba un error.
Siempre tengo problemas con las variables y como las maneja Game Maker.
Gracias a todos