Las pistolas y las ametralladoras son fáciles: puedes hacer que las balas vuelen en cierta dirección, así que ya lo implementé. Una escopeta, por otro lado, hace daño a cualquier cosa en un área determinada que se parece a un cono. ¿Cómo debo implementar eso? Tengo un par de sugerencias aquí, pero podría usar algunos consejos:
- Divide una bala en varias pequeñas balas, que hacen menos daño por sí mismas, pero vuelan en una dirección similar (es más probable que un enemigo más cercano sea alcanzado)
- No use balas: solo tenga un efecto de partículas de un disparo de escopeta y calcule cuánto daño reciben los enemigos en función de la posición / orientación, etc.
- Tiene una gran bala invisible (un cubo, por ejemplo) que daña cosas, así como un efecto de partículas que hará que parezca que en realidad es un disparo de escopeta.
¡Gracias por adelantado!
Respuestas:
La mayoría de los juegos implementan escopetas como un arma que dispara múltiples proyectiles a la vez, pero cada uno con una cierta aleatorización del ángulo que dejan al actor. En la mayoría de los juegos de disparos en primera persona modernos, casi todas las armas tienen al menos un poco de propagación por cada disparo que disparan para que sean menos precisas a larga distancia, por lo que la misma implementación se puede usar para escopetas.
Implementación simple: cuando desea una extensión de 10 ° y el jugador mira en dirección 0 ° vertical y 50 ° horizontal, los proyectiles los dejarían en un ángulo entre -5 ° y + 5 ° vertical y entre 45 ° y 55 ° horizontal.
Mejor implementación: extiende los proyectiles no en un área rectangular sino en un área circular alrededor del punto de mira del jugador.
La eficiencia reducida percibida en los resultados de largo alcance de la propagación de los proyectiles significa que todos los objetivos distantes y pequeños no serán alcanzados por todos. Cuando quieras enfatizar más esto para hacer que tu escopeta sea un arma pura de corto alcance, también puedes reducir el daño de cada proyectil por cada cuadro de lógica de juego que viaja.
En los tiradores de arriba hacia abajo o de desplazamiento lateral, es menos común que se haya extendido a todas las armas porque el área de juego es demasiado pequeña para que esto tenga sentido, pero cuando quieres un arma como una escopeta, este es un asunto diferente y lo mismo Se puede utilizar la técnica, solo que no necesita preocuparse por la 3ª dimensión. Alternativamente, podría disparar los proyectiles en ángulos fijos como -6 °, -4 °, -2 °, 0 °, 2 °, 4 °, 6 °. En un contexto 2D no se verá tan artificial como en un contexto 3D y al jugador de desafío le gustará, porque reduce las posibilidades.
fuente