A structure containing a template for a Ramp effect.
Defined in <SDL3/SDL_haptic.h>
typedef struct SDL_HapticRamp
{/* Header */
/**< SDL_HAPTIC_RAMP */
Uint16 type; /**< Direction of the effect. */
SDL_HapticDirection direction;
/* Replay */
/**< Duration of the effect. */
Uint32 length; /**< Delay before starting the effect. */
Uint16 delay;
/* Trigger */
/**< Button that triggers the effect. */
Uint16 button; /**< How soon it can be triggered again after button. */
Uint16 interval;
/* Ramp */
/**< Beginning strength level. */
Sint16 start; /**< Ending strength level. */
Sint16 end;
/* Envelope */
/**< Duration of the attack. */
Uint16 attack_length; /**< Level at the start of the attack. */
Uint16 attack_level; /**< Duration of the fade. */
Uint16 fade_length; /**< Level at the end of the fade. */
Uint16 fade_level; } SDL_HapticRamp;
This struct is exclusively for the SDL_HAPTIC_RAMP effect.
The ramp effect starts at start strength and ends at end strength. It augments in linear fashion. If you use attack and fade with a ramp the effects get added to the ramp effect making the effect become quadratic instead of linear.
This struct is available since SDL 3.1.3.