-
Notifications
You must be signed in to change notification settings - Fork 218
Add ability to reorient the UI while lying down #563
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Works well when looking up on Oculus and Daydream. I found two issues:
- Looking left or right on Wave seems to not work.
- Looking down doesn't seem to clamp like looking up does where the the UI is only reset past a certain pitch value.
Otherwise looks good. Might be hard to discover though.
app/src/main/cpp/DeviceDelegate.h
Outdated
@@ -54,6 +55,8 @@ class DeviceDelegate { | |||
virtual void StartFrame() = 0; | |||
virtual void BindEye(const device::Eye aWhich) = 0; | |||
virtual void EndFrame(bool aDiscard = false) = 0; | |||
|
|||
static vrb::Matrix CalculateReorientationMatrix(const vrb::Matrix& aHeadTransform, const vrb::Vector& aHeightPosition); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Does this need to be public? If it does, I would think it should be just a util function and not part of DeviceDelegate?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I created a new DeviceUtils class in the latest PR.
c741077
to
dab12a7
Compare
|
This makes me think we should get a process in place to collect release notes, and make sure we accidentally don't drop anything interesting/useful to announce. @MortimerGoro @bluemarvin do you know if there's a GH way to collect these (other than searching a huge number of closed bugs)? Or maybe we should just create a Gdoc for the next version and collect there? |
@avrignaud maybe a good place for that is: https://github.com/MozillaReality/FirefoxReality/releases |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good to me
Github has a compare feature: That link shows all changes that have landed since the 1.0a release. Once we cut a 1.0.1 release: [NOTE: This link won't work until we cut th 1.0.1 release]: 1.0a...1.0.1 will show all commits that have landed since 1.0a release. |
I guess I'm confused what the desired behavior is for this feature. Should the window only be rotated about the x-axis or is rotation about z-axis also desired. I guess for laying on your side? |
I wonder if there should be a setting to turn this off? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
fantastic work! 👍 tested this, and this feels very great to me from a UX perspective. I can't r+ the code though, and need some clarification re: @bluemarvin's questions about the expected behaviour.
actually, after doing some further testing, I realised the orientation reset seems to be askew. try opening the keyboard, adjusting the orientation, and try typing. that's probably the most obvious STR I've found. but it definitely feels off. |
@thenadj Think it might be good to get a design together for keyboard/screen positioning - something that gives the user explicit control, and that we can focus test in future to understand best default starting position. |
z-axis scale is for laying on your side. Oculus Go browser also allows it. We could add a UI setting to enable/disable this. What do you think @avrignaud @thenadj ? |
I would suggest the implementation be consistent with Oculus Browser's. I don't think it needs to be any more complicated than that. |
This seems to work exactly like the oculus browser. Let's land and add any UI in a follow up. |
Design for this is on the to do list. |
Fixes #544