surface_exists


Syntaxe:

surface_exists(surface_id);

Argument La description
surface_id L'identifiant de la surface à vérifier.


Résultats:

Boolean


La description

Cette fonction est essentielle lorsque vous travaillez avec des surfaces en raison de leur nature volatile. Les surfaces sont toujours conservées dans la mémoire de texture, ce qui signifie qu'elles peuvent être détruites d'un moment à l'autre (par exemple, lorsqu'un économiseur d'écran démarre sur Windows, ou minimisé sur un appareil Android ), vous devez toujours vérifier qu'il existe une surface avant faire quelque chose avec cela (cela inclut le dessiner à l'écran). L'exemple de code ci-dessous montre une utilisation typique de cette commande dans l'événement draw d'une instance pour rechercher une surface et la recréer si elle a été supprimée (notez que la surface aura été créée à l'origine dans l'événement create de l'objet ).


Exemple:

if !surface_exists(surf)
   {
   surf = surface_create(1024, 1024);
   }
else
   {
   if view_current = 1
      {
      draw_surface(surf,0,0);
      }
   }

Le code ci-dessus va vérifier si une surface indexée dans la variable "surf" existe, et si ce n'est pas le cas, il va le recréer. S'il existe, il vérifie ensuite quelle vue est en train d'être dessinée et si c'est la vue [1], il dessine la surface.