Mads Buvik Sandvei
acdce6e0d0
Refactored OpenXRSwapchainImpl to use two private objects that instantiate a swapchain, instead of instantiating two swapchains directly. Added handling of runtime failures in xrAcquireSwapchain(), xrWaitSwapchain(), and xrReleaseSwapchain().
2020-11-22 15:23:11 +01:00
uramer
ce455e7aaa
Nicer VR meta menu
2020-11-17 23:20:32 +01:00
Mads Buvik Sandvei
9e7df26f0f
Hide pauldrons
2020-11-15 15:45:57 +01:00
Mads Buvik Sandvei
2e446c97bf
Merge branch 'openxr_vr' of https://gitlab.com/madsbuvi/openmw into openxr_vr
2020-11-14 19:20:57 +01:00
Mads Buvik Sandvei
3e581571f4
QWERTY implementation of a virtual keyboard.
2020-11-14 19:20:36 +01:00
Christoph Haag
751807d777
don't mark CheckXrResult as inline
...
On gcc it compiles in Debug mode, but fails to link in Release mode.
2020-11-02 00:23:48 +01:00
Mads Buvik Sandvei
3158a2510e
Clarified logging of layers and extensions
2020-11-01 17:49:46 +01:00
Mads Buvik Sandvei
360ba542a6
Vive controller work-around. Revert this when steamvr fixes the vive menu button
2020-11-01 17:33:23 +01:00
Mads Buvik Sandvei
4e720afbd9
Better management of orientation. You should now be able to pitch and roll freely with no awkward limitations.
2020-11-01 17:17:40 +01:00
Mads Buvik Sandvei
4a42a299d8
Fixed implicit cast warnings
2020-11-01 15:47:45 +01:00
Mads Buvik Sandvei
f762088651
Use Constants::UnitsPerMeter instead of rolling my own value.
2020-11-01 15:45:14 +01:00
Mads Buvik Sandvei
010fc13b91
Refer to !6
2020-10-31 09:03:01 +01:00
Christoph Haag
b54e77a667
fix openmw non-vr build
...
../apps/openmw/mwphysics/movementsolver.cpp: In static member function ‘static void MWPhysics::MovementSolver::move(MWPhysics::ActorFrameData&, float, const btCollisionWorld*, MWPhysics::WorldFrameData&)’:
../apps/openmw/mwphysics/movementsolver.cpp:98:52: error: ‘getPlayer’ is not a member of ‘MWMechanics’
98 | const bool isPlayer = (ptr == MWMechanics::getPlayer());
| ^~~~~~~~~
2020-10-30 23:29:24 +00:00
Mads Buvik Sandvei
c1e6b05555
Wrote a meta menu for accessibility on VR controllers with few keys.
2020-10-27 20:45:41 +01:00
Mads Buvik Sandvei
5ffd884b14
Loading screen should now be visible.
2020-10-25 17:02:25 +01:00
Mads Buvik Sandvei
fdea94d84e
Fixed crash when taking screenshots -> crash during save game
2020-10-24 22:42:34 +02:00
Mads Buvik Sandvei
a86e5a0b67
Merge branch 'openxr_vr' of https://gitlab.com/madsbuvi/openmw into openxr_vr
2020-10-22 20:40:27 +02:00
Mads Buvik Sandvei
4f8f0cc8ac
Merge branch 'master' of https://gitlab.com/madsbuvi/openmw into openxr_vr
2020-10-22 20:39:53 +02:00
Mads Buvik Sandvei
bf9edec4ce
Merge branch 'index-controller-support-v2' into 'openxr_vr'
...
Update bindings for Valve Index controllers
See merge request madsbuvi/openmw!3
2020-10-21 21:02:50 +00:00
Mads Buvik Sandvei
4c4fc0c69a
Refactoring. Moved changes to MWRender::Camera into a new subclass MWVR::VRCamera. Moved head tracking code to VRCamera.
2020-10-21 21:34:47 +02:00
Dean Allen
ac00ce7a13
Update bindings for Valve Index controllers
2020-10-21 00:45:15 -07:00
Mads Buvik Sandvei
ea9303e1c6
Deleted deprecated setting 'use steady clock'. Moved debug related settings to a separate [VR Debug] category.
2020-10-19 18:21:05 +02:00
Mads Buvik Sandvei
6425749b7e
More accurate interpretation of openxr session states
2020-10-18 14:22:03 +02:00
Mads Buvik Sandvei
cf20faff21
Option to make use of XR_EXT_debug_utils if available
2020-10-17 21:11:31 +02:00
Mads Buvik Sandvei
c3a312f80d
Squashed commit of the following:
...
commit d8564b8e501c98fa2e3cde582b8d06d7c78ba6ce
Author: Mads Buvik Sandvei <madssandvei@protonmail.com>
Date: Fri Oct 16 23:43:39 2020 +0200
bad assignment
commit 84f66e4bf1050ce8a316a27f8b10dc2243e35406
Author: Mads Buvik Sandvei <madssandvei@protonmail.com>
Date: Fri Oct 16 21:08:27 2020 +0200
Removed the approach of abstracting xr paths with enums. It is not turning out to be useful. Use the explicit paths instead. Added some default bindings for most currently available controllers, except the xbox controller.
commit ae525d0a239c087a7344528634a078e0812af66d
Author: Mads Buvik Sandvei <madssandvei@protonmail.com>
Date: Fri Oct 16 21:05:37 2020 +0200
Cleaned up openxr extensions code. Upgraded openxr to version 1.0.12 to enable support for certain controllers.
commit 2d71a5ecbf699c59f1fcdbebcad867fd28552929
Author: Mads Buvik Sandvei <madssandvei@protonmail.com>
Date: Thu Sep 24 22:18:25 2020 +0200
simple_controller
2020-10-17 12:33:46 +02:00
Mads Buvik Sandvei
bd4093bbcb
Use OpenXR's action sets to better separate gui and gameplay actions. Also jump works on press now.
2020-08-09 12:55:09 +02:00
Mads Buvik Sandvei
2a534877da
Head/hand directed movement option
2020-08-08 12:24:24 +02:00
Mads Buvik Sandvei
89ff075936
New config options
2020-08-07 23:33:21 +02:00
Mads Buvik Sandvei
290068b871
typos
2020-08-07 22:31:11 +02:00
Mads Buvik Sandvei
c136ae682e
SteamVR compatibility (Lack of depth formats). Cleanup of deprecated oculus workarounds in vrsession.cpp.
2020-08-02 12:34:46 +02:00
Mads Buvik Sandvei
e0bc56dcf7
Single pass shadow update
2020-07-26 13:12:36 +02:00
Mads Buvik Sandvei
a15188d3bc
Wait on a separate thread
2020-07-26 13:12:05 +02:00
Mads Buvik Sandvei
9e16e592e8
steady clock prediction was not quite right
2020-07-25 12:28:52 +02:00
Mads Buvik Sandvei
14977f79e2
Merge fixes
2020-07-22 20:01:56 +02:00
Mads Buvik Sandvei
b5675b7525
Configuration option for oculus prediction time workaround
2020-07-21 14:36:11 +02:00
Mads Buvik Sandvei
5e729a0e82
Improved XR event processing logic. Particularly, handling session stop/start in a more predictable, less crashy manner. Added disabling of rendering when XR session is not running.
2020-07-21 12:28:39 +02:00
Mads Buvik Sandvei
e0b51af395
Sharing shadow maps across eyes.
...
Does not yet expand frustum.
2020-07-20 13:03:48 +00:00
Mads Buvik Sandvei
f451bf2a35
typo
2020-07-15 23:25:22 +02:00
Mads Buvik Sandvei
47b7837d7c
Make use of the layer depth extension
2020-07-15 23:17:16 +02:00
Mads Buvik Sandvei
461258cb4b
Reverted renaming of video player's gui layer
2020-06-28 13:01:58 +02:00
Mads Buvik Sandvei
e53d9e28f3
fix gui mode recenter
2020-06-28 12:16:29 +02:00
Mads Buvik Sandvei
45656f1d06
Comments etc
2020-06-28 11:33:01 +02:00
Mads Buvik Sandvei
91de6392ca
More refactoring / cleanup. Code policies.
2020-06-26 23:02:48 +02:00
Mads Buvik Sandvei
60ffaea195
Pointer mode verbiage.
...
protected member variables for vranimation
2020-06-25 23:20:38 +02:00
Mads Buvik Sandvei
d405bcc910
Obsolete struct
2020-06-25 22:55:31 +02:00
Mads Buvik Sandvei
e3c460ae35
Swapchain refactoring. Use of multisampling. Msaa resolve steps for mirror textures.
2020-06-24 22:22:09 +02:00
Mads Buvik Sandvei
df45ee1690
More refactoring/cleanup
2020-06-24 21:26:11 +02:00
Mads Buvik Sandvei
1cf97fd7ad
lots of refactoring and some commenting
2020-06-21 23:40:07 +02:00
Mads Buvik Sandvei
22a7882acb
Navigate main menu using oculus touch
2020-06-13 15:19:06 +02:00
Mads Buvik Sandvei
8ba341172d
Recenter view upon cell change.
2020-06-09 18:16:46 +02:00
Mads Buvik Sandvei
7f3930c312
Override bow animations to give all races consistent aim
2020-06-08 23:54:24 +02:00
Mads Buvik Sandvei
9bd676f5be
Some bugfixes, more experimenting with timing of frame sync calls.
2020-06-07 20:02:03 +02:00
Mads Buvik Sandvei
f25c3af9cb
More refactoring of VRSession. Moved call of BeginFrame and WaitFrame to the start of cull to keep shadow technique within openxr specs. There is still some jitter unless i change to single-threaded, and now i have no idea why.
2020-06-03 19:46:20 +02:00
Mads Buvik Sandvei
31336aba79
Some refactoring of openxrswapchain
2020-06-02 22:16:42 +02:00
Mads Buvik Sandvei
8f38f0536c
Separate GLRC for OpenXR to ensure uncontested access.
...
Safety check on predictions to police that they are made only once per frame.
2020-06-02 21:46:22 +02:00
Mads Buvik Sandvei
9ad910a8e7
Comparison operator for Pose, View, and co.
2020-06-02 21:45:18 +02:00
Mads Buvik Sandvei
4361f4191d
Predictions were off due to count of frames in flight off by 1.
2020-05-31 13:19:26 +02:00
Mads Buvik Sandvei
b65c1f582a
Recenter action
2020-05-31 12:15:31 +02:00
Mads Buvik Sandvei
930ee48da6
Player rotation no longer FPS dependent
2020-05-31 12:10:52 +02:00
Mads Buvik Sandvei
64d586929c
Fixed false staticness of VRGUILayer by editing camera ortography rather than texture coordinates.
2020-05-31 11:57:08 +02:00
Mads Buvik Sandvei
ee25d7be38
Prediction fix
2020-05-24 18:20:57 +02:00
Mads Buvik Sandvei
480ce82217
Fixed performance issues related to xr synchronization as well as osg pipelining. Some code refactoring / cleanup.
2020-05-24 18:00:42 +02:00
Mads Buvik Sandvei
3e3ed7ecee
STATIC data variance and asynchronous xrwaitframe.
2020-05-21 19:52:21 +02:00
Mads Buvik Sandvei
288530510d
Some cleanup. Fixed problems arising from latest merge (refactoring).
2020-05-21 01:01:15 +02:00
Mads Buvik Sandvei
5fba3b17e7
Changed logic for updating GUI tracking
2020-05-17 23:17:30 +02:00
Mads Buvik Sandvei
6474d703ae
GUI fixes. Animation fixes, i now understand movement accumulation better and was able to clean up some of the hacks with a better result. Lockpicks and probes now work. Haptics. Ready to be playtested.
2020-05-17 16:25:51 +02:00
Mads Buvik Sandvei
cad6468518
Rewrote action system to be more flexible. Makes writing rebindable actions easier, and lets me disambiguate press vs long-press actions on the same key.
2020-05-15 00:53:49 +02:00
Mads Buvik Sandvei
6f9c405afd
Tentatively completed VR GUI
2020-05-12 22:13:01 +02:00
Mads Buvik Sandvei
57e48cfc03
Separate rendering of window menus. It's still awkward. Needs polishing.
2020-05-01 21:37:01 +02:00
Mads Buvik Sandvei
eab8326841
Vismasked moved to SceneUtil in merge, fixed references.
2020-03-30 02:04:27 +02:00
Mads Buvik Sandvei
6296f9f124
change gui render order based on vr vs non-vr
2020-03-30 01:25:23 +02:00
Mads Buvik Sandvei
47ce69899d
Fixed slash vs. chop
2020-03-28 16:35:49 +01:00
Mads Buvik Sandvei
d658065fe7
Show full player body when knocked out or dead
2020-03-28 16:30:56 +01:00
Mads Buvik Sandvei
68c75f66eb
Improvements on combat
2020-03-23 23:32:47 +01:00
Mads Buvik Sandvei
893b75d767
Realistic combat, first draft
2020-03-15 15:31:38 +01:00
Mads Buvik Sandvei
31f5b76394
Drop items at location
2020-03-10 22:39:11 +01:00
Mads Buvik Sandvei
08c08646cd
Fix activating objects the player is pointing at
2020-03-08 18:54:50 +01:00
Mads Buvik Sandvei
e573a260cb
Rudimentary menu interactions
2020-03-08 14:14:24 +01:00
Mads Buvik Sandvei
2ae7255fac
Pointing beam to visualize what the player is pointing at
2020-03-08 00:44:39 +01:00
Mads Buvik Sandvei
f883951629
Mipmap for GUI RTT texture
2020-03-05 20:35:53 +01:00
Mads Buvik Sandvei
5b24c5f3ce
Render menu to quad
2020-03-05 00:04:23 +01:00
Mads Buvik Sandvei
f25be2a44a
RTT camera
2020-03-01 23:05:38 +01:00
Mads Buvik Sandvei
de2354abda
Menu quad gets rendered, but not the menu
2020-03-01 12:54:32 +01:00
Mads Buvik Sandvei
da03e8bf41
Some refactoring
2020-02-29 23:53:56 +01:00
Mads Buvik Sandvei
f5e01417ba
Fixed jitter bugs with the new player tracking.
2020-02-29 14:13:56 +01:00
Mads Buvik Sandvei
1d47807419
Character movement following VR movement
2020-02-23 12:56:48 +01:00
Mads Buvik Sandvei
bdade49129
In-place turning
2020-02-23 11:02:38 +01:00
Mads Buvik Sandvei
287886d545
Touch input of activation now makes character point forward.
2020-02-16 14:53:35 +01:00
Mads Buvik Sandvei
0840d2dd92
Bugfix. Lost xr controls if exiting containers after drag-and-drop
2020-02-15 21:33:26 +01:00
Mads Buvik Sandvei
da73df1707
Basic input management
2020-02-15 20:01:11 +01:00
Mads Buvik Sandvei
49e0c6f17b
Basic hand tracking.
2020-02-14 22:11:19 +01:00
Mads Buvik Sandvei
e948b686e8
some cleanup
2020-02-02 17:37:43 +01:00
Mads Buvik Sandvei
14039e5e25
Predictions work perfectly with this. Committing that and clean up later.
2020-02-02 13:12:53 +01:00
Mads Buvik Sandvei
fea964a6f3
Tightened prediction point
2020-01-27 18:34:48 +01:00
Mads Buvik Sandvei
951879240c
Simplified render timing by separating rendering from the openxr swapchain, and instead blitting and submitting separately
2020-01-26 20:06:47 +01:00
Mads Buvik Sandvei
51125d4f3e
Improved frame pose prediction by barriering slave access as well. Slaves were updating on either the old frame timing or new by chance, causing jittery tracking. Accounted for morrowind's unit length (1 unit = 64 yards)
2020-01-25 14:27:13 +01:00
Mads Buvik Sandvei
2accdc4441
Split view into worldview and menu, for ease of layer management. Basic pose management.
2020-01-24 00:14:23 +01:00
Mads Buvik Sandvei
2778775070
First commit. Wrote an osgviewer, achieved display.
2020-01-10 00:10:09 +01:00