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

Improve mouselook/pause UX and state transitions #440

Open
kpreid opened this issue Dec 20, 2023 · 0 comments
Open

Improve mouselook/pause UX and state transitions #440

kpreid opened this issue Dec 20, 2023 · 0 comments
Labels
area: ui kind: incomplete A feature is partially implemented; the current state of the code is inconsistent

Comments

@kpreid
Copy link
Owner

kpreid commented Dec 20, 2023

Right now, mouselook is handled in a weird way where it's not the default and you have to push a button, and then it's kind of sticky. Most games that use mouselook instead arrange to have two states:

  • In game, unpaused, mouselook active.
  • In a menu, paused, mouselook inactive.

And if pointer lock (in web terms, or cursor grab in winit terms) is lost (externally imposed focus loss etc), then the game should enter the pause mode.

There are at least two reasons why I haven't just ended up there already:

  • I want the interface to be usable under conditions where pointer lock is unsupported.
  • I want launching the application to not demand focus + mouselook in order to be able to look at the world — this is mostly a developer workflow thing.

I think that a reasonable solution for the latter is to have a “pause” (may or may not actually pause) screen which frames the world rather than obscuring it with a central dialog-box style display. Then, clicking anywhere in the world would by default activate mouselook.

@kpreid kpreid added kind: incomplete A feature is partially implemented; the current state of the code is inconsistent area: ui labels Dec 20, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area: ui kind: incomplete A feature is partially implemented; the current state of the code is inconsistent
Projects
None yet
Development

No branches or pull requests

1 participant