docs.unity3d.com
Search Results for

    Show / Hide Table of Contents

    Class SteamInput

    Purpose: Steam Input API

    Inheritance
    object
    SteamInput
    Inherited Members
    object.Equals(object)
    object.Equals(object, object)
    object.GetHashCode()
    object.GetType()
    object.MemberwiseClone()
    object.ReferenceEquals(object, object)
    object.ToString()
    Namespace: Unity.Steamworks.Interop
    Assembly: Unity.Steamworks.Interop.dll
    Syntax
    public static class SteamInput

    Methods

    ActivateActionSet(InputHandle_t, InputActionSetHandle_t)

    Reconfigure the controller to use the specified action set (ie 'Menu', 'Walk' or 'Drive') This is cheap, and can be safely called repeatedly. It's often easier to repeatedly call it in your state loops, instead of trying to place it in all of your state transitions.

    Declaration
    public static void ActivateActionSet(InputHandle_t inputHandle, InputActionSetHandle_t actionSetHandle)
    Parameters
    Type Name Description
    InputHandle_t inputHandle

    Passed through to ISteamInput::ActivateActionSet.

    InputActionSetHandle_t actionSetHandle

    Passed through to ISteamInput::ActivateActionSet.

    ActivateActionSetLayer(InputHandle_t, InputActionSetHandle_t)

    ACTION SET LAYERS

    Declaration
    public static void ActivateActionSetLayer(InputHandle_t inputHandle, InputActionSetHandle_t actionSetLayerHandle)
    Parameters
    Type Name Description
    InputHandle_t inputHandle

    Passed through to ISteamInput::ActivateActionSetLayer.

    InputActionSetHandle_t actionSetLayerHandle

    Passed through to ISteamInput::ActivateActionSetLayer.

    BNewDataAvailable()

    Returns true if new data has been received since the last time action data was accessed via GetDigitalActionData or GetAnalogActionData. The game will still need to call SteamInput()->RunFrame() or SteamAPI_RunCallbacks() before this to update the data stream

    Declaration
    public static bool BNewDataAvailable()
    Returns
    Type Description
    bool

    The value ISteamInput::BNewDataAvailable returns.

    BWaitForData(bool, uint)

    Waits on an IPC event from Steam sent when there is new data to be fetched from the data drop. Returns true when data was recievied before the timeout expires. Useful for games with a dedicated input thread

    Declaration
    public static bool BWaitForData(bool bWaitForever, uint unTimeout)
    Parameters
    Type Name Description
    bool bWaitForever

    Passed through to ISteamInput::BWaitForData.

    uint unTimeout

    Passed through to ISteamInput::BWaitForData.

    Returns
    Type Description
    bool

    The value ISteamInput::BWaitForData returns.

    DeactivateActionSetLayer(InputHandle_t, InputActionSetHandle_t)

    Calls the Steamworks ISteamInput::DeactivateActionSetLayer method.

    Declaration
    public static void DeactivateActionSetLayer(InputHandle_t inputHandle, InputActionSetHandle_t actionSetLayerHandle)
    Parameters
    Type Name Description
    InputHandle_t inputHandle

    Passed through to ISteamInput::DeactivateActionSetLayer.

    InputActionSetHandle_t actionSetLayerHandle

    Passed through to ISteamInput::DeactivateActionSetLayer.

    DeactivateAllActionSetLayers(InputHandle_t)

    Calls the Steamworks ISteamInput::DeactivateAllActionSetLayers method.

    Declaration
    public static void DeactivateAllActionSetLayers(InputHandle_t inputHandle)
    Parameters
    Type Name Description
    InputHandle_t inputHandle

    Passed through to ISteamInput::DeactivateAllActionSetLayers.

    EnableActionEventCallbacks(SteamInputActionEventCallbackPointer)

    Controller Connected - provides info about a single newly connected controller Note: this is called within either SteamInput()->RunFrame or by SteamAPI_RunCallbacks Controller Disconnected - provides info about a single disconnected controller Note: this is called within either SteamInput()->RunFrame or by SteamAPI_RunCallbacks Controllers using Gamepad emulation (XInput, DirectInput, etc) will be seated in the order that input is sent by the device. This callback will fire on first input for each device and when the a user has manually changed the order via the Steam overlay. This also has the device type info so that you can change out glyph sets without making additional API calls Enable SteamInputActionEvent_t callbacks. Directly calls your callback function for lower latency than standard Steam callbacks. Supports one callback at a time. Note: this is called within either SteamInput()->RunFrame or by SteamAPI_RunCallbacks

    Declaration
    public static void EnableActionEventCallbacks(SteamInputActionEventCallbackPointer pCallback)
    Parameters
    Type Name Description
    SteamInputActionEventCallbackPointer pCallback

    Passed through to ISteamInput::EnableActionEventCallbacks.

    EnableDeviceCallbacks()

    CALLBACKS Controller configuration loaded - these callbacks will always fire if you have a handler. Note: this is called within either SteamInput()->RunFrame or by SteamAPI_RunCallbacks Enable SteamInputDeviceConnected_t and SteamInputDeviceDisconnected_t callbacks. Each controller that is already connected will generate a device connected callback when you enable them

    Declaration
    public static void EnableDeviceCallbacks()

    GetActionOriginFromXboxOrigin(InputHandle_t, EXboxOrigin)

    Get the equivalent ActionOrigin for a given Xbox controller origin this can be chained with GetGlyphForActionOrigin to provide future proof glyphs for non-Steam Input API action games. Note - this only translates the buttons directly and doesn't take into account any remapping a user has made in their configuration

    Declaration
    public static EInputActionOrigin GetActionOriginFromXboxOrigin(InputHandle_t inputHandle, EXboxOrigin eOrigin)
    Parameters
    Type Name Description
    InputHandle_t inputHandle

    Passed through to ISteamInput::GetActionOriginFromXboxOrigin.

    EXboxOrigin eOrigin

    Passed through to ISteamInput::GetActionOriginFromXboxOrigin.

    Returns
    Type Description
    EInputActionOrigin

    The value ISteamInput::GetActionOriginFromXboxOrigin returns.

    GetActionSetHandle(string)

    ACTION SETS Lookup the handle for an Action Set. Best to do this once on startup, and store the handles for all future API calls.

    Declaration
    public static InputActionSetHandle_t GetActionSetHandle(string pszActionSetName)
    Parameters
    Type Name Description
    string pszActionSetName

    Passed through to ISteamInput::GetActionSetHandle.

    Returns
    Type Description
    InputActionSetHandle_t

    The value ISteamInput::GetActionSetHandle returns.

    GetActiveActionSetLayers(InputHandle_t, InputActionSetHandle_t[])

    Enumerate currently active layers. handlesOut should point to a STEAM_INPUT_MAX_ACTIVE_LAYERS sized array of InputActionSetHandle_t handles Returns the number of handles written to handlesOut

    Declaration
    public static int GetActiveActionSetLayers(InputHandle_t inputHandle, InputActionSetHandle_t[] handlesOut)
    Parameters
    Type Name Description
    InputHandle_t inputHandle

    Passed through to ISteamInput::GetActiveActionSetLayers.

    InputActionSetHandle_t[] handlesOut

    Passed through to ISteamInput::GetActiveActionSetLayers.

    Returns
    Type Description
    int

    The value ISteamInput::GetActiveActionSetLayers returns.

    GetAnalogActionData(InputHandle_t, InputAnalogActionHandle_t)

    Returns the current state of these supplied analog game action

    Declaration
    public static InputAnalogActionData_t GetAnalogActionData(InputHandle_t inputHandle, InputAnalogActionHandle_t analogActionHandle)
    Parameters
    Type Name Description
    InputHandle_t inputHandle

    Passed through to ISteamInput::GetAnalogActionData.

    InputAnalogActionHandle_t analogActionHandle

    Passed through to ISteamInput::GetAnalogActionData.

    Returns
    Type Description
    InputAnalogActionData_t

    The value ISteamInput::GetAnalogActionData returns.

    GetAnalogActionHandle(string)

    Lookup the handle for an analog action. Best to do this once on startup, and store the handles for all future API calls.

    Declaration
    public static InputAnalogActionHandle_t GetAnalogActionHandle(string pszActionName)
    Parameters
    Type Name Description
    string pszActionName

    Passed through to ISteamInput::GetAnalogActionHandle.

    Returns
    Type Description
    InputAnalogActionHandle_t

    The value ISteamInput::GetAnalogActionHandle returns.

    GetAnalogActionOrigins(InputHandle_t, InputActionSetHandle_t, InputAnalogActionHandle_t, EInputActionOrigin[])

    Get the origin(s) for an analog action within an action set. Returns the number of origins supplied in originsOut. Use this to display the appropriate on-screen prompt for the action. originsOut should point to a STEAM_INPUT_MAX_ORIGINS sized array of EInputActionOrigin handles. The EInputActionOrigin enum will get extended as support for new controller controllers gets added to the Steam client and will exceed the values from this header, please check bounds if you are using a look up table.

    Declaration
    public static int GetAnalogActionOrigins(InputHandle_t inputHandle, InputActionSetHandle_t actionSetHandle, InputAnalogActionHandle_t analogActionHandle, EInputActionOrigin[] originsOut)
    Parameters
    Type Name Description
    InputHandle_t inputHandle

    Passed through to ISteamInput::GetAnalogActionOrigins.

    InputActionSetHandle_t actionSetHandle

    Passed through to ISteamInput::GetAnalogActionOrigins.

    InputAnalogActionHandle_t analogActionHandle

    Passed through to ISteamInput::GetAnalogActionOrigins.

    EInputActionOrigin[] originsOut

    Passed through to ISteamInput::GetAnalogActionOrigins.

    Returns
    Type Description
    int

    The value ISteamInput::GetAnalogActionOrigins returns.

    GetConnectedControllers(InputHandle_t[])

    Enumerate currently connected Steam Input enabled devices - developers can opt in controller by type (ex: Xbox/Playstation/etc) via the Steam Input settings in the Steamworks site or users can opt-in in their controller settings in Steam. handlesOut should point to a STEAM_INPUT_MAX_COUNT sized array of InputHandle_t handles Returns the number of handles written to handlesOut

    Declaration
    public static int GetConnectedControllers(InputHandle_t[] handlesOut)
    Parameters
    Type Name Description
    InputHandle_t[] handlesOut

    Passed through to ISteamInput::GetConnectedControllers.

    Returns
    Type Description
    int

    The value ISteamInput::GetConnectedControllers returns.

    GetControllerForGamepadIndex(int)

    Returns the associated controller handle for the specified emulated gamepad - can be used with the above 2 functions to identify controllers presented to your game over Xinput. Returns 0 if the Xinput index isn't associated with Steam Input

    Declaration
    public static InputHandle_t GetControllerForGamepadIndex(int nIndex)
    Parameters
    Type Name Description
    int nIndex

    Passed through to ISteamInput::GetControllerForGamepadIndex.

    Returns
    Type Description
    InputHandle_t

    The value ISteamInput::GetControllerForGamepadIndex returns.

    GetCurrentActionSet(InputHandle_t)

    Calls the Steamworks ISteamInput::GetCurrentActionSet method.

    Declaration
    public static InputActionSetHandle_t GetCurrentActionSet(InputHandle_t inputHandle)
    Parameters
    Type Name Description
    InputHandle_t inputHandle

    Passed through to ISteamInput::GetCurrentActionSet.

    Returns
    Type Description
    InputActionSetHandle_t

    The value ISteamInput::GetCurrentActionSet returns.

    GetDeviceBindingRevision(InputHandle_t, out int, out int)

    Get the binding revision for a given device. Returns false if the handle was not valid or if a mapping is not yet loaded for the device

    Declaration
    public static bool GetDeviceBindingRevision(InputHandle_t inputHandle, out int pMajor, out int pMinor)
    Parameters
    Type Name Description
    InputHandle_t inputHandle

    Passed through to ISteamInput::GetDeviceBindingRevision.

    int pMajor

    Passed through to ISteamInput::GetDeviceBindingRevision.

    int pMinor

    Passed through to ISteamInput::GetDeviceBindingRevision.

    Returns
    Type Description
    bool

    The value ISteamInput::GetDeviceBindingRevision returns.

    GetDigitalActionData(InputHandle_t, InputDigitalActionHandle_t)

    Returns the current state of the supplied digital game action

    Declaration
    public static InputDigitalActionData_t GetDigitalActionData(InputHandle_t inputHandle, InputDigitalActionHandle_t digitalActionHandle)
    Parameters
    Type Name Description
    InputHandle_t inputHandle

    Passed through to ISteamInput::GetDigitalActionData.

    InputDigitalActionHandle_t digitalActionHandle

    Passed through to ISteamInput::GetDigitalActionData.

    Returns
    Type Description
    InputDigitalActionData_t

    The value ISteamInput::GetDigitalActionData returns.

    GetDigitalActionHandle(string)

    ACTIONS Lookup the handle for a digital action. Best to do this once on startup, and store the handles for all future API calls.

    Declaration
    public static InputDigitalActionHandle_t GetDigitalActionHandle(string pszActionName)
    Parameters
    Type Name Description
    string pszActionName

    Passed through to ISteamInput::GetDigitalActionHandle.

    Returns
    Type Description
    InputDigitalActionHandle_t

    The value ISteamInput::GetDigitalActionHandle returns.

    GetDigitalActionOrigins(InputHandle_t, InputActionSetHandle_t, InputDigitalActionHandle_t, EInputActionOrigin[])

    Get the origin(s) for a digital action within an action set. Returns the number of origins supplied in originsOut. Use this to display the appropriate on-screen prompt for the action. originsOut should point to a STEAM_INPUT_MAX_ORIGINS sized array of EInputActionOrigin handles. The EInputActionOrigin enum will get extended as support for new controller controllers gets added to the Steam client and will exceed the values from this header, please check bounds if you are using a look up table.

    Declaration
    public static int GetDigitalActionOrigins(InputHandle_t inputHandle, InputActionSetHandle_t actionSetHandle, InputDigitalActionHandle_t digitalActionHandle, EInputActionOrigin[] originsOut)
    Parameters
    Type Name Description
    InputHandle_t inputHandle

    Passed through to ISteamInput::GetDigitalActionOrigins.

    InputActionSetHandle_t actionSetHandle

    Passed through to ISteamInput::GetDigitalActionOrigins.

    InputDigitalActionHandle_t digitalActionHandle

    Passed through to ISteamInput::GetDigitalActionOrigins.

    EInputActionOrigin[] originsOut

    Passed through to ISteamInput::GetDigitalActionOrigins.

    Returns
    Type Description
    int

    The value ISteamInput::GetDigitalActionOrigins returns.

    GetGamepadIndexForController(InputHandle_t)

    Returns the associated gamepad index for the specified controller, if emulating a gamepad or -1 if not associated with an Xinput index

    Declaration
    public static int GetGamepadIndexForController(InputHandle_t ulinputHandle)
    Parameters
    Type Name Description
    InputHandle_t ulinputHandle

    Passed through to ISteamInput::GetGamepadIndexForController.

    Returns
    Type Description
    int

    The value ISteamInput::GetGamepadIndexForController returns.

    GetGlyphForActionOrigin_Legacy(EInputActionOrigin)

    Get a local path to an older, Big Picture Mode-style PNG file for a particular origin

    Declaration
    public static string GetGlyphForActionOrigin_Legacy(EInputActionOrigin eOrigin)
    Parameters
    Type Name Description
    EInputActionOrigin eOrigin

    Passed through to ISteamInput::GetGlyphForActionOrigin_Legacy.

    Returns
    Type Description
    string

    The value ISteamInput::GetGlyphForActionOrigin_Legacy returns.

    GetGlyphForXboxOrigin(EXboxOrigin)

    Get a local path to art for on-screen glyph for a particular Xbox controller origin

    Declaration
    public static string GetGlyphForXboxOrigin(EXboxOrigin eOrigin)
    Parameters
    Type Name Description
    EXboxOrigin eOrigin

    Passed through to ISteamInput::GetGlyphForXboxOrigin.

    Returns
    Type Description
    string

    The value ISteamInput::GetGlyphForXboxOrigin returns.

    GetGlyphPNGForActionOrigin(EInputActionOrigin, ESteamInputGlyphSize, uint)

    Get a local path to a PNG file for the provided origin's glyph.

    Declaration
    public static string GetGlyphPNGForActionOrigin(EInputActionOrigin eOrigin, ESteamInputGlyphSize eSize, uint unFlags)
    Parameters
    Type Name Description
    EInputActionOrigin eOrigin

    Passed through to ISteamInput::GetGlyphPNGForActionOrigin.

    ESteamInputGlyphSize eSize

    Passed through to ISteamInput::GetGlyphPNGForActionOrigin.

    uint unFlags

    Passed through to ISteamInput::GetGlyphPNGForActionOrigin.

    Returns
    Type Description
    string

    The value ISteamInput::GetGlyphPNGForActionOrigin returns.

    GetGlyphSVGForActionOrigin(EInputActionOrigin, uint)

    Get a local path to a SVG file for the provided origin's glyph.

    Declaration
    public static string GetGlyphSVGForActionOrigin(EInputActionOrigin eOrigin, uint unFlags)
    Parameters
    Type Name Description
    EInputActionOrigin eOrigin

    Passed through to ISteamInput::GetGlyphSVGForActionOrigin.

    uint unFlags

    Passed through to ISteamInput::GetGlyphSVGForActionOrigin.

    Returns
    Type Description
    string

    The value ISteamInput::GetGlyphSVGForActionOrigin returns.

    GetInputTypeForHandle(InputHandle_t)

    Returns the input type for a particular handle - unlike EInputActionOrigin which update with Steam and may return unrecognized values ESteamInputType will remain static and only return valid values from your SDK version

    Declaration
    public static ESteamInputType GetInputTypeForHandle(InputHandle_t inputHandle)
    Parameters
    Type Name Description
    InputHandle_t inputHandle

    Passed through to ISteamInput::GetInputTypeForHandle.

    Returns
    Type Description
    ESteamInputType

    The value ISteamInput::GetInputTypeForHandle returns.

    GetMotionData(InputHandle_t)

    Returns raw motion data from the specified device

    Declaration
    public static InputMotionData_t GetMotionData(InputHandle_t inputHandle)
    Parameters
    Type Name Description
    InputHandle_t inputHandle

    Passed through to ISteamInput::GetMotionData.

    Returns
    Type Description
    InputMotionData_t

    The value ISteamInput::GetMotionData returns.

    GetRemotePlaySessionID(InputHandle_t)

    Get the Steam Remote Play session ID associated with a device, or 0 if there is no session associated with it See isteamremoteplay.h for more information on Steam Remote Play sessions

    Declaration
    public static uint GetRemotePlaySessionID(InputHandle_t inputHandle)
    Parameters
    Type Name Description
    InputHandle_t inputHandle

    Passed through to ISteamInput::GetRemotePlaySessionID.

    Returns
    Type Description
    uint

    The value ISteamInput::GetRemotePlaySessionID returns.

    GetSessionInputConfigurationSettings()

    Get a bitmask of the Steam Input Configuration types opted in for the current session. Returns ESteamInputConfigurationEnableType values. Note: user can override the settings from the Steamworks Partner site so the returned values may not exactly match your default configuration

    Declaration
    public static ushort GetSessionInputConfigurationSettings()
    Returns
    Type Description
    ushort

    The value ISteamInput::GetSessionInputConfigurationSettings returns.

    GetStringForActionOrigin(EInputActionOrigin)

    Returns a localized string (from Steam's language setting) for the specified origin.

    Declaration
    public static string GetStringForActionOrigin(EInputActionOrigin eOrigin)
    Parameters
    Type Name Description
    EInputActionOrigin eOrigin

    Passed through to ISteamInput::GetStringForActionOrigin.

    Returns
    Type Description
    string

    The value ISteamInput::GetStringForActionOrigin returns.

    GetStringForAnalogActionName(InputAnalogActionHandle_t)

    Returns a localized string (from Steam's language setting) for the user-facing action name corresponding to the specified handle

    Declaration
    public static string GetStringForAnalogActionName(InputAnalogActionHandle_t eActionHandle)
    Parameters
    Type Name Description
    InputAnalogActionHandle_t eActionHandle

    Passed through to ISteamInput::GetStringForAnalogActionName.

    Returns
    Type Description
    string

    The value ISteamInput::GetStringForAnalogActionName returns.

    GetStringForDigitalActionName(InputDigitalActionHandle_t)

    Returns a localized string (from Steam's language setting) for the user-facing action name corresponding to the specified handle

    Declaration
    public static string GetStringForDigitalActionName(InputDigitalActionHandle_t eActionHandle)
    Parameters
    Type Name Description
    InputDigitalActionHandle_t eActionHandle

    Passed through to ISteamInput::GetStringForDigitalActionName.

    Returns
    Type Description
    string

    The value ISteamInput::GetStringForDigitalActionName returns.

    GetStringForXboxOrigin(EXboxOrigin)

    Returns a localized string (from Steam's language setting) for the specified Xbox controller origin.

    Declaration
    public static string GetStringForXboxOrigin(EXboxOrigin eOrigin)
    Parameters
    Type Name Description
    EXboxOrigin eOrigin

    Passed through to ISteamInput::GetStringForXboxOrigin.

    Returns
    Type Description
    string

    The value ISteamInput::GetStringForXboxOrigin returns.

    Init(bool)

    Init and Shutdown must be called when starting/ending use of this interface. if bExplicitlyCallRunFrame is called then you will need to manually call RunFrame each frame, otherwise Steam Input will updated when SteamAPI_RunCallbacks() is called

    Declaration
    public static bool Init(bool bExplicitlyCallRunFrame)
    Parameters
    Type Name Description
    bool bExplicitlyCallRunFrame

    Passed through to ISteamInput::Init.

    Returns
    Type Description
    bool

    The value ISteamInput::Init returns.

    Legacy_TriggerHapticPulse(InputHandle_t, ESteamControllerPad, ushort)

    Trigger a haptic pulse on a Steam Controller - if you are approximating rumble you may want to use TriggerVibration instead. Good uses for Haptic pulses include chimes, noises, or directional gameplay feedback (taking damage, footstep locations, etc).

    Declaration
    public static void Legacy_TriggerHapticPulse(InputHandle_t inputHandle, ESteamControllerPad eTargetPad, ushort usDurationMicroSec)
    Parameters
    Type Name Description
    InputHandle_t inputHandle

    Passed through to ISteamInput::Legacy_TriggerHapticPulse.

    ESteamControllerPad eTargetPad

    Passed through to ISteamInput::Legacy_TriggerHapticPulse.

    ushort usDurationMicroSec

    Passed through to ISteamInput::Legacy_TriggerHapticPulse.

    Legacy_TriggerRepeatedHapticPulse(InputHandle_t, ESteamControllerPad, ushort, ushort, ushort, uint)

    Trigger a haptic pulse with a duty cycle of usDurationMicroSec / usOffMicroSec, unRepeat times. If you are approximating rumble you may want to use TriggerVibration instead. nFlags is currently unused and reserved for future use.

    Declaration
    public static void Legacy_TriggerRepeatedHapticPulse(InputHandle_t inputHandle, ESteamControllerPad eTargetPad, ushort usDurationMicroSec, ushort usOffMicroSec, ushort unRepeat, uint nFlags)
    Parameters
    Type Name Description
    InputHandle_t inputHandle

    Passed through to ISteamInput::Legacy_TriggerRepeatedHapticPulse.

    ESteamControllerPad eTargetPad

    Passed through to ISteamInput::Legacy_TriggerRepeatedHapticPulse.

    ushort usDurationMicroSec

    Passed through to ISteamInput::Legacy_TriggerRepeatedHapticPulse.

    ushort usOffMicroSec

    Passed through to ISteamInput::Legacy_TriggerRepeatedHapticPulse.

    ushort unRepeat

    Passed through to ISteamInput::Legacy_TriggerRepeatedHapticPulse.

    uint nFlags

    Passed through to ISteamInput::Legacy_TriggerRepeatedHapticPulse.

    RunFrame(bool)

    Synchronize API state with the latest Steam Input action data available. This is performed automatically by SteamAPI_RunCallbacks, but for the absolute lowest possible latency, you call this directly before reading controller state. Note: This must be called from somewhere before GetConnectedControllers will return any handles

    Declaration
    public static void RunFrame(bool bReservedValue = true)
    Parameters
    Type Name Description
    bool bReservedValue

    Passed through to ISteamInput::RunFrame.

    SetDualSenseTriggerEffect(InputHandle_t, IntPtr)

    Set the trigger effect for a DualSense controller

    Declaration
    public static void SetDualSenseTriggerEffect(InputHandle_t inputHandle, IntPtr pParam)
    Parameters
    Type Name Description
    InputHandle_t inputHandle

    Passed through to ISteamInput::SetDualSenseTriggerEffect.

    IntPtr pParam

    Passed through to ISteamInput::SetDualSenseTriggerEffect.

    SetInputActionManifestFilePath(string)

    Set the absolute path to the Input Action Manifest file containing the in-game actions and file paths to the official configurations. Used in games that bundle Steam Input configurations inside of the game depot instead of using the Steam Workshop

    Declaration
    public static bool SetInputActionManifestFilePath(string pchInputActionManifestAbsolutePath)
    Parameters
    Type Name Description
    string pchInputActionManifestAbsolutePath

    Passed through to ISteamInput::SetInputActionManifestFilePath.

    Returns
    Type Description
    bool

    The value ISteamInput::SetInputActionManifestFilePath returns.

    SetLEDColor(InputHandle_t, byte, byte, byte, uint)

    Set the controller LED color on supported controllers. nFlags is a bitmask of values from ESteamInputLEDFlag - 0 will default to setting a color. Steam will handle the behavior on exit of your program so you don't need to try restore the default as you are shutting down

    Declaration
    public static void SetLEDColor(InputHandle_t inputHandle, byte nColorR, byte nColorG, byte nColorB, uint nFlags)
    Parameters
    Type Name Description
    InputHandle_t inputHandle

    Passed through to ISteamInput::SetLEDColor.

    byte nColorR

    Passed through to ISteamInput::SetLEDColor.

    byte nColorG

    Passed through to ISteamInput::SetLEDColor.

    byte nColorB

    Passed through to ISteamInput::SetLEDColor.

    uint nFlags

    Passed through to ISteamInput::SetLEDColor.

    ShowBindingPanel(InputHandle_t)

    Utility functions available without using the rest of Steam Input API Invokes the Steam overlay and brings up the binding screen if the user is using Big Picture Mode If the user is not in Big Picture Mode it will open up the binding in a new window

    Declaration
    public static bool ShowBindingPanel(InputHandle_t inputHandle)
    Parameters
    Type Name Description
    InputHandle_t inputHandle

    Passed through to ISteamInput::ShowBindingPanel.

    Returns
    Type Description
    bool

    The value ISteamInput::ShowBindingPanel returns.

    Shutdown()

    Calls the Steamworks ISteamInput::Shutdown method.

    Declaration
    public static bool Shutdown()
    Returns
    Type Description
    bool

    The value ISteamInput::Shutdown returns.

    StopAnalogActionMomentum(InputHandle_t, InputAnalogActionHandle_t)

    Stop analog momentum for the action if it is a mouse action in trackball mode

    Declaration
    public static void StopAnalogActionMomentum(InputHandle_t inputHandle, InputAnalogActionHandle_t eAction)
    Parameters
    Type Name Description
    InputHandle_t inputHandle

    Passed through to ISteamInput::StopAnalogActionMomentum.

    InputAnalogActionHandle_t eAction

    Passed through to ISteamInput::StopAnalogActionMomentum.

    TranslateActionOrigin(ESteamInputType, EInputActionOrigin)

    Convert an origin to another controller type - for inputs not present on the other controller type this will return k_EInputActionOrigin_None When a new input type is added you will be able to pass in k_ESteamInputType_Unknown and the closest origin that your version of the SDK recognized will be returned ex: if a Playstation 5 controller was released this function would return Playstation 4 origins.

    Declaration
    public static EInputActionOrigin TranslateActionOrigin(ESteamInputType eDestinationInputType, EInputActionOrigin eSourceOrigin)
    Parameters
    Type Name Description
    ESteamInputType eDestinationInputType

    Passed through to ISteamInput::TranslateActionOrigin.

    EInputActionOrigin eSourceOrigin

    Passed through to ISteamInput::TranslateActionOrigin.

    Returns
    Type Description
    EInputActionOrigin

    The value ISteamInput::TranslateActionOrigin returns.

    TriggerSimpleHapticEvent(InputHandle_t, EControllerHapticLocation, byte, sbyte, byte, sbyte)

    Send a haptic pulse, works on Steam Deck and Steam Controller devices

    Declaration
    public static void TriggerSimpleHapticEvent(InputHandle_t inputHandle, EControllerHapticLocation eHapticLocation, byte nIntensity, sbyte nGainDB, byte nOtherIntensity, sbyte nOtherGainDB)
    Parameters
    Type Name Description
    InputHandle_t inputHandle

    Passed through to ISteamInput::TriggerSimpleHapticEvent.

    EControllerHapticLocation eHapticLocation

    Passed through to ISteamInput::TriggerSimpleHapticEvent.

    byte nIntensity

    Passed through to ISteamInput::TriggerSimpleHapticEvent.

    sbyte nGainDB

    Passed through to ISteamInput::TriggerSimpleHapticEvent.

    byte nOtherIntensity

    Passed through to ISteamInput::TriggerSimpleHapticEvent.

    sbyte nOtherGainDB

    Passed through to ISteamInput::TriggerSimpleHapticEvent.

    TriggerVibration(InputHandle_t, ushort, ushort)

    OUTPUTS Trigger a vibration event on supported controllers - Steam will translate these commands into haptic pulses for Steam Controllers

    Declaration
    public static void TriggerVibration(InputHandle_t inputHandle, ushort usLeftSpeed, ushort usRightSpeed)
    Parameters
    Type Name Description
    InputHandle_t inputHandle

    Passed through to ISteamInput::TriggerVibration.

    ushort usLeftSpeed

    Passed through to ISteamInput::TriggerVibration.

    ushort usRightSpeed

    Passed through to ISteamInput::TriggerVibration.

    TriggerVibrationExtended(InputHandle_t, ushort, ushort, ushort, ushort)

    Trigger a vibration event on supported controllers including Xbox trigger impulse rumble - Steam will translate these commands into haptic pulses for Steam Controllers

    Declaration
    public static void TriggerVibrationExtended(InputHandle_t inputHandle, ushort usLeftSpeed, ushort usRightSpeed, ushort usLeftTriggerSpeed, ushort usRightTriggerSpeed)
    Parameters
    Type Name Description
    InputHandle_t inputHandle

    Passed through to ISteamInput::TriggerVibrationExtended.

    ushort usLeftSpeed

    Passed through to ISteamInput::TriggerVibrationExtended.

    ushort usRightSpeed

    Passed through to ISteamInput::TriggerVibrationExtended.

    ushort usLeftTriggerSpeed

    Passed through to ISteamInput::TriggerVibrationExtended.

    ushort usRightTriggerSpeed

    Passed through to ISteamInput::TriggerVibrationExtended.

    In This Article
    Back to top
    Copyright © 2026 Unity Technologies — Trademarks and terms of use
    • Legal
    • Privacy Policy
    • Cookie Policy
    • Do Not Sell or Share My Personal Information
    • Your Privacy Choices (Cookie Settings)