Ryan Huffman
7bb2755913
Add chrome tracing support
2016-12-16 01:14:01 -08:00
Brad Hefta-Gaub
3a68f48cd7
disable threaded reprojection when running oculus in OpenVR
2016-11-14 16:30:18 -08:00
Seth Alves
da83fd9fa4
try, try again
2016-11-13 12:56:16 -08:00
Brad Davis
162f24decd
Add stutter tracking for Oculus
2016-11-11 10:12:41 -08:00
Brad Davis
90f55f0cd5
Add stutter tracking
2016-11-10 11:56:38 -08:00
Brad Davis
018d945b85
Display warning overlay instead of scene when below min spec
2016-10-27 15:51:26 -07:00
Brad Hefta-Gaub
bfe6ebb44f
some tweaks
2016-10-27 12:04:46 -07:00
Brad Hefta-Gaub
c3f5df8f0b
Merge branch 'master' of https://github.com/highfidelity/hifi into report45hzTarget
2016-10-27 11:36:56 -07:00
Brad Davis
a53049b186
Consolidate activity tracking code
2016-10-26 17:19:24 -07:00
Brad Davis
f4f1b04cf0
Use OpenVR to determine if async reprojection is enabled
2016-10-26 16:02:06 -07:00
Brad Davis
1c89fa2291
Make threaded submit in OpenVR controllable from menu
2016-10-26 15:28:42 -07:00
Brad Davis
e7355e84f3
Disable OpenVR submit thread
2016-10-26 15:28:40 -07:00
Brad Hefta-Gaub
23b74c7aff
when vive is on i5 report a target frame rate of 45 so we can see that in stats
2016-10-26 14:20:58 -07:00
Brad Davis
d4e83a7461
Don't crash on OpenVR activation when SteamVR isn't running
2016-10-13 16:37:50 -07:00
Brad Davis
2d6522a76f
Merge pull request #8786 from hyperlogic/bug-fix/more-openvr-shutdown-crashes
...
Prevent crashes in openvr on shutdown
2016-10-12 13:54:56 -07:00
Anthony J. Thibault
973ee544fb
Prevent crashes in openvr on shutdown
...
By ensuring that there is an opengl context is bound before calling VR_Shutdown()
2016-10-11 16:36:29 -07:00
Brad Hefta-Gaub
3aa1c36f53
Merge branch 'master' of https://github.com/highfidelity/hifi into betterAway
2016-10-08 11:50:10 -07:00
Brad Davis
8526ac74a5
Turn on forced reprojection on i5 systems
2016-10-07 13:36:49 -07:00
Brad Davis
d3d3aa587c
Remove oglplus usage from OpenVR
2016-10-02 11:44:33 -07:00
Brad Hefta-Gaub
73e3e993fb
fix Vive's HMD.mounted
2016-09-26 17:29:11 -07:00
Brad Davis
91bfa7677c
Updating stats display for threaded rendering
2016-09-02 14:41:49 -07:00
Brad Davis
617633b85c
Moving to custom context creation
2016-08-29 11:21:54 -07:00
Brad Davis
02c79d9714
Fix the OpenVR issues on AMD
2016-08-26 19:05:29 -07:00
Zach Pomerantz
dbb916e2d9
fix redundant openvr fence condition
2016-08-22 13:59:18 -07:00
Zach Pomerantz
a67c5221e3
flush openvr fence before looking for it
2016-08-22 13:46:00 -07:00
Brad Davis
a32ab77b7d
Address issues with random camera locations caused by bad HMD sensor poses
2016-08-17 15:22:30 -07:00
Brad Davis
ff24bc982c
Re-disable reprojection in OpenVR
2016-08-12 22:28:58 -07:00
Brad Davis
82081d7d57
Address vsync weirdness
2016-08-12 22:28:58 -07:00
Brad Davis
719e555381
Restoring reprojection to OpenVR
2016-08-12 22:28:55 -07:00
Brad Davis
a4c5c7bc16
Hopefully better handling of the OpenVR api
2016-08-12 22:28:40 -07:00
Brad Davis
b662ae4cfa
More profiling ranges
2016-08-12 22:28:36 -07:00
Brad Davis
adcfd55cc0
Batch replay reprojection
2016-08-12 22:28:23 -07:00
Brad Davis
7e93747acf
Working on reprojection
2016-08-12 22:28:22 -07:00
Atlante45
45921a5c8d
Restore split behavior for inputs/displays on quit
2016-08-08 15:39:25 -07:00
Anthony J. Thibault
90beb30e8a
Filter out bad openvr HMD poses that are below the floor
...
When interface is launched and steam vr is NOT running, openvr can return bad HMD poses for a few frames.
To workaround this, filter out any hmd poses that are obviously bad, i.e. beneath the floor.
2016-07-19 18:12:20 -07:00
Brad Hefta-Gaub
39ff03cfb5
reduce log spam in Vive plugins
2016-06-24 10:53:46 -07:00
howard-stearns
67f76db7e4
Merge branch 'master' of https://github.com/highfidelity/hifi into vive-ui
2016-06-22 15:58:53 -07:00
howard-stearns
baa9139881
Merge branch 'vive-ui' of https://github.com/highfidelity/hifi into vive-ui
2016-06-21 17:02:23 -07:00
Ryan Huffman
70be7b3273
Merge branch 'master' of https://github.com/highfidelity/hifi into feat/user-actions
2016-06-21 16:39:25 -07:00
Ryan Huffman
da71fcb57f
Update connected device detection implementation
2016-06-21 16:37:58 -07:00
Brad Davis
f3bad3a63b
Don't trigger keyboard on revealing the overlay layer
2016-06-21 16:04:06 -07:00
howard-stearns
8421931c56
Merge branch 'master' of https://github.com/highfidelity/hifi into vive-ui
2016-06-21 14:47:45 -07:00
Brad Hefta-Gaub
160a5de271
CR feedback
2016-06-21 12:49:42 -07:00
Brad Hefta-Gaub
c322317878
rework plugins to not depend on PluginContainer unless they want to
2016-06-21 12:07:05 -07:00
Bradley Austin Davis
5bc8b53d1b
Merge remote-tracking branch 'upstream/master' into vive-ui
2016-06-17 10:56:53 -07:00
Bradley Austin Davis
6ad1008a56
Allow explicit overlay alpha from scripts
2016-06-15 17:24:32 -07:00
Bradley Austin Davis
0b0977f362
Support keyboard suppresion, control suppresion while in keyboard mode
2016-06-15 10:48:48 -07:00
Atlante45
5560ba9a4c
Quit application when SteamVR requests it
2016-06-14 16:29:50 -07:00
Bradley Austin Davis
f3c47acbb2
Fix offset when UI transform is not identity
2016-06-14 09:49:25 -07:00
Bradley Austin Davis
6707f889b8
Fixing laser offset, support laser in Oculus
2016-06-13 17:33:18 -07:00
Brad Davis
9640727f51
Hand laser rendering support in HMD plugins.
2016-06-13 13:04:11 -07:00
Brad Davis
eab611acc0
Enable Steam VR text input
2016-06-07 21:52:20 -07:00
howard-stearns
849bee977a
Do not send stale vive data as valid after deactivating.
...
(cherry picked from commit e6cc1fabe0
)
2016-06-04 09:07:51 -07:00
Brad Davis
ac5912df01
Fix crash on shutdown of SteamVR
2016-05-27 13:40:47 -07:00
Brad Davis
07562f72af
Doing a pass over the input plugins and controller code
2016-05-20 14:50:23 -07:00
Brad Davis
3421c10c1b
Fixing vive hand controllers
2016-04-13 10:35:39 -07:00
Brad Davis
1a02220886
Fixing wobble
2016-04-12 17:50:59 -07:00
Brad Davis
73ec40dae6
Making a debug mechanism for force OpenVR
2016-04-12 16:44:16 -07:00
Brad Davis
3325c58ceb
Vive timewarp implementation
2016-04-12 16:44:15 -07:00
Brad Davis
f569cbf70e
Add debugging output, fix timewarp
2016-03-30 10:40:32 -07:00
Zach Pomerantz
931cad34d1
Check plugin activation success
2016-03-28 12:05:58 -07:00
Anthony Thibault
88c4e54cff
openvr: predict 3 frames into the future
...
Becasue I revered the latency fix in the GLEscrow queue.
*sigh*
2016-03-23 17:38:40 -07:00
Anthony J. Thibault
0d37515784
Merge branch 'master' into tony/vive-rendering-work
2016-03-23 15:59:59 -07:00
Anthony Thibault
209524a5c0
openvr: Non-threaded present work
...
In the unlikely event you hit 90htz in non-threaded present mode, you will have perfect tracking and latency.
This verifies that there are no other sources of tracking or rendering latency, other then the ones we already know about.
2016-03-22 15:38:10 -07:00
Zach Pomerantz
64ced6ee04
Add comment explaining bare glGetError
2016-03-22 12:04:24 -07:00
Anthony Thibault
b1286517c6
Removed frame latency in GLEscrow
...
This could occur if the GLEscrow queue has extra frames in it.
When new textures were fetched, before this fix, they were simply popped from the queue.
This commit introduces a loop, that will fetch from the queue until it is empty.
2016-03-21 21:51:16 -07:00
Anthony Thibault
225c462685
Improved NSIGHT instrumentation
...
* Application::idle, physics and avatar processing are tracked
* Application::paintGL frameNumber payload is tracked
* OpenGLDisplayPlugin::present is profiled with corresponding frameNumber payload
* Added color and payload support to Nsight ProfileRange class.
2016-03-21 21:47:59 -07:00
Anthony Thibault
0d046b12de
OpenVR: Moved WaitGetPoses after main window preview.
2016-03-21 17:39:10 -07:00
Anthony Thibault
5b2a050df7
display-plugins: Pulled getHeadPose into common base class.
...
* Moved getHeadPose and _headPoseCache out of each derived class and into HmdDisplayPlugin.
* updated comment in application.
2016-03-20 14:08:35 -07:00
Anthony J. Thibault
960ffd9c9e
DisplayPlugins: updateHeadPose() no longer returns a value.
...
Also, moved updateHeadPose so that the overlay and the main rendering use the same headPose.
Which should also be the same place the latencyMarker for the ovr_GetTrackingState is set.
2016-03-18 15:16:58 -07:00
Anthony J. Thibault
2faaf243a1
Revert change to OpenVrDisplayPlugin::isSupported()
2016-03-18 13:42:31 -07:00
Anthony J. Thibault
d218ca4960
openvr: fix for crash on exit
...
Before this fix, a script could call into HMD.getHUDLookAtPosition2D() while the app was shutting down, which in turn would call
getHeadPose() on the currently active display plugin. This call could cause a crash within the openvr plugin, because the SDK was either shutdown, or in the process of shutting down on the main thread.
This fixes this by spliting the previous DisplayPlugin::getHeadPose(int) into two parts:
* updateHeadPose(int) which is only called once a frame and only by the main thread.
* getHeadPose() which is thread-safe and will return a cached copy of the hmd pose sampled by the last updateHeadPose.
2016-03-18 12:26:11 -07:00
Bradley Austin Davis
cde56d6fa2
Disable OpenVR plugin when Oculus HMD is connected
2016-03-17 10:13:52 -07:00
Bradley Austin Davis
7045680bc7
Reduce crashes on switching display plugins
2016-03-17 10:13:52 -07:00
Brad Davis
27033e5bb5
Fix vive crash on deactivate
2016-03-12 21:48:36 -08:00
Chris Collins
ae596d79f1
Merge pull request #7317 from jherico/hmd_worn
...
Expose a property in display plugins to determine if the device is visible to the user
2016-03-11 11:46:06 -08:00
Brad Davis
87c9961aa8
Expose a property in display plugins to determine if the device is visble to the user
2016-03-10 17:19:32 -08:00
Anthony Thibault
153f7fc3aa
OpenVR: adjusted translation of UI sphere overlay
2016-03-10 09:45:47 -08:00
Anthony Thibault
42d27557a1
OpenVR: remove 180 y rotation for UI bounds.
...
Turns out the room I was using was misconfigured.
2016-03-09 18:42:58 -08:00
Anthony Thibault
5df616be37
OpenVR: More usable UI Sphere overlay location
...
Also, added a debug option to display SensorToWorld matrix in Developer > Avatar menu.
2016-03-09 16:24:08 -08:00
Brad Davis
28103cf5ef
Migrate composition of the overlay and pointer to the present thread
2016-03-07 17:14:41 -08:00
Anthony Thibault
3b87cd0ea8
Improve hold action by using controller velocity
...
The AvatarHoldAction now derives the body velocity by using data from the controller::Pose. Rather then trying to derive it based on previous positions. This results in more acurate motion of the held object when the hold is released.
OpenVR input plugin: pass the velocity and angularVelocity directly from the controller pose to the controller::Pose.
2016-02-22 19:15:22 -08:00
Anthony Thibault
942f2c13ab
Vive: smoother updates for IK driven by vive controllers
...
Before this PR the simulation rate was clamped to never exceed 60htz.
This had problems when waving the vive hand controllers in the world,
they would jitter. The simulation rate is now clamped to never exceed
120 htz. This has the effect of synchronizing the display and the
update rates to 90htz.
Also there are improvements to vive support if threaded present is
disabled.
2016-02-19 15:58:13 -08:00
Anthony Thibault
93f61fce7a
OpenVRDisplayPlugin: predict poses for better tracking
...
Extrapolate the next set of poses for HMD and hand controllers.
Currently we predict 44ms into the future, this seems too high, however
it was discovered by inspection to be the best value.
Obviously there is a source of latency that we need to track down,
however even with this latency, it is a much improved experience.
2016-02-18 18:00:04 -08:00
Brad Davis
8289c39a2a
Removing flicker from OpenVR mirror
2016-02-17 14:48:24 -08:00
Brad Davis
d61f4fbb25
PR feedback
2016-02-16 16:44:16 -08:00
Brad Davis
56fc9ea301
Remove distortion on HMD previews, both mono and stereo
2016-02-15 21:46:29 -08:00
Anthony J. Thibault
c8e6aee3e7
OpenVr: fix for conflict between openvr and oculus display plugins
...
* Call vr::VR_Shutdown() when ref-count goes to zero. The ref-count
is ncessary because the vr::IVRSystem poitner is shared between the
the openvr input and display plugins.
* OpenVR plugins options will display in the menu if vr::VR_IsHmdPresent() is true.
This is faster then initializing all of openvr and less likely to conflict with the
oculus display plugin.
2016-02-10 16:28:03 -08:00
Anthony J. Thibault
90f0821c2b
OpenVR: reduce thread contention, fix sensor reset
2016-02-10 11:14:26 -08:00
Anthony J. Thibault
b9a16cec25
Re-enable OpenVR plugin
...
* Enabled preview window
* rendering is only mono for some-reason.
2016-02-09 18:49:18 -08:00
Brad Hefta-Gaub
dfba05ae5f
CR feedback
2016-01-11 11:07:07 -08:00
Brad Hefta-Gaub
e2a3903def
add support for advanced/developer plugins and change diplay modes to match spec
2016-01-08 16:58:25 -08:00
Brad Davis
978d39b7f4
Moving OpenVR to external plugin and updating to latest version
2015-12-09 16:20:24 -08:00