World of Might and Magic  0.2.0
Open reimplementation of Might and Magic 6 7 8 game engine
Объединение SDL_HapticEffect

The generic template for any haptic effect. Подробнее...

#include <SDL_haptic.h>

+ Граф связей класса SDL_HapticEffect:

Открытые атрибуты

Uint16 type
 
SDL_HapticConstant constant
 
SDL_HapticPeriodic periodic
 
SDL_HapticCondition condition
 
SDL_HapticRamp ramp
 
SDL_HapticLeftRight leftright
 
SDL_HapticCustom custom
 

Подробное описание

The generic template for any haptic effect.

All values max at 32767 (0x7FFF). Signed values also can be negative. Time values unless specified otherwise are in milliseconds.

You can also pass ::SDL_HAPTIC_INFINITY to length instead of a 0-32767 value. Neither delay, interval, attack_length nor fade_length support ::SDL_HAPTIC_INFINITY. Fade will also not be used since effect never ends.

Additionally, the ::SDL_HAPTIC_RAMP effect does not support a duration of ::SDL_HAPTIC_INFINITY.

Button triggers may not be supported on all devices, it is advised to not use them if possible. Buttons start at index 1 instead of index 0 like the joystick.

If both attack_length and fade_level are 0, the envelope is not used, otherwise both values are used.

Common parts:

// Replay - All effects have this
Uint32 length; // Duration of effect (ms).
Uint16 delay; // Delay before starting effect.
// Trigger - All effects have this
Uint16 button; // Button that triggers effect.
Uint16 interval; // How soon before effect can be triggered again.
// Envelope - All effects except condition effects have this
Uint16 attack_length; // Duration of the attack (ms).
Uint16 attack_level; // Level at the start of the attack.
Uint16 fade_length; // Duration of the fade out (ms).
Uint16 fade_level; // Level at the end of the fade.

Here we have an example of a constant effect evolution in time:

Strength
^
|
|    effect level -->  _________________
|                     /                 \
|                    /                   \
|                   /                     \
|                  /                       \
| attack_level --> |                        \
|                  |                        |  <---  fade_level
|
+--------------------------------------------------> Time
                   [--]                 [---]
                   attack_length        fade_length

[------------------][-----------------------]
delay               length

Note either the attack_level or the fade_level may be above the actual effect level.

См. также
SDL_HapticConstant
SDL_HapticPeriodic
SDL_HapticCondition
SDL_HapticRamp
SDL_HapticLeftRight
SDL_HapticCustom

См. определение в файле SDL_haptic.h строка 800

Данные класса

◆ type

Uint16 SDL_HapticEffect::type

Effect type.

См. определение в файле SDL_haptic.h строка 803

◆ constant

SDL_HapticConstant SDL_HapticEffect::constant

Constant effect.

См. определение в файле SDL_haptic.h строка 804

◆ periodic

SDL_HapticPeriodic SDL_HapticEffect::periodic

Periodic effect.

См. определение в файле SDL_haptic.h строка 805

◆ condition

SDL_HapticCondition SDL_HapticEffect::condition

Condition effect.

См. определение в файле SDL_haptic.h строка 806

◆ ramp

SDL_HapticRamp SDL_HapticEffect::ramp

Ramp effect.

См. определение в файле SDL_haptic.h строка 807

◆ leftright

SDL_HapticLeftRight SDL_HapticEffect::leftright

Left/Right effect.

См. определение в файле SDL_haptic.h строка 808

◆ custom

SDL_HapticCustom SDL_HapticEffect::custom

Custom effect.

См. определение в файле SDL_haptic.h строка 809


Объявления и описания членов объединения находятся в файле:
Uint16
uint16_t Uint16
Definition: SDL_stdinc.h:191
length
GLuint GLsizei GLsizei * length
Definition: SDL_opengl_glext.h:672
Uint32
uint32_t Uint32
Definition: SDL_stdinc.h:203