Skip to content
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

Adding "controls" #43

Open
marcoscaceres opened this issue Aug 4, 2022 · 10 comments
Open

Adding "controls" #43

marcoscaceres opened this issue Aug 4, 2022 · 10 comments

Comments

@marcoscaceres
Copy link
Contributor

As with other media elements (again #13), having "controls" for media specific things can be extremely helpful for accessibility (and just generally helpful for developers not needing to deal with things like the fullscreen API).

It would be nice to consider adding support for controls and then leaving it mostly to the UA as to what those controls are... we could figure out a standard set of things, like <video> provides.

@cabanier
Copy link
Member

cabanier commented Aug 4, 2022

Maybe this can be added in the later level of the spec?
Adding system controls might interfere with script that doesn't expect that the user is making changes.

Also, afaik almost no sites use the built-in video controls

@marcoscaceres
Copy link
Contributor Author

Adding system controls might interfere with script that doesn't expect that the user is making changes.

Sorry, could you elaborate what you mean by "the user making changes"? Also, how would it differ from, say,<video>?

Also, afaik almost no sites use the built-in video controls

I agree that well-resourced sites should absolutely have the ability to add their own controls. However, as with video/audio, there are significant advantages usability, accessibility, robustness, and just ease of use to not requiring scripting for controls (i.e. to the user agent providing them... whatever they may be...). It's also highly future proof, with the user agent being able to add device-specific controls as new capabilities become available to the user agent.

Personally speaking, when embedding videos on page, I've always relied on the browser to provide me with controls.
For example, here is Github, controls are provided by the user agent:

test.mov

@mrdoob
Copy link

mrdoob commented Aug 8, 2022

A 3D model can have more than one animation.

For example a game character can include walking, running and jumping animations.

The controls ui would then need to include a drop down to select the animation to play.

@js-choi
Copy link

js-choi commented Aug 8, 2022

Also, afaik almost no sites use the built-in video controls

Safari on iPhone, as far as I know, always displays native video controls in full-screen web <video> elements, even on pages that would otherwise provide their own control UI such as YouTube and Vimeo. This is allowed by the specification:

User agents may allow users to view the video content in manners more suitable to the user, such as fullscreen or in an independent resizable window. […] In such an independent viewing mode, however, user agents may make full user interfaces visible, even if the controls attribute is absent.

I suspect that any user agent that does this to video content would also would apply the same principles to 3D-model content.

@marcoscaceres
Copy link
Contributor Author

@mrdoob wrote:

The controls ui would then need to include a drop down to select the animation to play.

Could definitely be in option. However, that might not work well unless the camera also moved to the right position so the user could view the animation.

Speaking hypotheticals here: I was thinking more if the format defined a "top-level" (or scene-level?) animation.

@mikkoh
Copy link

mikkoh commented Aug 10, 2022

Actually if we're talking about 3D controls in terms of accessibility having directional buttons to tumble a model and + and - to zoom in and out is ideal for some users. So outside of animation control there may be other controls that need to be investigated.

ASFAIK the built in <video> controls haven't kept up with accessibility standards of today. I'm no a11y expert but folks who I've talked to have suggested that it's better to implement custom controls using other html elements. This leads me to wonder if decoupling the controls from the element is better because there maybe a faster innovation loop on UX for different a11y levels.

@marcoscaceres
Copy link
Contributor Author

Right, but they are not mutually exclusive. You still want a minimal set of controls (or potentially a specialized set of controls) for some users, while being privacy preserving. Sites can still offer a rich set of HTML based controls, but some users should still be able to enable UA-provided controls should they desire or need them (or they simply choose to disable JS).

@mikkoh
Copy link

mikkoh commented Aug 10, 2022

Agreed. I've found the minimal controls in videos to be valuable. Especially as a developer having the ability to test playback immediately is awesome.

@AdaRoseCannon
Copy link
Member

AdaRoseCannon commented Aug 10, 2022 via email

@Malvoz
Copy link
Contributor

Malvoz commented Sep 20, 2022

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

7 participants