Creo que es bastante universalmente aceptado que simplemente mapear el stick analógico a la velocidad de rotación del personaje no es lo suficientemente bueno como para hacer que la consola de disparos en primera persona se sienta bien.
Entonces, ¿cuáles son algunos paradigmas de entrada que hacen que un FPS moderno en la consola funcione bien?
console
first-person-shooter
aiming
Tétrada
fuente
fuente
Respuestas:
Fui a una sesión de GDC este año presentada por los muchachos en sucker punch, discutiendo cómo manejaron el objetivo y el movimiento asistido para inFamous. Entiendo que Halo usa un sistema muy similar para apuntar con ayuda, y aquí están los conceptos básicos:
Hay dos cosas que hacen que apuntar "se sienta bien": debes sentir que tienes el control y sentir que el juego no te está mintiendo. Ajustar la percepción del juego de la dirección de entrada y la sincronización de los botones dentro de las tolerancias es una excelente manera de hacerlo, ya que NUNCA da como resultado una situación imposible en la que el apuntado automático realmente funciona mejor que un controlador teóricamente perfecto. Si intenta resolverlo ad-hoc después de que se complete el procesamiento de entrada, terminará con algunas situaciones incompletas en las que el jugador siente que ha perdido el control.
fuente
Hay buenas respuestas aquí. Tuve que resolverlo por mí mismo en el proyecto en el que estoy, pero llegué a las mismas conclusiones que los chicos de Sucker Punch (y pensé que se me ocurrió algo nuevo. Baww :().
Me resulta útil considerar su "panorama" de 360x180 grados en primera persona como un "campo de aceleración". Todos los objetivos válidos crean pozos de gravedad que doblan la entrada del jugador (solo sutileza) de tal manera que el movimiento macro (girar hacia los objetivos) se siente como si fuera un camino "engrasado". Sin embargo, esto no afecta el punto de mira todo el tiempo, solo cuando el delta de turno del jugador apunta con la pendiente del pozo (por así decirlo). Sin embargo, eso es realmente clave: solo estás dando esta velocidad de giro adicional cuando el jugador gira aproximadamente hacia un objetivo. Esa es la única inferencia que puedes hacer de la entrada del jugador.
Mucho más, y obtienes demasiado de un notable "efecto ouija". Desea exactamente lo contrario de ouija: cuando un tablero de ouija se mueve sin inteligencia debido a un usuario, sin su conocimiento consciente, desea que la mira de un jugador se mueva de manera inteligente sin que el usuario se dé cuenta de que NO es solo su entrada. Realmente es un truco de magia.
Usa el producto de punto del delta de giro / guiñada del jugador contra el delta de cabeceo / guiñada desde el punto de mira a cada objetivo. Sujete el valor entre 0 y la velocidad máxima (de modo que ignore la entrada mientras se aleja del objetivo), luego use una función de distancia como modificador de caída.
Descubrí que aumentar esta bonificación de "macro movimiento" cuando el punto de mira frente al delta angular del objetivo es grande (es decir, cuando un enemigo está detrás de ti) realmente ayuda con el clásico problema del controlador de consola de no poder girar lo suficientemente rápido. En términos de "opciones de objetivo", si estás siendo atacado por detrás y no hay objetivos delante de ti, ese panorama que tienes delante es "espacio muerto", y también podrías darle al jugador la capacidad de volar a través de él. a gran velocidad con su cursor. Y si hay objetivos por delante, bueno, probablemente sean más importantes en la mente del jugador y, debido al objetivo de amortiguación / pegajoso, no se ven afectados indebidamente por la débil fuerza macro.
No es necesario que disminuyas la sensibilidad cuando el jugador intenta alejarse de un objeto (esto dará como resultado la sensación de intentar "escapar" de la órbita de un objetivo). La amortiguación se usa más para apuntar con precisión, y también para evitar que los jugadores sobrepasen el objetivo al pasar de la macro a la micro precisión. hacer mucho trabajo para ellos.
El objetivo fijo es un compensador de movimiento relativo. Observe la diferencia entre el ángulo de su objetivo (desde la cámara, no desde el origen de la entidad), este cuadro y el último cuadro. Vea qué tan cerca está apuntando al objetivo. Para evitar el efecto ouija cuando no hay entrada del usuario, verifique la desviación de ambas palancas: vea si se ha movido físicamente (actuación de la palanca izquierda) O si hay un objetivo activo "con" la dirección del objetivo. Agregue el paso delta guiñada / cabeceo * proximidad al objetivo * Máx. (Movimiento.longitud, objetivo.longitud) para un objetivo pegajoso rudimentario.
Cuando entra el tema de la confusión del objetivo (es decir, un objetivo se desvía por su vista mientras apuntaba a algo detrás, "robando" su enfoque), simplemente haga un seguimiento de sus objetivos y "caliente" uno solo mientras está siendo activamente dirigido a. Luego, multiplique los componentes de amortiguación y adherencia por este parámetro de calor para que los objetivos no calentados sean ignorados. Si el jugador QUIERE la ayuda sobre ese otro objetivo, apuntará manualmente hacia él, y muy rápidamente, se convierte en el objetivo más destacado mientras se olvida el anterior.
También creamos objetivos de asistencia de puntería "fantasma" para ayudarlo a alejarse de cosas poco interesantes (es decir, de cara a la pared; no es necesario pasar el rato mirando una superficie en blanco de cerca si no es útil interactivamente), pero probablemente sea más de lo que puedo hablar acerca de: puede aplicar estas cosas a cualquier cosa que sea interesante para el jugador, ya sea barriles explosivos, objetos interactivos (bioshock utiliza amortiguación al apuntar sobre objetos interactivos a corta distancia ... pero no apunta con ellos, No creo) Una vez que te das cuenta de que todo esto es solo para complementar el concepto central de apuntar, te das cuenta de que no se trata solo de apuntar disparos, sino de una mejora general de la capacidad de uso que alimenta cualquier mecánica que dependa de apuntar. Y en un FPS, realmente,
Lo importante con todo esto es sintonizar. Toma mucho tiempo acertar y lidiar con la interferencia del objetivo, y los problemas con los objetivos están tan cerca que sus "zonas de objetivo" inundan el panorama del jugador, reduciendo la velocidad de rotación de 60 grados.
Oh hombre, debería irme a la cama. Lo siento si algunas de las matemáticas no están claras. Es muy tarde, pero estaba emocionado de leer esta publicación.
fuente
Para que la entrada se sienta bien en las consolas, querrá que se le realice algún procesamiento.
Primero convertimos la entrada lineal que proviene de los sticks analógicos en una curva que nos da más sensibilidad alrededor del centro del stick y menos sensibilidad en los bordes. Esto se puede hacer con pequeñas herramientas que lo ayudan a crear y visualizar estas curvas y escupir código. (http://www.arachnoid.com/polysolve/)
Como segundo paso, implementamos algún tipo de aceleración. Se activa después de un corto período de tiempo cuando la entrada del stick es al menos del 97%, y aumenta la rotación de la cámara con el tiempo. Manejamos los ejes X e Y de forma independiente. Eso le permite de alguna manera mejorar artificialmente el rango de entrada del stick. El primer 97% se puede usar para ajustes relativamente finos, pero debido a la aceleración también puedes tener movimientos rápidos.
Si tiene diferentes FOV de la cámara (p. Ej., Cuando apunta / acerca), entonces debe existir un factor que ajuste la velocidad de rotación de la leva según el FOV actualmente en uso.
Algunos otros trucos ingeniosos que facilitan la vida de los jugadores es el "autocentrado". Esto nivela el tono de la cámara lentamente hacia el horizonte cuando no se da entrada. Ayuda a mantenerse orientado.
Otra cosa a tener en cuenta en las consolas es la zona muerta. Cuando un controlador envejece, los sticks analógicos comienzan a perder precisión y tienden a dar una entrada "falsa". Para evitar esto, debe ignorar los primeros PCT (hasta el 20%) de la entrada de memoria.
También habíamos hecho algunos experimentos con ayuda de puntería basada en la fricción como se mencionó anteriormente (entrada de aceleración cuando se mueve hacia el enemigo en la pantalla, ralentizar la entrada cuando se aleja), pero tuvimos la sensación de que esto es muy notable para el jugador. Además, el inconveniente es que ya no tienes un movimiento de leva suave cuando hay una fila de enemigos. Optamos por un efecto de "bala magnética", donde las balas en sí tienden a gravitar hacia el enemigo dentro de cierto rango. Sin embargo, también debes tener cuidado aquí.
fuente
Para los juegos de consola, deberá trabajar con un dispositivo analógico. Si bien los sticks analógicos se sienten intuitivos para los juegos en 3D, es horrible durante los momentos intensos donde realmente necesitas apuntar. La mejor solución es hacer que el palo se vuelva preciso durante estos momentos.
Aquí hay una solución simple: a medida que la mira se acerca a un enemigo, la sensibilidad disminuye. Esto permitiría al jugador ser más preciso con sus disparos.
También puede implementar un "objetivo adhesivo". Esto se vuelve muy satisfactorio si hay varios enemigos y el jugador necesita matar al que está inmediatamente frente a ellos.
fuente
Personalmente, me gusta el paradigma de "bloqueo" para los shooters de consola. Es decir, mantenga presionado un botón para atacar a un enemigo más o menos frente a usted (presione varias veces para desplazarse por varios enemigos) y luego su puntería los sigue automáticamente. El primer FPS en usarlo que se me ocurre (estoy seguro de que había otros antes) fue Metroid Prime en GC. Hace que la imprecisión lenta del stick analógico no importe. ... aunque no estoy seguro de cómo se traduciría en multijugador.
Mientras estamos en Metroid Prime, también me gustó la técnica que usaron para los bits de plataforma donde la vista se inclinaba ligeramente hacia abajo automáticamente cuando saltabas. Fue sutil, pero hizo que los controles se sintieran mucho más naturales.
fuente