questzdoom/Projects/Android/jni/QzDoom/VrCommon.h

98 lines
2.2 KiB
C
Raw Normal View History

#if !defined(vrcommon_h)
#define vrcommon_h
2020-02-29 16:47:46 +00:00
#ifdef __cplusplus
extern "C"
{
#endif
//#include <VrApi_Ext.h>
#include <VrApi_Input.h>
#include <android/log.h>
#include "mathlib.h"
#define LOG_TAG "QzDoom"
#ifndef NDEBUG
#define DEBUG 1
#endif
#define ALOGE(...) __android_log_print( ANDROID_LOG_ERROR, LOG_TAG, __VA_ARGS__ )
#if DEBUG
#define ALOGV(...) __android_log_print( ANDROID_LOG_VERBOSE, LOG_TAG, __VA_ARGS__ )
#else
#define ALOGV(...)
#endif
2020-03-05 22:30:08 +00:00
extern bool qzdoom_initialised;
2020-03-05 22:30:08 +00:00
extern long long global_time;
2020-03-05 22:30:08 +00:00
extern float playerHeight;
extern float playerYaw;
extern bool resetDoomYaw;
extern float doomYaw;
2020-03-05 22:30:08 +00:00
extern float vrFOV;
2020-03-05 22:30:08 +00:00
extern vec3_t worldPosition;
2020-03-05 22:30:08 +00:00
extern vec3_t hmdPosition;
extern vec3_t hmdorientation;
extern vec3_t positionDeltaThisFrame;
2020-03-05 22:30:08 +00:00
extern vec3_t weaponangles;
extern vec3_t weaponoffset;
2020-03-05 22:30:08 +00:00
extern bool weaponStabilised;
extern float vr_weapon_pitchadjust;
2020-04-01 22:19:10 +00:00
extern bool vr_moveuseoffhand;
2020-03-05 22:30:08 +00:00
extern float vr_snapturn_angle;
extern vec3_t offhandangles;
extern vec3_t offhandoffset;
2020-03-05 22:30:08 +00:00
extern bool player_moving;
extern bool trigger_teleport;
extern bool shutdown;
2020-03-01 23:09:29 +00:00
void shutdownVR();
float radians(float deg);
float degrees(float rad);
bool isMultiplayer();
double GetTimeInMilliSeconds();
float length(float x, float y);
float nonLinearFilter(float in);
bool between(float min, float val, float max);
void rotateAboutOrigin(float v1, float v2, float rotation, vec2_t out);
void QuatToYawPitchRoll(ovrQuatf q, vec3_t rotation, vec3_t out);
void handleTrackedControllerButton(ovrInputStateTrackedRemote * trackedRemoteState, ovrInputStateTrackedRemote * prevTrackedRemoteState, uint32_t button, int key);
2020-03-09 23:59:38 +00:00
//Called from engine code
bool QzDoom_useScreenLayer();
void QzDoom_GetScreenRes(uint32_t *width, uint32_t *height);
void QzDoom_Vibrate(float duration, int channel, float intensity );
bool QzDoom_processMessageQueue();
void QzDoom_FrameSetup();
void QzDoom_setUseScreenLayer(bool use);
void QzDoom_processHaptics();
void QzDoom_getHMDOrientation(ovrTracking2 *tracking);
void QzDoom_getTrackedRemotesOrientation(int vr_control_scheme);
2020-03-01 23:09:29 +00:00
void incrementFrameIndex();
void QzDoom_prepareEyeBuffer(int eye );
void QzDoom_finishEyeBuffer(int eye );
void QzDoom_submitFrame(ovrTracking2 *tracking);
2020-02-29 16:47:46 +00:00
#ifdef __cplusplus
} // extern "C"
#endif
#endif //vrcommon_h