Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support controllers #757

Open
wants to merge 3 commits into
base: master
Choose a base branch
from
Open

Support controllers #757

wants to merge 3 commits into from

Conversation

tooda02
Copy link

@tooda02 tooda02 commented Mar 6, 2024

Although Facepunch supports a few Steam Input functions, it is missing several essential ones and cannot be used in its current state to implement Steam Input (controller) support. This PR adds:

  • Init()
    Required to set up the SteamInput interface

  • GetAnalogActionGlyph()
    Gets a glyph for the specified analog (joystick) action

  • GetAnalogActionDescription()
    Gets the localized description for the specified analog action

  • GetAnalogActionOrigins()
    Return an array of all origins associated with the specified analog action

  • GetDigitalActionDescription()
    Gets the localized description for the specified digital (button) action

  • GetDigitalActionOrigins()
    Return an array of all origins associated with the specified digital action

  • GetPngActionGlyphForOrigin()
    Return an absolute path to the PNG image glyph for the specified action origin

  • InputActionOrigin
    An existing internal enum made public to allow its use by the application using Facepunch

  • ShowBindingPanel()
    Displays the Steam View Controller/Edit Controller form

  • STEAM_INPUT_MAX_ORIGINS
    An integer constant containing the maximum size of the array returned by the two Get...ActionOrigins() functions

In addition, the PR adds the following SteamUtils function and action supporting the on-screen keyboard:

  • ShowFloatingGamepadTextInput()
    Displays a full keyboard allowing the player to type into the currently-selected field

  • OnFloatingGamepadTextInputDismissed
    Action invoked when the player closes the on-screen keyboard

This update is used in the controller support of the publicly available game Stinky and Loof in Wonderland.

@tooda02 tooda02 changed the title Complete implementation of Steam Input support Support controllers May 21, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant