VMT

From Valve Developer Community
< Fr
Jump to navigation Jump to search
English (en)Deutsch (de)Español (es)Français (fr)한국어 (ko)Русский (ru)Translate (Translate)


Sous Source, en général, un "material" est une combinaison d'un ou plusieurs

Tip.pngAstuce:Par commodité, un matérial, des matériaux. On peut aussi dire Materiau mais conserver une transparance avec l'anglais original est bien pratique
  • VMT - Un fichier sous forme de texte qui renseigne Source sur les différents attributs de votre texture.
  • VTF(en) - (Valve Texture Format) Un format propriétaire de Valve contenant votre ou vos texture(s) et d'autres informations propre à l'image.

On peut diviser le VMT en plusieurs catégories :

  1. Nom de la texture(en)
  2. Propriétés physiques des matériaux(en)
  3. Paramètres spécifiques du(en)Shader(en)
  4. Fallbacks(en) - Permet d'optimiser, selon la version de DirectX du PC
  5. Proxies(en) - Permet de faire varier dans le temps certains paramètres

Exemple simple

LightmappedGeneric
{
	$basetexture coast\shingle_01
	$surfaceprop gravel
}

Voici un matérial très basique.

  1. Le LightmappedGeneric(en) shader est utilisé, donc pour les surfaces ayant des lightmap(en)s comme les brush(en)s.
  2. Le { ouvre les paramètres propres au shader
  3. Le paramètre $basetexture(en) donne le chemin de votre texture de base.
  4. $surfaceprop(en) indique à Source comment il doit interpréter cette texture (avec la physique par exemple), une texture de type "bois" sera gérer différemment qu'une texture de type métal dans son interaction avec le joueur (bruit quand on la touche, coefficient de pénétration).

Le shader ici employé est uniquement destiné aux éléments blocs de Hammer et non aux modèles. Pour ceux-là, il faut utiliser le shader VertexLitGeneric(en). La majorité des paramètres fonctionnent avec tous les shaders, mais certain paramètres sont exclusifsc comme Phong(en) avec VertexLitGeneric. Un paramètre mal configuré ne fera pas planter, l'effet ne sera juste pas activé.

Tip.pngAstuce:Si jamais vous avez besoin d'utiliser un espace ou un caractère de tabulation dans la valeur d'un paramètre, vous devrez la délimiter par des guillemets double ("). C'est courant de voir cet encadrement pour tout - économisez de l'énergie car c'est pas nécéssaire

Emplacements des matériaux

Les matériaux personnalisés sont stockés dans le dossier materials\ du jeux.

Ceux des jeux officiels comme CSS ou HL2 se trouve dans des packs compressésGCF(en) appelés 'materials', vous pouvez les extraires avec GCFScape(en).