Wiki Page Content

DRAFT

SDL_HapticPeriodic

A structure that contains a template for a periodic effect.

Data Fields

Header

Uint16

type

the shape of the waves; see Remarks for details

SDL_HapticDirection

direction

direction of the effect (relative to the user)

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

Periodic

Uint16

period

period of the wave

Sint16

magnitude

peak value; if negative, equivalent to 180 degrees extra phase shift

Sint16

offset

mean value of the wave

Uint16

phase

positive phase shift given by hundredth of a degree; see Remarks for details

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

Code Examples

You can add your code example here

Remarks

A periodic effect consists of a wave-shaped effect that repeats itself over time. The type determines the shape of the wave and the other parameters determine the dimensions of the wave.

button         period
press          |     |
  ||      __    __    __    __    __    _
  ||     |  |  |  |  |  |  |  |  |  |   magnitude
  \/     |  |__|  |__|  |__|  |__|  |   _
    -----
      |            offset?
    delay          phase?

-------------------------------------
              length
===================================================
                      interval

type may be one of the following:

SDL_HAPTIC_SINE

  __      __      __      __
 /  \    /  \    /  \    /
/    \__/    \__/    \__/

SDL_HAPTIC_TRIANGLE

  /\    /\    /\    /\    /\
 /  \  /  \  /  \  /  \  /
/    \/    \/    \/    \/

SDL_HAPTIC_SAWTOOTHUP

  /|  /|  /|  /|  /|  /|  /|
 / | / | / | / | / | / | / |
/  |/  |/  |/  |/  |/  |/  |

SDL_HAPTIC_SAWTOOTHDOWN

\  |\  |\  |\  |\  |\  |\  |
 \ | \ | \ | \ | \ | \ | \ |
  \|  \|  \|  \|  \|  \|  \| 

phase is given by hundredths of a degree, meaning that giving the phase a value of 9000 will displace it 25% of its period. Here are sample values:

0

No phase displacement

9000

Displaced 25% of its period

18000

Displaced 50% of its period

27000

Displaced 75% of its period

36000

Displaced 100% of its period, same as 0, but 0 is preferred


CategoryStruct, CategoryForceFeedback

None: SDL_HapticPeriodic (last edited 2016-05-12 20:57:14 by PhilippWiesemann)

Feedback
Please include your contact information if you'd like to receive a reply.
Submit