Entités concernées : trigger_camera, info_target et path_corner
Type d'entités : entités-point
Difficulté : moyen
Elles sont vraiment pratiques dans une map multijoueurs Half-Life ou Counter-Strike, et dans un mod solo elles rajoutent un effet d'ambiance car on peut alors suivre le joueur à la troisième personne.
De qui s'agit-il ? Des caméras bien entendu !
Les développeurs de Counter-Strike nous encouragent d'ailleurs à mettre des caméras dans nos maps. Alors, vous savez ce qu'il vous reste à faire...
Pour intégrer une caméra dans sa map, il faut placer une entité-point
trigger_camera à l'endroit voulu. Ceux qui utilisent le FGD de Counter-Strike devraient voir ceci (sinon c'est un gros cube bien moche) :
Notez qu'il n'y a aucune différence entre les caméras de Half-Life et celles de Counter-Strike.
Il existe 2 types de caméras :
- Les caméras fixes : lorsque vous regardez une telle caméra, celle-ci reste fixe et vise toujours le même endroit. Elle est assez simple à configurer.
- Les caméras mouvantes : ce type de caméra se déplace en suivant un parcours précis. Idéal notamment pour simuler une caméra du surveillance. Seul problème : elle est un peu compliquée à mettre en place.
Les caméras fixes
Placez un
trigger_camera à l'endroit où vous voulez mettre votre caméra. Une caméra est invisible pour le joueur, c'est juste une indication sur sa position. Si vous voulez "dessiner" une caméra pour plus de réalisme, il va falloir la créer vous-même avec des blocs !
Pour l'instant on se contentera d'une caméra invisible, car en général peu de mappeurs prennent la peine de représenter la caméra.
Placez ensuite une entité
info_target à l'endroit où la caméra doit viser. C'est cette entité (invisible elle aussi) que la caméra regardera.
Schématiquement ça donne ceci :
Le schéma vous dit tout : le
trigger_camera prendra Target = "nomdelacible", et
info_target prendra Name = "nomdelacible".
Cela suffit pour faire une caméra qui fonctionne ! Pensez toutefois à mettre un nom (Name) à votre caméra pour pouvoir l'appeler à l'aide d'un bouton ou d'un trigger (sinon vous ne pourrez jamais vous en servir pendant le jeu !).
Voici les quelques nouveaux attributs à connaître :
- Hold Time : temps pendant lequel le joueur regardera la caméra (en secondes). Je vous conseille de mettre moins de 10 secondes, parce que sinon ça fait un peu trop long à attendre pour le joueur.
- Initial Speed : vitesse initale de déplacement de la caméra. A utiliser pour les caméras mouvantes.
- Acceleration units/sec² : accélération de la caméra (en unités par seconde au carré). Euh, l'unité est un peu complexe, alors si vous n'êtes pas sûr de vous n'essayez pas de toucher à cet attribut

- Stop Deceleration units/sec² : décélération de la caméra, lors de son arrêt (en unités par seconde au carré)
3 flags vraiment intéressants sont à noter :
- Start At Player : la caméra part du joueur pour se rendre vers la cible (on a l'impression de "sortir" des yeux du joueur, ça donne un assez bon effet). A utiliser seulement si la caméra est assez proche du joueur.
- Follow Player : la cible de la caméra devient le joueur (en clair, l'attribut Target ne sert plus à rien). La caméra suivra donc vos déplacements.
- Freeze Player : le joueur ne peut pas bouger lorsqu'il regarde la caméra (c'est souvent utile !).
Les caméras mouvantes
Il y a plusieurs méthodes pour se servir de caméras mouvantes. Dans tous les cas, l'objectif est de faire en sorte que la caméra ne soit pas fixe : elle doit bouger, soit autour d'un objet, soit changer de cible.
Si vous devez changer de cible, ce qui est assez simple à mettre en place en fait, utilisez l'attribut "Path_corner", qui indiquera le nom du premier
path_corner à regarder. Faites ensuite une boucle avec les
path_corner qui doivent s'appeler entre eux, exactement comme vous l'avez appris pour le fonctionnement des trains de Half-Life.
Je ne vous refait pas l'explication ici, ce serait trop long, alors que tout est expliqué en détail dans le chapitre sur les véhicules.
Autre technique : elle consiste à lier la caméra avec un
func_train. Vous devez mettre pour cible à la caméra le nom du train, de telle sorte que la caméra suive le mouvement de ce train. Bien entendu, vous devez savoir configurer un train auparavant.
Le train peut être un vrai train modélisé, mais vous pouvez aussi "tricher" : créez un petit bloc, transformez-le en train, et faites en sorte que le train soit invisible. Ainsi, il y aura un petit bloc invisible qui se baladera dans votre map, pendant que la caméra suivra son mouvement !
Comme vous pouvez le voir, tout ceci est très lié avec les trains. Alors apprenez avant à vous servir des trains, et vous verrez alors que faire une caméra mouvante n'est pas tellement compliqué

Si toutefois vous n'y arrivez pas, ne vous bloquez pas là-dessus. Il est tellement plus simple de faire une caméra fixe ! En plus, la plupart des mappeurs mettent des caméras fixes dans leurs maps, et c'est le plus souvent amplement suffisant ! Faites plusieurs caméras si nécessaire...