diff --git a/include/SDL3/SDL_sensor.h b/include/SDL3/SDL_sensor.h index 652d93cce..4d8b1ccb5 100644 --- a/include/SDL3/SDL_sensor.h +++ b/include/SDL3/SDL_sensor.h @@ -63,12 +63,68 @@ typedef struct SDL_Sensor SDL_Sensor; typedef Uint32 SDL_SensorID; /** - * The different sensors defined by SDL + * A constant to represent standard gravity for accelerometer sensors. + * + * The accelerometer returns the current acceleration in SI meters per second + * squared. This measurement includes the force of gravity, so a device at + * rest will have an value of SDL_STANDARD_GRAVITY away from the center of the + * earth, which is a positive Y value. + * + * \since This macro is available since SDL 3.0.0. + */ +#define SDL_STANDARD_GRAVITY 9.80665f + +/** + * The different sensors defined by SDL. * * Additional sensors may be available, using platform dependent semantics. * * Hare are the additional Android sensors: * https://developer.android.com/reference/android/hardware/SensorEvent.html#values + * + * Accelerometer sensor notes: + * + * The accelerometer returns the current acceleration in SI meters per second + * squared. This measurement includes the force of gravity, so a device at + * rest will have an value of SDL_STANDARD_GRAVITY away from the center of the + * earth, which is a positive Y value. + * + * - `values[0]`: Acceleration on the x axis + * - `values[1]`: Acceleration on the y axis + * - `values[2]`: Acceleration on the z axis + * + * For phones and tablets held in natural orientation and game controllers + * held in front of you, the axes are defined as follows: + * + * - -X ... +X : left ... right + * - -Y ... +Y : bottom ... top + * - -Z ... +Z : farther ... closer + * + * The accelerometer axis data is not changed when the device is rotated. + * + * Gyroscope sensor notes: + * + * The gyroscope returns the current rate of rotation in radians per second. + * The rotation is positive in the counter-clockwise direction. That is, + * an observer looking from a positive location on one of the axes would + * see positive rotation on that axis when it appeared to be rotating + * counter-clockwise. + * + * - `values[0]`: Angular speed around the x axis (pitch) + * - `values[1]`: Angular speed around the y axis (yaw) + * - `values[2]`: Angular speed around the z axis (roll) + * + * For phones and tablets held in natural orientation and game controllers held in front of you, the axes are defined as follows: + * + * - -X ... +X : left ... right + * - -Y ... +Y : bottom ... top + * - -Z ... +Z : farther ... closer + * + * The gyroscope axis data is not changed when the device is rotated. + * + * \since This enum is available since SDL 3.0.0. + * + * \sa SDL_GetCurrentDisplayOrientation */ typedef enum SDL_SensorType { @@ -82,55 +138,6 @@ typedef enum SDL_SensorType SDL_SENSOR_GYRO_R /**< Gyroscope for right Joy-Con controller */ } SDL_SensorType; -/** - * Accelerometer sensor. - * - * The accelerometer returns the current acceleration in SI meters per second - * squared. This measurement includes the force of gravity, so a device at - * rest will have an value of SDL_STANDARD_GRAVITY away from the center of the - * earth, which is a positive Y value. - * - * values[0]: Acceleration on the x axis values[1]: Acceleration on the y axis - * values[2]: Acceleration on the z axis - * - * For phones and tablets held in natural orientation and game controllers - * held in front of you, the axes are defined as follows: - * - * - -X ... +X : left ... right - * - -Y ... +Y : bottom ... top - * - -Z ... +Z : farther ... closer - * - * The axis data is not changed when the device is rotated. - * - * \since This macro is available since SDL 3.0.0. - * - * \sa SDL_GetCurrentDisplayOrientation - */ -#define SDL_STANDARD_GRAVITY 9.80665f - -/** - * Gyroscope sensor. - * - * The gyroscope returns the current rate of rotation in radians per second. - * The rotation is positive in the counter-clockwise direction. That is, - * an observer looking from a positive location on one of the axes would - * see positive rotation on that axis when it appeared to be rotating - * counter-clockwise. - * - * values[0]: Angular speed around the x axis (pitch) - * values[1]: Angular speed around the y axis (yaw) - * values[2]: Angular speed around the z axis (roll) - * - * For phones and tablets held in natural orientation and game controllers held in front of you, the axes are defined as follows: - * - * - -X ... +X : left ... right - * - -Y ... +Y : bottom ... top - * - -Z ... +Z : farther ... closer - * - * The axis data is not changed when the device is rotated. - * - * \sa SDL_GetCurrentDisplayOrientation() - */ /* Function prototypes */