Work on VR Menu

and movement speed slider
This commit is contained in:
Simon 2020-07-24 22:33:40 +01:00
parent cc95db37f8
commit 52f60fc309
12 changed files with 718 additions and 19 deletions

View file

@ -1294,6 +1294,7 @@ void RTCWVR_Init()
vr_reloadtimeoutms = Cvar_Get( "vr_reloadtimeoutms", "200", CVAR_ARCHIVE);
vr_positional_factor = Cvar_Get( "vr_positional_factor", "12", CVAR_ARCHIVE);
vr_walkdirection = Cvar_Get( "vr_walkdirection", "0", CVAR_ARCHIVE);
vr_movement_multiplier = Cvar_Get( "vr_movement_multiplier", "0.8", CVAR_ARCHIVE);
vr_weapon_pitchadjust = Cvar_Get( "vr_weapon_pitchadjust", "-20.0", CVAR_ARCHIVE);
vr_lasersight = Cvar_Get( "vr_lasersight", "0", CVAR_LATCH);
vr_teleport = Cvar_Get( "vr_teleport", "0", CVAR_ARCHIVE);

View file

@ -2,6 +2,7 @@ cvar_t *vr_snapturn_angle;
cvar_t *vr_reloadtimeoutms;
cvar_t *vr_positional_factor;
cvar_t *vr_walkdirection;
cvar_t *vr_movement_multiplier;
cvar_t *vr_weapon_pitchadjust;
cvar_t *vr_lasersight;
cvar_t *vr_control_scheme;

View file

@ -466,8 +466,8 @@ void HandleInput_Default( ovrInputStateTrackedRemote *pDominantTrackedRemoteNew,
rotateAboutOrigin(x, y, controllerYawHeading, v);
//Move a lot slower if scope is engaged or teleport is standard locomotion mode
remote_movementSideways = v[0] * (vr.scopeengaged || vr.teleportenabled ? 0.3f : 1.0f);
remote_movementForward = v[1] * (vr.scopeengaged || vr.teleportenabled ? 0.3f : 1.0f);
remote_movementSideways = v[0] * (vr.scopeengaged || vr.teleportenabled ? 0.3f : 1.0f) * vr_movement_multiplier->value;
remote_movementForward = v[1] * (vr.scopeengaged || vr.teleportenabled ? 0.3f : 1.0f) * vr_movement_multiplier->value;
ALOGV(" remote_movementSideways: %f, remote_movementForward: %f",
remote_movementSideways,
remote_movementForward);

View file

@ -2008,7 +2008,7 @@ void Com_Init( char *commandLine ) {
Cbuf_AddText( "exec autoexec.cfg\n" );
//Execute to overwrite weapon locations with our desired adjustments
Cbuf_AddText( "exec weapons_hd.cfg\n" );
Cbuf_AddText( "exec weapons_vr.cfg\n" );
//Execute last to allow user adjustment of weapon models if they have something else to use
Cbuf_AddText( "exec weapons_user.cfg\n" );

View file

@ -107,7 +107,7 @@ itemDef
backcolor .1 .1 .1 0
visible 1
action { play "sound/misc/kcaction.wav" ;
hide grpOptions ; show vr }
hide grpControls ; show vr }
mouseEnter { show message_graphics ; setitemcolor ctr_vr backcolor .3 .3 .3 0 }
mouseExit { hide message_graphics ; setitemcolor ctr_vr backcolor .1 .1 .1 0 }
}
@ -115,7 +115,7 @@ itemDef
itemDef {
name vr
group grpOptions
group grpControls
text "Control Scheme: "
type ITEM_TYPE_MULTI
cvar "vr_control_scheme"
@ -134,7 +134,7 @@ itemDef
itemDef {
name vr
group grpOptions
group grpControls
text "Teleport: "
type ITEM_TYPE_YESNO
cvar "vr_teleport"
@ -151,7 +151,7 @@ itemDef
itemDef {
name vr
group grpOptions
group grpControls
type ITEM_TYPE_YESNO
text "Laser Sight: "
cvar "vr_lasersight"
@ -169,7 +169,7 @@ itemDef
itemDef {
name vr
group grpOptions
group grpControls
type ITEM_TYPE_SLIDER
text "Height Adjust:"
cvarfloat "cg_heightAdjust" .0 .01 1
@ -187,7 +187,7 @@ itemDef
itemDef {
name vr
group grpOptions
group grpControls
type ITEM_TYPE_SLIDER
text "Turn Angle ( <= 10 for smooth turn):"
cvarfloat "vr_snapturn_angle" .0 1 90
@ -205,7 +205,7 @@ itemDef
itemDef {
name vr
group grpOptions
group grpControls
type ITEM_TYPE_YESNO
text "Gaze Movement Direction: "
cvar "vr_walkdirection"
@ -219,8 +219,23 @@ itemDef
forecolor 1 1 1 1
visible 1
}
itemDef {
name vr
group grpControls
type ITEM_TYPE_SLIDER
text "Movement Speed:"
cvarfloat "vr_movement_multiplier" .0 0.05 1.0
rect 82 120 290 12
textalign ITEM_ALIGN_RIGHT
textalignx 142
textaligny 10
textscale .23
style WINDOW_STYLE_FILLED
backcolor 1 1 1 .07
forecolor 1 1 1 1
visible 1
}
// TOOLS MESSAGE //

View file

@ -0,0 +1,249 @@
#include "ui/menudef.h"
{
\\ SETUP MENU \\
menuDef {
name "ingame_controls"
visible 0
fullscreen 0
outOfBoundsClick // this closes the window if it gets a click out of the rectangle
rect 100 125 443 340
focusColor 1 .75 0 1
style 1
border 1
onClose {
uiScript saveControls
}
onopen { hide grpControls ; show look ; uiScript loadControls }
itemDef {
name window
group ingamebox
rect 0 2 443 315
style WINDOW_STYLE_FILLED
border 1
bordercolor .5 .5 .5 .5
forecolor 1 1 1 1
backcolor 0 0 0 .25
visible 1
decoration
}
itemDef {
name keyBindStatus
rect 0 400 320 15
ownerdraw UI_KEYBINDSTATUS
text " "
forecolor 1 .75 0 1
textscale .230
textalignx 187
textalign 1
textaligny 10
visible 0
decoration
}
itemDef
{
name window
group ingamebox2
rect 2 4 439 20
style WINDOW_STYLE_FILLED
border 1
bordercolor .1 .1 .1 .2
forecolor 1 1 1 1
backcolor .3 0.5 0.2 .25
visible 1
decoration
}
itemDef
{
name ctr_vr
text "VR Controls"
type 1
textscale .22
group grpSystembutton
style WINDOW_STYLE_FILLED
rect 172 10 100 12
textalign 1
textalignx 50
textaligny 10
forecolor 1 1 1 1
backcolor .1 .1 .1 0
visible 1
action { play "sound/misc/kcaction.wav" ;
hide grpControls ; show vr }
mouseEnter { show message_graphics ; setitemcolor ctr_vr backcolor .3 .3 .3 0 }
mouseExit { hide message_graphics ; setitemcolor ctr_vr backcolor .1 .1 .1 0 }
}
itemDef {
name vr
group grpControls
text "Control Scheme: "
type ITEM_TYPE_MULTI
cvar "vr_control_scheme"
cvarFloatList {"Right Handed" 0 "Left Handed" 10 }
rect 82 30 290 12
textalign ITEM_ALIGN_RIGHT
textalignx 142
textaligny 10
textscale .22
style WINDOW_STYLE_FILLED
backcolor 1 1 1 .07
forecolor 1 1 1 1
visible 1
}
itemDef {
name vr
group grpControls
text "Teleport: "
type ITEM_TYPE_YESNO
cvar "vr_teleport"
rect 82 45 290 12
textalign ITEM_ALIGN_RIGHT
textalignx 142
textaligny 10
textscale .22
style WINDOW_STYLE_FILLED
backcolor 1 1 1 .07
forecolor 1 1 1 1
visible 1
}
itemDef {
name vr
group grpControls
type ITEM_TYPE_YESNO
text "Laser Sight: "
cvar "vr_lasersight"
rect 82 60 290 12
textalign ITEM_ALIGN_RIGHT
textalignx 142
textaligny 10
textscale .22
style WINDOW_STYLE_FILLED
backcolor 1 1 1 .07
forecolor 1 1 1 1
visible 1
}
itemDef {
name vr
group grpControls
type ITEM_TYPE_SLIDER
text "Height Adjust:"
cvarfloat "cg_heightAdjust" .0 .01 1
rect 82 75 290 12
textalign ITEM_ALIGN_RIGHT
textalignx 142
textaligny 10
textscale .23
style WINDOW_STYLE_FILLED
backcolor 1 1 1 .07
forecolor 1 1 1 1
visible 1
}
itemDef {
name vr
group grpControls
type ITEM_TYPE_SLIDER
text "Turn Angle ( <= 10 for smooth turn):"
cvarfloat "vr_snapturn_angle" .0 1 90
rect 82 90 290 12
textalign ITEM_ALIGN_RIGHT
textalignx 142
textaligny 10
textscale .23
style WINDOW_STYLE_FILLED
backcolor 1 1 1 .07
forecolor 1 1 1 1
visible 1
}
itemDef {
name vr
group grpControls
type ITEM_TYPE_YESNO
text "Gaze Movement Direction: "
cvar "vr_walkdirection"
rect 82 105 290 12
textalign ITEM_ALIGN_RIGHT
textalignx 142
textaligny 10
textscale .22
style WINDOW_STYLE_FILLED
backcolor 1 1 1 .07
forecolor 1 1 1 1
visible 1
}
itemDef {
name vr
group grpControls
type ITEM_TYPE_SLIDER
text "Movement Speed:"
cvarfloat "vr_movement_multiplier" .0 0.05 1.0
rect 82 120 290 12
textalign ITEM_ALIGN_RIGHT
textalignx 142
textaligny 10
textscale .23
style WINDOW_STYLE_FILLED
backcolor 1 1 1 .07
forecolor 1 1 1 1
visible 1
}
itemDef {
name yesno_message
rect 0 310 300 15
text "Select the Item to Toggle to Yes or No"
forecolor 1 .75 0 1
textscale .230
textalignx 221
textalign 1
textaligny 20
visible 0
decoration
}
itemDef {
name slider_message
rect 0 310 300 15
text "Drag the Slider to Increase and Decrease"
forecolor 1 .75 0 1
textscale .230
textalignx 221
textalign 1
textaligny 20
visible 0
decoration
}
}
}

View file

@ -0,0 +1,436 @@
#include "ui/menudef.h"
{
\\ SETUP MENU \\
menuDef {
name "ingame_options"
visible 0
fullscreen 0
outOfBoundsClick // this closes the window if it gets a click out of the rectangle
rect 100 125 443 340
focusColor 1 .75 0 1
style 1
border 1
onopen { hide grpOptions ; show performance }
itemDef
{
name window
group ingamebox
rect 0 2 443 300
style WINDOW_STYLE_FILLED
border 1
bordercolor .5 .5 .5 .5
forecolor 1 1 1 1
backcolor 0 0 0 .25
visible 1
decoration
}
itemDef
{
name window2
group grpControlbutton
rect 2 4 439 20
style WINDOW_STYLE_FILLED
border 1
bordercolor .1 .1 .1 .2
forecolor 1 1 1 1
backcolor .3 0.5 0.2 .25
visible 1
decoration
}
/////////////////
// Performance
/////////////////
itemDef {
name ctr_performance
text "Performance"
type 1
textscale .23
group grpControlbutton
// rect 50 10 100 12
rect 92 10 100 12
textalign 1
textalignx 50
textaligny 10
forecolor 1 1 1 1
backcolor .1 .1 .1 0
visible 1
action { hide grpOptions ; show performance }
mouseEnter { setitemcolor ctr_performance backcolor .1 .37 .1 1 }
mouseExit { setitemcolor ctr_performance backcolor .37 .1 .1 1 }
}
itemDef {
name performance
group grpOptions
type ITEM_TYPE_MULTI
text "Wall Mark Lifetime:"
cvar "cg_markTime"
cvarFloatList { "Normal" 20000 "Short" 10000 "Off" 0 "Long" 30000 }
rect 82 30 290 12
textalign ITEM_ALIGN_RIGHT
textalignx 142
textaligny 10
textscale .23
style WINDOW_STYLE_FILLED
backcolor 1 1 1 .07
forecolor 1 1 1 1
visible 1
}
// itemDef {
// name performance
// group grpOptions
// type ITEM_TYPE_YESNO
// text "Show Floating Scores:"
// cvar "cg_scorePlums"
// rect 82 60 290 12
// textalign ITEM_ALIGN_RIGHT
// textalignx 142
// textaligny 10
// textscale .23
// style WINDOW_STYLE_FILLED
// backcolor 1 1 1 .07
// forecolor 1 1 1 1
// visible 1
// }
itemDef {
name performance
group grpOptions
type ITEM_TYPE_MULTI
text "Ejecting Brass:"
cvar "cg_brassTime"
cvarFloatList { "Med" 1250 "Off" 0 "High" 2500 }
rect 82 45 290 12
textalign ITEM_ALIGN_RIGHT
textalignx 142
textaligny 10
textscale .23
style WINDOW_STYLE_FILLED
backcolor 1 1 1 .07
forecolor 1 1 1 1
visible 1
}
itemDef {
name performance
group grpOptions
type ITEM_TYPE_YESNO
text "Dynamic Lights:"
cvar "r_dynamiclight"
rect 82 60 290 12
textalign ITEM_ALIGN_RIGHT
textalignx 142
textaligny 10
textscale .23
style WINDOW_STYLE_FILLED
backcolor 1 1 1 .07
forecolor 1 1 1 1
visible 1
}
itemDef {
name performance
group grpOptions
type ITEM_TYPE_YESNO
text "Low Quality Sky:"
cvar "r_fastsky"
rect 82 75 290 12
textalign ITEM_ALIGN_RIGHT
textalignx 142
textaligny 10
textscale .23
style WINDOW_STYLE_FILLED
backcolor 1 1 1 .07
forecolor 1 1 1 1
visible 1
}
itemDef {
name performance
group grpOptions
type ITEM_TYPE_YESNO
text "Draw Portal Skies:"
cvar "cg_skybox"
rect 82 90 290 12
textalign ITEM_ALIGN_RIGHT
textalignx 142
textaligny 10
textscale .23
style WINDOW_STYLE_FILLED
backcolor 1 1 1 .07
forecolor 1 1 1 1
visible 1
}
itemDef {
name performance
group grpOptions
type ITEM_TYPE_YESNO
text "Sync Every Frame:"
cvar "r_finish"
rect 82 105 290 12
textalign ITEM_ALIGN_RIGHT
textalignx 142
textaligny 10
textscale .23
style WINDOW_STYLE_FILLED
backcolor 1 1 1 .07
forecolor 1 1 1 1
visible 1
}
//itemDef {
// name performance
// group grpOptions
// type ITEM_TYPE_YESNO
// text "Force Player Models:"
// cvar "cg_forceModel"
// rect 82 135 290 12
// textalign ITEM_ALIGN_RIGHT
// textalignx 142
// textaligny 10
// textscale .23
// style WINDOW_STYLE_FILLED
// backcolor 1 1 1 .07
// forecolor 1 1 1 1
// visible 1
// }
itemDef {
name performance
type ITEM_TYPE_MULTI
group grpOptions
text "Corona Dist:"
cvar "cg_coronafardist"
cvarFloatList { "normal" 1536 "far" 4096 "you crazy" 16000 "off" 0 "near" 800 }
rect 82 120 290 12
textalign ITEM_ALIGN_RIGHT
textalignx 142
textaligny 10
textscale .23
style WINDOW_STYLE_FILLED
backcolor 1 1 1 .07
forecolor 1 1 1 1
visible 1
}
itemDef {
name performance
group grpOptions
type ITEM_TYPE_MULTI
text "Particle Dist:"
cvar "cg_particleDist"
cvarFloatList { "normal" 1024 "far" 2048 "off" 0 "near" 512 }
rect 82 135 290 12
textalign ITEM_ALIGN_RIGHT
textalignx 142
textaligny 10
textscale .23
style WINDOW_STYLE_FILLED
backcolor 1 1 1 .07
forecolor 1 1 1 1
visible 1
}
//////////////////////
//
// extension specific stuff
//
//////////////////////
itemDef {
name performance
group grpOptions
type ITEM_TYPE_MULTI
text "Nvidia fog type:"
cvarTest "r_ext_NV_fog_dist"
showcvar { "1" }
cvar "r_nv_fogdist_mode"
cvarStrList { "NV Radial", "GL_EYE_RADIAL_NV", "NV Plane", "GL_EYE_PLANE_ABSOLUTE_NV" }
rect 82 150 290 12
textalign ITEM_ALIGN_RIGHT
textalignx 142
textaligny 10
textscale .23
style WINDOW_STYLE_FILLED
backcolor 1 1 1 .07
forecolor 1 1 1 1
visible 1
}
// end extension specific stuff
//
//////////////////////
/////////////////
// view
/////////////////
itemDef {
name ctr_view
text "View"
type 1
textscale .23
group grpControlbutton
rect 270 10 100 12
textalign 1
textalignx 50
textaligny 10
forecolor 1 1 1 1
backcolor .1 .1 .1 0
visible 1
action { hide grpOptions ; show view }
mouseEnter { setitemcolor ctr_view backcolor .1 .37 .1 1 }
mouseExit { setitemcolor ctr_view backcolor .37 .1 .1 1 }
}
itemDef {
name view
type ITEM_TYPE_MULTI
group grpOptions
text "Cursor Hints:"
cvar "cg_cursorHints"
cvarFloatList { "strobe pulse" 2 "alpha pulse" 3 "solid" 4 "off" 0 "size pulse" 1 }
textalign ITEM_ALIGN_RIGHT
rect 82 30 290 12
textalign ITEM_ALIGN_RIGHT
textalignx 142
textaligny 10
textscale .23
style WINDOW_STYLE_FILLED
backcolor 1 1 1 .07
forecolor 1 1 1 1
visible 0
}
itemDef {
name view
group grpOptions
type ITEM_TYPE_SLIDER
text "HUD Alpha:"
cvarfloat "cg_hudAlpha" .6 .1 1
rect 82 85 290 12
textalign ITEM_ALIGN_RIGHT
textalignx 142
textaligny 10
textscale .23
style WINDOW_STYLE_FILLED
backcolor 1 1 1 .07
forecolor 1 1 1 1
visible 0
}
// this \/ is actually lower than the crosshair stuff physically,
// but up here for reference to other sliders
itemDef {
// only show this in this menu if "r_ignorehwgamma" is not set. if it's set, it will require a
// vid_restart, so the option shows in the system->graphics location
cvarTest "r_ignorehwgamma"
showcvar { "0" }
name view
group grpOptions
type ITEM_TYPE_SLIDER
text "Brightness:"
cvarfloat "r_gamma" 1.3 .5 3
rect 82 125 290 12
// rect 72 220 290 12
textalign ITEM_ALIGN_RIGHT
textalignx 142
textaligny 10
textscale .23
style WINDOW_STYLE_FILLED
backcolor 1 1 1 .07
forecolor 1 1 1 1
visible 0
}
itemDef {
name view
group grpOptions
text "Crosshair:"
type 1
rect 190 210 60 12
textalign ITEM_ALIGN_CENTER
textscale .23
textalignx 30
textaligny 12
forecolor 1 1 1 1
visible 0
decoration
}
itemDef {
name view
group grpOptions
rect 194 150 50 50
ownerdraw UI_CROSSHAIR
textalign ITEM_ALIGN_RIGHT
textalignx 0
textaligny 50
style WINDOW_STYLE_FILLED
backcolor 1 1 1 .07
forecolor 1 1 1 1
visible 0
}
}
//////////////////////////////
itemDef {
name slider_message
rect 30 15 640 30
text "Drag the Slider to Increase and Decrease"
forecolor 1 .75 0 1
textscale .23
textalignx 221
textalign 1
textaligny 20
visible 0
decoration
}
}
}

Binary file not shown.

View file

@ -10,7 +10,6 @@ import java.io.FileReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.nio.ByteBuffer;
import android.Manifest;
import android.annotation.SuppressLint;
@ -18,18 +17,13 @@ import android.app.Activity;
import android.content.pm.PackageManager;
import android.content.res.AssetManager;
import android.media.AudioFormat;
import android.media.AudioManager;
import android.media.AudioRecord;
import android.media.AudioTrack;
import android.media.MediaRecorder;
import android.os.Bundle;
import android.os.SystemClock;
import android.util.Log;
import android.view.SurfaceHolder;
import android.view.SurfaceView;
import android.view.WindowManager;
import android.view.KeyEvent;
import android.support.v4.app.ActivityCompat;
import android.support.v4.content.ContextCompat;
@ -168,7 +162,7 @@ import static android.system.Os.setenv;
new File("/sdcard/RTCWQuest/Main").mkdirs();
//Copy the weapon adjustment config
copy_asset("/sdcard/RTCWQuest/Main", "weapons_hd.cfg");
copy_asset("/sdcard/RTCWQuest/Main", "weapons_vr.cfg");
//and the demo version
//copy_asset("/sdcard/RTCWQuest/Main", "pak0.pk3");
@ -176,6 +170,9 @@ import static android.system.Os.setenv;
//and the vr weapons
copy_asset("/sdcard/RTCWQuest/Main", "vr_sp_pak_weapons.pk3");
//and the vr menu pk3
copy_asset("/sdcard/RTCWQuest/Main", "z_rtcwquest_vrmenu.pk3");
//Read these from a file and pass through
commandLineParams = new String("rtcw");