Share via


Gamepad.FromGameController(IGameController) Method

Definition

Returns the given game controller as a gamepad.

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

Parameters

gameController
IGameController

The game controller to be returned as a gamepad.

Returns

The gamepad 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 Gamepad class.

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

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

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

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

if (gamepad != nullptr)
{
    // Assign a standard button mapping to this controller.
}
Gamepad gamepad = null;

if (RawGameController.RawGameControllers.Count > 0)
{
    RawGameController rawGameController = RawGameController.RawGameControllers[0];
    gamepad = Gamepad.FromGameController(rawGameController);
}

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

Remarks

This method checks if the provided game controller has a gamepad 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 a Gamepad—if so, you can use a default control scheme for gamepads, otherwise you can let the player do their own input mapping.

Applies to

See also