Scroll to navigation

SDL_HapticCustom(3type) SDL3 DATATYPES SDL_HapticCustom(3type)

NAME

SDL_HapticCustom - A structure containing a template for the SDL_HAPTIC_CUSTOM
effect.

HEADER FILE

Defined in SDL3/SDL_haptic.h

SYNOPSIS

#include "SDL3/SDL.h"
typedef struct SDL_HapticCustom
{
    /* Header */
    Uint16 type;            /**< SDL_HAPTIC_CUSTOM */
    SDL_HapticDirection direction;  /**< Direction of the effect. */

    /* Replay */
    Uint32 length;          /**< Duration of the effect. */
    Uint16 delay;           /**< Delay before starting the effect. */

    /* Trigger */
    Uint16 button;          /**< Button that triggers the effect. */
    Uint16 interval;        /**< How soon it can be triggered again after button. */

    /* Custom */
    Uint8 channels;         /**< Axes to use, minimum of one. */
    Uint16 period;          /**< Sample periods. */
    Uint16 samples;         /**< Amount of samples. */
    Uint16 *data;           /**< Should contain channels*samples items. */

    /* Envelope */
    Uint16 attack_length;   /**< Duration of the attack. */
    Uint16 attack_level;    /**< Level at the start of the attack. */
    Uint16 fade_length;     /**< Duration of the fade. */
    Uint16 fade_level;      /**< Level at the end of the fade. */
} SDL_HapticCustom;

DESCRIPTION

This struct is exclusively for the SDL_HAPTIC_CUSTOM

effect.

A custom force feedback effect is much like a periodic effect, where the application can define its exact shape. You will have to allocate the data yourself. Data should consist of channels * samples Uint16 samples.

If channels is one, the effect is rotated using the defined direction. Otherwise it uses the samples in data for the different axes.

AVAILABILITY

This struct is available since SDL 3.0.0.

SEE ALSO

SDL_HAPTIC_CUSTOM(3), SDL_HapticEffect(3type)

SDL 3.1.2 Simple Directmedia Layer