LES "HINT BRUSH"
I - A quoi cela sert-il ?
Les hint brush sont une technique d'optimisation pouvant etre plutot efficace si elle est bien utilisée ;
Tout d'abord, une explication du fonctionnement du VIS lors de la compilation de la map :
- le VIS découpe la map en "pieces" (leafs) et indique au jeu une fois lancé ce que le pc devra calculer pour l'affichage de la map :
-> le pc calcule à 1 leaf de distance tous les blocs non entités plus les entités func_details
-> le pc calcule à 2 leafs de distance toutes les entites autres que func_details (cela comprend les func_wall, les prop_ et les phys_ et plein d'autres ) , et cela meme si le joueur ne les vois pas d'où il est , vous voyez donc le probleme d'optimisation
C'est là qu'interviennent les hint brush : ils permettent de modifier la découpe de la map en rajoutant des leafs (ce qui entrainera le calcul d'une moins grande zone)
II - Comment s'en servir?
Tout d'abord, il faut déterminer les zones de la map pouvant nécessiter l'utilisation des hint brush
Pour ce faire, compilez votre map (en activant le vis) et lancer là, une fois dans le jeu, j'ai réalisé une map simple pour l'exemple :
2 pieces sont reliées par un couloir en coude :
Ensuite entrez les commandes suivantes :
mat_wireframe 3 : affiche la map en fils de fer, ce qui permet de voir ce que le pc calcule (même ce qu'on ne voit pas)
mat_leafvis 1 : affiche en rouge au dessus des fils de fer, les limites du leaf où le joueur se trouve
Voici ce que vous devriez voir :
Là on remarque que dès le début du couloir, le pc calcule toute la piece suivante alors que l'on ne peut pas la voir, le couloir ne forme qu'un seul leaf jusqu'au coude...
De retour dans Hammer, nous allons donc rajouter les hint brush pour ajouter un leaf dans le couloir et ainsi éviter que le pc calcule la 2nde piece
Un hint brush est un bloc simple recouvert des textures HINT et SKIP
Il faut appliquer la texture SKIP sur toutes les faces sauf une derniere qui sera recouverte de la texture HINT, comme ceci :
La face avec la texture HINT va indiquer la nouvelle limite d'un leaf.
On place donc les blocs de cette maniere :
Le bloc en rouge est le hint brush et la face jaune represente la face avec la texture HINT
Selon la structure de la map, on peut placer les hint brush differement, à vous de tester quelle position convient le mieux à votre map.
Il ne reste plus qu'à compiler la map avec le VIS activé pour voir le résultat :
Le long du couloir la 2nde piece n'est pas calculée
Elle n'est calculée qu'une fois arrivée au coude
Voici les sources de la map exemple (les fichiers .vmf) :
http://stargatecs.halflifexpert.com/tutos/tutohint/hint_ex.zip
Voila merci d'avoir lu jusqu'au bout et bon mapping.
PS : merci aux quelques précisions de Gectou (bien qu'il prenne le choux
)






(sa faisait lontemps que je me demander a quoi servais c'est wads)






