Surface に関する手順、テンプレ。
この関数はなるべく Draw イベント内で利用する。
Surfaces 作成後も常に必ず存在の有無を確認する。これは必須。何故ならば GPU のメモリ上から消される可能性も常にあるから。
作ったあとはリソースとして利用できるので、必要に応じて Draw ターゲットの切り替えを行う。ターゲットを切り替えたら必ずリセットを忘れずに。
///Draw_Surface(surface_id); /* This function should be call from in the draw event. DrawSurface(0); */ var s = global.SurfaceID[argument0]; if surface_exists(s) { draw_surface(s, mouse_x, mouse_y); } else { var sx, sy; sx = 400; sy = 200; s = surface_create(sx, sy); global.SurfaceID[argument0] = s; surface_set_target(s); draw_clear_alpha(c_blue, 1); draw_text(0, 0, "TEST"); surface_reset_target(); };