Share via


ArcadeStick.FromGameController(IGameController) Method

Definition

Returns the given game controller as an arcade stick.

public:
 static ArcadeStick ^ FromGameController(IGameController ^ gameController);
 static ArcadeStick FromGameController(IGameController const& gameController);
public static ArcadeStick FromGameController(IGameController gameController);
function fromGameController(gameController)
Public Shared Function FromGameController (gameController As IGameController) As ArcadeStick

Parameters

gameController
IGameController

The game controller to be returned as an arcade stick.

Returns

The arcade stick that was returned from the given game controller.

Windows requirements

Device family
Windows 10 Creators Update (introduced in 10.0.15063.0)
API contract
Windows.Foundation.UniversalApiContract (introduced in v4.0)

Examples

In the following example, the app gets the first available RawGameController object, and tries to access this game controller via the ArcadeStick class.

#include <winrt/Windows.Gaming.Input.h>
using namespace winrt;
using namespace Windows::Gaming::Input;
...
ArcadeStick arcadeStick{ nullptr };

if (RawGameController::RawGameControllers().Size() > 0)
{
    RawGameController rawGameController{ RawGameController::RawGameControllers().GetAt(0) };
    arcadeStick = ArcadeStick::FromGameController(rawGameController);
}

if (arcadeStick)
{
    // Assign a standard button mapping to this controller.
}
ArcadeStick^ arcadeStick;

if (RawGameController::RawGameControllers->Size > 0)
{
    RawGameController^ rawGameController = RawGameController::RawGameControllers->GetAt(0);
    arcadeStick = ArcadeStick::FromGameController(rawGameController);
}

if (arcadeStick != nullptr)
{
    // Assign a standard button mapping to this controller.
}

Remarks

This method checks if the provided game controller has an arcade stick implementation, and if so, it returns that implementation. You might use this method if you want to first get the controller as a RawGameController, and then see if it can be used as an ArcadeStick—if so, you can use a default control scheme for arcade sticks, otherwise you can let the player do their own input mapping.

Applies to

See also