GtkRadiant: Les Bases (2)

Écrit le 31/10/2003 par Ze_kurgan
Dernière mise à jour : 01/02/2006

GtkRadiant: Les Bases (2)

Maintenant intéressons-nous à la barre de menu située tout en haut du soft, celle-ci :

http://www.game-lab.com/images/tuts/gtkradiant_bases2/01.jpg

Détailler tous les sous-menus serait un peu surfait c'est pourquoi je vais le faire de façon succincte en me basant sur les choses principales à savoir.

  • File : permet d'ouvrir/fermer/charger un fichier, les fonctionnalités de base de tout bon soft. Rien de bien complexe.
    Radiant enregistre le chemin des derniers fichiers que vous avez récemment ouverts, vous pouvez donc très facilement les recharger en cliquant sur les chiffres 1/2/3 ou 4 situés en bas de ce dialogue.

    http://www.game-lab.com/images/tuts/gtkradiant_bases2/02.jpg
  • Edit : dans ce menu sont accessibles tous les undo/redo
    Copy/paste que l'on trouve partout. Là aussi rien de bien sorcier. Tout le monde à déjà croisé ce type de commande dans d'autres softs.
    Delete se situe sur « Backspace » (la flèche qui va à gauche au-dessus de la touche entrée). Elle sert à effacer la sélection courante.
    Map info / Entity info est assez utile pour savoir le nombre de brush/entity etc. que possède notre map.

    Ce menu ne devrait poser aucun problème.

    http://www.game-lab.com/images/tuts/gtkradiant_bases2/03.jpg
  • View : dans un premier temps prenez le temps de configurer correctement le menu « Show ». En effet celui-ci sert à voir ce que vous voulez sur votre surface de travail. (Les petites flèches présentes à chaque coté droit d'un menu indique un sous-menu) Donc dans ce sous-menu j'ai activé « Show coordinates » et « Show axes » ainsi je vois les coordonnées de mon plan (celles présentes sur le côté gauche et en haut de la surface de travail) et les axes sur lesquels je travaille. « Show name » sert à afficher un nom pour chaque entité (brush disposant d'une fonction spéciale ) de la map.
    « Hide/show » très utile et important à connaître. Cette commande permet de cacher/afficher la sélection courante. (Raccourci : H pour cacher/shift + H pour afficher). Quand vous construirez de grandes maps et donc que vous aurez plein de brushs à l'écran vous verrez que cette commande est très utile.

    http://www.game-lab.com/images/tuts/gtkradiant_bases2/04.jpg

  • Selection  :

    http://www.game-lab.com/images/tuts/gtkradiant_bases2/05.jpg

    Drag permet de modifier la position des Edge (les arêtes du brush) (raccourci E) ou des vertex (les sommets) (raccourci V) .
    Une edge est la ligne qui rejoint deux vertex. Une vertice est un point commun à plusieurs edges.
    Clone : comme son nom l'indique sert à dupliquer la sélection en cours (raccourci : Barre d'espace)
    Deselect : (raccourci : Echap)sert à désélectionner la/les sélection(s) en cours.
    Invert (raccourci : I) sert à inverser la sélection courante. (utilisation toutefois rare...)
    Rotate : permet d'effectuer une rotation de la sélection en cours suivant les trois axes X/Y ou Z tout cela en degré. La fonction « arbitrary rotation » (raccourci : R) permet de paramétrer exactement de combien de degrés et suivant quel axe on veut bouger la sélection courante.
    Scale : permet d'agrandir dans l'un des trois axes de notre choix la sélection en cours. Attention, vous dessinez un brush de 100 unités de cotés et demandez un scale de 1.5 (soit 50% plus grand) si vous validez et que vous décidez de refaire un scale, celui ci sera basé sur la nouvelle taille du brush soit 150 et non 100. Faites gaffe...
    Connect entities : (raccourcis Crtl + K) permet de lier deux entités ensemble. Ex : lier un trigger_push avec un trigger_position.

  • BSP : c'est le menu qui sert à déterminer comment vous allez compiler votre map. Comme nous débutons et que nous ne ferons pas de grosses maps (pour l'instant) nous pouvons sans problème utiliser la commande BSP VIS LIGHT EXTRA.
    Une fois cette commande enclenchée, une fenêtre dos (fenêtre sur fond noir) s'ouvrira montrant la progression de la compilation.
    Mais la compilation est un sujet très vaste et compliqué, attendez donc d'être au chapitre correspondant.

  • Grid : Par défaut le Snap-to-grid (collé sur la grille) est activé. Laissez-le comme ça, c'est bien plus pratique. GTKRadiant se sert des touches du clavier numérique1 à 9 pour permettre de changer la taille des grilles.
    Plus vous voulez faire des objets petits et les ajuster correctement, plus vous devez utiliser un chiffre bas et inversement. Vous pouvez aussi utiliser un snap de 1 pour ajuster un brush de grande taille.

  • Textures : GTK radiant se sert des textures présentes dans votre répertoire :
    ...quake 3baseq3
    Vous pouvez donc à loisir charger les textures qui vous semblent les plus esthétiques pour votre map.
    Il faut cependant en repérer certaines plus importantes que d'autres.
    Si vous voulez utiliser les textures du jeu prenez celles situées dans base. Plusieurs sous-menus apparaîtront donnant accès à des textures de mur (wall) de sol (floor) etc.
    Un autre pack de textures intéressant à repérer c'est Common. Certaines textures employées dans ce pack vous permettront de créer des triggers. (Voir cours suivants sur les Brush-Based Triggers)

  • Misc : Options diverses que propose GTKRadiant.
    Benchmark permet d'effectuer un test de la caméra (si quelqu'un trouve l'utilité réelle de cette option, faites m'en part). Colors sert à modifier les couleurs des éléments des vues 2D de Radiant. Si le blanc vous fait mal aux yeux comme piGfreeZer, vous pouvez changer les couleurs.) Le Gamma sert, comme son nom l'indique à régler le gamma, soit la luminosité des vues (nécessite un reboot du soft).
    Find brush... sert à trouver un brush dans la map par son numéro. Utile lorsqu'un brush pose problème lors d'une compilation (voir compilation, et erreurs de compilation).
    Next et Previous leak spot permet de passer de "leak spot" en "leak spot" (voir erreurs de compilation).
    Select entity color (raccourci : K) permet quand vous posez une lumière de lui assigner une couleur.

  • Region: Permet de créer des "régions" de compilation. (voir techniques avancées)

  • Brush : permet de choisir le nombre de faces que l'on désire pour un brush. Il est possible de créer des brushs de 3 à 9 faces (là aussi des raccourcis sont disponibles)
    arbitrary sidedpermet de choisir le nombre de face voulues pour un brush.
    Primitive : donne le choix entre créer un cône ou une sphère. Là aussi il suffit de choisir le nombre de faces voulues pour son brush. Pour une sphère (ou un cône) 20 est déjà un nombre suffisant pas la peine de mettre 40.

  • Curve :

    http://www.game-lab.com/images/tuts/gtkradiant_bases2/06.jpg

    Un des menus les plus importants puisqu'il représente une des spécificités du moteur de Quake.
    Mais avant tout qu'est ce qu'une curve ? Ceux qui ont joué à Quake1 ou Half-Life on pu remarquer que les décors étaient taillés « à la hache » : aucune courbe rien de que des angles.
    ID software a inclus dans Quake3 la possibilité de faire des surfaces courbes : les curves, bien utile pour modifier l'esthétique des ses maps et aussi pour créer de façon assez réaliste toute sorte de formes, arches et autres...
    Cylinder : se passe de commentaires. Sauf que si vous avez à créer un brush de plus de 10 sides préférez un cylindre ! C'est plus facile à travailler par la suite.
    More cylinder ; Donne le choix entre « dense cylinder » et « very dense cylinder ». La différence entre ces deux options se situe dans le nombre de vertex disponibles afin de modifier la forme du brush. Square cylinder ; Permet de créer un cylindre... carré et oui... cela à l'air idiot comme définition mais faites des tests vous comprendrez très vite.
    Cela sert pour faire des surfaces carrées, mais qu'on puisse déformer par la suite. (voir utilisations avancées des curves)
    End cap : C'est ce qui permet de créer des arches au-dessus d'une porte. Je ne vais pas m'étaler maintenant sur le sujet on verra cela plus tard.
    Bevel : Permet de créer une demi arche. Je m'explique. Dans la map q3dm7, les plates-formes situées en haut (là où il y a le shotgun) comportent un bevel. C'est l'arrondi que l'on peut voir quand on se penche pour regarder le jumpad.
    More end caps, bevels réagit de la même façon que more cylinder. Faites des tests vous verrez.
    Cone : La différence entre un cône du menu brush et un cône du menu Curve c'est là aussi la présence de vertex supplémentaires permettant de modifier plus facilement le brush. Créez un brush avec le menu Brush et un autre avec le menu Curve et appuyez sur V (Vertex) vous comprendrez très facilement.
    Simple patch mesh : Un patch et une surface plane s'étendant sur deux axes qui peut être déformé à volonté. Faites juste attention à modéliser votre patch dans les axes principaux qui vous intéressent, sinon vous devrez le bouger et donc perdre de la précision.
    Insert ; Permet d'ajouter des Columns (Colonnes) ou des Rows (Rangs). Ce qu'on appelle Columns ou Rows sont les itérations des Curves, c'est à dire les séparation: il y aura alors un rang ou une colonne en plus qui découpe la Curve, et donc plus de vertex manipulables.Insert ajoute une colonne ou un rang "en bas" des autres, tandis que Add ajoute une colonne ou un rang "au dessus" des autres. (faites des tests, vous comprendrez très rapidement.)
    Delete ; Fait l'inverse, logique...
    Cap selection : lors de la création d'une surface patch de type End cap ou Bevel, cette fonction permet de choisir l'aspect final du patch. Pour résumer si je modélise un end cap dans l'optique de créer une arche, je peux choisir si cette surface est pleine ou creuse. Là aussi c'est assez dur d'expliquer sans exemple. Nous verrons tout cela plus tard. Enregistrez bien le raccourci (shift + c), vous allez souvent vous en servir.
    Thicken  : Comme je le disais un simple patch mesh et une surface s'étalant sur deux axes (donc pas de profondeur), cette fonction permet de donner du volume à votre patch (par défaut 8 unités) faites des tests et là aussi vous comprendrez très vite

  • Les menus Plugins et Help sont moins utiles que les autres, mais Plugins est très utile pour les utilisateurs plus avancés (voir utilisations des plugins). Help quant à lui est utile pour celui qui comprend l'anglais très bien (documentation complète en anglais)

    Maintenant intéressons-nous à la barre d'outils située en dessous de celle dont nous venons de parler, c'est-à-dire celle-ci ;

    http://www.game-lab.com/images/tuts/gtkradiant_bases2/07.jpg

    Je ne présente pas les deux premiers icônes que tous le monde doit (devrait) connaître.
    Pour mémo garder à l'esprit ceci :
    Z = la hauteur Y = la profondeur X = la largeur

    1 = http://www.game-lab.com/images/tuts/gtkradiant_bases2/08.jpg

    X-axis Flip
    Flip votre brush suivant l'axe des X.
    Flip ne vient pas du verbe « flipper » mais pourrait se traduire par « symétriser ». GTK radiant symétrise votre sélection courante suivant l'axe des X.

    Avant le flip:

    http://www.game-lab.com/images/tuts/gtkradiant_bases2/09.jpg

    Après le flip:

    http://www.game-lab.com/images/tuts/gtkradiant_bases2/10.jpg


    2 = http://www.game-lab.com/images/tuts/gtkradiant_bases2/11.jpg X-axis Rotate. Tourne votre brush suivant l'axe des X de 90 °.

    3 = http://www.game-lab.com/images/tuts/gtkradiant_bases2/12.jpg
    Y-axis Flip. Flip votre brush suivant l'axe des Y.

    4 = http://www.game-lab.com/images/tuts/gtkradiant_bases2/13.jpg
    Y-axis Rotate. Tourne votre brush suivant l'axe des Y toujours de 90 °.

    5 = http://www.game-lab.com/images/tuts/gtkradiant_bases2/14.jpg
    Z-axis Flip. Flip votre brush suivant l'axe des Z

    6 = http://www.game-lab.com/images/tuts/gtkradiant_bases2/15.jpg
    Z-axis Flip. Tourne votre brush suivant l'axe des Z toujours et encore de 90 °

    7 = CSG substract http://www.game-lab.com/images/tuts/gtkradiant_bases2/16.jpg
    , permet d'effectuer des opérations de type booléennes sur des brushs. Pour résumer, prenons deux brushs qui se chevauchent. Cette option permet de choisir ce qui résulte du croisement des ces deux formes. Regardez ce qui suit :

    http://www.game-lab.com/images/tuts/gtkradiant_bases2/17.jpg


    Pour l'exemple (et pour bien voir) les deux brushs sont sélectionnées mais en théorie un seul devrait l'être dans notre exemple la sphère.

    http://www.game-lab.com/images/tuts/gtkradiant_bases2/18.jpg

    Toujours pour bien voir, les deux brushs sont sélectionnés. J'ai donc déplacé le brush sphère vers le brush cube. C'est donc le brush sphère que je vais soustraire au brush cube.

    Appuyons sur CSG substract :

    http://www.game-lab.com/images/tuts/gtkradiant_bases2/19.jpg

    Si nous supprimons la sphère (backspace), cette dernière a « creusé » le cube:

    http://www.game-lab.com/images/tuts/gtkradiant_bases2/20.jpg

    Mais là aussi rien ne vaut une bonne pratique pour saisir.

    ATTENTION: La fiabilité de cette option est encore à démontrer ! L'utilisation abusive ou erronée de cette option entraîne des problèmes fréquents de compilation. Eviter donc d'utiliser cette fonction pourtant utile. (ce phénomène vient du fait que le moteur 3D à du mal à gérer la "découpe" que crée le substract, comme vous pouvez le voir sur l'image.)

    8 = Hollow http://www.game-lab.com/images/tuts/gtkradiant_bases2/21.jpg
    permet de creuser un bloc. Regardez ce qui suit
    Créons un bloc de 128*128*128 unités comme sur la figure 1 puis appuyons sur Hollow figure 2

    Figure 1:

    http://www.game-lab.com/images/tuts/gtkradiant_bases2/22.jpg

    Figure 2:

    http://www.game-lab.com/images/tuts/gtkradiant_bases2/23.jpg

    Nous pouvons constater que le cube a été creusé à notre place sur toutes les faces qui le composent.
    GTKRadiant exécute cette commande suivant la taille de la grille sur laquelle vous êtes basés. Je m'explique, dans l'exemple ci-dessus je suis basé sur une grille de 8 unités (raccourci : 4) les murs font donc 8 unités d'épaisseur, mais si je me mets sur une grid de 16 (raccourci : 5) GtkRadiant va me faire un mur de 16 unités d'épaisseur et ainsi de suite. Donc si vous avez à créer plusieurs pièces avec une épaisseur de mur similaire essayez de conserver une grid identique.
    ATTENTION: Là encore, la fiabilité de cette option est encore à démontrer ! L'utilisation abusive ou erronée de cette option entraîne des problèmes fréquents de compilation. Eviter donc d'utiliser cette fonction pourtant utile.

    9 = clipper http://www.game-lab.com/images/tuts/gtkradiant_bases2/24.jpg
    (raccourcis X) Permet de tailler un brush comme on le désire. Regardez ce qui suit.

    Dessinons un bloc de 128*128*128:

    http://www.game-lab.com/images/tuts/gtkradiant_bases2/25.jpg

    Appuyons sur X et déterminons deux points:

    http://www.game-lab.com/images/tuts/gtkradiant_bases2/26.jpg

    La partie jaune va être conservé. Si vous vous voulez conserver l'autre partie, pas de soucis, appuyez sur Ctrl + Entrée, la sélection s'inversera. Une fois votre choix effectué appuyez sur Entrée la zone sélectionnée sera conservée, l'autre effacée.
    Pour conserver les deux parties, appuyez sur Shift+Entrée.
    Vous pouvez modifier l'emplacement des points édités. Maintenez appuyé la souris sur l'un des points édités. Une petite croix apparaîtra et vous pourrez faire glisser celui-ci sur les edges de votre brush.
    Vous pouvez poser trois points sur un Brush, seulement le troisième point devra être sur un axe différent des deux autres. Regardez les photos suivantes.

    Dans cette exemple mon cube fait 128*128*128.
    J'ai déterminé deux points.
    Je suis sur les axes Y et X (ne vous fiez pas au Z que vous voyez)

    http://www.game-lab.com/images/tuts/gtkradiant_bases2/27.jpg

    Ctrl + Tab Pour changer mes axes de travail (ici axes Z et X) et je pose mon troisième point.
    Appuyez sur Entrée et vous obtenez une nouvelle forme.
    Appuyez sur Echap pour quitter ce mode de travail.

    http://www.game-lab.com/images/tuts/gtkradiant_bases2/28.jpg

    10 = Free rotation http://www.game-lab.com/images/tuts/gtkradiant_bases2/29.jpg
    (raccourci : R)Comme son nom l'indique, cet outil permet d'effectuer un rotation libre du brush. Dès que vous aurez sélectionné cette option le brush deviendra rose et un petit carré viendra se placer au centre de votre sélection courante afin de symboliser l'axe de rotation. L'option Free rotation est intimement liée à la grid que vous avez choisi. Faites attention. Adaptez votre grid à l'action que vous voulez faire, par exemple si vous décidez de construire un escalier en colimaçon passez sur une grid de 1 (raccourci : 1) vous ferez du travail plus précis)
    Pour sortir de ce mode et retourner au mode de manipulation normal appuyez sur Echap

    11 = Free scaling http://www.game-lab.com/images/tuts/gtkradiant_bases2/30.jpg
    . Là aussi pas de mystère, cette fonction permet de « scaler » (agrandir) la sélection courante. Quand vous actionnez ce mode le brush devient vert ! Et le scale s'effectue de façon homothétique, c'est à dire dans les trois axes et avec les mêmes proportions.
    Là aussi pour quitter ce mode appuyez sur Echap.

    Voilà avec tout ça vous êtes prêt à bâtir votre première map.

  •