Cette fonction crée une nouvelle caméra et définit sa vue dans une pièce, puis renvoie sa valeur d'ID unique. La caméra sera créée en utilisant les valeurs que vous définissez dans cette fonction pour la position, la taille et d'autres détails qui correspondent aux valeurs que vous avez définies dans l'éditeur de pièce (voir ici ). Notez que cette fonction peut prendre un nombre variable d'arguments avec seulement les arguments position x / y et largeur / hauteur obligatoires. Tous les arguments non fournis utiliseront leurs arguments par défaut.
Notez que les caméras sont comme toutes les ressources dynamiques et occuperont de la mémoire lors de leur création. Cela signifie que vous devez prendre soin de ne pas créer de caméras inutilement et de détruire celles dont vous n'avez pas besoin en appelant la fonction camera_destroy(). Cela signifie également que les caméras persisteront d'une pièce à l'autre si elles sont affectées à un global variable (elles persisteront si elles sont assignées à des variables d'instance ou locales, mais vous ne pourrez pas y accéder après avoir changé de place, d'où la fuite de mémoire), vous pouvez par exemple créer une nouvelle caméra, l'assigner à une variable globale, puis au début de chaque pièce, utilisez le camera_set_* fonctions pour définir les propriétés avant de l'affecter à un port de vue.
camera_create_view(room_x, room_y, width, height, [angle, object, x_speed, y_speed, x_border, y_border])
Argument La description room_x La position x (dans la pièce) du côté gauche de la zone capturée par la caméra. room_y La position y (dans la pièce) du haut de la zone capturée par la caméra. width La largeur de la zone capturée par la vue. height La hauteur de la zone capturée par la vue. angle L'angle de réglage pour la vue de la caméra (de 0 ° à 360 °, la valeur par défaut est 0). object L'ID d'objet (ou l'ID d'instance) pour la vue de caméra à suivre (la valeur par défaut est -1, pas d'objet). x_speed La vitesse horizontale maximale à laquelle la vue peut se déplacer (définie sur -1 pour "suivant", la valeur par défaut est -1). y_speed La vitesse verticale maximale à laquelle la vue peut se déplacer (définie sur -1 pour "suivant", la valeur par défaut est -1). x_border L'espace horizontal minimal entre le bord de la zone de vue et l'instance à laquelle il est destiné (avant que la vue commence à se déplacer et si elle est définie pour suivre une instance, la valeur par défaut est 0). y_border L'espace vertical minimal entre le bord de la zone de visualisation et l'instance à laquelle elle est définie (avant que la vue commence à se déplacer et si elle est définie pour suivre une instance, la valeur par défaut est 0).
Real (unique camera ID value)
view_camera[0] = camera_create_view(0, 0, 640, 480,
0, obj_Player, 5, 5, -1, -1);
Le code ci-dessus crée une nouvelle caméra, définit ses propriétés de vue, puis assigne son identifiant pour voir le port [0].