-
-
Notifications
You must be signed in to change notification settings - Fork 4.3k
Quest controller prep #4073
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
Quest controller prep #4073
Conversation
dmarcos
left a comment
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.
Thanks. Just one concern. How should an appllication discriminate between touch / quest? Supermedium for instance, displays an image with controller instructions at launch. Now there’s 1:1 mapping between physical controller and component. This breaks the pattern and applications will have to treat it differently.
| left: {origin: {x: 0.008, y: -0.004, z: 0}, direction: {x: 0, y: -0.8, z: -1}}, | ||
| right: {origin: {x: -0.008, y: -0.004, z: 0}, direction: {x: 0, y: -0.8, z: -1}} | ||
| var CONTROLLER_DEFAULT = 'oculus_touch_gen1'; | ||
| var CONTROLLER_PROPERTIES = { |
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.
Is not gen1 / gen2 more of an Oculus nomenclature? Wouldn’t be more clear for developers to call it Rift and Quest?
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.
Rift S and Quest have same Controllers
| buttonTouchColor: {type: 'color', default: '#8AB'}, | ||
| buttonHighlightColor: {type: 'color', default: '#2DF'}, // Light blue. | ||
| model: {default: true}, | ||
| controllerType: {default: 'auto', oneOf: ['auto', 'oculus_touch_gen1', 'oculus_touch_gen2']}, |
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.
Maybe not needed. Any scenario
where someone wants to support just one of them?
| name: 'oculus-touch-controls', | ||
| model: this.data.model, | ||
| rayOrigin: RAY_ORIGIN[this.data.hand] | ||
| rayOrigin: this.displayModel[this.data.hand].rayOrigin |
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.
Maybe pass the controller type (Rift, Quest) as well?
|
@DigiTec Any ideas on differentiating touch and quest controllers? |
|
@DigiTec Congrats on the Quest Launch! A-Frame works fantastically on the Oculus browser. If you can share a gltf model of the controllers we can ship this PR. Thanks for your help. |
|
My proposal for the controller model selection is that we deliver the
details in the payload as suggested in the thread. This will solve two
cases, the one we are in with Quest/Rift S/Rift where these are all Oculus
Touch controllers but with some visual differences. The second case it will
solve is specifying a model override. While testing improvements to the old
Rift model it was not possible for me to iterate quickly and locally
because of the way we fetch directly from the CDN. Being able to specify a
model override will be useful for the debugging case, but also if someone
has authored a better model for their scenario (performance, capabilities,
or some other vector of improvement I haven't thought about).
The current glTF I have was not good. We have to iterate more on the model.
I've been out of office for a bit and have been unable to drive all of the
model fixes needed. I hope to jump on that next week. I suspect it will be
a couple more weeks before we have a useful model (one where we can
properly articulate the joints/buttons, and highlight etc...)
…On Wed, May 22, 2019 at 11:48 AM Diego Marcos ***@***.***> wrote:
@DigiTec <https://github.com/DigiTec> Congrats on the Quest Launch!
A-Frame works fantastically on the Oculus browser. If you can share a gltf
model of the controllers we can ship this PR. Thanks for your help.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#4073?email_source=notifications&email_token=AAMS3HVJUKM57GXF47R3ZRLPWWIQBA5CNFSM4G46ODP2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODV76B2Q#issuecomment-494919914>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/AAMS3HQDRSBBSXDV2I4JVCTPWWIQBANCNFSM4G46ODPQ>
.
|
|
@DigiTec Thanks for the update and welcome back. Using an alternative model should be possible by doing |
|
Are there any updates on the issue? It seems we are still missing models for the quest. |
|
No models yet. You should be able to use oculus-touch-controls in the meantime (with old touch models that you can replace). Buttons mapping remain the same. |
|
FWIW Firefox Reality has Quest controller models here: https://github.com/MozillaReality/FirefoxReality/tree/master/app/src/oculusvr/assets |
|
@DigiTec Are there any official Quest controllers models we can use to finish up this PR? Thanks for all your help. |
|
Having this conversation internally now. We need to build some. The set we have isn’t compatible with standard three.js rendering.
… On Oct 14, 2019, at 1:31 PM, Diego Marcos ***@***.***> wrote:
@DigiTec Are there any official Quest controllers models we can use to finish up this PR? Thanks for all your help.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or unsubscribe.
|
@DigiTec Thanks for the quick update. We use the glTF viewer to make sure that models work in THREE / A-Frame. If possible, separate parts to animate / highlight would be great. The Touch v1 models we use are a good example. Let me know if I can do anything to help. |
|
@Knochi has kindly contributed gen2 models on aframevr/assets#34 If they look good for everybody, we can use them with this PR in the interim until official models are available. |
|
I think these are as official as the gen1 ones. They are from the MozillaReality Repo https://github.com/aframevr/assets/tree/master/controllers/oculus |
e3baad6 to
facb9ca
Compare
facb9ca to
e2f8003
Compare
|
I integrated the models that @Knochi kindly made based on the Mozilla Reality ones. I also adjusted the model pivot and |
Description:
The generation 2 touch controllers used by the Oculus Quest will have all of the same buttons and will only differ in the appearance of the model. For this reason, we are factoring the code to allow for only key attributes such as the model url, ray origin and pivot points to be changed. The rest of the model should have similar button mesh structures and so all of the same code should be used.
Changes proposed: