Documentación de Steamworks
Interfaz ISteamInput
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.

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

Funciones miembro

Las funciones miembro de ISteamInput se llaman a través de la función de descriptor 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 conjunto 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 individual del mando.

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 del conjunto de acciones.
actionSetHandleInputActionSetHandle_tHandle del conjunto de acciones que deseas activar.

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

Consulta el artículo Capas de set 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 del conjunto de acciones.
actionSetHandleInputActionSetHandle_tHandle del conjunto de acciones que deseas desactivar.

Reconfigura el mando para parar de usar la capa del conjunto 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 del conjunto de acciones.

Reconfigura el mando para dejar de usar las capas del set de acciones.

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

GetActiveActionSetLayers

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

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

Ejemplo:
InputHandle_t *handlesOut = new InputHandle_t []; SteamInput()->GetActiveActionSetLayers( inputHandle1, &handlesOut );

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 handle para todas las futuras llamadas a la API.

Devuelve: InputActionSetHandle_t
Handle del conjunto 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
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 conjunto 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 «up» en dos sets de acciones distintos, esta función solo devolverá una de ellas e ignorará la otra.

Devuelve: InputAnalogActionHandle_t
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 se va a consultar.
actionSetHandleInputActionSetHandle_tHandle del conjunto de acciones que deseas consultar.
analogActionHandleInputAnalogActionHandle_tHandle de la acción analógica que vas a consultar.
originsOutEInputActionOrigin *Un vector 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 conjunto de acciones rellenando el vector originsOut con los handle de EInputActionOrigin. Usa esto para mostrar el aviso en pantalla adecuado para la acción.

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

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

GetConnectedControllers

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

Enumera los mandos conectados actualmente rellenando el vector handlesOut con los handle de los mandos.

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

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

GetControllerForGamepadIndex

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

Devuelve el handle del mando asociado al gamepad emulado especificado. Se puede usar con GetInputTypeForHandle para determinar qué tipo de mando está usando la emulación de Steam Input Gamepad.

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 handle válidos de entrada son distintos de cero, este es un mando normal de Xbox. } else { ESteamInputType inputType = SteamInput()->GetInputTypeForHandle( inputHandle ); switch( inputType ) { case k_ESteamInputType_Unknown: printf( "¡Dispositivo desconocido!\n" ); break; case k_ESteamInputType_SteamController: printf( "¡Steam Controller!\n" ); break; case k_ESteamInputType_XBox360Controller: printf( "¡Mando XBox 360!\n" ); break; case k_ESteamInputType_XBoxOneController: printf( "¡Mando XBox One!\n" ); break; case k_ESteamInputType_GenericXInput: printf( "¡XInput genérico!\n" ); break; case k_ESteamInputType_PS4Controller: printf( "¡Mando PS4!\n" ); break; } }

GetCurrentActionSet

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

Obtiene el conjunto de acciones que están activas para el mando especificado.

Devuelve:InputActionSetHandle_t
Handle del conjunto 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
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 conjunto 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 «up» en dos sets de acciones distintos, esta función solo devolverá una de ellas e ignorará la otra.

Devuelve: InputDigitalActionHandle_t
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 deseas consultar.
digitalActionHandleInputDigitalActionHandle_tHandle de la acción digital que quieres consultar.
originsOutEInputActionOrigin *Un vector 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 proporcionados en originsOut.

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

GetGamepadIndexForController

int GetGamepadIndexForController( InputHandle_t ulControllerHandle );
NombreTipoDescripción
ulControllerHandleInputHandle_tHandle del mando para el que quieres obtener el índice del gamepad.

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

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 para el glifo.
P. ej. "C:\Program Files (x86)\Steam\tenfoot\resource\images\library\controller\api\ps4_button_x.png"

Ejemplo:
// Obtener orígenes para "punch" EInputActionOrigin *origins = new EInputActionOrigin[]; SteamInput()->GetDigitalActionOrigins( controller1Handle, fightingSetHandle, punchHandle, origins ); EInputActionOrigin firstOrigin = origins[0]; //i.e, k_EInputActionOrigin_PS4_X // Esta es una función del juego en sí mismo que trata de obtener imágenes de glifos personalizadas int glyphTextureID = getHardCodedButtonGlyphTexture( firstOrigin ); // ¡No publicamos ninguna imagen en nuestro juego para este origen! Supongo que Steam ha añadido soporte para // un nuevo mando o ¡simplemente olvidamos agregar esta imagen! //(es decir, solo tenemos glifos del Steam Controller, pero es un mando PlayStation 4) if( glyphTextureID == -1 ) { // Simplemente obtén la imagen del cliente Steam en su lugar. const char *localGlyphPath = SteamInput()->GetGlyphForActionOrigin( firstOrigin ); printf( "path = %s\n", localGlyphPath ); // "path = C:\Program Files (x86)\Steam\tenfoot\resource\images\library\controller\api\ps4_button_x.png" //una función del juego que convierte una ruta de archivo en una textura de 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 XBox 360, un mando PS4, etc.

Devuelve: ESteamInputType


Ejemplo:
ESteamInputType inputType = SteamInput()->GetInputTypeForHandle(controller1Handle); switch(inputType) { case k_ESteamInputType_Unknown: printf("¡Dispositivo desconocido!\n"); break; case k_ESteamInputType_SteamController: printf("¡Steam Controller!\n"); break; case k_ESteamInputType_XBox360Controller: printf("¡Mando XBox 360!\n"); break; case k_ESteamInputType_XBoxOneController: printf("¡Mando XBox One!\n"); break; case k_ESteamInputType_GenericXInput: printf("¡XInput genérico!\n"); break; case k_ESteamInputType_PS4Controller: printf("¡Mando 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.

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[]; 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. Esta acción la realiza automáticamente a través de SteamAPI_RunCallbacks, pero para obtener la latencia más baja posible se puede invocar directamente antes de leer el estado del mando.

Ejemplo:
SteamInput()->RunFrame();

SetDualSenseTriggerEffect

void SetDualSenseTriggerEffect( InputHandle_t inputHandle, const ScePadTriggerEffectParam *pParam );
NombreTipoDescripción
inputHandleInputHandle_tEl handle del mando que se va a ver afectado.
pParam ScePadTriggerEffectParamEl pará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_tEl handle 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 intBanderas enmascaradas por bits combinadas de valores definidos en ESteamControllerLEDFlag.

Establece el color del LED en los mandos compatibles.

Notas:
El VSC no admite ningún color que no sea blanco e interpretará los valores RGB como un valor de escala de grises que afecta al brillo del LED del botón «Steam».
El DS4 responde a la información a todo color y utiliza los valores para configurar 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 el color en magenta para el 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_tEl handle del mando para el que quieres mostrar la pantalla de asignaciones.

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

Devuelve: bool
true si tuvo éxito; false si la interfaz está deshabilitada/no disponible. Si el jugador usa el modo Big Picture, la configuración se abre en la interfaz. En el modo escritorio se crea una versión en ventana emergente de Big Picture y se abre 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_tEl handle 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 se quiere indicar al usuario que se 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_tEl handle 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 VSC admite pulsaciones hápticas.
Esta llamada a la API se ignorará para todos los demás modelos de mando.
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 cada 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_tEl handle 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 pulsos, 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 son compatibles con las pulsaciones hápticas Steam Controller, Steam Deck y los mandos Pro de Nintendo Switch.
Esta llamada a la API se ignorará con los mandos que no sean compatibles.
Esta función es más fácil de usar que TriggerHapticPulse, ya que puede generar patrones de pulsación durante el tiempo suficiente para que el usuario se dé cuenta.
Al cambiar los parámetros de usDurationMicroSec y usOffMicroSec cambiará la «textura» de la pulsación háptica.

Ejemplo:
//Pulsa durante 1 segundo con un patrón de pulsación de encendido/apagado de 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_tEl handle del mando que se va a ver afectado.
usLeftSpeedunsigned shortEl valor de intensidad del motor de vibración izquierdo.
usRightSpeedunsigned shortEl valor de intensidad del motor de vibración derecho.

Activa un evento de vibración en mandos compatibles.

Notas:
Esta llamada a la API se ignorará para los modelos de mando incompatibles.
Esto genera el tradicional efecto vibratorio de la «resonancia».
El VSC emulará la resonancia tradicional utilizando sus pulsaciones hápticas.

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

TriggerVibrationExtended

void TriggerVibrationExtended( InputHandle_t inputHandle, unsigned short usLeftSpeed, unsigned short usRightSpeed );
NombreTipoDescripción
inputHandleInputHandle_tEl handle del mando que se va a ver afectado.
usLeftSpeedunsigned shortEl valor de intensidad del motor de vibración izquierdo.
usRightSpeedunsigned shortEl valor de intensidad del motor de vibración derecho.
usLeftTriggerSpeedunsigned shortEl valor de intensidad del motor del gatillo de impulso izquierdo de Xbox.
usRightTriggerSpeedunsigned shortEl valor 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.
Steam Controller y Steam Deck utilizan la respuesta háptica para emular el efecto de vibración tradicional.

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

GetActionOriginFromXboxOrigin

EInputActionOrigin GetActionOriginFromXboxOrigin( InputHandle_t inputHandle, EXboxOrigin eOrigin );
NombreTipoDescripción
inputHandleInputHandle_tEl handle del mando que se va a ver afectado. Puedes usar GetControllerForGamepadIndex para obtener este handle.
eOriginEXboxOriginEl botó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 XInput correcta de tu jugador InputHandle_t controller1Handle = GetControllerForGamepadIndex( nXinputSlot ); EInputActionOrigin buttonOrigin = SteamInput()->GetActionOriginFromXboxOrigin( controller1Handle, k_EXboxOrigin_A ); // Obtiene la imagen del cliente de Steam. const char *localGlyphPath = SteamInput()->GetGlyphForActionOrigin( buttonOrigin ); printf( "path = %s\n", localGlyphPath ); // "path = C:\Program Files (x86)\Steam\tenfoot\resource\images\library\controller\api\ps4_button_x.png" //una función del juego que convierte una ruta de archivo en una textura de juego utilizable glyphTextureID = loadButtonGlyphTextureFromLocalPath( localGlyphPath );

TranslateActionOrigin

EInputActionOrigin TranslateActionOrigin( ESteamInputType eDestinationInputType, EInputActionOrigin eSourceOrigin );
NombreTipoDescripción
inputHandleInputHandle_tEl handle del mando que se va a ver afectado. Puedes usar GetControllerForGamepadIndex para obtener este handle.
eDestinationInputTypeESteamInputTypeEl tipo 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 XInput correcta de Xinput que haya para tu jugador InputHandle_t controller1Handle = GetControllerForGamepadIndex( nXinputSlot ); EInputActionOrigin buttonOrigin = SteamInput()->GetActionOriginFromXboxOrigin( controller1Handle, k_EXboxOrigin_A ); //p. ej., k_EInputActionOrigin_PS4_X if ( buttonOrigin >= k_EInputActionOrigin_Count ) { // ¡No publicamos ningún diseño en nuestro juego para este origen! Supongo que Steam ha añadido soporte para // un nuevo mando. Obtengamos el valor más cercano permitido por el SDK con el que lo desarrollamos buttonOrigin = SteamInput()->TranslateActionOrigin( k_ESteamInputType_Unknown, buttonOrigin ) } // Esta es una función del juego en sí que trata de obtener un arte de glifo personalizado int glyphTextureID = getHardCodedButtonGlyphTexture( actionOrigin );

GetDeviceBindingRevision

bool GetDeviceBindingRevision( InputHandle_t inputHandle, int *pMajor, int *pMinor );
NombreTipoDescripción
inputHandleInputHandle_tEl handle 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 secundaria está desactualizada, pero no pasa nada, // se corregirá la próxima vez que editen la configuración } if ( nMajorRevision != nCurrentMajorRevision ) { // Esto solo debería ocurrir brevemente mientras Steam detecta // y fuerza la actualización a la última configuración oficial } } else { // La configuración aún no está cargada para este mando }

Ejemplo de uso del archivo de acciones en el juego:
"Acciones dentro del juego" { "major_revision" "0" "minor_revision" "1" "actions" { ...

GetRemotePlaySessionID

uint32 GetRemotePlaySessionID( InputHandle_t inputHandle );
NombreTipoDescripción
inputHandleInputHandle_tEl handle 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 flotantes 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 cuadro. 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
eModeEControllerSourceModeEl tipo 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.
XfloatEl estado actual de esta acción en el eje horizontal.
YfloatEl estado 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
bStateboolEl estado 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 diferentes que forman un pad direccional virtual. Igualmente, los botones ABXY forman un grupo natural que puede tratarse como cuatro botones independientes o como componentes de un pad direccional virtual, y así sucesivamente.

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 un pad direccional 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 VSC tiene un LED, pero solo se verá afectado su brillo (el color es siempre blanco).
El LED del DS4 es la barra luminosa, cuyo 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_SwitchJoyConPair8Sin uso.
k_ESteamInputType_SwitchJoyConSingle9Sin uso.
k_ESteamInputType_SwitchProController10Mando Pro de Nintendo Switch.
k_ESteamInputType_MobileTouch11Mando táctil móvil de la aplicación Steam Link.
k_ESteamInputType_PS3Controller12Mando de PlayStation 3 de Sony o mando de recreativos compatible de PS3/PS4.
k_ESteamInputType_Count13Nú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 VSC, los valores corresponden a los paneles táctiles hápticos izquierdo y derecho.
En el DS4, los valores corresponden a las mitades izquierda y derecha 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.

Typedefs

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

NombreTipo de baseDescripción
InputActionSetHandle_tuint64Estos handles se utilizan para referirse a una acción o set de acciones específico dentro del juego.
Todos los handles de acción deben consultarse durante la inicialización por razones de rendimiento.
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 constantes están 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.