Chapitre précédent : Le plan
Il est maintenant temps de porter notre attention sur la caméra virtuelle que nous utiliserons pour capturer notre image en relief. Basculons notre éditeur de shaders vers la fenêtre d’affichage 3D en cliquant sur l’icône de la bulle en haut à gauche du programme et en choisissant Fenêtre d’affichage 3D.
Si je navigue un peu dans mon studio dans la vue 3D, je peux voir que c’est cette chose qui ressemble à une sorte de pyramide filaire à laquelle est attaché un triangle. En ce moment, elle est positionnée pour capturer notre avion sous un angle oblique.
Cette chose bizarre est une caméra.
Je peux confirmer que c’est vrai en me positionnant dans la fenêtre de vue 3D pour correspondre à l’objectif de la caméra, afin de voir ce qu’elle voit. Pour ce faire, allez dans le menu Affichage de la barre supérieure et choisissez Caméras, puis Caméra active. Vous pouvez également taper 0 sur le pavé numérique.
Dans tous les cas, nous pouvons maintenant voir la vue de la caméra sur l’avion, et dire qu’elle est pointée obliquement à l’endroit où notre terrain apparaîtra. Cette vue devrait correspondre à la perspective que vous avez vue pendant tous ces rendus de test que nous avons faits, bien que sans le terrain – rappelez-vous, la subdivision/déplacement n’est calculée que pendant le rendu. Vous pouvez sortir de cette vue à tout moment en faisant simplement un panning/rotation autour de la scène comme d’habitude.
La vue depuis la caméra.
Si nous voulons faire un relief ombré correct, nous avons besoin que notre caméra soit directement au-dessus du terrain ; c’est la perspective que la majorité des cartes ont. Mettre la caméra en position est assez facile. Tout d’abord, sélectionnons-la en faisant un clic gauche dessus (ou sur le mot Camera dans le Outliner). Ensuite, retournons dans le panneau Propriétés de l’objet en cliquant sur l’icône carrée orange que nous avons utilisée pour y accéder la dernière fois.
Bienvenue dans les propriétés de l’objet.
Maintenant, nous pouvons voir la position et la rotation de notre caméra dans la scène. Tout comme nous l’avons fait avec l’avion, nous pouvons modifier ces chiffres pour mettre les choses à la place que nous voulons. Commençons par l’emplacement de la caméra. Réglez les valeurs X et Y sur 0, et la valeur Z sur 3 (la valeur Z exacte n’a pas beaucoup d’importance, tant que la caméra est placée à une distance modeste au-dessus du terrain). Vous devriez voir la caméra maintenant positionnée au-dessus du plan.
Malheureusement, elle ne pointe pas vers le plan. Nous avons besoin qu’il pointe droit vers le bas, et pour cela, nous devons tripoter la Rotation. Définissez les valeurs de rotation X, Y et Z à 0. Maintenant, la caméra sera dirigée vers le bas, vers le plan. Vous pouvez le confirmer en retournant à la vue de la caméra : Vue → Caméras → Caméra active.
La vue (zoomée) de la caméra ; elle vise maintenant correctement l’avion, mais est beaucoup trop petite pour capturer l’ensemble. Nous allons corriger cela prochainement.
Définir le rapport d’aspect
Il y a encore deux ou trois choses que nous devons modifier à propos de notre caméra. Actuellement, si vous avez remarqué, le rapport d’aspect de la caméra ne correspond pas à celui de notre avion. L’avion (si vous utilisez mon exemple DEM) est plus haut que large (« format portrait »). L’appareil photo, quant à lui, est configuré pour capturer une image au format paysage : plus large que haut. Donc, l’appareil photo n’a pas la bonne forme pour capturer une image de notre avion. Corrigeons cela.
Cette fois, nous allons aller dans le panneau des propriétés de sortie. Vous y accédez en cliquant sur l’onglet avec l’icône d’une photographie sortant d’une imprimante, le long du côté gauche du panneau Propriétés. Une fois que vous y êtes, vous verrez un tas de propriétés qui indiquent à Blender ce que vous voulez que votre sortie finale soit. Cherchez les options Dimensions. Remarquez qu’il y a un endroit pour entrer la résolution de l’image finale. Entrez les dimensions de la heightmap avec laquelle vous travaillez. Pour le fichier d’exemple fourni avec ce tutoriel, c’est 2000 pour X et 2800 pour Y.
Si vous revenez à la vue de la caméra, vous remarquerez qu’elle change au fur et à mesure que vous entrez la nouvelle résolution, correspondant au rapport d’aspect de ce que vous avez entré. Comme vous pouvez le voir, il ne s’aligne pas encore tout à fait avec notre avion, mais il a au moins la bonne forme.
Droit sous les nombres X et Y, il y a quelque chose qui dit « 100% ». Si vous passez la souris dessus, vous verrez qu’il est décrit comme « Échelle en pourcentage pour la résolution du rendu. » Blender prendra vos valeurs de résolution X et Y et les multipliera par cette valeur. Ainsi, par exemple, si cette valeur est fixée à 50 %, l’image finale que vous produisez sera de 1000 × 1400 pixels. Vous pouvez entrer le nombre que vous voulez ici. Si vous êtes en dessous de 100 %, vous ferez un relief plus petit que votre DEM. Cela peut s’avérer pratique lors des rendus de test : les images plus petites prennent moins de temps à rendre, donc si vous réduisez temporairement ce chiffre, vous pouvez faire quelques tests rapides pour vous assurer que vous êtes satisfait de l’aspect des choses, avant d’augmenter à nouveau le pourcentage pour le rendu final. Parfois aussi, en fonction de la relation entre la résolution de votre DEM et les besoins finaux de votre carte, vous pouvez vouloir augmenter ou diminuer ce chiffre par rapport à 100 %. Méfiez-vous d’augmenter le nombre trop haut : les choses deviendront pixellisées à mesure que vous sur-échantillonnez votre plan.
Dans tous les cas, c’est une entrée utile, vous permettant de rendre l’image finale plus grande ou plus petite tout en gardant le même rapport d’aspect, le tout sans avoir à calculer de nouvelles dimensions X et Y. Je vais régler la mienne à 50%, afin que cela me prenne moins de temps pour faire les différents rendus intermédiaires que je vous montrerai tout au long du tutoriel.
Définir la vue orthographique
Faisons un rendu de test et voyons comment les choses se présentent.
Les choses commencent définitivement à ressembler davantage à du terrain, bien que ce soit encore très hérissé, que l’éclairage soit loin d’être parfait et que la caméra ne soit toujours pas alignée – elle ne capture pas tout dans mon DEM de test. Donc, nous avons encore du travail à faire.
En ce moment, notre caméra a une vue en perspective. Au fur et à mesure que nous nous éloignons du centre de l’image, le terrain s’incurve légèrement en s’éloignant de nous. Cette image de Wikipedia pourrait clarifier ce qui se passe :
Regardez la partie droite du diagramme. Dans une vue en perspective (comme celle que vous avez lorsque vous prenez une photo ordinaire avec votre appareil), toute la lumière de la scène converge vers l’objectif de l’appareil, de sorte que vous voyez des parties des côtés d’un certain objet. Plus on s’éloigne du centre, plus l’angle de ces rayons lumineux est important, et plus on voit de côtés de montagnes/vallées/etc.
Les cartes ne présentent généralement pas cette distorsion de perspective. Au lieu de cela, elles ont généralement une vue orthographique, dans laquelle tout est vu directement, de haut en bas. Vous connaissez peut-être même le concept d’orthophotos : les images aériennes de la vie réelle présentent des distorsions de perspective, qui peuvent être corrigées en les rectifiant dans un logiciel SIG. C’est un peu comme si nous étions capables de positionner notre caméra directement au-dessus de chaque partie de notre scène en même temps.
Nous pouvons dire à Blender de capturer des images orthographiques, au lieu de celles en perspective. Pour ce faire, assurez-vous d’abord que la caméra est sélectionnée. Ensuite, faites apparaître le panneau Propriétés des données de l’objet en cliquant sur l’icône verte d’une vieille caméra de cinéma sur la gauche du panneau. Remarquez qu’en haut du panneau se trouvent les paramètres de l’objectif, et que le type d’objectif est réglé sur Perspective. Sélectionnez Orthographic. Problème résolu !
Il y a une autre chose que nous devons fignoler pendant que nous sommes ici. Si vous regardez à travers la vue de la caméra, vous remarquerez qu’elle n’est pas alignée avec le plan (du moins avec ma heightmap). La caméra va actuellement capturer une image plus grande que l’avion. Nous voulons qu’elle s’aligne exactement, de sorte que nous ne manquions aucune partie de notre terrain, et que nous ne photographions rien en dehors de notre terrain. Pour ce faire, nous réglons l’échelle orthographique dans le panneau des propriétés des données de l’objet. Remarquez que si vous passez la souris dessus, Blender dit que c’est « similaire à un zoom ». Changer ce nombre nous permet de zoomer ou dézoomer notre caméra.
Pour que la caméra s’aligne exactement avec le plan, nous devons simplement brancher un nombre qui est deux fois la plus grande dimension de notre plan. Je ne vais pas mentir : je ne suis pas sûr à 100% de la façon dont ces nombres finissent par être liés de cette manière. Mais ils le sont. Dans le cas de mon avion, j’ai entré une valeur X de 2, et une valeur Y de 2,8. Si vous ne vous en souvenez pas, vous pouvez sélectionner l’avion et revisiter le panneau Propriétés de l’objet en cliquant à nouveau sur cette icône carrée orange.
Donc, pour mon échelle orthographique, je dois brancher 5,6 (qui correspond à 2 × 2,8). La vôtre variera en fonction de la DEM que vous utilisez. Vous pouvez même faire un peu de mathématiques dans cette zone de saisie si vous le souhaitez. Vous pouvez taper « 2 * (la plus grande dimension de votre plan) » et Blender fera la multiplication pour vous. Une fois que vous avez branché le bon nombre, votre caméra devrait être bien alignée avec votre avion si vous revenez en arrière pour regarder à travers votre vue caméra.
Et si vous faites un rendu de test, vous devriez pouvoir dire que la caméra est maintenant parfaitement en position.
Le terrain est bien trop exagéré (rappelez-vous à quel point il avait l’air hérissé, vu de côté), mais au moins nous avons maintenant la caméra correctement placée. Pendant que nous y pensons, cependant, allons-y et diminuons l’exagération du terrain. Sélectionnez l’avion, puis retournez dans l’éditeur de shaders (rappelez-vous que l’icône en haut à droite de la fenêtre d’affichage 3D vous permet de basculer). Retournez à votre nœud de déplacement et abaissez le nombre d’échelle ; je vais utiliser 0,3.
C’est quelque chose que nous aurions pu régler dans le dernier chapitre, mais sans avoir notre caméra en position, il aurait été difficile de deviner un réglage correct. Maintenant que notre caméra est en place, nous pouvons essayer différents réglages jusqu’à ce que l’exagération corresponde à ce que nous voulons. De plus, cela fait un moment que nous ne sommes pas allés dans l’éditeur de shaders, et il est bon de s’entraîner à faire des allers-retours et à se souvenir de ce que nous avons fait dans le dernier chapitre. Le rendu qui en résulte est bien meilleur, avec moins d’ombres exagérées.
L’éclairage n’est toujours pas bon, mais nous le corrigerons au prochain chapitre. Meanwhile, to recap, we
- put our camera in position and made it point downward;
- set the dimensions of our final render, which fixed our camera’s aspect ratio; and
- set our camera to an orthographic lens, with a scale that matches our plane.
With that, we’re done with the camera. The last major piece of the puzzle remains.
Next Chapter: The Sun