all-is-cubes icon indicating copy to clipboard operation
all-is-cubes copied to clipboard

User interface completeness

Open kpreid opened this issue 3 years ago • 2 comments

All is Cubes should have a user interface which is sufficient for its purposes. Things that are needed for the game to be approachable without prior knowledge:

  • [X] General-purpose text display as part of the widget system, for labels, instructions, text parts of the game state such as block names, and “about the game”. (Done in 03fd53fe5ab668acd528dbfffccecb9fce64c1dd)
  • [ ] A “paused” menu state which interacts with mouselook pointer lock/grab in the conventional fashion (releasing it and pausing when focus is lost or ESC is pressed, and such). #440
  • [ ] More hints and cues about how to interact with things, such as how mouse buttons work with the toolbar, and hover effects to signal clickability.
  • [ ] …

Things that are needed for a “version 1.0” level of completeness:

  • [ ] Inventory #305
  • [ ] Interactive editing of all parts of a Universe.
  • [ ] All of the modes of operation that are available via command-line options (e.g. import/export/record) should be available via menus.
  • [x] “About the app” screen with credit and license information.
  • [ ] Editable keybindings.
  • [ ] …

kpreid avatar Sep 03 '22 19:09 kpreid

Some summarized updates:

  • Text display is better: it is possible to build text display using the components provided by the widget system, but it still requires an &mut Universe to stick text spaces in.

    • Possible solution: UniverseTransactions that can insert an already-created URef so that widgets can dynamically create the text spaces.
    • Possible solution: Block modifier or primitive that actually just draws text. Upside: Cheap. Downside: awkward for text layout; bakes fonts into the world schema. I'm going to call this “good progress, but not done”.
  • Paused page (state) exists but improvements are waiting on having more UI widgets and better layout for VUI pages. Pause interaction with lost focus does not yet exist.

  • In hints and cues: the toolbar selection pointers now look like mice with the relevant button highlighted.

  • Added about page; it is not complete and has terrible layout.

kpreid avatar Oct 17 '22 03:10 kpreid

Commit 03fd53fe5ab668acd528dbfffccecb9fce64c1dd added widgets::Label with the new block-primitive text rendering system.

kpreid avatar May 21 '24 00:05 kpreid