Suite à la demande de certains, bah je vous fais un petit tuto pour faire une caméra et un écran sur lequel s'affiche l'image filmée par cette caméra...
I. Ce dont vous avez besoinTout d'abord, placez un
point_camera là où est votre caméra.
Astuce : Vous pouvez placer un prop_dynamic (vous verrez pourquoi dynamic plus tard ^^) avec un model de caméra (models/props/cs_assault/camera.mdl, par exemple)./!\ Attention, le point_camera doit dépacer du prop, pour ne pas bloquer la vision depuis cette caméra...Placez ensuite l'écran qui sera relié à votre caméra. Faites un bloc avec une texture d'écran (monitor dans l'explorateur des textures, puis sélectionnez ceux qui sont représentés par des cubes blancs, avec "
dev_monitor" inscrit dessus). Vous trouvrez, selon la texture, différents types d'écrans :
_
dev_combinemonitor : ce sont les écrans type HL², ceux qu'utilisent les combine (ils sont un peu bleutés en général...)
_
dev_monitor : il me semble qu'il s'agit d'un écran en noir et blanc
_
dev_tvmonitor : il s'agit d'écrans plus proches de ceux de télévision... La texture "
dev_tvmonitornonoise", est un écran avec une image parfaite, c'est a dire sans "tremblement" de l'écran.
Transformez ce bloc en func_monitor, nous verrons comment le configurer plus tard...
Conseil : Mettez la texture tools/toolsinvisible sur les autres faces de votre écran, sauf si vous voulez que les images de la caméra soient affichées sur toutes les faces.
Astuce : Vous pouvez placer un écran en prop_dynamic ou prop_physics (models/props/cs_office/tv_plasma.mdl, par exemple) là où vous mettez votre écran... Placez ensuite votre func_monitor, de façon à ce qu'on ait l'illusion que l'image sort vraiment de l'écran...Ecran de ma map ba_ffmt_weaponsdepot avec la texture dev_tvmonitor1a
II. Configuration du point_camera et du func_monitor1. point_cameraClass info :Name : Le nom de votre caméra, obligatoire (dans l'exemple, camera_parking)
Parent : L'entité sur laquelle le point_caméra restera fixé, utile si vous voulez le mettre sur un véhicule, où un objet qui bouge... (Nous ne l'utiliserons pas dans l'exemple...)
Pith Yaw Roll (Y Z X) : l'orientation de votre caméra sur les angles Y Z puis X (les nombres doivent etre séparés d'un espace...). Vous pouvez aussi (et c'est souvent plus simple, l'orienter sur le plan 3D, en cliquant 2 fois dessus...)
FOV : "Field Of View", c'est le champ de vision de votre caméra, en degrés. Par défaut, 90° (laissez ainsi c'est très bien ^^)
Screen Aspect Ratio : a vrai dire je ne sais pas à quoi ça sert, mais ça marche très bien sans, donc vous pouvez laissez "No"
Fog Enable : Mettez "Yes" si vous voulez du brouillard sur ce que verra votre caméra
Si vous mettez "Yes", ci-dessus, je vous laisse regarder ce très bon tuto :
http://www.siteduzero.com/tutoriel-3-7118-0-elements-naturels-et-fumees.html#ss_part_4 , pour le reste de la config ^^
FlagsStart Off : cochez si vous voulez que, par défaut, la caméra soit désactivée...
2. Func_monitorClass Info :
Name : Pas forcément obligatoire, mais peut etre utile ^^
Parent : L'entité sur laquelle le func_monitor restera fixé, utile si vous voulez le mettre sur un véhicule, où un objet qui bouge... (Nous ne l'utiliserons pas dans l'exemple...)
Origin : Ne configurez pas ça à partir des chiffres, c'est compliqué ^^
Render FX : Le rendement de votre écran (clignotement, hologramme, etc). Laissez "Normal" si vous voulez un écran simple.
Render Mode Override : Laissez "Normal", je n'ai pas essayé le reste ^^
FX Amount : La transparence de votre écran (255 = opaque, 0 = transparent)
FX Color : bon là je sais pas trop mais n'y touchez pas ^^
Disable Shadows : Désactiver les ombres (j'en suis pas tout à fait sur je ne fais que traduire là ^^)
Disable Receiving Shadows : Désactiver les ombres reçues
Minimum light level : Niveau de lumière minimum (idem j'en suis pas sur désolé...). Mais ne changez rien
Global Entity Name : Inutile
Start Disabled : Mettez "Yes" si vous voulez que votre écran soit par défaut désactivé...
Solidity : La solidité de votre écran (Toggle = variable, Never solid = jamais solide, Always solid = toujours solide), je vous conseille never solid si vous le placez sur un prop comme moi...
NPC Class excluded from collisions : inutile si vous ne mettez pas de NPC
Solid BSP : euh là je sèche
Camera Name : indiquez là le nom de la caméra d'où l'image est affichée
FlagsLaissez décoché
Voilà, maintenant vous avez votre caméra et votre écran ! La troisième partie est tout sauf obligatoire... Allez y jeter un oeil si vous voulez augmenter le réalisme de votre map...III. Pour plus de réalismeIci, je vais vous décrire ce que j'ai fait pour augmenter un peu le réalisme... Ce n'est pas compliqué, mais peut etre que tout le monde n'y penserait pas...
(je n'ai qu'un seul petit truc à vous proposer, si vous en avez d'autres n'hésitez pas à me les signaler ou à les ajouter !)
Ma manip va consister à faire en sorte que lorsque l'on tire sur la caméra il n'y ait plus d'image sur l'écran, ou lorsque l'on tire sur l'écran l'image ne reste pas sans écran ^^ !
Bon quelques screens pour mieux comprendre ^^
Réglons d'abord la caméra de sorte que lorsqu'elle subit des dégats, elle ne fonctionne plus :
Sélectionnez votre
prop_dynamic avec le modèle de caméra, puis, dans les
outputs :
Add > OnHealthChanged > votre func_monitor > DisableC'est tout...
(après vous pouvez ajouter un env_explosion qui pète quand vous tirez sur la caméra... Ce n'est pas long ni compliqué mais je ne le développerai pas là...)Maintenant reglons notre ecran, lorsqu'il sera touché, l'image disparaitra...
Sélectionnez votre
prop_physics avec le modèle d'écran, puis, toujours dans les
outputs :
Add > OnAwakened > votre func_monitor > Disableet
Add > OnHealthChanged > votre func_monitor > DisableEt voilà vous avez un bel écran et une caméra qui fonctionnent... Je vous ai mis dans ce tuto comment les faire simplement... Après avec un peu d'imagination on peut faire des truc beaucoup plus compliqués et détaillés...
/!\ Vous ne pourrez pas afficher, meme sur deux écrans différents, les images prises par deux caméras différentes... Je vous laisse voir comment faire si vous en avez envie, mais j'ai cherché longtemps sur Internet et sur le SDZ, sans trouver...Voilà mon premier tuto est terminé j'espère qu'il est assez clair et précis, que vous avez compris, etc... N'hésitez pas à me signaler des erreurs s'il y en a ou a me poser des questions !
[img][/img]