mirror of
https://github.com/DrBeef/Doom3Quest.git
synced 2024-11-10 06:41:36 +00:00
Automatic switching of refresh rate (Quest 2)
Also fixed lined the angle of the chainsaw up with the damage location
This commit is contained in:
parent
b5778a6098
commit
833289a5e9
4 changed files with 29 additions and 11 deletions
|
@ -1615,11 +1615,6 @@ void * AppThreadFunction(void * parm ) {
|
||||||
showLoadingIcon();
|
showLoadingIcon();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (DISPLAY_REFRESH != -1)
|
|
||||||
{
|
|
||||||
vrapi_SetDisplayRefreshRate(gAppState.Ovr, DISPLAY_REFRESH);
|
|
||||||
}
|
|
||||||
|
|
||||||
//Should now be all set up and ready - start the Doom3 main loop
|
//Should now be all set up and ready - start the Doom3 main loop
|
||||||
VR_Doom3Main(argc, argv);
|
VR_Doom3Main(argc, argv);
|
||||||
|
|
||||||
|
@ -1636,11 +1631,25 @@ void * AppThreadFunction(void * parm ) {
|
||||||
}
|
}
|
||||||
|
|
||||||
//All the stuff we want to do each frame
|
//All the stuff we want to do each frame
|
||||||
void Doom3Quest_FrameSetup(int controlscheme)
|
void Doom3Quest_FrameSetup(int controlscheme, int refresh)
|
||||||
{
|
{
|
||||||
|
ALOGV("Refresh = %i", refresh);
|
||||||
|
|
||||||
//Use floor based tracking space
|
//Use floor based tracking space
|
||||||
vrapi_SetTrackingSpace(gAppState.Ovr, VRAPI_TRACKING_SPACE_LOCAL_FLOOR);
|
vrapi_SetTrackingSpace(gAppState.Ovr, VRAPI_TRACKING_SPACE_LOCAL_FLOOR);
|
||||||
|
|
||||||
|
int device = vrapi_GetSystemPropertyInt(&java, VRAPI_SYS_PROP_DEVICE_TYPE);
|
||||||
|
switch (device)
|
||||||
|
{
|
||||||
|
case VRAPI_DEVICE_TYPE_OCULUSQUEST:
|
||||||
|
//Force 60hz for Quest 1
|
||||||
|
vrapi_SetDisplayRefreshRate(gAppState.Ovr, 60);
|
||||||
|
break;
|
||||||
|
case VRAPI_DEVICE_TYPE_OCULUSQUEST2:
|
||||||
|
vrapi_SetDisplayRefreshRate(gAppState.Ovr, refresh);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
if (!Doom3Quest_useScreenLayer())
|
if (!Doom3Quest_useScreenLayer())
|
||||||
{
|
{
|
||||||
screenYaw = vr.hmdorientation_temp[YAW];
|
screenYaw = vr.hmdorientation_temp[YAW];
|
||||||
|
@ -1965,6 +1974,7 @@ JNIEXPORT jlong JNICALL Java_com_drbeef_doom3quest_GLES3JNILib_onCreate( JNIEnv
|
||||||
|
|
||||||
if (refresh != -1)
|
if (refresh != -1)
|
||||||
{
|
{
|
||||||
|
//unused at the moment
|
||||||
DISPLAY_REFRESH = refresh;
|
DISPLAY_REFRESH = refresh;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -23,7 +23,7 @@ extern "C" {
|
||||||
#if DEBUG
|
#if DEBUG
|
||||||
#define ALOGV(...) __android_log_print( ANDROID_LOG_VERBOSE, LOG_TAG, __VA_ARGS__ )
|
#define ALOGV(...) __android_log_print( ANDROID_LOG_VERBOSE, LOG_TAG, __VA_ARGS__ )
|
||||||
#else
|
#else
|
||||||
#define ALOGV(...)
|
#define ALOGV(...) __android_log_print( ANDROID_LOG_VERBOSE, LOG_TAG, __VA_ARGS__ )
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
float screenYaw;
|
float screenYaw;
|
||||||
|
@ -76,7 +76,7 @@ void Doom3Quest_Vibrate(int channel, float low, float high);
|
||||||
|
|
||||||
bool Doom3Quest_processMessageQueue();
|
bool Doom3Quest_processMessageQueue();
|
||||||
|
|
||||||
void Doom3Quest_FrameSetup();
|
void Doom3Quest_FrameSetup(int controlscheme, int refresh);
|
||||||
|
|
||||||
void Doom3Quest_setUseScreenLayer(int screen);
|
void Doom3Quest_setUseScreenLayer(int screen);
|
||||||
|
|
||||||
|
|
|
@ -2403,7 +2403,7 @@ void idCommonLocal::InitSIMD( void ) {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
extern "C" void Doom3Quest_FrameSetup(int controlscheme);
|
extern "C" void Doom3Quest_FrameSetup(int controlscheme, int refresh);
|
||||||
extern "C" void Doom3Quest_Vibrate(int channel, float low, float high );
|
extern "C" void Doom3Quest_Vibrate(int channel, float low, float high );
|
||||||
|
|
||||||
void idCommonLocal::Vibrate(int channel, float low, float high)
|
void idCommonLocal::Vibrate(int channel, float low, float high)
|
||||||
|
@ -2424,7 +2424,8 @@ void idCommonLocal::Frame( void ) {
|
||||||
// pump all the events
|
// pump all the events
|
||||||
Sys_GenerateEvents();
|
Sys_GenerateEvents();
|
||||||
|
|
||||||
Doom3Quest_FrameSetup(cvarSystem->GetCVarInteger("vr_weaponHand"));
|
Doom3Quest_FrameSetup(cvarSystem->GetCVarInteger("vr_weaponHand"),
|
||||||
|
cvarSystem->GetCVarInteger("vr_refresh"));
|
||||||
|
|
||||||
if (game) {
|
if (game) {
|
||||||
game->SetVRClientInfo(pVRClientInfo);
|
game->SetVRClientInfo(pVRClientInfo);
|
||||||
|
|
|
@ -2595,9 +2595,16 @@ void idWeapon::PresentWeapon( bool showViewModel, int hand ) {
|
||||||
// Koz hide weapon and muzzlerise was here, now called as weapon::CalculateHideRise in player->CalculateViewWeaponPosition to allow hand animations
|
// Koz hide weapon and muzzlerise was here, now called as weapon::CalculateHideRise in player->CalculateViewWeaponPosition to allow hand animations
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//HACKADOODLE-DOOO!
|
||||||
|
idMat3 axis = viewWeaponAxis;
|
||||||
|
if (currentWeapon == WEAPON_CHAINSAW)
|
||||||
|
{
|
||||||
|
axis = idAngles(45, 0, 0).ToMat3() * viewWeaponAxis;
|
||||||
|
}
|
||||||
|
|
||||||
// set the physics position and orientation
|
// set the physics position and orientation
|
||||||
GetPhysics()->SetOrigin( viewWeaponOrigin );
|
GetPhysics()->SetOrigin( viewWeaponOrigin );
|
||||||
GetPhysics()->SetAxis( viewWeaponAxis );
|
GetPhysics()->SetAxis( axis );
|
||||||
|
|
||||||
UpdateVisuals();
|
UpdateVisuals();
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue