IGameInputReading::GetKeyState
Recupera el estado de las teclas activas en una entrada de teclado.Sintaxis
Parámetros
stateArrayCount _In_Tipo: uint32_t Devuelve el número de teclas activas en un teclado. Se obtiene llamando al método IGameInputReading::GetKeyCount. stateArray _Out_writes_(stateArrayCount) Tipo: GameInputKeyState* Puntero a la estructura GameInputKeyState*.
Valor devuelto
Tipo: uint32_t Número de entradas válidas del búfer.Comentarios
El métodoIGameInputReading::GetKeyState recupera el estado de las teclas activas en una entrada de mando de juego. El estado rudimentario del teclado está pensado únicamente para asignar la entrada del teclado a acciones del juego, como el movimiento o disparar un arma. No está pensado para la entrada de texto normal. Un juego necesita una cantidad significativa de código además de este estado para implementar algo tan simple como un cuadro de texto (por no hablar de características complejas como los IME). Deben usarse otras API cuando se desee esa funcionalidad.
El estado de cada tecla no se almacena en un índice fijo dentro de la matriz. En su lugar, el número de elementos válidos de la matriz crece a medida que se presionan las teclas y se reduce a medida que se sueltan. Las teclas nuevas se agregan al final de la matriz y, cuando se suelta una tecla, todo se desplaza hacia abajo para rellenar el hueco. El primer elemento de la matriz en el que los valores scancode y vkey son ambos cero. Esto indica el final de los datos válidos en la matriz. Los teclados estándar solo pueden notificar de cuatro a seis pulsaciones de teclas a la vez, e incluso los teclados para juegos de gama alta rara vez admiten más de 12 a 16 teclas a la vez. Por lo tanto, este enfoque suele mantener pequeño el tamaño máximo de la matriz (el tamaño máximo se puede consultar mediante la interfaz IGameInputDevice). Esto es mucho más eficaz que hacer que las aplicaciones iteren por una matriz de 256 valores cada vez que comprueban el estado del teclado.
Requisitos
Encabezado: GameInput.h Temas avanzados de GameInputInformación general de GameInput
IGameInputReading
