Documentación de Steamworks
Interfaz ISteamInput

Versión más reciente disponible en inglés

La versión en inglés de esta página se ha actualizado desde que se publicó esta traducción.
Haz clic aquí para ver la versión en inglés de esta página.
La API de Steam Input es una API flexible, basada en acciones, que admite todos los principales tipos de mandos: Xbox, PlayStation, Pro de Nintendo Switch y Steam Controller.

Consulta la documentación de Steam Input para obtener más información.

Funciones miembro

Las funciones miembro para ISteamInput se llaman a través de la función de acceso global SteamInput().

ActivateActionSet

void ActivateActionSet( InputHandle_t inputHandle, InputActionSetHandle_t actionSetHandle );
NombreTipoDescripción
inputHandleInputHandle_tHandle del mando para el que deseas activar el set de acciones.
actionSetHandleInputActionSetHandle_tHandle del set de acciones que quieres activar.

Reconfigura el mando para usar el set de acciones especificado (por ejemplo, «Menú», «Caminar» o «Conducir»).

No es costoso usarla, se puede llamar repetidamente. A menudo es más sencillo llamar a esta función en los bucles de estado, en lugar de intentar colocarla en todas las transiciones de estado.

Ejemplo:
void updateStateLoop() { switch( currentState ) { case MENU: SteamInput()->ActivateActionSet( inputHandle1, menuSetHandle ); doMenuStuff(); break; case WALKING: SteamInput()->ActivateActionSet( inputHandle1, walkingSetHandle ); doWalkingStuff(); break; case DRIVING: SteamInput()->ActivateActionSet( inputHandle1, drivingSetHandle ); doDrivingStuff(); break; case FIGHTING: SteamInput()->ActivateActionSet( inputHandle1, fightingSetHandle ); doFightingStuff(); break; } }

Activar todos los mandos

A menudo, querrás activar todos los mandos a la vez, en lugar de un solo dispositivo. Para esto, debes usar la constante STEAM_INPUT_HANDLE_ALL_CONTROLLERS como el handle de tu mando. También puedes utilizar este valor en cualquier otra función que requiera un handle de mando individual.

Ejemplo:
void updateStateLoop() { switch( currentState ) { case MENU: SteamInput()->ActivateActionSet( STEAM_INPUT_HANDLE_ALL_CONTROLLERS, menuSetHandle ); doMenuStuff(); break; case WALKING: SteamInput()->ActivateActionSet( STEAM_INPUT_HANDLE_ALL_CONTROLLERS, walkingSetHandle ); doWalkingStuff(); break; case DRIVING: SteamInput()->ActivateActionSet( STEAM_INPUT_HANDLE_ALL_CONTROLLERS, drivingSetHandle ); doDrivingStuff(); break; case FIGHTING: SteamInput()->ActivateActionSet( STEAM_INPUT_HANDLE_ALL_CONTROLLERS, fightingSetHandle ); doFightingStuff(); break; } }

ActivateActionSetLayer

void ActivateActionSetLayer( InputHandle_t inputHandle, InputActionSetHandle_t actionSetLayerHandle );
NombreTipoDescripción
inputHandleInputHandle_tHandle del mando para el que quieres activar la capa de set de acciones.
actionSetHandleInputActionSetHandle_tHandle de la capa de set de acciones que quieres activar.

Reconfigura el mando para que use la capa del set de acciones especificada.

Consulta el artículo Capas de sets de acciones para obtener todos los detalles y un ejemplo práctico en profundidad.

Ejemplo:
SteamInput()->ActivateActionSetLayer( inputHandle1, myActionSetLayer );

DeactivateActionSetLayer

void DeactivateActionSetLayer( InputHandle_t inputHandle, InputActionSetHandle_t actionSetLayerHandle );
NombreTipoDescripción
inputHandleInputHandle_tHandle del mando para el que quieres desactivar la capa de set de acciones.
actionSetHandleInputActionSetHandle_tHandle de la capa de set de acciones que quieres desactivar.

Reconfigura el mando para dejar de usar la capa del set de acciones especificada.

Ejemplo:
SteamInput()->DeactivateActionSetLayer( inputHandle1, myActionSetLayer );

DeactivateAllActionSetLayers

void DeactivateAllActionSetLayers( InputHandle_t inputHandle );
NombreTipoDescripción
inputHandleInputHandle_tHandle del mando para el que quieres desactivar todas las capas de sets de acciones.

Reconfigura el mando para dejar de usar las capas de sets de acciones.

Ejemplo:
SteamInput()->DeactivateAllActionSetLayers( inputHandle1 );

GetActiveActionSetLayers

int GetActiveActionSetLayers( InputHandle_t inputHandle, InputActionSetHandle_t *handlesOut );
NombreTipoDescripción
inputHandleInputHandle_tHandle del mando para el que quieres obtener las capas de sets de acciones.
handlesOutInputActionSetHandle_t*Esto debe apuntar a una matriz de InputHandle_t del tamaño de STEAM_INPUT_MAX_COUNT.

Rellena una matriz con todas las capas de sets de acciones actualmente activas para el handle de un mando específico.

Ejemplo:
InputActionSetHandle_t hActiveLayerHandles [STEAM_INPUT_MAX_ACTIVE_LAYERS]; SteamInput()->GetActiveActionSetLayers( controllerHandle, hActiveLayerHandles );

GetActionSetHandle

InputActionSetHandle_t GetActionSetHandle( const char *pszActionSetName );
NombreTipoDescripción
pszActionSetNameconst char *Identificador de cadena de un set de acciones definido en el archivo VDF del juego.

Busca el handle de un set de acciones. Es mejor hacerlo una vez al inicio y almacenar los handles para todas las futuras llamadas a la API.

Devuelve: InputActionSetHandle_t
El handle del set de acciones especificado.

Ejemplo:
InputActionSetHandle_t fightingSetHandle = SteamInput()->GetActionSetHandle( "fighting" );

GetAnalogActionData

InputAnalogActionData_t GetAnalogActionData( InputHandle_t inputHandle, InputAnalogActionHandle_t analogActionHandle );
NombreTipoDescripción
inputHandleInputHandle_tHandle del mando que quieres consultar.
analogActionHandleInputAnalogActionHandle_tHandle de la acción analógica que quieres consultar.

Devuelve el estado actual de la acción analógica del juego suministrada.

Devuelve: InputAnalogActionData_t
El estado actual de la acción analógica especificada.

Ejemplo:
InputAnalogActionData_t data = SteamInput()->GetAnalogActionData( controller1Handle, moveHandle );

GetAnalogActionHandle

InputAnalogActionHandle_t GetAnalogActionHandle( const char *pszActionName );
NombreTipoDescripción
pszActionNameconst char *Identificador de cadena de la acción analógica definida en el archivo VDF del juego.

Obtiene el handle de la acción analógica especificada.

NOTA: Esta función no toma el parámetro handle del set de acciones. Esto significa que cada acción presente en el archivo VDF debe tener un identificador de cadena único. En otras palabras, si usas una acción llamada «arriba» en dos sets de acciones distintos, esta función solo devolverá una de ellas e ignorará la otra.

Devuelve: InputAnalogActionHandle_t
El handle de la acción analógica especificada.

Ejemplo:
InputAnalogActionHandle_t moveHandle = SteamInput()->GetAnalogActionHandle( "move" );

GetAnalogActionOrigins

int GetAnalogActionOrigins( InputHandle_t inputHandle, InputActionSetHandle_t actionSetHandle, InputAnalogActionHandle_t analogActionHandle, EInputActionOrigin *originsOut );
NombreTipoDescripción
inputHandleInputHandle_tHandle del mando que quieres consultar.
actionSetHandleInputActionSetHandle_tHandle del set de acciones que quieres consultar.
analogActionHandleInputAnalogActionHandle_tHandle de la acción analógica que quieres consultar.
originsOutEInputActionOrigin *Matriz del tamaño de STEAM_INPUT_MAX_ORIGINS de los handles de EInputActionOrigin.

Obtiene los orígenes de una acción analógica que forma parte de un set de acciones; para ello, rellena originsOut con los handles de EInputActionOrigin. Usa esto para mostrar el aviso en pantalla adecuado para la acción.

Devuelve: int
El número de orígenes suministrados en originsOut.

Ejemplo:
EInputActionOrigin *origins = new EInputActionOrigin[ STEAM_INPUT_MAX_ORIGINS ]; SteamInput()->GetAnalogActionOrigins( controller1Handle, walkingSetHandle, moveHandle, origins );

GetConnectedControllers

int GetConnectedControllers( InputHandle_t *handlesOut );
NombreTipoDescripción
handlesOutInputHandle_t *Esto debe apuntar a una matriz de InputHandle_t del tamaño de STEAM_INPUT_MAX_COUNT.

Enumera los mandos conectados actualmente; para ello, rellena handlesOut con handles de mandos.

Devuelve: int
El número de handles escritos en handlesOut.

Ejemplo:
InputHandle_t *inputHandles = new InputHandle_t[ STEAM_INPUT_MAX_COUNT ]; SteamInput()->GetConnectedControllers( inputHandles );

GetControllerForGamepadIndex

InputHandle_t GetControllerForGamepadIndex( int nIndex );
NombreTipoDescripción
nIndexintÍndice del mando emulado cuyo handle quieres obtener.

Devuelve el handle asociado al mando emulado especificado. Se puede usar con GetInputTypeForHandle para determinar el tipo de mando mediante la emulación de mandos de Steam Input.

Devuelve: InputHandle_t


Ejemplo:
// Reemplaza con la posición de Xinput por la que consultas. Este número está entre 0 y 3. int nXinputSlotIndex = 0; InputHandle_t inputHandle = SteamInput()->GetControllerForGamepadIndex( nXinputSlotIndex ); if ( inputHandle == 0 ) { // Los handles de entrada válidos son mayores que 0; este es un mando normal de Xbox } else { ESteamInputType inputType = SteamInput()->GetInputTypeForHandle( inputHandle ); switch( inputType ) { case k_ESteamInputType_Unknown: printf( "¡Desconocido!\n" ); break; case k_ESteamInputType_SteamController: printf( "¡Steam Controller!\n" ); break; case k_ESteamInputType_XBox360Controller: printf( "¡Mando de XBox 360!\n" ); break; case k_ESteamInputType_XBoxOneController: printf( "¡Mando de XBox One!\n" ); break; case k_ESteamInputType_GenericXInput: printf( "¡XInput genérico!\n" ); break; case k_ESteamInputType_PS4Controller: printf( "¡Mando de PS4!\n" ); break; } }

GetCurrentActionSet

InputActionSetHandle_t GetCurrentActionSet( InputHandle_t inputHandle );
NombreTipoDescripción
inputHandleInputHandle_tHandle del mando que quieres consultar.

Obtiene el set de acciones activo actualmente para el mando especificado.

Devuelve: InputActionSetHandle_t
El handle del set de acciones activado para el mando especificado.

Ejemplo:
InputActionSetHandle_t controller1Set = SteamInput()->GetCurrentActionSet(controller1Handle);

GetDigitalActionData

InputDigitalActionData_t GetDigitalActionData( InputHandle_t inputHandle, InputDigitalActionHandle_t digitalActionHandle );
NombreTipoDescripción
inputHandleInputHandle_tHandle del mando que quieres consultar.
digitalActionHandleInputDigitalActionHandle_tHandle de la acción digital que quieres consultar.

Devuelve el estado actual de la acción digital del juego proporcionada.

Devuelve: InputDigitalActionData_t
El estado actual de la acción digital especificada.

GetDigitalActionHandle

InputDigitalActionHandle_t GetDigitalActionHandle( const char *pszActionName );
NombreTipoDescripción
pszActionNameconst char *Identificador de cadena de la acción digital definida en el archivo VDF del juego.

Obtiene el handle de la acción digital especificada.

NOTA: Esta función no toma el parámetro handle del set de acciones. Esto significa que cada acción presente en el archivo VDF debe tener un identificador de cadena único. En otras palabras, si usas una acción llamada «arriba» en dos sets de acciones distintos, esta función solo devolverá una de ellas e ignorará la otra.

Devuelve: InputDigitalActionHandle_t
El handle de la acción digital especificada.

Ejemplo:
InputDigitalActionHandle_t punchHandle = SteamInput()->GetDigitalActionHandle( "punch" );

GetDigitalActionOrigins

int GetDigitalActionOrigins( InputHandle_t inputHandle, InputActionSetHandle_t actionSetHandle, InputDigitalActionHandle_t digitalActionHandle, EInputActionOrigin *originsOut );
NombreTipoDescripción
inputHandleInputHandle_tHandle del mando que quieres consultar.
actionSetHandleInputActionSetHandle_tHandle del set de acciones que quieres consultar.
digitalActionHandleInputDigitalActionHandle_tHandle de la acción digital que quieres consultar.
originsOutEInputActionOrigin *Matriz del tamaño de STEAM_INPUT_MAX_ORIGINS de los handles de EInputActionOrigin.

Obtiene el origen o los orígenes de una acción digital dentro de un set de acciones rellenando originsOut con los handles de EInputActionOrigin. Usa esto para mostrar el aviso en pantalla adecuado para la acción.

Devuelve: int
El número de orígenes suministrados en originsOut.

Ejemplo:
EInputActionOrigin *origins = new EInputActionOrigin[ STEAM_INPUT_MAX_ORIGINS ]; SteamInput()->GetDigitalActionOrigins( controller1Handle, fightingSetHandle, punchHandle, origins );

GetGamepadIndexForController

int GetGamepadIndexForController( InputHandle_t ulControllerHandle );
NombreTipoDescripción
ulControllerHandleInputHandle_tHandle del mando cuyo índice quieres obtener.

Devuelve el índice del mando asociado con el mando especificado, si se está emulando.

Devuelve: int


Ejemplo:
int gamepadIndex = SteamInput()->GetGamepadIndexForController( controller1Handle );

GetGlyphForActionOrigin

const char * GetGlyphForActionOrigin( EInputActionOrigin eOrigin );
NombreTipoDescripción
eOriginEInputActionOrigin

Obtiene la ruta local a una imagen para mostrar en pantalla el glifo correspondiente a un origen particular.

Devuelve: const char *
La ruta al archivo PNG del glifo.
Por ejemplo, "C:\Archivos de programa (x86)\Steam\tenfoot\resource\images\library\controller\api\ps4_button_x.png"

Ejemplo:
// Obtiene los orígenes de «golpear». EInputActionOrigin *origins = new EInputActionOrigin[ STEAM_INPUT_MAX_ORIGINS ]; SteamInput()->GetDigitalActionOrigins( controller1Handle, fightingSetHandle, punchHandle, origins ); EInputActionOrigin firstOrigin = origins[0]; //i.e, k_EInputActionOrigin_PS4_X // Esta es una función del propio juego que intenta obtener arte de glifos personalizado. int glyphTextureID = getHardCodedButtonGlyphTexture( firstOrigin ); // ¡No incluimos ningún material gráfico en nuestro juego para este origen! Parece que Steam ha añadido compatibilidad para // un nuevo mando, o simplemente nos olvidamos de añadir ese material gráfico // (es decir, solo tenemos glifos del Steam Controller, pero es un mando de PlayStation 4). if( glyphTextureID == -1 ) { // En su lugar, simplemente obtén la imagen del cliente de Steam. const char *localGlyphPath = SteamInput()->GetGlyphForActionOrigin( firstOrigin ); printf( "path = %s\n", localGlyphPath ); // "path = C:\Archivos de programa (x86)\Steam\tenfoot\resource\images\library\controller\api\ps4_button_x.png" // Una función del juego que convierte la ruta de un archivo en una textura del juego utilizable. glyphTextureID = loadButtonGlyphTextureFromLocalPath( localGlyphPath ); }

GetInputTypeForHandle

ESteamInputType GetInputTypeForHandle( InputHandle_t inputHandle );
NombreTipoDescripción
inputHandleInputHandle_tHandle del mando cuyo tipo de entrada (modelo de dispositivo) deseas consultar.

Devuelve el tipo de entrada (modelo de dispositivo) para el mando especificado. Esto te indica si un mando determinado es un Steam Controller, un mando de Xbox 360, un mando de PS4, etc.

Devuelve: ESteamInputType


Ejemplo:
ESteamInputType inputType = SteamInput()->GetInputTypeForHandle(controller1Handle); switch(inputType) { case k_ESteamInputType_Unknown: printf("¡Desconocido!\n"); break; case k_ESteamInputType_SteamController: printf("¡Steam Controller!\n"); break; case k_ESteamInputType_XBox360Controller: printf("¡Mando de XBox 360!\n"); break; case k_ESteamInputType_XBoxOneController: printf("¡Mando de XBox One!\n"); break; case k_ESteamInputType_GenericXInput: printf("¡XInput genérico!\n"); break; case k_ESteamInputType_PS4Controller: printf("¡Mando de PS4!\n"); break; }

GetMotionData

InputMotionData_t GetMotionData( InputHandle_t inputHandle );
NombreTipoDescripción
inputHandleInputHandle_tHandle del mando del que quieres obtener los datos de movimiento.

Devuelve datos de movimiento sin procesar del mando especificado.

​Nota sobre la orientación: Los datos de movimiento devueltos están orientados con respecto al hardware del mando y no a la forma natural de sostener el mando. ​Con esto en mente, es posible que debas realizar adaptaciones de diseño en tus esquemas de control por giroscopio. En el caso de dispositivos portátiles con pantallas integradas como Steam Deck (k_ESteamInputType_SteamDeckController) y Lenovo Legion Go (k_ESteamInputType_SteamOSHandheld), los usuarios suelen rotar el mando hacia arriba unos 90 grados para apuntar la pantalla hacia sus ojos. ​En estos casos, considera aplicar una contrarrotación de 90 grados en el cabeceo a los valores del cuaternión del giroscopio y de la velocidad del giroscopio, o utiliza la dirección del acelerómetro/gravedad para crear esquemas de control independientes de la orientación.

​El cuaternión devuelto se basa en la rotación acumulada de cada paquete del giroscopio recibido desde el mando, mientras que los valores del giroscopio y del acelerómetro representan los «últimos» paquetes recibidos.

​En el caso de giroscopios duales (por ejemplo, k_ESteamInputType_SwitchJoyConPair), solo se devuelven los datos de movimiento del mando de la mano derecha.

Devuelve: InputMotionData_t

Ejemplo:
InputMotionData_t motionData = SteamInput()->GetControllerMotionData( inputHandle );

GetStringForActionOrigin

const char * GetStringForActionOrigin( EInputActionOrigin eOrigin );
NombreTipoDescripción
eOriginEInputActionOrigin

Devuelve una cadena traducida (según la configuración de idioma de Steam) para el origen especificado.

Devuelve: const char *


Ejemplo:
EInputActionOrigin *origins = new EInputActionOrigin[ STEAM_INPUT_MAX_ORIGINS ]; SteamInput()->GetDigitalActionOrigins( controller1Handle, fightingSetHandle, punchHandle, origins ); const char * punchString = SteamInput()->GetStringForActionOrigin( origins[0] ); printf("punch = %s\n",punchString);

Init

bool Init();
Se debe llamar al comenzar a usar la interfaz ISteamInput.

Devuelve: bool
Siempre devuelve true.

Ejemplo:
SteamInput()->Init();

RunFrame

void RunFrame();
Sincroniza el estado de la API con las últimas entradas de Steam Controller disponibles. SteamAPI_RunCallbacks realiza esta acción automáticamente; pero, para obtener la latencia más baja posible, se puede llamar directamente antes de leer el estado del mando.

Ejemplo:
SteamInput()->RunFrame();

SetDualSenseTriggerEffect

void SetDualSenseTriggerEffect( InputHandle_t inputHandle, const ScePadTriggerEffectParam *pParam );
NombreTipoDescripción
inputHandleInputHandle_tHandle del mando que se va a ver afectado.
pParam ScePadTriggerEffectParamParámetro del efecto del gatillo, definido en isteamdualsense.h.

Establece el efecto de gatillo para un mando DualSense.

Ejemplo:
ScePadTriggerEffectParam param; memset( &param, 0, sizeof( param ) ); param.triggerMask = SCE_PAD_TRIGGER_EFFECT_TRIGGER_MASK_R2; param.command[SCE_PAD_TRIGGER_EFFECT_PARAM_INDEX_FOR_R2].mode = SCE_PAD_TRIGGER_EFFECT_MODE_VIBRATION; param.command[SCE_PAD_TRIGGER_EFFECT_PARAM_INDEX_FOR_R2].commandData.vibrationParam.position = 5; param.command[SCE_PAD_TRIGGER_EFFECT_PARAM_INDEX_FOR_R2].commandData.vibrationParam.amplitude = 5; param.command[SCE_PAD_TRIGGER_EFFECT_PARAM_INDEX_FOR_R2].commandData.vibrationParam.frequency = 8; SteamInput()->SetDualSenseTriggerEffect( controller1Handle, &param );

SetLEDColor

void SetLEDColor( InputHandle_t inputHandle, uint8 nColorR, uint8 nColorG, uint8 nColorB, unsigned int nFlags );
NombreTipoDescripción
inputHandleInputHandle_tHandle del mando que se va a ver afectado.
nColorRuint8Componente rojo del color que se va a establecer (0-255).
nColorGuint8Componente verde del color que se va a establecer (0-255).
nColorBuint8Componente azul del color que se va a establecer (0-255).
nFlagsunsigned intMarcas enmascaradas por bits combinadas de valores definidos en ESteamControllerLEDFlag.

Establece el color del LED en los mandos compatibles.

Notas:
El Steam Controller de Valve no es compatible con ningún color que no sea blanco e interpreta los valores RGB como un valor en una escala de grises que afecta al brillo del LED del botón de Steam.
El mando DUALSHOCK 4 responde a la información de color completa y usa esos valores para establecer el color y el brillo de la barra luminosa.

Ejemplo:
// Restaura el color predeterminado del usuario para el mando 1: SteamInput()->SetLEDColor( controller1Handle, 0, 0, 0, k_ESteamControllerLEDFlag_RestoreUserDefault ); // Establece magenta como el color del mando 2: SteamInput()->SetLEDColor( controller2Handle, 255, 0, 255, k_ESteamControllerLEDFlag_SetColor );

ShowAnalogActionOrigins

bool ShowAnalogActionOrigins( InputHandle_t inputHandle, InputAnalogActionHandle_t analogActionHandle, float flScale, float flXPosition, float flYPosition );
NombreTipoDescripción
inputHandleInputHandle_t
analogActionHandleInputAnalogActionHandle_t
flScalefloat
flXPositionfloat
flYPositionfloat

Obsoleto.

Devuelve: bool
Siempre devuelve true.

ShowBindingPanel

bool ShowBindingPanel( InputHandle_t inputHandle );
NombreTipoDescripción
inputHandleInputHandle_tHandle del mando para el que quieres mostrar la pantalla de asignaciones.

Invoca la interfaz superpuesta de Steam y muestra la pantalla de asignaciones.

Devuelve: bool
true si se realizó correctamente; false si la interfaz superpuesta está deshabilitada o no disponible. Si el jugador usa el modo Big Picture, la configuración se abrirá en la interfaz superpuesta. En el modo escritorio se creará una versión en ventana emergente de Big Picture y se abrirá la configuración.

Ejemplo:
SteamInput()->ShowBindingPanel( myControllerHandle );

ShowDigitalActionOrigins

bool ShowDigitalActionOrigins( InputHandle_t inputHandle, InputDigitalActionHandle_t digitalActionHandle, float flScale, float flXPosition, float flYPosition );
NombreTipoDescripción
inputHandleInputHandle_t
digitalActionHandleInputDigitalActionHandle_t
flScalefloat
flXPositionfloat
flYPositionfloat

Obsoleto.

Devuelve: bool
Siempre devuelve true.

Shutdown

bool Shutdown();
Se debe llamar al terminar de usar la interfaz ISteamInput.

Devuelve: bool
Siempre devuelve true.

Ejemplo:
SteamInput()->Shutdown();

StopAnalogActionMomentum

void StopAnalogActionMomentum( InputHandle_t inputHandle, InputAnalogActionHandle_t eAction );
NombreTipoDescripción
inputHandleInputHandle_tHandle del mando que se va a ver afectado.
eActionInputAnalogActionHandle_tAcción analógica para detener la inercia.

Detiene la inercia de una acción analógica (si fuese aplicable, es decir, para los ajustes de un panel táctil con trackball virtual).

NOTA:
Esto también detendrá todas las respuestas hápticas asociadas. Sirve en situaciones donde quieres indicar al usuario que ha alcanzado el límite de una acción, como rotar un carrusel o desplazarse en una página web.

Ejemplo:
SteamInput()->StopAnalogActionMomentum( controller1Handle, moveHandle );

TriggerHapticPulse

void TriggerHapticPulse( InputHandle_t inputHandle, ESteamControllerPad eTargetPad, unsigned short usDurationMicroSec );
NombreTipoDescripción
inputHandleInputHandle_tHandle del mando que se va a ver afectado.
eTargetPadESteamControllerPadPanel táctil háptico que se va a ver afectado.
usDurationMicroSecunsigned shortDuración de la pulsación, en microsegundos (1/1 000 000 de segundo).

Activa una pulsación háptica (de bajo nivel) en mandos compatibles.

Notas:
Actualmente, solo el Steam Controller de Valve es compatible con pulsaciones hápticas.
La llamada a esta API se ignora en los demás modelos de mandos.
El valor máximo habitual para el tipo «unsigned short» es 65535, lo que significa que la pulsación háptica más larga que puedes activar con este método tiene una duración de 0,065535 segundos (es decir, menos de 1/10 de segundo). Esta función debe considerarse como una acción primaria de bajo nivel cuyo fin es su uso repetido en funciones de usuario de alto nivel para generar comportamientos más sofisticados.

Ejemplo:
// Pulsa una vez durante 1/20 de segundo SteamInput()->TriggerHapticPulse(controller1Handle, k_ESteamControllerPad_Left, 50000);

TriggerRepeatedHapticPulse

void TriggerRepeatedHapticPulse( InputHandle_t inputHandle, ESteamControllerPad eTargetPad, unsigned short usDurationMicroSec, unsigned short usOffMicroSec, unsigned short unRepeat, unsigned int nFlags );
NombreTipoDescripción
inputHandleInputHandle_tHandle del mando que se va a ver afectado.
eTargetPadESteamControllerPadPanel táctil háptico que se va a ver afectado.
usDurationMicroSecunsigned shortDuración de la pulsación, en microsegundos (1/1 000 000 de segundo).
usOffMicroSecunsigned shortDuración de la pausa entre pulsaciones, en microsegundos.
unRepeatunsigned shortNúmero de veces a repetir el ciclo usDurationMicroSec/usOffMicroSec.
nFlagsunsigned intActualmente no se utiliza; reservado para un uso futuro.

Activa una pulsación háptica repetida en mandos compatibles.

Notas:
Actualmente, solo los dispositivos Steam Controller, Steam Deck y el mando Pro de Nintendo Switch son compatibles con las pulsaciones hápticas.
La llamada a esta API se ignora en los modelos de mandos no compatibles.
Esta es una función fácil de usar para llamar a TriggerHapticPulse, pues puede generar patrones de pulsación suficientemente largos como para que los note el usuario.
Al cambiar los parámetros usDurationMicroSec y usOffMicroSec se modifica la «textura» de la pulsación háptica.

Ejemplo:
// Pulsa durante 1 segundo con un patrón de pulsación de activar/desactivar de un 1/20 de segundo cada uno. SteamInput()->TriggerRepeatedHapticPulse( controller1Handle, k_ESteamControllerPad_Left, 50000, 50000, 10 );

TriggerVibration

void TriggerVibration( InputHandle_t inputHandle, unsigned short usLeftSpeed, unsigned short usRightSpeed );
NombreTipoDescripción
inputHandleInputHandle_tHandle del mando que se va a ver afectado.
usLeftSpeedunsigned shortValor de intensidad del motor de vibración izquierdo.
usRightSpeedunsigned shortValor de intensidad del motor de vibración derecho.

Activa un evento de vibración en mandos compatibles.

Notas:
La llamada a esta API se ignora en los modelos de mandos no compatibles.
Esto genera el tradicional efecto de vibración «rumble».
El Steam Controller de Valve emula la vibración tradicional usando su tecnología háptica.

Ejemplo:
SteamInput()->TriggerVibration( controller1Handle, 10000, 10000 );

TriggerVibrationExtended

void TriggerVibrationExtended( InputHandle_t inputHandle, unsigned short usLeftSpeed, unsigned short usRightSpeed );
NombreTipoDescripción
inputHandleInputHandle_tHandle del mando que se va a ver afectado.
usLeftSpeedunsigned shortValor de intensidad del motor de vibración izquierdo.
usRightSpeedunsigned shortValor de intensidad del motor de vibración derecho.
usLeftTriggerSpeedunsigned shortValor de intensidad del motor del gatillo de impulso izquierdo de Xbox.
usRightTriggerSpeedunsigned shortValor de intensidad del motor del gatillo de impulso derecho de Xbox.

Activa un evento de vibración en mandos compatibles, incluidos los valores del motor del gatillo de impulso de Xbox.

Notas:
En Windows, es necesario instalar el controlador de compatibilidad con funcionalidad ampliada de Xbox para que los valores del motor del gatillo de impulso de Xbox sean compatibles.
El Steam Controller y el Steam Deck emulan la vibración tradicional usando tecnología háptica.

Ejemplo:
SteamInput()->TriggerVibrationExtended( controller1Handle, 10000, 10000, 10000, 10000 );

GetActionOriginFromXboxOrigin

EInputActionOrigin GetActionOriginFromXboxOrigin( InputHandle_t inputHandle, EXboxOrigin eOrigin );
NombreTipoDescripción
inputHandleInputHandle_tHandle del mando que se va a ver afectado. Puedes usar GetControllerForGamepadIndex para obtener este handle.
eOriginEXboxOriginBotón para el que deseas obtener la imagen, por ejemplo: k_EXboxOrigin_A.

Devuelve: EInputActionOrigin

Obtiene un origen de acción que puede utilizarse en la tabla de consulta de glifos o pasarse a GetGlyphForActionOrigin o GetStringForActionOrigin.


Ejemplo:
int nXinputSlot = 1; // Sustituye la ranura correcta de Xinput para tu jugador. InputHandle_t controller1Handle = GetControllerForGamepadIndex( nXinputSlot ); EInputActionOrigin buttonOrigin = SteamInput()->GetActionOriginFromXboxOrigin( controller1Handle, k_EXboxOrigin_A ); // Obtiene la imagen desde el cliente de Steam. const char *localGlyphPath = SteamInput()->GetGlyphForActionOrigin( buttonOrigin ); printf( "path = %s\n", localGlyphPath ); // "path = C:\Archivos de programa (x86)\Steam\tenfoot\resource\images\library\controller\api\ps4_button_x.png" // Una función del juego que convierte la ruta de un archivo en una textura del juego utilizable. glyphTextureID = loadButtonGlyphTextureFromLocalPath( localGlyphPath );

TranslateActionOrigin

EInputActionOrigin TranslateActionOrigin( ESteamInputType eDestinationInputType, EInputActionOrigin eSourceOrigin );
NombreTipoDescripción
inputHandleInputHandle_tHandle del mando que se va a ver afectado. Puedes usar GetControllerForGamepadIndex para obtener este handle.
eDestinationInputTypeESteamInputTypeTipo de mando al que deseas hacer la conversión. Steam elegirá el tipo más cercano de tu versión de SDK si usas k_ESteamInputType_Unknown.
eSourceOriginEInputActionOriginEste es el botón que quieres convertir.

Devuelve: EInputActionOrigin.

Obtiene el origen equivalente para un tipo de mando determinado o aquel más cercano existente en el SDK que integraste en tu juego, si eDestinationInputType es k_ESteamInputType_Unknown. Este origen de acción puede utilizarse en la tabla de consulta de glifos o pasarse a GetGlyphForActionOrigin o GetStringForActionOrigin.


Ejemplo:
int nXinputSlot = 1; // Sustituye la ranura correcta de Xinput para tu jugador. InputHandle_t controller1Handle = GetControllerForGamepadIndex( nXinputSlot ); EInputActionOrigin buttonOrigin = SteamInput()->GetActionOriginFromXboxOrigin( controller1Handle, k_EXboxOrigin_A ); // Por ejemplo, k_EInputActionOrigin_PS4_X. if ( buttonOrigin >= k_EInputActionOrigin_Count ) { // ¡No incluimos ningún material gráfico en nuestro juego para este origen! Parece que Steam ha añadido compatibilidad para // un nuevo mando. Vamos a obtener el valor más cercano que era compatible con el SDK con el que creamos. buttonOrigin = SteamInput()->TranslateActionOrigin( k_ESteamInputType_Unknown, buttonOrigin ) } // Esta es una función del propio juego que intenta obtener arte de glifos personalizado. int glyphTextureID = getHardCodedButtonGlyphTexture( actionOrigin );

GetDeviceBindingRevision

bool GetDeviceBindingRevision( InputHandle_t inputHandle, int *pMajor, int *pMinor );
NombreTipoDescripción
inputHandleInputHandle_tHandle del mando que se quiere consultar.
pMajorint * Puntero a int en donde se van a introducir las revisiones principales de las asignaciones.
pMinorint * Puntero a int en donde se van a introducir las revisiones menores de las asignaciones.

Devuelve: bool - true si la asignación del dispositivo se encontró correctamente y false si la asignación aún se está cargando.

Obtiene las revisiones principales y menores de las asignaciones de los dispositivos para las configuraciones de la API de Steam Input. Las revisiones principales se deben utilizar al cambiar el número de sets de acciones o al volver a diseñar las configuraciones en la medida en que las configuraciones más antiguas ya no sean útiles. Cuando la asignación de un usuario no concuerda con la revisión principal de la configuración oficial actual, Steam actualizará de manera forzosa la configuración del usuario. Será necesario realizar nuevas configuraciones para cada mando al actualizar revisiones principales. Las revisiones menores son para pequeños cambios, como añadir una nueva acción opcional o actualizar la localización en la configuración. Al actualizar la revisión menor, por lo general, puedes actualizar una sola configuración y marcar la opción «Usar bloque de acciones» para aplicar los cambios del bloque de acciones a las demás configuraciones.

Código de ejemplo:
int nMajorRevision = -1; int nMinorRevision= -1; const int nCurrentMajorRevision = 1; const int nCurrentMinorRevision = 1; if ( GetDeviceBindingRevision( inputHandle, &nMajorRevision , &nMinorRevision ) ) { if ( nMinorRevision != nCurrentMinorRevision ) { // La versión menor no está actualizada, pero está bien. // La próxima vez que se edite su configuración, esto se solucionará. } if ( nMajorRevision != nCurrentMajorRevision ) { // Esto solo debería ocurrir brevemente mientras Steam detecta // y luego actualiza a la fuerza al usuario a la última configuración oficial. } } else { // La configuración para este mando aún no está cargada. }

Ejemplo de uso del archivo de acciones en el juego:
"In Game Actions" { "major_revision" "0" "minor_revision" "1" "actions" { ...

GetRemotePlaySessionID

uint32 GetRemotePlaySessionID( InputHandle_t inputHandle );
NombreTipoDescripción
inputHandleInputHandle_tHandle del mando que se quiere consultar.

Devuelve: uint32 - Id. de sesión de Steam Remote Play.

Obtiene el id. de sesión de Steam Remote Play asociado al dispositivo, o 0 si no hay una sesión asociada a él. Consulta isteamremoteplay.h para obtener más información sobre las sesiones de Steam Remote Play.

Estructuras

Estas son las estructuras que las funciones de ISteamInput pueden devolver o con las que pueden interactuar.

InputAnalogActionData_t

Representa el estado actual de una acción analógica.

Notas:
  • Los valores exactos, rango, etc. dependen de la configuración, pero (en términos generales) las acciones analógicas tradicionales producirán valores normalizados de coma flotante de entre -1,0 y 1,0 aproximadamente, mientras que las acciones de tipo ratón proporcionarán actualizaciones delta, que indican el número de «píxeles» desplazados desde el último fotograma. El resultado de esto es que las acciones de tipo ratón proporcionarán valores absolutos X e Y mucho mayores, y estos son relativos a la última posición de entrada registrada, mientras que las acciones analógicas tradicionales aportan valores menores y son relativas a un punto de anclaje físico central.
  • Mientras que las deltas aportadas por las acciones de tipo ratón son muy similares a las deltas de los píxeles aportados por un SO, las deltas del SC son decimales, no enteros. Esto supone una cuantificación potencial menor y la pérdida de precisión cuando se asignan dichos datos a la rotación de una cámara.
  • En el caso de entradas analógicas de un único eje (tales como los gatillos analógicos), solo el eje X contendrá datos; el eje Y será siempre cero.

NombreTipoDescripción
eModeEControllerSourceModeTipo de datos provenientes de esta acción, que se corresponderán con lo especificado en la definición de los archivos VDF del set de acciones.
XfloatEstado actual de esta acción en el eje horizontal.
YfloatEstado actual de esta acción en el eje vertical.
bActiveboolSi la acción está disponible o no en este momento para asignarse al set de acciones activo. Si no está disponible o si no pertenece al set de acciones activo, el valor será false.

InputDigitalActionData_t

Representa el estado actual de una acción digital.

NombreTipoDescripción
bStateboolEstado actual de esta acción; true si está presionada la acción, de lo contrario, false.
bActiveboolSi la acción está disponible o no en este momento para asignarse al set de acciones activo.

InputMotionData_t

Representa el estado actual de los sensores de movimiento de un dispositivo.

NOTA: Para rotQuatX/rotQuatY/rotQuatZ/rotQuatW, la unidad de medición de inercia en el mando creará un cuaterno basado en la fusión del giroscopio y el acelerómetro. Este valor es la orientación absoluta del mando, pero se desviará en el eje de guiñada.

La aceleración posicional se indica como un valor interpolado entre INT16_MIN e INT16_MAX en el que las extensiones se limitan a ±2G (1G = 9,80665 m/s2).

La velocidad angular se indica como un valor interpolado entre INT16_MIN e INT16_MAX en el que las extensiones se limitan a ±2000 grados por segundo.

NombreTipoDescripción
rotQuatXfloatRotación absoluta con sensor (sometida a deriva sobre el eje de guiñada), eje X.
rotQuatYfloatRotación absoluta con sensor (sometida a deriva sobre el eje de guiñada), eje Y.
rotQuatZfloatRotación absoluta con sensor (sometida a deriva sobre el eje de guiñada), eje Z.
rotQuatWfloatRotación absoluta con sensor (sometida a deriva sobre el eje de guiñada), eje W.
posAccelXfloatAceleración posicional, eje X.
posAccelYfloatAceleración posicional, eje Y.
posAccelZfloatAceleración posicional, eje Z.
rotVelXfloatVelocidad angular, eje X.
rotVelYfloatVelocidad angular, eje Y.
rotVelZfloatVelocidad angular, eje Z.

Enumeraciones

Estas son las enumeraciones definidas para usarse con ISteamInput.

EInputActionOrigin

Entradas que el jugador asigna a acciones en el configurador de Steam Input. El principal propósito de estos valores es ordenar qué glifos de botones en pantalla deben aparecer para una acción dada, tal como «Pulsa [A] para saltar».

NombreValorDescripción
k_EInputActionOrigin_None0
k_EInputActionOrigin_A1(Steam Controller de Valve) botón digital «A».
k_EInputActionOrigin_B2(Steam Controller de Valve) botón digital «B».
k_EInputActionOrigin_X3(Steam Controller de Valve) botón digital «X».
k_EInputActionOrigin_Y4(Steam Controller de Valve) botón digital «Y».
k_EInputActionOrigin_LeftBumper5(Steam Controller de Valve) botón digital superior frontal izquierdo (conocido también como bumper izquierdo).
k_EInputActionOrigin_RightBumper6(Steam Controller de Valve) botón digital superior frontal derecho (conocido también como bumper derecho).
k_EInputActionOrigin_LeftGrip7(Steam Controller de Valve) empuñadura digital izquierda.
k_EInputActionOrigin_RightGrip8(Steam Controller de Valve) empuñadura digital derecha.
k_EInputActionOrigin_Start9(Steam Controller de Valve) botón digital «Start».
k_EInputActionOrigin_Back10(Steam Controller de Valve) botón digital «Back».
k_EInputActionOrigin_LeftPad_Touch11(Steam Controller de Valve) panel táctil háptico izquierdo, con el simple contacto de un dedo.
k_EInputActionOrigin_LeftPad_Swipe12(Steam Controller de Valve) panel táctil háptico izquierdo, entrada táctil sobre cualquier eje.
k_EInputActionOrigin_LeftPad_Click13(Steam Controller de Valve) panel táctil háptico izquierdo, clic digital (para su totalidad).
k_EInputActionOrigin_LeftPad_DPadNorth14(Steam Controller de Valve) panel táctil háptico izquierdo, clic digital (cuadrante superior).
k_EInputActionOrigin_LeftPad_DPadSouth15(Steam Controller de Valve) panel táctil háptico izquierdo, clic digital (cuadrante inferior).
k_EInputActionOrigin_LeftPad_DPadWest16(Steam Controller de Valve) panel táctil háptico izquierdo, clic digital (cuadrante izquierdo).
k_EInputActionOrigin_LeftPad_DPadEast17(Steam Controller de Valve) panel táctil háptico izquierdo, clic digital (cuadrante derecho).
k_EInputActionOrigin_RightPad_Touch18(Steam Controller de Valve) panel táctil háptico derecho, con el simple contacto de un dedo.
k_EInputActionOrigin_RightPad_Swipe19(Steam Controller de Valve) panel táctil háptico derecho, entrada táctil sobre cualquier eje.
k_EInputActionOrigin_RightPad_Click20(Steam Controller de Valve) panel táctil háptico derecho, clic digital (para su totalidad).
k_EInputActionOrigin_RightPad_DPadNorth21(Steam Controller de Valve) panel táctil háptico derecho, clic digital (cuadrante superior).
k_EInputActionOrigin_RightPad_DPadSouth22(Steam Controller de Valve) panel táctil háptico derecho, clic digital (cuadrante inferior).
k_EInputActionOrigin_RightPad_DPadWest23(Steam Controller de Valve) panel táctil háptico derecho, clic digital (cuadrante izquierdo).
k_EInputActionOrigin_RightPad_DPadEast24(Steam Controller de Valve) panel táctil háptico derecho, clic digital (cuadrante derecho).
k_EInputActionOrigin_LeftTrigger_Pull25(Steam Controller de Valve) gatillo analógico izquierdo, pulsado en cualquier medida (valor analógico).
k_EInputActionOrigin_LeftTrigger_Click26(Steam Controller de Valve) gatillo analógico izquierdo, pulsado hasta el fondo (valor digital).
k_EInputActionOrigin_RightTrigger_Pull27(Steam Controller de Valve) gatillo analógico derecho, pulsado en cualquier medida (valor analógico).
k_EInputActionOrigin_RightTrigger_Click28(Steam Controller de Valve) gatillo analógico derecho, pulsado hasta el fondo (valor digital).
k_EInputActionOrigin_LeftStick_Move29(Steam Controller de Valve) joystick izquierdo, movimiento sobre cualquier eje (valor analógico).
k_EInputActionOrigin_LeftStick_Click30(Steam Controller de Valve) joystick izquierdo, pulsado para hacer clic (valor digital).
k_EInputActionOrigin_LeftStick_DPadNorth31(Steam Controller de Valve) joystick izquierdo, movimiento digital (cuadrante superior).
k_EInputActionOrigin_LeftStick_DPadSouth32(Steam Controller de Valve) joystick izquierdo, movimiento digital (cuadrante inferior).
k_EInputActionOrigin_LeftStick_DPadWest33(Steam Controller de Valve) joystick izquierdo, movimiento digital (cuadrante izquierdo).
k_EInputActionOrigin_LeftStick_DPadEast34(Steam Controller de Valve) joystick izquierdo, movimiento digital (cuadrante derecho).
k_EInputActionOrigin_Gyro_Move35(Steam Controller de Valve) giroscopio, movimiento analógico sobre cualquier eje.
k_EInputActionOrigin_Gyro_Pitch36(Steam Controller de Valve) giroscopio, movimiento analógico en el eje de cabeceo (apuntar cabeza hacia el techo, apuntar cabeza hacia el suelo).
k_EInputActionOrigin_Gyro_Yaw37(Steam Controller de Valve) giroscopio, movimiento analógico en el eje de guiñada (girar la cabeza hacia la izquierda, girar la cabeza hacia la derecha).
k_EInputActionOrigin_Gyro_Roll38(Steam Controller de Valve) giroscopio, movimiento analógico en el eje de alabeo (ladear la cabeza hacia el hombro izquierdo, ladear la cabeza hacia el hombro derecho).
k_EInputActionOrigin_SteamController_Reserved039Reservado para uso futuro.
k_EInputActionOrigin_SteamController_Reserved140Reservado para uso futuro.
k_EInputActionOrigin_SteamController_Reserved241Reservado para uso futuro.
k_EInputActionOrigin_SteamController_Reserved342Reservado para uso futuro.
k_EInputActionOrigin_SteamController_Reserved443Reservado para uso futuro.
k_EInputActionOrigin_SteamController_Reserved544Reservado para uso futuro.
k_EInputActionOrigin_SteamController_Reserved645Reservado para uso futuro.
k_EInputActionOrigin_SteamController_Reserved746Reservado para uso futuro.
k_EInputActionOrigin_SteamController_Reserved847Reservado para uso futuro.
k_EInputActionOrigin_SteamController_Reserved948Reservado para uso futuro.
k_EInputActionOrigin_SteamController_Reserved1049Reservado para uso futuro.
k_EInputActionOrigin_PS4_X50(DUALSHOCK 4 de Sony) botón digital «X».
k_EInputActionOrigin_PS4_Circle51(DUALSHOCK 4 de Sony) botón digital «círculo».
k_EInputActionOrigin_PS4_Triangle52(DUALSHOCK 4 de Sony) botón digital «triángulo».
k_EInputActionOrigin_PS4_Square53(DUALSHOCK 4 de Sony) botón digital «cuadrado».
k_EInputActionOrigin_PS4_LeftBumper54(DUALSHOCK 4 de Sony) botón digital superior frontal izquierdo (conocido también como bumper izquierdo).
k_EInputActionOrigin_PS4_RightBumper55(DUALSHOCK 4 de Sony) botón digital superior frontal derecho (conocido también como bumper derecho).
k_EInputActionOrigin_PS4_Options56(DUALSHOCK 4 de Sony) botón digital «OPTIONS» (también conocido como «Inicio»).
k_EInputActionOrigin_PS4_Share57(DUALSHOCK 4 de Sony) botón de retroceso digital o «SHARE» (también conocido como «Atrás»).
k_EInputActionOrigin_PS4_LeftPad_Touch58(DUALSHOCK 4 de Sony) mitad izquierda del panel táctil, con el simple contacto de un dedo.
k_EInputActionOrigin_PS4_LeftPad_Swipe59(DUALSHOCK 4 de Sony) mitad izquierda del panel táctil, entrada táctil sobre cualquier eje.
k_EInputActionOrigin_PS4_LeftPad_Click60(DUALSHOCK 4 de Sony) mitad izquierda del panel táctil, clic digital (para su totalidad).
k_EInputActionOrigin_PS4_LeftPad_DPadNorth61(DUALSHOCK 4 de Sony) mitad izquierda del panel táctil, clic digital (cuadrante superior).
k_EInputActionOrigin_PS4_LeftPad_DPadSouth62(DUALSHOCK 4 de Sony) mitad izquierda del panel táctil, clic digital (cuadrante inferior).
k_EInputActionOrigin_PS4_LeftPad_DPadWest63(DUALSHOCK 4 de Sony) mitad izquierda del panel táctil, clic digital (cuadrante izquierdo).
k_EInputActionOrigin_PS4_LeftPad_DPadEast64(DUALSHOCK 4 de Sony) mitad izquierda del panel táctil, clic digital (cuadrante derecho).
k_EInputActionOrigin_PS4_RightPad_Touch65(DUALSHOCK 4 de Sony) mitad derecha del panel táctil, con el simple contacto de un dedo.
k_EInputActionOrigin_PS4_RightPad_Swipe66(DUALSHOCK 4 de Sony) mitad derecha del panel táctil, entrada táctil sobre cualquier eje.
k_EInputActionOrigin_PS4_RightPad_Click67(DUALSHOCK 4 de Sony) mitad derecha del panel táctil, clic digital (para su totalidad).
k_EInputActionOrigin_PS4_RightPad_DPadNorth68(DUALSHOCK 4 de Sony) mitad derecha del panel táctil, clic digital (cuadrante superior).
k_EInputActionOrigin_PS4_RightPad_DPadSouth69(DUALSHOCK 4 de Sony) mitad derecha del panel táctil, clic digital (cuadrante inferior).
k_EInputActionOrigin_PS4_RightPad_DPadWest70(DUALSHOCK 4 de Sony) mitad derecha del panel táctil, clic digital (cuadrante izquierdo).
k_EInputActionOrigin_PS4_RightPad_DPadEast71(DUALSHOCK 4 de Sony) mitad derecha del panel táctil, clic digital (cuadrante derecho).
k_EInputActionOrigin_PS4_CenterPad_Touch72(DUALSHOCK 4 de Sony) panel táctil unificado, con el simple contacto de un dedo.
k_EInputActionOrigin_PS4_CenterPad_Swipe73(DUALSHOCK 4 de Sony) panel táctil unificado, entrada táctil de datos sobre cualquier eje.
k_EInputActionOrigin_PS4_CenterPad_Click74(DUALSHOCK 4 de Sony) panel táctil unificado, clic digital (para su totalidad).
k_EInputActionOrigin_PS4_CenterPad_DPadNorth75(DUALSHOCK 4 de Sony) panel táctil unificado, clic digital (cuadrante superior).
k_EInputActionOrigin_PS4_CenterPad_DPadSouth76(DUALSHOCK 4 de Sony) panel táctil unificado, clic digital (cuadrante inferior).
k_EInputActionOrigin_PS4_CenterPad_DPadWest77(DUALSHOCK 4 de Sony) panel táctil unificado, clic digital (cuadrante izquierdo).
k_EInputActionOrigin_PS4_CenterPad_DPadEast78(DUALSHOCK 4 de Sony) panel táctil unificado, clic digital (cuadrante derecho).
k_EInputActionOrigin_PS4_LeftTrigger_Pull79(DUALSHOCK 4 de Sony) gatillo analógico izquierdo, pulsado en cualquier medida (valor analógico).
k_EInputActionOrigin_PS4_LeftTrigger_Click80(DUALSHOCK 4 de Sony) gatillo analógico izquierdo, pulsado hasta el fondo (valor digital).
k_EInputActionOrigin_PS4_RightTrigger_Pull81(DUALSHOCK 4 de Sony) gatillo analógico derecho, pulsado en cualquier medida (valor analógico).
k_EInputActionOrigin_PS4_RightTrigger_Click82(DUALSHOCK 4 de Sony) gatillo analógico derecho, pulsado hasta el fondo (valor digital).
k_EInputActionOrigin_PS4_LeftStick_Move83(DUALSHOCK 4 de Sony) joystick izquierdo, movimiento sobre cualquier eje (valor analógico).
k_EInputActionOrigin_PS4_LeftStick_Click84(DUALSHOCK 4 de Sony) joystick izquierdo, pulsado para hacer clic (valor digital).
k_EInputActionOrigin_PS4_LeftStick_DPadNorth85(DUALSHOCK 4 de Sony) joystick izquierdo, movimiento digital (cuadrante superior).
k_EInputActionOrigin_PS4_LeftStick_DPadSouth86(DUALSHOCK 4 de Sony) joystick izquierdo, movimiento digital (cuadrante inferior).
k_EInputActionOrigin_PS4_LeftStick_DPadWest87(DUALSHOCK 4 de Sony) joystick izquierdo, movimiento digital (cuadrante izquierdo).
k_EInputActionOrigin_PS4_LeftStick_DPadEast88(DUALSHOCK 4 de Sony) joystick izquierdo, movimiento digital (cuadrante derecho).
k_EInputActionOrigin_PS4_RightStick_Move89(DUALSHOCK 4 de Sony) joystick derecho, movimiento sobre cualquier eje (valor analógico).
k_EInputActionOrigin_PS4_RightStick_Click90(DUALSHOCK 4 de Sony) joystick derecho, pulsado para hacer clic (valor digital).
k_EInputActionOrigin_PS4_RightStick_DPadNorth91(DUALSHOCK 4 de Sony) joystick derecho, movimiento digital (cuadrante superior).
k_EInputActionOrigin_PS4_RightStick_DPadSouth92(DUALSHOCK 4 de Sony) joystick derecho, movimiento digital (cuadrante inferior).
k_EInputActionOrigin_PS4_RightStick_DPadWest93(DUALSHOCK 4 de Sony) joystick derecho, movimiento digital (cuadrante izquierdo).
k_EInputActionOrigin_PS4_RightStick_DPadEast94(DUALSHOCK 4 de Sony) joystick derecho, movimiento digital (cuadrante derecho).
k_EInputActionOrigin_PS4_DPad_North95(DUALSHOCK 4 de Sony) panel táctil digital, pulsado (cuadrante superior).
k_EInputActionOrigin_PS4_DPad_South96(DUALSHOCK 4 de Sony) panel táctil digital, pulsado (cuadrante inferior).
k_EInputActionOrigin_PS4_DPad_West97(DUALSHOCK 4 de Sony) panel táctil digital, pulsado (cuadrante izquierdo).
k_EInputActionOrigin_PS4_DPad_East98(DUALSHOCK 4 de Sony) panel táctil digital, pulsado (cuadrante derecho).
k_EInputActionOrigin_PS4_Gyro_Move99(DUALSHOCK 4 de Sony) giroscopio, movimiento analógico sobre cualquier eje.
k_EInputActionOrigin_PS4_Gyro_Pitch100(DUALSHOCK 4 de Sony) giroscopio, movimiento analógico en el eje de cabeceo (dirigir la cabeza hacia el techo, dirigir la cabeza hacia el suelo).
k_EInputActionOrigin_PS4_Gyro_Yaw101(DUALSHOCK 4 de Sony) giroscopio, movimiento analógico en el eje de guiñada (girar la cabeza hacia la izquierda, girar la cabeza hacia la derecha).
k_EInputActionOrigin_PS4_Gyro_Roll102(DUALSHOCK 4 de Sony) giroscopio, movimiento analógico en el eje de alabeo (ladear la cabeza hacia el hombro izquierdo, ladear la cabeza hacia el hombro derecho).
k_EInputActionOrigin_PS4_Reserved0103Reservado para uso futuro.
k_EInputActionOrigin_PS4_Reserved1104Reservado para uso futuro.
k_EInputActionOrigin_PS4_Reserved2105Reservado para uso futuro.
k_EInputActionOrigin_PS4_Reserved3106Reservado para uso futuro.
k_EInputActionOrigin_PS4_Reserved4107Reservado para uso futuro.
k_EInputActionOrigin_PS4_Reserved5108Reservado para uso futuro.
k_EInputActionOrigin_PS4_Reserved6109Reservado para uso futuro.
k_EInputActionOrigin_PS4_Reserved7110Reservado para uso futuro.
k_EInputActionOrigin_PS4_Reserved8111Reservado para uso futuro.
k_EInputActionOrigin_PS4_Reserved9112Reservado para uso futuro.
k_EInputActionOrigin_PS4_Reserved10113Reservado para uso futuro.
k_EInputActionOrigin_XBoxOne_A114(XB1) botón digital «A».
k_EInputActionOrigin_XBoxOne_B115(XB1) botón digital «B».
k_EInputActionOrigin_XBoxOne_X116(XB1) botón digital «X».
k_EInputActionOrigin_XBoxOne_Y117(XB1) botón digital «Y».
k_EInputActionOrigin_XBoxOne_LeftBumper118(XB1) botón digital superior izquierdo (bumper izquierdo).
k_EInputActionOrigin_XBoxOne_RightBumper119(XB1) botón digital superior derecho (bumper derecho).
k_EInputActionOrigin_XBoxOne_Menu120(XB1) botón digital «Menú» (también conocido como «Inicio»).
k_EInputActionOrigin_XBoxOne_View121(XB1) botón digital «Vista» (también conocido como «Atrás»).
k_EInputActionOrigin_XBoxOne_LeftTrigger_Pull122(XB1) gatillo analógico izquierdo, pulsado en cualquier medida (valor analógico).
k_EInputActionOrigin_XBoxOne_LeftTrigger_Click123(XB1) gatillo analógico izquierdo, pulsado hasta el fondo (valor digital).
k_EInputActionOrigin_XBoxOne_RightTrigger_Pull124(XB1) gatillo analógico derecho, pulsado en cualquier medida (valor analógico).
k_EInputActionOrigin_XBoxOne_RightTrigger_Click125(XB1) gatillo analógico derecho, pulsado hasta el fondo (valor digital).
k_EInputActionOrigin_XBoxOne_LeftStick_Move126(XB1) joystick izquierdo, movimiento en cualquier eje (valor analógico).
k_EInputActionOrigin_XBoxOne_LeftStick_Click127(XB1) joystick izquierdo, pulsado para hacer clic (valor digital).
k_EInputActionOrigin_XBoxOne_LeftStick_DPadNorth128(XB1) joystick izquierdo, movimiento digital (cuadrante superior).
k_EInputActionOrigin_XBoxOne_LeftStick_DPadSouth129(XB1) joystick izquierdo, movimiento digital (cuadrante inferior).
k_EInputActionOrigin_XBoxOne_LeftStick_DPadWest130(XB1) joystick izquierdo, movimiento digital (cuadrante izquierdo).
k_EInputActionOrigin_XBoxOne_LeftStick_DPadEast131(XB1) joystick izquierdo, movimiento digital (cuadrante derecho).
k_EInputActionOrigin_XBoxOne_RightStick_Move132(XB1) joystick derecho, movimiento en cualquier eje (valor analógico).
k_EInputActionOrigin_XBoxOne_RightStick_Click133(XB1) joystick derecho, pulsado para hacer clic (valor digital).
k_EInputActionOrigin_XBoxOne_RightStick_DPadNorth134(XB1) joystick derecho, movimiento digital (cuadrante superior).
k_EInputActionOrigin_XBoxOne_RightStick_DPadSouth135(XB1) joystick derecho, movimiento digital (cuadrante inferior).
k_EInputActionOrigin_XBoxOne_RightStick_DPadWest136(XB1) joystick derecho, movimiento digital (cuadrante izquierdo).
k_EInputActionOrigin_XBoxOne_RightStick_DPadEast137(XB1) joystick derecho, movimiento digital (cuadrante derecho).
k_EInputActionOrigin_XBoxOne_DPad_North138(XB1) panel táctil digital, pulsado (cuadrante superior).
k_EInputActionOrigin_XBoxOne_DPad_South139(XB1) panel táctil digital, pulsado (cuadrante inferior).
k_EInputActionOrigin_XBoxOne_DPad_West140(XB1) panel táctil digital, pulsado (cuadrante izquierdo).
k_EInputActionOrigin_XBoxOne_DPad_East141(XB1) panel táctil digital, pulsado (cuadrante derecho).
k_EInputActionOrigin_XBoxOne_Reserved0142Reservado para uso futuro.
k_EInputActionOrigin_XBoxOne_Reserved1143Reservado para uso futuro.
k_EInputActionOrigin_XBoxOne_Reserved2144Reservado para uso futuro.
k_EInputActionOrigin_XBoxOne_Reserved3145Reservado para uso futuro.
k_EInputActionOrigin_XBoxOne_Reserved4146Reservado para uso futuro.
k_EInputActionOrigin_XBoxOne_Reserved5147Reservado para uso futuro.
k_EInputActionOrigin_XBoxOne_Reserved6148Reservado para uso futuro.
k_EInputActionOrigin_XBoxOne_Reserved7149Reservado para uso futuro.
k_EInputActionOrigin_XBoxOne_Reserved8150Reservado para uso futuro.
k_EInputActionOrigin_XBoxOne_Reserved9151Reservado para uso futuro.
k_EInputActionOrigin_XBoxOne_Reserved10152Reservado para uso futuro.
k_EInputActionOrigin_XBox360_A153(XB360) botón digital «A».
k_EInputActionOrigin_XBox360_B154(XB360) botón digital «B».
k_EInputActionOrigin_XBox360_X155(XB360) botón digital «X».
k_EInputActionOrigin_XBox360_Y156(XB360) botón digital «Y».
k_EInputActionOrigin_XBox360_LeftBumper157(XB360) botón digital superior izquierdo (bumper izquierdo).
k_EInputActionOrigin_XBox360_RightBumper158(XB360) botón digital superior derecho (bumper derecho).
k_EInputActionOrigin_XBox360_Start159(XB360) botón digital «START».
k_EInputActionOrigin_XBox360_Back160(XB360) botón digital «ATRÁS».
k_EInputActionOrigin_XBox360_LeftTrigger_Pull161(XB360) gatillo analógico izquierdo, pulsado en cualquier medida (valor analógico).
k_EInputActionOrigin_XBox360_LeftTrigger_Click162(XB360) gatillo analógico izquierdo, pulsado hasta el fondo (valor digital).
k_EInputActionOrigin_XBox360_RightTrigger_Pull163(XB360) gatillo analógico derecho, pulsado en cualquier medida (valor analógico).
k_EInputActionOrigin_XBox360_RightTrigger_Click164(XB360) gatillo analógico derecho, pulsado hasta el fondo (valor digital).
k_EInputActionOrigin_XBox360_LeftStick_Move165(XB360) joystick izquierdo, movimiento en cualquier eje (valor analógico).
k_EInputActionOrigin_XBox360_LeftStick_Click166(XB360) joystick izquierdo, pulsado para hacer clic (valor digital).
k_EInputActionOrigin_XBox360_LeftStick_DPadNorth167(XB360) joystick izquierdo, movimiento digital (cuadrante superior).
k_EInputActionOrigin_XBox360_LeftStick_DPadSouth168(XB360) joystick izquierdo, movimiento digital (cuadrante inferior).
k_EInputActionOrigin_XBox360_LeftStick_DPadWest169(XB360) joystick izquierdo, movimiento digital (cuadrante izquierdo).
k_EInputActionOrigin_XBox360_LeftStick_DPadEast170(XB360) joystick izquierdo, movimiento digital (cuadrante derecho).
k_EInputActionOrigin_XBox360_RightStick_Move171(XB360) joystick derecho, movimiento en cualquier eje (valor analógico).
k_EInputActionOrigin_XBox360_RightStick_Click172(XB360) joystick derecho, pulsado para hacer clic (valor digital).
k_EInputActionOrigin_XBox360_RightStick_DPadNorth173(XB360) joystick derecho, movimiento digital (cuadrante superior).
k_EInputActionOrigin_XBox360_RightStick_DPadSouth174(XB360) joystick derecho, movimiento digital (cuadrante inferior).
k_EInputActionOrigin_XBox360_RightStick_DPadWest175(XB360) joystick derecho, movimiento digital (cuadrante izquierdo).
k_EInputActionOrigin_XBox360_RightStick_DPadEast176(XB360) joystick derecho, movimiento digital (cuadrante derecho).
k_EInputActionOrigin_XBox360_DPad_North177(XB360) panel táctil digital, pulsado (cuadrante superior).
k_EInputActionOrigin_XBox360_DPad_South178(XB360) panel táctil digital, pulsado (cuadrante inferior).
k_EInputActionOrigin_XBox360_DPad_West179(XB360) panel táctil digital, pulsado (cuadrante izquierdo).
k_EInputActionOrigin_XBox360_DPad_East180(XB360) panel táctil digital, pulsado (cuadrante derecho).
k_EInputActionOrigin_XBox360_Reserved0181Reservado para uso futuro.
k_EInputActionOrigin_XBox360_Reserved1182Reservado para uso futuro.
k_EInputActionOrigin_XBox360_Reserved2183Reservado para uso futuro.
k_EInputActionOrigin_XBox360_Reserved3184Reservado para uso futuro.
k_EInputActionOrigin_XBox360_Reserved4185Reservado para uso futuro.
k_EInputActionOrigin_XBox360_Reserved5186Reservado para uso futuro.
k_EInputActionOrigin_XBox360_Reserved6187Reservado para uso futuro.
k_EInputActionOrigin_XBox360_Reserved7188Reservado para uso futuro.
k_EInputActionOrigin_XBox360_Reserved8189Reservado para uso futuro.
k_EInputActionOrigin_XBox360_Reserved9190Reservado para uso futuro.
k_EInputActionOrigin_XBox360_Reserved10191Reservado para uso futuro.
k_EInputActionOrigin_Switch_A192(Pro de Nintendo Switch) botón digital «A».
k_EInputActionOrigin_Switch_B193(Pro de Nintendo Switch) botón digital «B».
k_EInputActionOrigin_Switch_X194(Pro de Nintendo Switch) botón digital «X».
k_EInputActionOrigin_Switch_Y195(Pro de Nintendo Switch) botón digital «Y».
k_EInputActionOrigin_Switch_LeftBumper196(Pro de Nintendo Switch) botón digital superior frontal izquierdo (bumper izquierdo).
k_EInputActionOrigin_Switch_RightBumper197(Pro de Nintendo Switch) botón digital superior frontal derecho (bumper derecho).
k_EInputActionOrigin_Switch_Plus198(Pro de Nintendo Switch) botón «+».
k_EInputActionOrigin_Switch_Minus199(Pro de Nintendo Switch) botón «-».
k_EInputActionOrigin_Switch_Capture200(Pro de Nintendo Switch) botón digital de captura.
k_EInputActionOrigin_Switch_LeftTrigger_Pull201(Pro de Nintendo Switch) gatillo izquierdo o ZL, pulsado.
k_EInputActionOrigin_Switch_LeftTrigger_Click202(Pro de Nintendo Switch) gatillo izquierdo o ZL, pulsado (el mismo valor anterior).
k_EInputActionOrigin_Switch_RightTrigger_Pull203(Pro de Nintendo Switch) gatillo derecho o ZR, pulsado.
k_EInputActionOrigin_Switch_RightTrigger_Click204(Pro de Nintendo Switch) gatillo derecho o ZR, pulsado (el mismo valor anterior).
k_EInputActionOrigin_Switch_LeftStick_Move205(Pro de Nintendo Switch) joystick izquierdo, movimiento sobre cualquier eje (valor analógico).
k_EInputActionOrigin_Switch_LeftStick_Click206(Pro de Nintendo Switch) joystick izquierdo, pulsado para hacer clic (valor digital).
k_EInputActionOrigin_Switch_LeftStick_DPadNorth207(Pro de Nintendo Switch) joystick izquierdo, movimiento digital (cuadrante superior).
k_EInputActionOrigin_Switch_LeftStick_DPadSouth208(Pro de Nintendo Switch) joystick izquierdo, movimiento digital (cuadrante inferior).
k_EInputActionOrigin_Switch_LeftStick_DPadWest209(Pro de Nintendo Switch) joystick izquierdo, movimiento digital (cuadrante izquierdo).
k_EInputActionOrigin_Switch_LeftStick_DPadEast210(Pro de Nintendo Switch) joystick izquierdo, movimiento digital (cuadrante derecho).
k_EInputActionOrigin_Switch_RightStick_Move211(Pro de Nintendo Switch) joystick derecho, movimiento sobre cualquier eje (valor analógico).
k_EInputActionOrigin_Switch_RightStick_Click212(Pro de Nintendo Switch) joystick derecho, pulsado para hacer clic (valor digital).
k_EInputActionOrigin_Switch_RightStick_DPadNorth213(Pro de Nintendo Switch) joystick derecho, movimiento digital (cuadrante superior).
k_EInputActionOrigin_Switch_RightStick_DPadSouth214(Pro de Nintendo Switch) joystick derecho, movimiento digital (cuadrante inferior).
k_EInputActionOrigin_Switch_RightStick_DPadWest215(Pro de Nintendo Switch) joystick derecho, movimiento digital (cuadrante izquierdo).
k_EInputActionOrigin_Switch_RightStick_DPadEast216(Pro de Nintendo Switch) joystick derecho, movimiento digital (cuadrante derecho).
k_EInputActionOrigin_Switch_DPad_North217(Pro de Nintendo Switch) panel táctil digital, pulsado (cuadrante superior).
k_EInputActionOrigin_Switch_DPad_South218(Pro de Nintendo Switch) panel táctil digital, pulsado (cuadrante inferior).
k_EInputActionOrigin_Switch_DPad_West219(Pro de Nintendo Switch) panel táctil digital, pulsado (cuadrante izquierdo).
k_EInputActionOrigin_Switch_DPad_East220(Pro de Nintendo Switch) panel táctil digital, pulsado (cuadrante derecho).
k_EInputActionOrigin_SwitchProGyro_Move221(Pro de Nintendo Switch) giroscopio, movimiento analógico sobre cualquier eje.
k_EInputActionOrigin_SwitchProGyro_Pitch222(Pro de Nintendo Switch) giroscopio, movimiento analógico en el eje de cabeceo (dirigir la cabeza hacia el techo, dirigir la cabeza hacia el suelo).
k_EInputActionOrigin_SwitchProGyro_Yaw223(Pro de Nintendo Switch) giroscopio, movimiento analógico en el eje de guiñada (girar la cabeza hacia la izquierda, girar la cabeza hacia la derecha).
k_EInputActionOrigin_SwitchProGyro_Roll224(Pro de Nintendo Switch) giroscopio, movimiento analógico en el eje de alabeo (ladear la cabeza hacia el hombro izquierdo, ladear la cabeza hacia el hombro derecho).
k_EInputActionOrigin_Switch_Reserved0225Reservado para uso futuro.
k_EInputActionOrigin_Switch_Reserved1226Reservado para uso futuro.
k_EInputActionOrigin_Switch_Reserved2227Reservado para uso futuro.
k_EInputActionOrigin_Switch_Reserved3228Reservado para uso futuro.
k_EInputActionOrigin_Switch_Reserved4229Reservado para uso futuro.
k_EInputActionOrigin_Switch_Reserved5230Reservado para uso futuro.
k_EInputActionOrigin_Switch_Reserved6231Reservado para uso futuro.
k_EInputActionOrigin_Switch_Reserved7232Reservado para uso futuro.
k_EInputActionOrigin_Switch_Reserved8233Reservado para uso futuro.
k_EInputActionOrigin_Switch_Reserved9234Reservado para uso futuro.
k_EInputActionOrigin_Switch_Reserved10235Reservado para uso futuro.
k_EInputActionOrigin_Count258Número de valores en esta enumeración, útil para iteraciones.
k_EInputActionOrigin_MaximumPossibleValue32767Número de valores en esta enumeración, útil para iteraciones.

EControllerSource

Región del mando que se puede considerar una unidad modular abstracta mayor, a la que se puede aplicar uno de los muchos modos y que puede generar datos significativos. Por ejemplo, un joystick puede tratarse como una sola entrada analógica o dividirse en cuatro entradas digitales discretas que forman una cruceta virtual. Igualmente, los botones «A», «B», «X» e «Y» forman un grupo natural que puede tratarse como cuatro botones independientes o como componentes de una cruceta virtual, etc.

NombreValorDescripción
k_EInputSource_None0Ningún origen de mando.
k_EInputSource_LeftTrackpad1Panel táctil izquierdo o la mitad izquierda de un panel táctil central.
k_EInputSource_RightTrackpad2Panel táctil derecho o la mitad derecha de un panel táctil central.
k_EInputSource_Joystick3El joystick o, si hay más de uno, el joystick izquierdo.
k_EInputSource_ABXY4Los cuatro botones principales.
k_EInputSource_Switch5Interruptores o botones del mando que no pertenecen a ningún otro origen específico. Esto incluye los bumpers, los botones de inicio/selección y las empuñaduras. Estos casos especiales no encajan en el paradigma general y, por tanto, disponen de su propio origen de botones digitales y de un modo correspondiente para procesarlos.
k_EInputSource_LeftTrigger6Gatillo analógico izquierdo.
k_EInputSource_RightTrigger7Gatillo analógico derecho.
k_EInputSource_Gyro8Giroscopio interno.
k_EInputSource_CenterTrackpad9Panel táctil central (solo DS4).
k_EInputSource_RightJoystick10Joystick derecho. Si solo hay un joystick, este origen no se utiliza.
k_EInputSource_DPad11Panel digital.
k_EInputSource_Key12Tecla del teclado (para teclados con códigos de escaneo).
k_EInputSource_Mouse13Ratón tradicional.
k_EInputSource_Count14Número de enumeraciones, útil para iteraciones.

EControllerSourceMode

Modo de entrada virtual impuesto por el configurador a un origen de mando. Por ejemplo, el configurador puede hacer que un joystick analógico se comporte como una cruceta con cuatro entradas digitales; el EControllerSource sería k_EInputSource_Joystick y el EControllerSourceMode sería k_EInputSourceMode_Dpad. El modo también cambia los datos de entrada que recibe cualquier acción asociada.

NombreValorDescripción
k_EInputSourceMode_None0Ningún modo de entrada.
k_EInputSourceMode_Dpad1Panel digital: cuatro botones digitales de dirección combinados en un patrón de cruz, de forma que en un momento dado solo puede estar pulsado un botón de cada eje.
k_EInputSourceMode_Buttons2
k_EInputSourceMode_FourButtons3Cuatro botones digitales que se pueden pulsar simultáneamente.
k_EInputSourceMode_AbsoluteMouse4
k_EInputSourceMode_RelativeMouse5
k_EInputSourceMode_JoystickMove6
k_EInputSourceMode_JoystickMouse7
k_EInputSourceMode_JoystickCamera8
k_EInputSourceMode_ScrollWheel9
k_EInputSourceMode_Trigger10
k_EInputSourceMode_TouchMenu11
k_EInputSourceMode_MouseJoystick12
k_EInputSourceMode_MouseRegion13
k_EInputSourceMode_RadialMenu14
k_EInputSourceMode_SingleButton15
k_EInputSourceMode_Switches16

ESteamControllerLEDFlag

Controla el color del LED del dispositivo Steam Controller (si dispone de uno).

Notas:
El Steam Controller de Valve tiene un LED, pero solo se verá afectado su brillo (el color siempre es blanco).
El LED del DS4 es la barra luminosa; en ella, el color y brillo se pueden configurar.

NombreValorDescripción
k_ESteamControllerLEDFlag_SetColor0Establece el color según los valores especificados.
k_ESteamControllerLEDFlag_RestoreUserDefault1Restaura el color a los ajustes predeterminados (fuera del juego).

ESteamInputType

Representa el modelo de dispositivo para una pieza de hardware determinada.


NombreValorDescripción
k_ESteamInputType_Unknown0Cajón de sastre para dispositivos no reconocidos.
k_ESteamInputType_SteamController1Steam Controller de Valve.
k_ESteamInputType_XBox360Controller2Mando de Microsoft Xbox 360.
k_ESteamInputType_XBoxOneController3Mando de Microsoft Xbox One.
k_ESteamInputType_GenericXInput4Cualquier dispositivo XInput genérico de terceros.
k_ESteamInputType_PS4Controller5Mando de Sony PlayStation 4.
k_ESteamInputType_AppleMFiController6Sin uso.
k_ESteamInputType_AndroidController7Sin uso.
k_ESteamInputType_SwitchJoyConPair8No se usa.
k_ESteamInputType_SwitchJoyConSingle9No se usa.
k_ESteamInputType_SwitchProController10Mando Pro de Nintendo Switch.
k_ESteamInputType_MobileTouch11Mando táctil móvil de la aplicación Steam Link.
k_ESteamInputType_PS3Controller12Mando de Sony PlayStation 3 o mando de recreativos compatible de PS3/PS4.
k_ESteamInputType_PS5Controller13Mando de Sony PlayStation 5.
k_ESteamInputType_SteamDeckController14Mando de Steam Deck.
k_ESteamInputType_SteamOSHandheld15Mando de hardware con SteamOS.
k_ESteamInputType_Switch2ProController16Mando Pro de Nintendo Switch 2.
k_ESteamInputType_SteamController202617Steam Controller (2026).
k_ESteamInputType_SteamFrameControllerPair18Par de mandos de Steam Frame.
k_ESteamInputType_Count19Número actual de valores devueltos.
k_ESteamInputType_MaximumPossibleValue255Valor máximo posible devuelto.

ESteamControllerPad

Región del panel táctil en un dispositivo Steam Controller.

Notas:
En el Steam Controller de Valve, los valores se corresponden con los paneles táctiles hápticos derecho e izquierdo.
En el DS4, los valores se corresponden con las mitades derecha e izquierda del único panel táctil central.

NombreValorDescripción
k_ESteamControllerPad_Left0Región izquierda del panel táctil en un dispositivo Steam Controller. Modelos compatibles: VSC, DS4
k_ESteamControllerPad_Right1Región derecha del panel táctil en un dispositivo Steam Controller. Modelos compatibles: VSC, DS4.

Definiciones de tipo

Estas son las definiciones de tipo establecidas para usarse con ISteamInput.

NombreTipo de baseDescripción
InputActionSetHandle_tuint64Estos handles se usan para referirse a una acción concreta dentro del juego o a un set de acciones.
Por motivos de rendimiento, todos los handles de acciones se deben consultar durante la inicialización.
InputAnalogActionHandle_tuint64Handle de una acción analógica. Puede obtenerse con ISteamInput::GetAnalogActionHandle.
InputDigitalActionHandle_tuint64Handle de una acción digital. Puede obtenerse con ISteamInput::GetDigitalActionHandle.
InputHandle_tuint64Este handle identifica de forma consistente un control, aunque este se desconecte y se vuelva a conectar.

Constantes

Estas son las constantes definidas para usarse con ISteamInput.

NombreTipoValorDescripción
STEAMINPUT_INTERFACE_VERSIONconst char *"SteamInput001"
STEAM_INPUT_HANDLE_ALL_CONTROLLERSintUINT64_MAXAl enviar una opción a un handle del mando específico, puedes utilizar este valor especial en lugar del handle para enviar la opción a todos los mandos.
STEAM_INPUT_MAX_ANALOG_ACTIONSint16Número máximo de acciones analógicas que se pueden realizar en cada mando.
STEAM_INPUT_MAX_ANALOG_ACTION_DATAfloat1.0fValor máximo que una acción analógica puede comunicar en un eje dado.
STEAM_INPUT_MAX_COUNTint16Número máximo de mandos que se pueden utilizar simultáneamente con el configurador de Steam Input.
STEAM_INPUT_MAX_DIGITAL_ACTIONSint128Número máximo de acciones digitales que se pueden realizar en cada mando.
STEAM_INPUT_MAX_ORIGINSint8Número máximo de orígenes de entrada que se pueden asociar a una misma acción.
STEAM_INPUT_MIN_ANALOG_ACTION_DATAfloat-1.0fValor mínimo que una acción analógica puede comunicar en un eje dado.