GtkRadiant: Les bases
Cette page va vous fournir les connaissances de base pour créer votre première map avec GtkRadiant.
Les brushes
Le brush (Brosse en bon français
) est le principal élément qui va former votre map. C'est un héxaèdre1) que vous pouvez dimensionner et placer où vous voulez dans l'espace. Votre map sera constitué d'une multitudes de brushes.
Pour créer un brush, placez vous dans une vue 2D, et maintenez le bouton gauche de la souris enfoncé tout en la déplaçant. Cela crée un rectangle dans les vues 2D, et un hexaèdre dans la vue 3d: c'est votre brush.
Il est en rouge dans toutes les vues, car il est sélectionné. Il suffit d'appuyer sur [echap] pour désélectionner tous les brushes. Pour sélectionner ou désélectionner un brush, appuyer sur [shift] et cliquez sur celui-ci dans n'importe quelle vue. Quand un brush est sélectionné, vous pouvez le redimensionner facilement, simplement en maintenant le bouton gauche de la souris enfoncé, tout en la déplaçant dans une des vues. En faisant ainsi, le brush conservera l'inclinaison de ses faces. Cependant vous pouvez le redimensionner quasiment2) comme bon vous semble, il suffit d'appuyer sur la touche [V] une fois le brush sélectionné (C'est le mode d'édition “vertices”).
Il faut sélectionner les ancres qui apparaissent (toujours avec shift + clique gauche), et les déplacer comme voulu.
Appuyer une fois sur [echap] pour désélectionner les points, une 2e fois pour sortir du mode “vertices”, et encore une fois pour déselectionner le brush.
Les textures
Pour appliquer une texture, c'est très simple. Sélectionnez votre brush. Dans le menu textures vous avez une liste de toutes les textures que Radiant a trouvées. Cliquez par exemple sur Textures/urban/urban_terror2. Cela charge les textures classées dans le répertoire urban_terror2, pour les afficher il suffit d'appuyer sur la touche [T].

Cliquez maintenant sur la texture que vous voulez, elle sera appliquée aux surfaces du brush sélectionné.
Si vous voulez que la texture ne s'applique quà une seule face, sélectionnez le brush, appuyez sur la touche [F], puis sélectionnez les faces sur lesquelles devront s'appliquer les textures en maintenant la touche [shift]3) enfoncée. Il ne reste qu'à choisir la texture, comme précédemment.

Pour utiliser des textures personalisées, il faut que celles-ci soient au format jpeg ou tga. Elles doivent être placées au bon endroit avant le lancement de GtkRadiant (Voir la page traitant du fichier .pk3)
Les leaks
Un “leak” est un “trou” dans la map. Pour que votre map soit correcte, il faut que les brushs forment un espace clos, et que rien n'en sorte: lumière, apparition de joueurs, entités… Un leak est détecté lors de la compilation, on a alors un message qui nous indique le brush concerné. On peut voir à l'écran un trait rouge, qui correspond à un rayon lumineux qui s'échappe de la map: il suffit de le suivre pour savoir à quel endroit se situe l'erreur. Il peut y avoir d'autres causes: par exemple si on essaie de mettre de la lumière dans un brush (hormis des brush spéciaux), ou avec certaines fonctions mal définies. Dans l'exemple ci-dessous, j'ai créé une pièce à l'aide de 6 brushes, dans laquelle j'ai mis un respawn et de la lumière. J'ai racourcis un brush de manière à faire une ouverture, puis j'ai lancé la compilation.
Structural / Detail
Quand vous créez un brush, il est par défaut “structural”. Cela signifie que dans le jeu, le moteur ne déssinera pas ce qui est situé derrière le brush, et que le brush vous stoppe si vous essayez de le traverser (Il est solide). Cela permet au moteur de ne dessiner que ce qui est nécéssaire, et de gagner en performances (plus de FPS 4) ).
Cependant vous aurez sans aucun doute à créer des objets relativement petits dans vos maps. Dans ce cas, cela demande plus de ressources au moteur de calculer ce qu'il ne faut pas dessiner, que de le dessiner. Pour arranger cela, il faut dire au moteur qu'il ne doit pas s'arréter a ce brush, on va donc définir celui-ci en brush “detail”.
Pour faire simple, les gros éléments de votre map doivent etre en structural (batiments, terrain…) et les plus petits en detail (tables, structures métalliques…)
Pour définir un brush comme structural, sélectionnez le et faites [ctrl] + [m], pour le définir comme detail c'est [ctrl] + [shift] + [s]. Vous pouvez afficher ou cacher les brushes detail en faisant [ctrl] + [d] (Pas de panique, ils ne sont pas supprimés).
Les entités de spawn
Les entités de spawn sont les positions de départ du (des) joueur(s).
Une de ces entités est info_player_start. Elle correspond au départ du joueur en mode spectateur. Pour la placer, faites clic droit dans la vue 2D → info → info_player_start.
Une autre entité basique est info_player_deathmatch. Celle-ci sert au(x) départ(s) du joueur en mode Free For All (FFA). Vous pouvez en placer plusieurs sur la même map (et heureusement sinon il y aurait beaucoup de spawn camping
) Pour la placer, clic droit dans la vue 2D → info → info_player_deathmatch.
En vérité, info_player_start et info_player_deathmatch sont similaires : info_player_start donne également le départ du joueur en Free For All. Je vous recommande cependant d'utiliser une fois info_player_start pour le départ en spectateur et plusieurs info_player_deathmatch pour le départ en jeu
.
La lumière
Par défaut, votre map est complètement noire. La lumière se fait soit grâce à l'aide de textures spéciales (comme le ciel) ou à l'aide d'entités lumineuses.
Pour rajouter ces entités, il suffit de faire un clic droit sur une vue 2D, et de cliquer sur “light”. Une fenetre apparaît, vous demandant de saisir une valeur: choisissez par exemple 500. C'est l'intensité lumineuse. Après validation, votre source apparait dans la map, vous n'avez plus qu'à la placer convenablement.
Veillez à ne pas la faire déborder à l'intérieur d'un brush: cela causera un leak lors de la compilation.
Vous pouvez modifier les paramètres de votre source (comme l'intensité) en la sélectionnant, et en appuyant sur [N]. La couleur peu également être modifiée avec la touche [K].
Compiler sa map
Une fois tous les éléments de votre map réalisés, il faut encore la compiler. C'est l'étape la plus facile, il suffit de choisir les options voulues dans le menu Build, et laisser l'ordinateur travailler. Avant de lancer la compilation, veillez à ne pas avoir de leak, à avoir au moins une entité de spawn, et de la lumière.
En cliquant sur une des lignes du menu, GtkRadiant appelle le programme q3map2, qui va compiler votre map à partir du fichier map et suivant différentes options qui lui sont fournies (BSP, light…). Il faut bien choisir les options de compilation en fonction de l'usage que vous comptez avoir de votre map (version de test, demo rapide, version finale), car elle peut prendre de quelques secondes à plusieurs heures!
Quelques exemple:
- Vous voulez simplement vérifier la géométrie de votre map, les bonnes proportions, l'alignement des textures. Pour cela, choisissez la ligne “BSP -meta”, cela génèrera un fichier .bsp avec tous vos brushes et models en quelques secondes. Cependant, les éclairages ne seront pas calculés, le rendu sera très brouillon.
- Vous voulez un rendu plus réaliste, une map qui soit jouable. Choisissez ”-light -fast”. Cela calculera les éclairages et ombres à partir du fichier bsp précédemment créé, et y enregistrera les modifications. Attention donc à générer d'abord un fichier bsp avec la ligne “BSP -meta”, sinon vos derniers changements ne seront pas pris en compte. Il faut compter de moins d'une à 4 minutes, suivant la taille de votre map.
- Vous êtes content du résultat et vous voulez partager votre map: choisissez par exemple “BSP -meta, -vis, -light -fast -filter -super 2”, cette ligne génerera un nouveau fichier BSP, et calculera les lumières de façon plus réalistes. Compter de 10 minutes à plus d'une heure..
D'une manière générale, plus on descend dans la liste, plus le temps de compilation est grand, et meilleur est le rendu (Le meilleur étant l'avant dernière ligne, qualifiée de final).
Une fois que votre map est compilée, il ne vous reste plus qu'à créer un fichier pk3 pour pouvoir y jouer.
\\
Les models
Les brushes sont bien adaptés à la création de bâtiments, de structures relativement grandes. Cependant ils ne sont pas pratiques pour créer des objets précis ou de petite taille. Heureusement, il existe les models pour combler celà. Les models sont des objets en 3D, au format md3, créés à partir d'autres logiciels (Blender, 3dsmax …) qui peuvent être importés facilement dans vos maps. Vous pouvez en trouver un certain nombre ici: http://blackrayne.net/.
Téléchargez par exemple celui ci: http://blackrayne.net/downloads/br_bulldozer.zip
Pour l'insérer dans votre map, il faut dézipper ce fichier, et mettre l'ensemble du contenu dans le dossier /q3ut4/models/mapobjects/. En ne respectant pas cela vous pourriez avoir des problèmes de texture.
Lancer Gtkradiant (ou le relancer). Faites un clic droit dans une vue 2D, et cliquer sur misc > misc model. Il suffit de sélectionner votre fichier md3, pour le voir apparaître dans votre map.
Les fichiers md3 servent uniquement lors de la création de votre map, pour l'étape de compilation. Vous pouvez les ôter de votre fichier pk3 (Veuillez cependant à laisser tous les autres fichiers, telles les texture).
Si vous allez vous promener dans votre map pour voir le résultat, vous remarquerez qu'il subsiste un problème: les models sont traversables. Pour remédier à cela, il y a deux techniques:
Solidification methode 1
Sélectionner le model dans Gtkradiant, et ouvrir la fenêtre des entités (touche N). Rajouter la clé “spawnflags” avec en valeur “2”.
Solidification methode 2
Si la première méthode ne fonctionne pas, il faut entourer le model de brushes transparents (Travail qui peut être plus ou moins complexe, mais obligatoire…).
Voila ce que cela donne de façon grossière, en utilisant la texture common/weapswallow
Suite: Première map











