Quelque chose de très difficile quand on commence à mapper, outre le fait de devoir prendre en main Hammer, est de s'y retrouver dans les dimensions. Je me souviens de mon premier test, du temps d'Half-Life 1. J'avais fait une petite maison, et les marches de l'escalier étaient si hautes que je ne savais pas les monter .
Si vous joué à Day Of Defeat, Team Fortress³ ou Counter-Strike, vous avez certainement déjà croisé des maps dites "orange", caractérisées par des textures orange. Outre le fait que ce soit laid, ne nous êtes-vous jamais demandé pourquoi le jeu incluait des textures orange ?
Eh bien ces textures sont en fait des textures de développement, dites "textures de dev". Certaines textures de dev présentent des indications qui aident le mappeur à s'y retrouver dans les dimensions. C'est ce que nous allons voir maintenant.
Il y a deux textures de bases principales, qui sont souvent utilisées dans les maps orange :
dev_blendmeasure : texture carrée grise, à utiliser pour le sol
dev_measuregeneric01 : texture orange de base, à utiliser pour les murs et certains revêtements ne demandant pas de mesures précises
Sous la quasi-totalité des jeux Source, un mur d'un étage fait 128 unités de haut. La texture dev_measurewall01a est une texture carrée de 128*128 que vous pouvez utiliser pour texturer vos murs. Le truc pratique c'est que les vrais textures de mur font aussi 128*128 comme grandeur (parfois le double), autrement dit ça vous donne une bonne idée du rendu de votre mur.
D'autres textures peuvent servir de mesure, notamment les textures dev de caisses . Voici les 4 principales :
64*64 : dev_measurecrate01 : un demi-mur, ou une très grosse caisse
48*48 : dev_measurecrate03 : un muret assez haut. Le joueur peut sauter dessus en s'accroupissant
32*32 : dev_measurecrate02 : un petit muret. Le joueur peut sauter dessus sans s'accroupir
dev_measuredoor01 représente une porte. Vous pouvez donc l'utiliser pour créer un bloc aux dimensions d'une porte standard. Vous devez aussi penser à découper le chambranle, comme indiqué avec les mesures précises sur la texture.
Voilà aussi un sujet assez déroutant pour les débutants : la taille des marches ! Qu'à cela ne tienne, il existe la texture dev_measurestairs01a qui vous aidera à vous représenter l'escalier et à découper le bloc sans problèmes.
Il existe d'autres textures comme la texture de rampe ou de rambarde ainsi qu'une texture d'échelle. Elles sont moins utiles, et je vous laisse les découvrir par vous-même.
Le wiki de Valve donne des informations concernant les dimensions dans Half-Life² . Ces dimensions sont globalement les mêmes dans les différents mods. Je vous propose ici de voir quelques dimensions intéressantes, qui vous aideront à vous familiariser avec les grandeurs.
Hammer travaille en unités, et il est possible de savoir combien de mètres font une unité. Ce n'est pas super important, mais ça peut quand même vous être utile. Voici donc une table avec les données :
Unités |
Mètres |
Utilité remarquable |
---|---|---|
1 |
1 cm |
|
2 |
4 cm |
|
4 |
8 cm |
Hauteur d'une bordure |
8 |
15 cm |
Hauteur de marche d'escalier |
16 |
30 cm |
|
32 |
60 cm |
|
64 |
1 m 20 |
|
128 |
2 m 40 |
Mur d'un étage |
256 |
4 m 90 |
Double mur |
512 |
9 m 80 |
Faire un conduit, un petit passage... c'est bien, mais encore faut-il savoir la taille des joueurs !
Les joueurs peuvent franchir automatiquement (sans qu'il ne doive sauter) une hauteur de 18 unités, et ce que le joueur soit debout ou accroupi.
Debout, un joueur peut passer, sans s'abaisser sous une hauteur de 73 unités. Accroupi, il ne peut passer sous une hauteur de 37 unités.
Côté largeur, un joueur peut passer entre deux blocs éloignés de minimum 33 unités. Ainsi, un conduit d'aération doit au minimum faire 33 unités de large et 37 unités de haut.
A partir d'une inclinaison de 45 degrés, il n'est plus possible aux joueurs de grimper dessus.
Un joueur prend automatiquement un objet si le centre de cet objet se trouve à 25 unités de lui ;
Un joueur peut "Utiliser" un objet, un bouton, une porte... à partir de 82 unités.
Le Source SDK n'embarque pas de documentation (il faut aller sur le Wiki de Valve pour ça) mais embarque en revanche toute une série de maps d'exemple, portant le préfixe sdk_. Ces maps d'exemple se trouvent dans le dossier sourcesdk_content\hl2\mapsrc (à partir de votre dossier de profil Steam).
Ce sont des maps qui expliquent (enfin, "expliquent" est un bien grand mot ) certaines techniques comme la manipulation des cubemaps, la création d'une grue avec un électro-aimant... c'est souvent assez complexe pour votre niveau actuel. Ces maps ne sont pas souvent belles (souvent texturées en orange), puisque leur but est d'expliquer, pas de passer un concours de beauté .
Ici c'est déjà plus intéressant ! Il s'agit de maps tirées d'Half-Life² (et une de Half_life² Deathmatch). Ce sont donc des maps complètes que vous pouvez ouvrir avec Hammer pour regarder comment c'est fait. Je vous le dit tout de suite, ce sera compliqué de vous y retrouver au début . Voici la liste des maps que vous pouvez ouvrir, et je vous conseille de commencer par sdk_dm_lockdown qui est une map HL²DM, et donc un peu plus simple que les maps HL² (car pas de gestion des changements de niveau, de ciel en 3D...).
sdk_dm_lockdown.vmf ouverte dans Hammer
sdk_dm_lockdown.vmf : c'est la map HL²DM, et elle se trouve dans le dossier sourcesdk_content\hl2mp\mapsrc
sdk_background.vmf : elle est petite et plutôt vide, et est destinée à être chargée en arrière-plan du menu d'HL²
sdk_d1_town_03.vmf
sdk_d1_trainstation_01.vmf
sdk_d1_trainstation_02.vmf
sdk_d1_trainstation_03.vmf
sdk_d1_trainstation_04.vmf
sdk_d1_trainstation_05.vmf
sdk_d2_coast_12.vmf
sdk_d3_c17_13.vmf
sdk_d3_citadel_01.vmf