¿Cómo evitar el efecto fantasma al presionar varias teclas?

15

Estoy trabajando en un juego de PC de desplazamiento lateral 2D que usa la biblioteca de juegos SFML. El problema que no puedo resolver es que en muchos teclados la combinación de tres o más teclas (como w + d + k) no funciona. ¿Hay alguna forma de resolver este problema?

arandomguy
fuente
1
Nunca he tenido un teclado donde W + D + K resultaría en un problema de efecto fantasma. ¿Estás seguro de que lo que estás viendo es fantasma y no un número limitado de entradas simultáneas en tu teclado?
Logarr
@Logarr " Ghosting " es el problema de que algunas teclas del teclado no funcionan cuando se presionan varias teclas simultáneamente. Se dice que las pulsaciones de teclas que no aparecen en la computadora o que parecen haber desaparecido han sido "fantasma".
Cees Timmerman
@CeesTimmerman: sé exactamente qué es el efecto fantasma. Lo que digo es que, dado que W + D + K no forman una intersección, nunca he tenido un teclado diseñado de una manera que tuviera esa combinación fantasma.
Logarr
@Logarr Entonces el límite estaría en el software de OP, no en el teclado o su controlador. Además, no todos los teclados son iguales.
Cees Timmerman

Respuestas:

28

No puedes Al menos, no como desarrollador de juegos.

Como jugador, puede comprar teclados más caros con funciones "anti-efecto fantasma", pero de lo contrario, la limitación es parte del hardware en sí, por lo que no hay nada que pueda hacer en el software para resolverlo.

Consulte esta página de demostración para ver cómo funciona el efecto fantasma del teclado, más una demostración: http://www.microsoft.com/appliedsciences/antighostingexplained.mspx

Entonces sus mejores apuestas son:

  • No utilice un esquema de control que requiera demasiadas pulsaciones simultáneas de teclas.
  • Use pads de juego si están disponibles
  • Deje que el jugador reasigne las claves para que puedan encontrar un conjunto de claves sin efecto fantasma para su hardware
  • Si debe hacerlo, quédese en el lado izquierdo del teclado (alrededor WASD) porque los teclados tienden a evitar el efecto fantasma por aquí

Históricamente, muchos juegos de PC utilizan teclas de modificación ( Ctrl, Alt, Shift) como parte de sus controles porque estas teclas estaban conectados para manejar ser presionado junto con otras teclas, para evitar el efecto fantasma. Esta práctica cayó en desgracia durante la década de los 90 porque el sistema operativo usaba cada vez más las teclas modificadoras, lo que interferiría con el juego.

Más tarde, ciertos géneros de juegos tenían sus controles fusionados alrededor de grupos clave, más notablemente el género FPS alrededor de WASD+ mouse, pero otro ejemplo serían los juegos indie japoneses alrededor de ZXC+ flechas. De manera autocumplida, dado que la mayoría de los juegos usaban estos clústeres, los fabricantes de teclados también se aseguraron de que se minimizara el efecto fantasma en esta área, por lo que si se apega a los mismos controles que usan otros juegos populares, también evitará el efecto fantasma.

Mirando su ejemplo, Wy Destán bien, pero Kno lo es; ¿Está usando por casualidad Kcomo control direccional? Si es así, considere usar las teclas de flecha en su lugar.

congusbongus
fuente
1
Tu respuesta comienza con "No puedes", pero luego das buenos consejos sobre cómo evitarla. Creo que la respuesta correcta aquí es "elegir las teclas de control que no tienen un problema de efecto fantasma en la mayoría de los teclados". Buena informacion aqui.
JPhi1618
@ JPhi1618, creo que hay una diferencia entre "cómo evitar las imágenes fantasma" y "cómo lidiar con el hecho de que la mayoría de los teclados tienen ese fantasma"
undergroundmonorail
3

Compra un mejor teclado.

El efecto fantasma es causado por el hardware en sí. Incluso muchos teclados para juegos seguirán teniendo este problema; solo invierten en solucionar el problema de claves "comunes" como WASD (pero no 'K' por ejemplo).

http://www.microsoft.com/appliedsciences/antighostingexplained.mspx

Sean Middleditch
fuente
66
... y decirle a todos sus clientes que también compren mejores teclados? Esto no suena como la solución más fácil de usar.
Philipp
La vida es dura. Obliga a tus clientes a comprar un mejor hardware o no diseñen juegos que están intrínsecamente rotos en los teclados básicos. Esto no es exactamente ciencia espacial. :)
Sean Middleditch