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

# 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*\

Type: [GameInputFeedbackAxes](https://docs.xbox.com/reference/input/gameinput/enums/gameinputfeedbackaxes.md)

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

*isConstantEffectSupported*\

Type: bool

Denotes whether a constant force-feedback effect is supported.

*isRampEffectSupported*\

Type: bool

Denotes whether a ramp force-feedback effect is supported.

*isSineWaveEffectSupported*\

Type: bool

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

*isSquareWaveEffectSupported*\

Type: bool

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

*isTriangleWaveEffectSupported*\

Type: bool

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

*isSawtoothUpWaveEffectSupported*\

Type: bool

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

*isSawtoothDownWaveEffectSupported*\

Type: bool

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

*isSpringEffectSupported*\

Type: bool

Denotes whether a spring force-feedback effect is supported.

*isFrictionEffectSupported*\

Type: bool

Denotes whether a friction force-feedback effect is supported.

*isDamperEffectSupported*\

Type: bool

Denotes whether a damper force feedback-effect is supported.

*isInertiaEffectSupported*\

Type: bool

Denotes whether an inertia force-feedback effect is supported.

## Remarks

The `GameInputForceFeedbackMotorInfo` structure is a member of [GameInputDeviceInfo](https://docs.xbox.com/reference/input/gameinput/structs/gameinputdeviceinfo.md). It defines the information about a force-feedback motor and uses a pointer to the [GameInputFeedbackAxes](https://docs.xbox.com/reference/input/gameinput/enums/gameinputfeedbackaxes.md) 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](https://docs.xbox.com/build/core-features/common/input/advanced/input-forcefeedback.md)

## See also

[Advanced GameInput topics](https://docs.xbox.com/build/core-features/common/input/advanced/input-advanced-topics.md)\
[Overview of GameInput](https://docs.xbox.com/build/core-features/common/input/overviews/input-overview.md)\
[GameInputDeviceInfo](https://docs.xbox.com/reference/input/gameinput/structs/gameinputdeviceinfo.md)\
[GameInput](https://docs.xbox.com/reference/input/gameinput/gameinput_members.md)

## 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](https://docs.xbox.com/build/core-features/common/input/advanced/input-forcefeedback.md)
- [GameInputFeedbackAxes](https://docs.xbox.com/reference/input/gameinput/enums/gameinputfeedbackaxes.md)
- [GameInput API members](https://docs.xbox.com/reference/input/gameinput/gameinput_members.md)
- [GameInputDeviceInfo](https://docs.xbox.com/reference/input/gameinput/structs/gameinputdeviceinfo.md)
- [IGameInputForceFeedbackEffect::SetGain](https://docs.xbox.com/reference/input/gameinput/interfaces/igameinputforcefeedbackeffect/methods/igameinputforcefeedbackeffect_setgain.md)
