Commit graph

229 commits

Author SHA1 Message Date
howard-stearns
581d87d653 feedback re magic numbers and variable name. 2016-06-22 16:40:10 -07:00
howard-stearns
e4dbb5e61a Make mouse reticle be perpendicular to head. 2016-06-22 09:57:38 -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
Anthony J. Thibault
e04d86a75a Change rendering of reticle when in HMD mode
Properly take the overlay model matrix into account.
Reticle depth is now relative to the eye, not relative to the overlay sphere.
2016-06-17 12:10:26 -07:00
Bradley Austin Davis
6ad1008a56 Allow explicit overlay alpha from scripts 2016-06-15 17:24:32 -07:00
Bradley Austin Davis
f3c47acbb2 Fix offset when UI transform is not identity 2016-06-14 09:49:25 -07:00
Howard Stearns
d05987de6d Merge pull request #8042 from jherico/lasers
First pass prototype of laser rendering in OpenVR plugin
2016-06-13 18:06:15 -07:00
Bradley Austin Davis
6707f889b8 Fixing laser offset, support laser in Oculus 2016-06-13 17:33:18 -07:00
Brad Davis
130c0dda31 PR feedback 2016-06-13 13:04:11 -07:00
Brad Davis
9640727f51 Hand laser rendering support in HMD plugins. 2016-06-13 13:04:11 -07:00
Anthony J. Thibault
5ef6847dc3 HMD re-centering while driving improvements.
Previously the HUD fading in/out would also recenter the hmd sensor and the avatar, which caused many problems including:
  * The user's view could shift vertically.
  * Your avatar would briefly go into t-pose
  * other users would see your avatar go into t-pose.

Now we now move the UI sphere instead, which results in a much smoother experience.

MyAvatar: added hasDriveInput method.

OverlayConductor:
* removed avatar and sensor reset, instead the overlay's modelTransform is changed.
* revived STANDING mode, which is active if myAvatar->getClearOverlayWhenDriving() is true and you are wearing an HMD.
* SITTING & FLAT mode should be unchanged.
* Instead of using avatar velocity to fade out/fade in the hud, We use the presense or absanse of avatar drive input.
* Additionally, we check distance to the UI sphere, and quickly recenter the hud if the users head is too close to the actual hud sphere.

CompositorHelper:
* Bug fixes for ray picks not using the modelTransform.

HmdDisplayPlugin:
* Bug fixes for rendering not using the modelTransform.
2016-06-08 18:36:36 -07:00
Brad Davis
8c13ff4ee1 Pinned UI support 2016-06-02 17:24:25 -07:00
Brad Davis
5ba8372c21 Moving GL backend out of GPU 2016-05-16 12:54:17 -07:00
Brad Hefta-Gaub
757eea16a6 Merge pull request #7809 from howard-stearns/hand-controller-pointer
Hand controller pointer
2016-05-10 16:37:26 -07:00
howard-stearns
af8d0dc280 Fix setReticlePosition and getReticlePosition to match. 2016-05-09 11:34:52 -07:00
Bradley Austin Davis
0f768b13b9 Working on OSX Rift functionality 2016-05-07 20:17:31 -07:00
howard-stearns
acc216726a Cleanup 2016-05-03 16:32:53 -07:00
howard-stearns
fdf9c0a217 Fix offset so that non-full-size window can be located anywhere on screen. 2016-05-03 16:26:45 -07:00
Howard Stearns
773770a7fc All but origin-correction. 2016-05-03 07:01:23 -07:00
Brad Hefta-Gaub
8f3d48190a switch to QRect instead of vec4 2016-04-16 16:59:47 -07:00
Brad Hefta-Gaub
c7f58dc17c first cut at exposing recommend overlay rectangle 2016-04-14 20:47:31 -07:00
Brad Davis
1a02220886 Fixing wobble 2016-04-12 17:50:59 -07:00
Brad Davis
3325c58ceb Vive timewarp implementation 2016-04-12 16:44:15 -07:00
Brad Davis
df8ad57185 Fix FPS counter 2016-04-11 00:25:16 -07:00
Brad Hefta-Gaub
772e7b95f6 Merge pull request #7584 from zzmp/log/dep-is-set
Avoid warning for expected unset PresentThread
2016-04-07 14:47:56 -07:00
Brad Hefta-Gaub
8c15116190 fix auto-hide logic in depthReticle 2016-04-06 11:00:43 -07:00
Zach Pomerantz
37efeb7f29 Avoid warning for expected unset PresentThread 2016-04-05 14:59:59 -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 J. Thibault
73725106f0 OpenGLDisplayPlugin: For non-threaded present use fetchAndReleasewithGpuWait 2016-03-23 17:13:29 -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
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
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
7045680bc7 Reduce crashes on switching display plugins 2016-03-17 10:13:52 -07:00
Bradley Austin Davis
384351067e Don't crash when the Rift is turned off 2016-03-16 20:16:28 -07: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
Brad Hefta-Gaub
92c47fdc8b fix build buster, CR feedback 2016-03-10 16:44:59 -08:00
Brad Hefta-Gaub
387c156ce3 add failsafe for fade, so it can't endup between start and end property value 2016-03-10 16:24:30 -08:00
Brad Hefta-Gaub
9842689ec0 remove noise and return early 2016-03-10 16:19:52 -08:00
Brad Hefta-Gaub
0c12c6ef90 dont be an idiot 2016-03-10 16:14:56 -08:00
Brad Hefta-Gaub
ff30611234 first cut at getting overlays to toggle again 2016-03-10 16:07:49 -08:00
Brad Davis
f04d1b4998 Handle fake mouse events properly when triggered from a script 2016-03-09 22:11:40 -08:00
Bradley Austin Davis
7d046c30a9 Bypass baffling OSX GL error 2016-03-08 12:23:29 -08:00
Brad Davis
8988dd9771 Fix mouse drag turning 2016-03-07 17:14:44 -08:00
Brad Davis
f5acf49e47 Fix reticle transform when depth != 1 2016-03-07 17:14:42 -08:00