Skip to content

HUD overlay fixes and improvements #838

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 8 commits into from
Dec 15, 2020

Conversation

ctrlaltdavid
Copy link
Collaborator

@ctrlaltdavid ctrlaltdavid commented Oct 24, 2020

The VR HUD overlay has been fixed and improved:

  • Overlay surface is rendered a bit further away (1.5m instead of 1.0m). This makes it easier on the eyes.
  • The horizontal size of the overlay surface has been reduced from 270 deg to 180 deg. This means that it doesn't wrap around "behind" you.
  • The physical (real world) distance required to move before the HUD overlay is recentered on your avatar has been reduced from 0.99m to 0.33m. This makes the HUD always be reasonably centred on your view rather than possibly being very offset at times.
  • Reorienting the overlay surface to better suit your current HMD orientation (i.e., be reasonably well centred on your current view) has been enabled. This means that the HUD overlay can no longer be behind you.
  • Fix un-pinned HUD content (e.g., Web browser window) displaying only every second recentering.
  • Fix laser intersection with HUD overlay dialogs / windows: laser intersects exactly per dialog position and size. This, for example, means that you can now drag dialogs using their top margin.
  • Fix the position of the dialog / window resize outline, displayed when resizing a dialog / window - in both desktop and HMD mode.

@ctrlaltdavid ctrlaltdavid added bug Something isn't working enhancement New feature or request needs CR (code review) labels Oct 24, 2020
@ctrlaltdavid ctrlaltdavid linked an issue Oct 24, 2020 that may be closed by this pull request
@ctrlaltdavid
Copy link
Collaborator Author

ctrlaltdavid commented Oct 24, 2020

Testing

HMD mode ...

The position and orientation of the HUD overlay can most readily be seen if you display the chat bar down the bottom of the screen. (Press Enter to display.)
The browser window (Ctrl-B) can also be useful for testing.

  1. Test that the HUD overlay repositions to be centered on your avatar as you move about your physical VR play space.

  2. Test that the HUD overlay reorients to be reasonably in front of the direction you're facing. (Rotate your head about the y axis and the overlay will jump to follow your gaze as it reaches the edge of the overlay.)

  3. Test laser on HUD items:

  • Laser end point coincides with HUD items.
  • Laser hovers controls on HUD surface (e.g., "x" button in script debug window).
  • Laser click works on HUD surface (e.g., click-and-drag script debug window, "x" button in script debug window closes window).
  • You can reposition dialogs / windows by dragging in their top margin (in addition to their bottom margin).
  1. Test mouse pointer on HUD surface:
  • ... per laser testing.
  1. Dialogs and windows' resize outline now displays in the correct place (i.e., not jumped up from the dialog / window). In both desktop and HMD modes.

@two-one-five two-one-five added this to the 2020.3.2 Release milestone Oct 24, 2020
@two-one-five two-one-five added bugfix and removed bug Something isn't working labels Oct 24, 2020
@ctrlaltdavid ctrlaltdavid added needs testing (QA) The PR is ready for testing CR Approved At least one code reviewer has approved the PR. and removed needs CR (code review) labels Oct 31, 2020
@SilverfishVR
Copy link
Contributor

Overall there are improvements and nothing seems to have broken, the hud still has issues and bugs though.
random observations.

  • recentering and reorientation is a lot better, I think I would prefer it if recenter worked the same for real world movement as it does for controller movement, being locked to avatar Y orientation/position instead of snapping.
  • the scale and distance looks good to me.
  • Intersecting (laser) the window border (close, pin, resize) still only works sporadically, it initially worked for me but now it seems mostly broken (as is normal).
  • scrollbars in hud windows seems to move the window when lasered, instead of actual scrolling.
  • the microphone overlay always work, I can move and click it as expected 😃
  • sometimes, the recenter is slow (or glitchy) so if I turn around, the windows may disappear for a 2-5 seconds 🤔
  • we need to figure out what the pin is supossed to do.

tl:dr the changes in this PR all seems to work 👍 but more fixes (or redesign) is needed to make it good

@two-one-five two-one-five added QA Approved The PR has been tested successfully. and removed needs testing (QA) The PR is ready for testing labels Nov 12, 2020
@ctrlaltdavid ctrlaltdavid added the do not merge do not merge due to issues or pending updates label Nov 12, 2020
@ctrlaltdavid
Copy link
Collaborator Author

Laser intersecting is worse than before. Not obvious why but I'm working on it.

@two-one-five two-one-five removed the QA Approved The PR has been tested successfully. label Nov 12, 2020
@two-one-five two-one-five removed this from the 2020.3.2 Release milestone Nov 12, 2020
@two-one-five two-one-five added this to the 2020.3.3 Release milestone Nov 12, 2020
Also fixes dialog resize outline being drawn in the wrong position
(desktop and HMD).
@ctrlaltdavid ctrlaltdavid added needs CR (code review) needs testing (QA) The PR is ready for testing and removed CR Approved At least one code reviewer has approved the PR. do not merge do not merge due to issues or pending updates labels Nov 23, 2020
@SilverfishVR
Copy link
Contributor

For the first time ever, laser intersecting works as expected now 👍

  • if the windows are supposed to disappear when moving if not pinned that still don't work, not sure I miss it though 🤷
  • the scrollbar on the browser works, the one on the debug window does not, it grabs and moves instead.
  • the windows still disappear for a few seconds sometimes, they always come back quickly so definitely improved.

All in all, this PR does indeed fix & improve the HUD so I approve 👍 And thank you for the contribution 😄

@ctrlaltdavid
Copy link
Collaborator Author

The window disappearing sometimes for a few seconds is the windows disappearing when (Interface thinks) you've moving. Windows that are pinned don't disappear, though.

Scrollbar on the debug window, I'll have a look at.

@ctrlaltdavid
Copy link
Collaborator Author

I've created a separate issue for the script log window's scrollbar: #892

@two-one-five two-one-five added the rebuild rebuild through the GithubActions label Dec 3, 2020
@digisomni digisomni added CR Approved At least one code reviewer has approved the PR. QA Approved The PR has been tested successfully. and removed needs CR (code review) needs testing (QA) The PR is ready for testing labels Dec 15, 2020
@digisomni digisomni merged commit 0f87e4c into vircadia:master Dec 15, 2020
@ctrlaltdavid ctrlaltdavid deleted the fix/hud-recentering branch December 15, 2020 04:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bugfix CR Approved At least one code reviewer has approved the PR. enhancement New feature or request QA Approved The PR has been tested successfully. rebuild rebuild through the GithubActions
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Fix VR HUD to correctly follow user's orientation.
6 participants