Qu'est-ce qu'une hit box ? La connaissance des hit boxes peut-elle être utile dans un jeu ?
Réponses
Trop de publicités?Définition
Une hitbox est une zone invisible en forme de boîte qui, lorsqu'elle est pénétrée, compte comme un "coup". Elle est différente du modèle (le personnage visible et ses couleurs que vous voyez). La hitbox est destinée à compenser le décalage et le mouvement. Lorsqu'un personnage est en mouvement, son hitbox est généralement plus éloigné du modèle. Lorsqu'un personnage est immobile, son hitbox est situé directement au-dessus de son modèle.
Contrairement à son nom, une hitbox est en fait composée de plusieurs cases qui représentent les différentes zones du personnage (tête, bras, torse).
Hitboxes, et vous
Vous devez absolument savoir comment le hitbox vous affecte. C'est la source de presque tous les coups bizarres "WTF, comment suis-je mort ?" et impossibles que vous voyez les autres joueurs faire. Comprendre le hitbox est la clé pour comprendre comment vous mourez (et éventuellement pour vous améliorer dans votre jeu).
Démonstration
Une image vaut mille mots, voici donc une excellente vidéo de Team Fortress 2 :
http://www.wegame.com/watch/TF2_Hitboxes/
Regardez comment la hitbox se déplace selon le modèle, où elle se déplace et quand, et enfin, comprenez où vous devez tirer pour pénétrer cette hitbox (et marquer).
Illustration
Voici une image des hitboxes dans Counter Strike. Comme ces modèles sont immobiles, les hitboxes sont juste au-dessus d'eux.
La principale raison pour laquelle ils utilisent une hitbox pour la détection des collisions est que le calcul d'un hit basé sur la géométrie est de plus en plus coûteux à mesure que la géométrie devient plus compliquée. En général, plusieurs boîtes englobantes sont utilisées. Cela s'explique en partie par le fait qu'un test de collision contre une boîte rectangulaire utilise des mathématiques simples et est très rapide. S'il manque la boîte la plus extérieure, il est possible de raccourcir le processus et d'arrêter simplement la vérification. Un résultat positif sur la boîte la plus extérieure déclenche la vérification d'une boîte plus proche. Cependant, ils ne veulent pas non plus aller trop loin dans la recherche, sinon cela devient trop coûteux (en temps passé). À un moment donné, ils doivent se dire : "C'est assez proche - c'est un succès".
Une technique parfois utilisée à cet effet s'appelle une " octree ", où l'espace 3D est défini en termes d'une hiérarchie récursive de cubes. Si deux objets se trouvent dans des branches complètement différentes de l'octree, il n'y a aucune possibilité qu'ils entrent en collision et la détection peut donc s'arrêter là. Au fur et à mesure qu'ils se rapprochent l'un de l'autre, le test de collision s'affine jusqu'à ce que le système sache qu'ils se sont croisés ou sont entrés en collision.
Une hit box est une région à l'intérieur de laquelle un personnage est placé.
Il s'agit d'une optimisation utilisée pour accélérer la détection des collisions.
Dans un jeu de tir en 3D, par exemple, si vous connaissez la forme et la taille des cases de tir, vous pouvez potentiellement les viser, plutôt que les ennemis réels. Cela pourrait vous permettre de compenser correctement le décalage ou d'obtenir un tir dans la tête lorsqu'aucune partie de la tête n'est visible.
Voici un exemple :