Creation Kit : Techniques annexes : Portes, Navmeshes, et palettes

De Wiwiki
Aller à la navigation Aller à la recherche

Création d'une porte reliant deux lieux

Depuis longtemps dans les éditeurs de Bethesda, le monde étant morcelé entre un grand extérieur et une multitude d'intérieurs, une porte entre deux lieux nécessite deux portes : une porte dans le lieu A et une porte dans le lieu B. Ceci est valable entre un extérieur et un intérieur, entre deux intérieur, ou entre deux extérieurs.

Seules les portes dans un même intérieur ne provoquant pas de déplacement sont uniques et pivotent vraiment, comme de vraies portes.


Donc pour une ferme dans le monde de Skyrim, nous avons un bâtiment ferme avec une porte extérieure, qui téléporte le joueur vers la porte intérieure dans l'intérieur correspondant à la ferme. Devant chaque porte, un marqueur jaune avec une pointe représentant la direction matérialise le point de téléportation de l'acteur (joueur ou NPC).


Pour faire une porte reliant l'intérieur à l'extérieur :

Ajoutez une porte et ouvrez sa fenêtre Reference.
Ajoutez une porte à l'extérieur, et désignez la comme cible de téléportation.
Deux marqueurs de téléportation sont créés, un à l'intérieur, un à l'extérieur.

- Chargez la cellule d'intérieur, en sélectionnant Interiors dans le menu Worldspace de la fenêtre Cell View, puis en double-cliquant sur l'ID de votre intérieur.

- Dans la fenêtre Objet, cherchez une porte dans l'arborescence WorldObjects/Door/Farmhouse, et faites glisser une porte FarmhouseDoor01 dans votre ferme. Ajustez la position de la porte pour qu'elle jointe avec son encadrement ; la surface de la porte doit dépasser légèrement du mur, pour être activable en jeu.

- Double-cliquez sur la porte pour ouvrir la fenêtre de référence de celle-ci (une référence est un exemplaire de l'objet de base, pour rappel), laissez la fenêtre ouverte.

- Chargez la cellule d'extérieur, en sélectionnant le Worldspace de l'extérieur dans la fenêtre Cell View, puis double-cliquez sur la cellule où est votre bâtiment dans la liste des cellules.

- Zoomez avec votre caméra sur le bâtiment, et faites glisser une porte devant votre ferme. Ajustez sa position.

- Dans la fenêtre Reference de la porte intérieure, cliquez sur l'onglet Teleport, puis sur la case Teleport.

- Cliquez sur le grand bouton Select reference in Render Window, et bougez le curseur en forme de cible dans la fenêtre de rendu. Dès qu'elle passera au dessus d'une porte selectionnable, elle passera en blanc. Double-cliquez pour selectionner la porte avec la cible.

- Dans la fenêtre Reference de la porte intérieure, cliquez sur OK pour la fermer, et valider : un marqueur DoorMarker apparait au milieu de la porte.

- Cliquez sur le marqueur jaune et écartez le un peu de la porte (sinon les acteurs apparaîtront "dans" la porte).

- Double-cliquez sur le Doormarker, une fenêtre vous demande si vous voulez voir la porte liée dans la cellule intérieure, répondez oui.

- Vous voilà devant le doormarker, placé au beau milieu de la porte intérieure. Déplacez-le lui aussi devant la porte.

- Sauvegardez votre mod.


Tester votre porte

Lancez Skyrim avec votre mod activé. Comme avec vos premiers tests, activez la console en appuyant sur ², et tapez la commande :

coc MONFerme01 (ou le nom de la cellule que vous avez créée).

Ouvrez la porte : vous devriez déboucher sur votre île.






Créer un navmesh en intérieur

Notre intérieur a l'air terminé en apparence, il lui manque pourtant quelque chose. En effet, si nous mettons un acteur (NPC, monstre, etc...) dans la pièce, il restera immobile, aura un comportement incohérent, voire il n'apparaitra pas du tout (où à un endroit incongru). Cela est du au fait qu'il faut indiquer une surface sur laquelle les acteurs peuvent circuler dans notre intérieur : c'est le Navmesh. Celui-ci se compose de triangles invisibles recouvrant toute la surface exploitable par les acteurs : plancher, rochers plats, terrasses, escaliers, etc...

Grace au navmesh, le jeu peut calculer le pathfinding des acteurs de manière relativement efficace.


Créer son premier triangle Navmesh

- Ouvrez la cellule de votre intérieur, et positionnez la caméra de façon à avoir une vue dégagée d'une partie du sol de la pièce.


La barre Navmesh et ses principaux boutons

- Cliquez sur le bouton Navmesh dans la barre d'outils du Creation Kit (Des points rouges reliés par un fil), après le bouton avec la bulle.

- La barre Navmesh apparait : si un navmesh est présent, le découpage en triangles rouges apparait. Appuyez sur W pour changer de mode de transparence, si besoin.

- Les trois premiers boutons décrivent le mode employé : mode Triangle (selectionne des triangles), le mode Vertice (selectionne des points), le mode Edge (selectionne les lignes). Cochez le mode Vertice (points) et décochez les deux autres.

- Sur le sol de votre pièce, faites un clic-droit : un point vert apparait. Faites un autre point, puis un troisième. Vous devriez avoir deux points jaunes, et le dernier point qui est vert.

- Pour faire votre triangle navmesh, vous devez activer en vert les trois points en même temps(pas plus), en faisant un clic-gauche sur chaque point et en gardant CTRL appuyé.


3 points verts forment un triangle rouge, deux points valides restent après la création

- Une fois vos trois points en vert, appuyez sur A. Votre triangle Navmesh apparait.








Enchaîner les triangles navmesh

Faire les triangles un par un est fastidieux, heureusement il est possible de les enchaîner :


Enchaînez les triangles jusqu'à recouvrir tout le sol

- Gardez Ctrl Enfoncé, et faites 3 points avec le clic droit, un triangle apparait automatiquement au 3ème point vert.

- Vous remarquerez que les deux derniers points sont validés en vert. Gardez CTRL appuyé, et faites un clic droit pour faire apparaître un 3ème point : un triangle est enchaîné avec le 1er.

- Répètez l'opération jusqu'à recouvrir le plus de surface possible.

- Si vos deux points sont au mauvais endroit, invalidez en un avec CTRL appuyé, et validez un autre mieux placé, et continuez à rajouter vos triangles par Clic-droit et CTRL appuyé.




Remarques


Faites une planche Navmesh sur l'escalier

- Les triangles ne doivent pas être trop fins, cela peut donner un comportement incohérent aux acteurs. Bougez les points de façon à avoir des triangles aussi proches de l'isocèle que possible.

- Vous pouvez selectionner plusieurs points ou tout un navmesh en faisant une boite avec un clic droit, englobant vos points. par exemple pour effacer une partie de votre navmesh.

- Pour rajouter un point au milieu d'une ligne, passez en mode Egge (troisième bouton de la barre navmesh), les lignes passeront en surbrillance en passant au dessus. Faites alors un clic-droit, et un point apparaitra au milieu de la ligne, séparant du même coup en triangles ceux déjà concernés par la ligne.

- pour recouvrir un escalier, faites des triangles suivant juste quelques arêtes, comme si une planche était posée sur l'escalier (voir image).

- En intérieur, la génération automatique de Navmesh est déconseillée : elle est souvent mal faite, avec des coupures et des surfaces inutiles, des triangles trop fins et nombreux. Faites les intérieurs à la main !



Vérifiez et finalisez votre Navmesh

Une fois le navmesh terminé, il peut contenir des erreurs. Il faut le contrôler :


Un Navmesh terminé, Appuyez sur W pour changer le mode de vue

- Appuyez sur le bouton Find Triangle (Le traingle rouge avec un point d'interrogation dans la barre navmesh), la fenêtre Select Triangle apparait.

- Appuyez sur le bouton Check Navmesh : s'il est correct, il affiche No Warning Found.

- Si une erreur est détectée sur un triangle, il vous l'indique : supprimez le, et refaites le navmesh au niveau du trou formé. Revérifiez le navmesh.

- Pour finaliser, appuyez sur le bouton Find Cover Edges (après le B dans la barre navmesh). Attendez qu'il ait fini, et appuyez sur le bouton Finalize navmesh (le V rouge à coté).

- Si une porte est présente et n'est pas reliée à une autre, un message d'erreur bénin apparaîtra. Validez tout de même. Vous re-finaliserez le navmesh ultérieurement, une fois les portes reliées : les navmeshs indiquent par un triangle vert proche de la porte qu'ils sont reliés à un autre de l'autre coté de la porte.