Les pistolets et les mitrailleuses sont faciles - vous pouvez simplement faire voler des balles dans une certaine direction, alors j'ai déjà mis cela en œuvre. Un fusil de chasse, d'autre part, endommage tout ce qui ressemble à un cône dans une certaine zone. Comment dois-je mettre cela en œuvre? J'ai quelques suggestions ici, mais je pourrais utiliser quelques conseils:
- Divisez une balle en plusieurs petites balles, qui font moins de dégâts par elles-mêmes, mais volent dans la même direction (un ennemi plus proche est plus susceptible d'être touché)
- N'utilisez pas de balles - ayez simplement un effet de particule d'un coup de fusil et calculez combien de dégâts les ennemis subissent en fonction de la position / orientation, etc.
- Ayez une grosse balle invisible (un cube par exemple) qui endommage les choses, ainsi qu'un effet de particules qui lui donnera l'air d'un coup de fusil.
Merci d'avance!
Réponses:
La plupart des jeux utilisent des fusils de chasse comme une arme qui tire plusieurs projectiles à la fois, mais chacun avec une certaine randomisation de l'angle qu'ils quittent l'acteur. Dans la plupart des fusils à la première personne modernes, presque toutes les armes ont au moins une certaine propagation pour chaque tir qu'elles tirent afin de les rendre moins précises à longue portée, de sorte que la même implémentation peut être utilisée pour les fusils de chasse.
Implémentation simple: lorsque vous voulez un écart de 10 ° et que le joueur regarde dans la direction 0 ° vertical et 50 ° horizontal, les projectiles les laisseraient dans un angle compris entre -5 ° et + 5 ° vertical et entre 45 ° et 55 ° horizontal.
Meilleure mise en œuvre: Écartez les projectiles non pas dans un rectangle mais dans une zone circulaire autour du réticule du joueur.
L'efficacité réduite perçue à longue portée résulte de la propagation des projectiles, ce qui signifie que les cibles éloignées et petites ne seront pas touchées par tous. Lorsque vous souhaitez mettre davantage l'accent sur cela pour faire de votre fusil de chasse une arme à courte portée, vous pouvez également réduire les dégâts de chaque projectile pour chaque cadre de logique de jeu qu'il parcourt.
Dans les tireurs de haut en bas ou à défilement latéral, il est moins courant de se propager sur toutes les armes parce que l'aire de jeu est trop petite pour que cela ait du sens, mais lorsque vous voulez une arme comme un fusil de chasse, c'est une question différente et la même chose la technique peut être utilisée, juste que vous n'avez pas besoin de vous soucier de la 3ème dimension. Alternativement, vous pouvez simplement tirer les projectiles dans des angles fixes comme -6 °, -4 °, -2 °, 0 °, 2 °, 4 °, 6 °. Dans un contexte 2D, cela ne semblera pas aussi artificiel que dans un contexte 3D et le joueur de défi l'aimera, car cela réduit les chances.
la source