DestinationSol
DestinationSol copied to clipboard
UI Improvements
Our current UI system is not very easy to work with and frankly a bit of a bodge (think magic constants, 0-1 percentages of the screen height, etc.). As such it is not very fun, and rather difficult to work with.
Option 1: Embed NUI from Terasology
This is the preferred option, however it will likely involve the most work. Terasology has a fantastic UI library, however it is still embedded within the main engine. Work must first be done to extract NUI from Terasology (see https://github.com/MovingBlocks/Terasology/issues/2307) and then DS would be adapted to use it.
- [x] Resolve dependencies in https://github.com/MovingBlocks/Terasology/issues/2307
- [x] Extract NUI into standalone library
- [x] Adapt Destination Sol to use it
- [ ] Port over screens
~~Option 2: Revive uiOverhaul~~
There was an attempt at solving these issues which lies in the uiOverhaul
branch, however it grew old and stale after months of not receiving the love it deserved (see conflicts in #443 and many screens were not ported over). There were also some PRs into it (with the uiOverhaul
label) to port over more screens but they were not seen to, under the expectation that uiOverhaul
was dying.
This option involves reviving and finishing the uiOverhaul
effort.
- [ ] ~~Rebase
uiOverhaul
~~ - [ ] ~~Fix any bugs~~
- [ ] ~~Merge the PRs into it where appropriate~~
- [ ] ~~Fix any more bugs~~
- [ ] ~~Port over any remaining screens~~
~~Option 3: Start a new UI Overhaul~~
Start from scratch replacing the current UI system with something better.
Todo before closing issue
- [ ] Delete
uiOverhaul
branch - [ ] Delete
uiOverhaul
label
On a related note: it would be nice to support sliders for some of the UI settings after a conversion, such as for sound volume
21:9 / 2560x1080 First-time startup in windowed mode
Video: https://cdn.discordapp.com/attachments/389093174921920512/733357135555067924/vid.mp4
Images:
Going into fullscreen mode does not fix it. Restarting from windowed mode does not fix it. Restarting from fullscreen mode fixes it. Going from fullscreen mode back to the windowed mode when it was fixed produces this (Slightly misaligned).
Going to fullscreen mode from above fixes it without a restart.
Examples of fixed GUI
Aaand we have NUI!
I think this is done now? All the significant NUI screens were ported over in #632. Any other miscellaneous UI improvements would be better-off in their own separate issues.
Having worked with NUI for a while now, I wouldn't call it fantastic. It's a fair bit better than what we had before though.