> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# GameInputForceFeedbackMotorInfo

> GameInputForceFeedbackMotorInfo

# GameInputForceFeedbackMotorInfo

Defines the force-feedback motor information.

## Syntax

```cpp theme={null}
struct GameInputForceFeedbackMotorInfo
{
    GameInputFeedbackAxes supportedAxes;
    bool                  isConstantEffectSupported;
    bool                  isRampEffectSupported;
    bool                  isSineWaveEffectSupported;
    bool                  isSquareWaveEffectSupported;
    bool                  isTriangleWaveEffectSupported;
    bool                  isSawtoothUpWaveEffectSupported;
    bool                  isSawtoothDownWaveEffectSupported;
    bool                  isSpringEffectSupported;
    bool                  isFrictionEffectSupported;
    bool                  isDamperEffectSupported;
    bool                  isInertiaEffectSupported;
};
```

### Members

*supportedAxes*<br />
Type: [GameInputFeedbackAxes](/reference/input/gameinput/enums/gameinputfeedbackaxes)

Supported axes that the force-feedback motor can apply force.

*isConstantEffectSupported*<br />
Type: bool

Denotes whether a constant force-feedback effect is supported.

*isRampEffectSupported*<br />
Type: bool

Denotes whether a ramp force-feedback effect is supported.

*isSineWaveEffectSupported*<br />
Type: bool

Denotes whether a sine wave force-feedback effect is supported.

*isSquareWaveEffectSupported*<br />
Type: bool

Denotes whether a square wave force-feedback effect is supported.

*isTriangleWaveEffectSupported*<br />
Type: bool

Denotes whether a triangle wave force feedback-effect is supported.

*isSawtoothUpWaveEffectSupported*<br />
Type: bool

Denotes whether a sawtooth up wave force-feedback effect is supported.

*isSawtoothDownWaveEffectSupported*<br />
Type: bool

Denotes whether a sawtooth down wave force-feedback effect is supported.

*isSpringEffectSupported*<br />
Type: bool

Denotes whether a spring force-feedback effect is supported.

*isFrictionEffectSupported*<br />
Type: bool

Denotes whether a friction force-feedback effect is supported.

*isDamperEffectSupported*<br />
Type: bool

Denotes whether a damper force feedback-effect is supported.

*isInertiaEffectSupported*<br />
Type: bool

Denotes whether an inertia force-feedback effect is supported.

## Remarks

The `GameInputForceFeedbackMotorInfo` structure is a member of [GameInputDeviceInfo](/reference/input/gameinput/structs/gameinputdeviceinfo). It defines the information about a force-feedback motor and uses a pointer to the [GameInputFeedbackAxes](/reference/input/gameinput/enums/gameinputfeedbackaxes) enumeration.

On modern devices, force feedback is typically used on racing wheels with one single-axis motor connected to the steering wheel itself. However, the GameInput API supports devices with any number of force-feedback motors and assigns a unique index number to each motor on a device. The "normal" axis is used for special cases where the applied force is dimensionless, such as a pressure suit for a flight simulator.

## Requirements

**Header:** GameInput.h

**Supported platforms:** Windows, XBOX One family consoles and XBOX Series consoles

## Conceptual documentation

* [Force feedback on GameInput](/build/core-features/common/input/advanced/input-forcefeedback)

## See also

[Advanced GameInput topics](/build/core-features/common/input/advanced/input-advanced-topics)\
[Overview of GameInput](/build/core-features/common/input/overviews/input-overview)\
[GameInputDeviceInfo](/reference/input/gameinput/structs/gameinputdeviceinfo)\
[GameInput](/reference/input/gameinput/gameinput_members)

## Version History

| Version | Changes                                                                                                         |
| ------- | --------------------------------------------------------------------------------------------------------------- |
| **v1**  | **Removed** `location` (GameInputLocation), `locationId` (uint32\_t), and `maxSimultaneousEffects` (uint32\_t). |
| **v0**  | Introduced.                                                                                                     |

## Appendix: Previous versions

### v0

```cpp theme={null}
struct GameInputForceFeedbackMotorInfo
{
    GameInputFeedbackAxes supportedAxes;
    GameInputLocation     location;
    uint32_t              locationId;
    uint32_t              maxSimultaneousEffects;
    bool                  isConstantEffectSupported;
    bool                  isRampEffectSupported;
    bool                  isSineWaveEffectSupported;
    bool                  isSquareWaveEffectSupported;
    bool                  isTriangleWaveEffectSupported;
    bool                  isSawtoothUpWaveEffectSupported;
    bool                  isSawtoothDownWaveEffectSupported;
    bool                  isSpringEffectSupported;
    bool                  isFrictionEffectSupported;
    bool                  isDamperEffectSupported;
    bool                  isInertiaEffectSupported;
};
```


## Related topics

- [Force feedback on GameInput](/build/core-features/common/input/advanced/input-forcefeedback.md)
- [GameInputFeedbackAxes](/reference/input/gameinput/enums/gameinputfeedbackaxes.md)
- [GameInput](/reference/input/gameinput/gameinput_members.md)
- [GameInputDeviceInfo](/reference/input/gameinput/structs/gameinputdeviceinfo.md)
- [IGameInputForceFeedbackEffect::GetMotorIndex](/reference/input/gameinput/interfaces/igameinputforcefeedbackeffect/methods/igameinputforcefeedbackeffect_getmotorindex.md)
