CreateCamera()

Syntaxe

Resultat = CreateCamera(#Camera, X, Y, Largeur, Hauteur [, MasqueVisibilite] [, NiveauDetails]])
Description
Crée une nouvelle caméra dans le monde courant.

Arguments

#Camera Numéro de la nouvelle caméra.

#PB_Any peut être utilisé pour autogénérer ce numéro.
X, Y La position (en pourcentage) du bord gauche de l'affichage de la camera.
Voir l'image ci-dessous.
  0%  : Affichage sur le bord gauche (haut) de l'écran
  100%: Affichage sur le bord droit (bas) de l'écran
Largeur, Hauteur Les dimensions (en pourcentage) de l'affichage de la camera.
Voir l'image ci-dessous.
MasqueVisibilite (optionnel) Un masque pour sélectionner les entités et les billboards à afficher par la caméra.

La caméra définit son propre masque, et si l'entité ou le billboard masqué correspond, alors il sera affiché.

Par défaut, les entités et les billboards n'ont pas de masque, ce qui signifie qu'ils seront toujours affichés par toutes les caméras.
NiveauDetails (optionnel) Le niveau de détails (Lod Bias = Level Of Details) à appliquer aux entités qui le supportent.
S'il est inférieur à 1, un objet plus détaillé sera affiché, s'il est supérieur à 1, une entité moins détaillée sera affichée.
La distance de l'entité est divisée par le niveau de détail, par exemple un niveau de détail de 0.5 double la distance.

Valeur de retour

Renvoie une valeur non nulle en cas de succès, zéro si la caméra n'a pas pu être crée.

Si #PB_Any est utilisé à la place du paramètre '#Camera' alors le nouveau numéro de la caméra sera renvoyé dans 'Resultat'.

Remarques

Le fait de poser la position et les dimensions d'une caméra (ce qu'elle affiche en fait) en pourcentage permet de s'abstraire des dimensions de l'écran de l'utilisateur. Ainsi une caméra affichera la même chose sur un écran 800x600 que sur un écran 1024x768, etc.

Exemple

  CreateCamera(0, 0, 0, 100, 100) ; Crée une caméra qui prend tout l'écran
  
  CreateCamera(0, 0,  0, 100, 50) ; Crée une caméra qui ne prend que 50% de la hauteur (effet Split-Screen pour 2 joueurs)
  CreateCamera(1, 0, 50, 100, 50) ; Crée la deuxieme caméra de 50% de hauteur mais dans la partie basse de l'écran

  CreateCamera(0, 0, 0, 100, 100) ; Crée une caméra qui prend tout l'écran
  CreateCamera(1, 25, 0, 50, 10)  ; Avec un effet rétroviseur (miroir).
                                  ; Notez que le rétroviseur est le dernier, de sorte qu'il est affiché en haut de la caméra plein écran

Exemple

  ; 2 caméras qui séparent l'écran en deux parties égales :
  
  ; Caméra au dessus
  CreateCamera(0, 0, 0, 100, 50)  
  MoveCamera(0, 0, 50, 150, #PB_Absolute)
  CameraBackColor(0, RGB(215, 225, 255))
  
  ; Caméra en dessous  
  CreateCamera(1, 0, 50, 100, 50) 
  MoveCamera(1, 0, 50, -150, #PB_Absolute)
  CameraBackColor(1, RGB(255, 225, 215))
  RotateCamera(1, 180, 0, 0)

Voir aussi

FreeCamera(), ResizeCamera()

OS Supportés

Tous

<- CheckObjectVisibility() - Camera Index - FreeCamera() ->