====== camera.sbi ====== ■ **Camera = CreateCamera(Name.s, x.f, y.f, z.f, Type = #BJS_Free)**\\ Créer une caméra dans la scène courante. Trois types de caméras. * **#BJS_Free**. C'est la caméra idéal pour explorer une scène 3D. (//Caméra par défaut//) * **#BJS_Universal** Une caméra fonctionnant comme la caméra #Free auquel se rajoute un gamepad. * **#BJS_ArcRotate**. La caméra tourne autour de la scène verticalement et/ou horizontalement. * **#BJS_Follow**. Cette caméra pourra suivre un mesh. Une voiture par exemple. * **#BJS_VR**. Une caméra pour une totale immersion virtuelle. * **#BJS_360**. Une caméra 360° à utiliser avec un terminal mobile. La caméra se dirige avec le clavier (//flèches//) et la souris. Rien à coder pour son déplacement. ■ **CameraFov(Camera, Fov.f)**\\ Détermine l'angle de vue (Field of view) d'une caméra. ■ **CameraRange(Camera, Near, Far)**\\ Modifie les valeurs du champ de vision d'une caméra. Exemple : http://falsam.com/sbbjs/camerarangefov.html ■ **CameraLookAt(Camera, x.f, y.f, z.f)**\\ Spécifier le point qui fait face à la caméra. ■ **CameraLookAtMesh(Camera, MeshObject)**\\ Spécifier le mesh qui fait face à la caméra. ■ **CameraSpeed(Camera, Speed)**\\ Modifie la vitesse de déplacement d'une caméra. ■ **MoveCamera(Camera, x.f, y.f, z.f, Mode = #PB_Absolute)**\\ Modifier la position d'une caméra. ■ **Result = CameraX(Camera)**\\ Renvoyer la position en X d'une camera. ■ **Result = CameraY(Camera)**\\ Renvoyer la position en Y d'une camera. ■ **Result = CameraZ(Camera)**\\ Renvoyer la position en Z d'une camera. ■ **RotateCamera(Camera, x.f, y.f, z.f, Mode = #PB_Absolute)**\\ Effectuer une roation d'une caméra. ■ **CameraMapKey(Camera, Key, Value = #PB_Ignore)**\\ Changer le mappage des touches de direction d'une caméra. \\ Exemple : CameraMapKey(Camera, #PB_Key_Left, #PB_Key_A) ■ **DisableControlCamera(Camera, Value.b = #All)**\\ Désactiver une fonctionnalité de la caméra. * **#Keyboard**. Le système de déplacement natif de la caméra est désactivé. Ce sera à vous de le coder. * **#Mouse**. Le système de rotation natif avec la souris de la caméra est désactivé. * **#All**. Déplacement et rotation natifs sont désactivés. ■ **CameraFollow(Camera, MeshObject, radius.f, rotationOffset, heightOffset.f, cameraAcceleration.f, maxCameraSpeed.f)**\\ ■ **ActiveCamera(Camera)**\\ Définir la caméra active ■ **CameraCollision(Camera, Value = #True)**\\ Activer (defaut) ou désactiver les collisions d'une caméra. ■ **CameraGravity(Camera, Value = #True)**\\ Activer (defaut) ou désactiver la gravité d'une caméra. ■ **CameraBodySize(Camera, x.f = 1, y.f = 1, z.f = 1)**\\ Créer ou changer le corp physique associé à une caméra. \\ \\ Il est possible d'obtenir ou modifier les angles et rayon d'une caméra de type **#ArcRotate** {{wiki:arc01.png?nolink&400|}} ■ **Value = GetCameraBeta(Camera)**\\ Retourne l'angle vertical d'une caméra. ■ **Value = GetCameraAlpha(Camera)**\\ Retourne l'angle horizontal d'une caméra. ■ **Value = GetCameraRadius(Camera)**\\ Retourne le rayon d'une caméra. ■ **SetCameraBeta(Camera, Value.f)**\\ Change l'angle vertical d'une caméra. ■ **SetCameraAlpha(Camera, Value.f)**\\ Change l'angle horizontal d'une caméra. ■ **SetCameraRadius(Camera, Value.f)**\\ Change le rayon d'une caméra.