> ## 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.

# GameInputForceFeedbackParams

> GameInputForceFeedbackParams

# GameInputForceFeedbackParams

Defines the API-supported attributes of a force-feedback effect.

## Syntax

```cpp theme={null}
struct GameInputForceFeedbackParams
{
    GameInputForceFeedbackEffectKind kind;
    union
    {
        GameInputForceFeedbackConstantParams  constant;
        GameInputForceFeedbackRampParams      ramp;
        GameInputForceFeedbackPeriodicParams  sineWave;
        GameInputForceFeedbackPeriodicParams  squareWave;
        GameInputForceFeedbackPeriodicParams  triangleWave;
        GameInputForceFeedbackPeriodicParams  sawtoothUpWave;
        GameInputForceFeedbackPeriodicParams  sawtoothDownWave;
        GameInputForceFeedbackConditionParams spring;
        GameInputForceFeedbackConditionParams friction;
        GameInputForceFeedbackConditionParams damper;
        GameInputForceFeedbackConditionParams inertia;
    } data;
};
```

### Members

*kind*<br />
Type: [GameInputForceFeedbackEffectKind](/reference/input/gameinput/enums/gameinputforcefeedbackeffectkind)

Defines the kind of a force-feedback effect.

*constant*<br />
Type: [GameInputForceFeedbackConstantParams](/reference/input/gameinput/structs/gameinputforcefeedbackconstantparams)

Constant force-feedback effect. Force is applied at a constant level for the duration of the effect.

*ramp*<br />
Type: [GameInputForceFeedbackRampParams](/reference/input/gameinput/structs/gameinputforcefeedbackrampparams)

Ramp force-feedback effect. Force is applied gradually by being increased or decreased over the duration of the effect.

*sineWave*<br />
Type: [GameInputForceFeedbackPeriodicParams](/reference/input/gameinput/structs/gameinputforcefeedbackperiodicparams)

Sine-wave force-feedback effect. Force is applied in a sine-wave pattern.

*squareWave*<br />
Type: [GameInputForceFeedbackPeriodicParams](/reference/input/gameinput/structs/gameinputforcefeedbackperiodicparams)

Square-wave force-feedback effect. Force is applied in a square-wave pattern.

*triangleWave*<br />
Type: [GameInputForceFeedbackPeriodicParams](/reference/input/gameinput/structs/gameinputforcefeedbackperiodicparams)

Triangle-wave force-feedback effect. Force is applied in a triangle-wave pattern.

*sawtoothUpWave*<br />
Type: [GameInputForceFeedbackPeriodicParams](/reference/input/gameinput/structs/gameinputforcefeedbackperiodicparams)

Upward-sawtooth-wave force-feedback effect. Force is applied in an upward-sawtooth-wave pattern.

*sawtoothDownWave*<br />
Type: [GameInputForceFeedbackPeriodicParams](/reference/input/gameinput/structs/gameinputforcefeedbackperiodicparams)

Downward-sawtooth-wave force-feedback effect. Force is applied in a downward-sawtooth-wave pattern.

*spring*<br />
Type: [GameInputForceFeedbackConditionParams](/reference/input/gameinput/structs/gameinputforcefeedbackconditionparams)

Spring force-feedback effect. Force is applied in opposition to a set state.

*friction*<br />
Type: [GameInputForceFeedbackConditionParams](/reference/input/gameinput/structs/gameinputforcefeedbackconditionparams)

Friction force-feedback effect. Force is applied to mimic friction.

*damper*<br />
Type: [GameInputForceFeedbackConditionParams](/reference/input/gameinput/structs/gameinputforcefeedbackconditionparams)

Damper force-feedback effect. Force is applied to mimic a damper effect.

*inertia*<br />
Type: [GameInputForceFeedbackConditionParams](/reference/input/gameinput/structs/gameinputforcefeedbackconditionparams)

Inertia force-feedback effect. Force is applied to mimic an inertia effect.

## Remarks

Forced-feedback effects are defined by their parameters. These effects are stored in the `GameInputForceFeedbackParams` structure. The actual parameters for each type of force-feedback effect vary slightly. The parameters for all kinds of effects define the magnitude of the effect along the motor's supported axes, and most allow for an envelope that affects the strength of the effect over time.

## Requirements

**Header:** GameInput.h

[Advanced GameInput topics](/build/core-features/common/input/advanced/input-advanced-topics)\
[Overview of GameInput](/build/core-features/common/input/overviews/input-overview)\
[GameInputForceFeedbackEffectKind](/reference/input/gameinput/enums/gameinputforcefeedbackeffectkind)\
[GameInput](/reference/input/gameinput/gameinput_members)

## Version History

| Version | Changes     |
| ------- | ----------- |
| **v0**  | Introduced. |

## Conceptual documentation

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


## Related topics

- [GameInputForceFeedbackRampParams](/reference/input/gameinput/structs/gameinputforcefeedbackrampparams.md)
- [Force feedback on GameInput](/build/core-features/common/input/advanced/input-forcefeedback.md)
- [GameInputForceFeedbackConstantParams](/reference/input/gameinput/structs/gameinputforcefeedbackconstantparams.md)
- [GameInputForceFeedbackPeriodicParams](/reference/input/gameinput/structs/gameinputforcefeedbackperiodicparams.md)
- [IGameInputForceFeedbackEffect::SetParams](/reference/input/gameinput/interfaces/igameinputforcefeedbackeffect/methods/igameinputforcefeedbackeffect_setparams.md)
