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

Debugging Pioneer's UI should be a top priority #4740

Open
ElonSatoshi opened this issue Nov 18, 2019 · 24 comments

Comments

@ElonSatoshi
Copy link
Contributor

@ElonSatoshi ElonSatoshi commented Nov 18, 2019

The bugs in Pioneer's GUI make the game impossible to enjoy as much as I'd like to. In Pioneer's default resolution, there are these issues:

  • Text in the control settings menu and the text showing the units of measurements on the flight UI are too small to read (And I'm not using an HD monitor)
  • A scroll bar on the hyperspace and manual/cruise control/disable autopilot button
  • Text in the sector display that goes off screen
  • The help text that comes up when I hover over some buttons can go off screen

These issues, especially text being too small to read/going off screen, make it hard for me to play. I hope that these issues can be resolved soon.

@impaktor

This comment has been minimized.

Copy link
Member

@impaktor impaktor commented Nov 18, 2019

This is not what it looks like for us/others. Please provide as a minimum:

  1. screenshot demostrating the above points
  2. which resolution are you playing at?
@ElonSatoshi

This comment has been minimized.

Copy link
Contributor Author

@ElonSatoshi ElonSatoshi commented Nov 18, 2019

Oh, okay. I will update Pioneer and take some screenshots.

@ElonSatoshi

This comment has been minimized.

Copy link
Contributor Author

@ElonSatoshi ElonSatoshi commented Nov 18, 2019

Screenshot from 2019-11-18 09-15-36
Screenshot from 2019-11-18 10-05-56
Screenshot from 2019-11-18 09-17-41
Screenshot from 2019-11-18 09-18-43
Screenshot from 2019-11-18 09-19-22
Screenshot from 2019-11-18 09-25-13

ver 20191116 (7589dfaa8) on: Linux

My operating system: Debian 10 Buster

Pioneer resolution: 800x600

@ElonSatoshi

This comment has been minimized.

Copy link
Contributor Author

@ElonSatoshi ElonSatoshi commented Nov 18, 2019

Also, the search list in the sector map is too small to use unless I collapse some of the above menus

Screenshot from 2019-11-18 09-42-03
Screenshot from 2019-11-18 09-43-27

@ElonSatoshi

This comment has been minimized.

Copy link
Contributor Author

@ElonSatoshi ElonSatoshi commented Nov 18, 2019

Interesting. I just noticed that when I hover over "Enable Autosave", the info text stops when it hits the right side of the window.

It seems that the other options do this too. The ones that go off the side of the screen are Anisotropic Filtering and Compress Textures.

Screenshot from 2019-11-18 10-00-30
Screenshot from 2019-11-18 10-00-48
Screenshot from 2019-11-18 10-01-02

@ElonSatoshi

This comment has been minimized.

Copy link
Contributor Author

@ElonSatoshi ElonSatoshi commented Nov 18, 2019

Some screenshots detailing the small text around the reticule

Screenshot from 2019-11-18 09-53-35
Screenshot from 2019-11-18 09-54-06
Screenshot from 2019-11-18 09-54-26
Screenshot from 2019-11-18 10-07-35

@ElonSatoshi

This comment has been minimized.

Copy link
Contributor Author

@ElonSatoshi ElonSatoshi commented Nov 18, 2019

It can be especially hard to read against the stars

Screenshot from 2019-11-18 09-53-06

You can't even make out the numbers on the bottom left unless you look carefully.

@pcercuei

This comment has been minimized.

Copy link
Contributor

@pcercuei pcercuei commented Nov 18, 2019

I completely agree about the UI, I think it needs a lot of work.

@fluffyfreak

This comment has been minimized.

Copy link
Contributor

@fluffyfreak fluffyfreak commented Nov 18, 2019

Are all of you playing at less than 1920x1080 and windowed?

@pcercuei

This comment has been minimized.

Copy link
Contributor

@pcercuei pcercuei commented Nov 18, 2019

I used to play at 1368x768 fullscreen.

@vakhoir

This comment has been minimized.

Copy link
Contributor

@vakhoir vakhoir commented Nov 18, 2019

I'll add a +1 to the UI needing a lot of work. The thing is that it's, well... a lot of work. From what I remember talking with @Web-eWorks the idea was to first move everything to pigui, and start improving/fixing it once we're using 1 framework for everything rather than 3.

@impaktor

This comment has been minimized.

Copy link
Member

@impaktor impaktor commented Nov 18, 2019

I think we're almost 100% pigui now. Only F6-F8 map-screens remain, right?

@vakhoir

This comment has been minimized.

Copy link
Contributor

@vakhoir vakhoir commented Nov 18, 2019

I'm catching up with where we're at right now, but from what I see the station and info views are more or less where I last saw them: about 30-50% done with the ship market, ship repairs, police and bulletin board tabs in the station-view still to be done, and econ, missions, and crew tabs in the info view.

And then we have the map screens.

@Web-eWorks

This comment has been minimized.

Copy link
Member

@Web-eWorks Web-eWorks commented Nov 18, 2019

This is mostly due to the fact that whoever wrote the PiGUI stuff in the first place used hard-coded fixed-size windows for pretty much everything, apeing the oldUI behavior instead of making full use of ImGUI's strengths. Which is okay, but it's something that we're going to have to refactor and clean up.

@vakhoir thank you for all your work on the UI! I'm much happier in the guts of the engine than I am working on the UI, so you're a godsend.

I'm going to improve the C++ to PiGui control flow for the map screens so it's much easier to implement the UI for them and the rest of the game; there's a lot of improvement that could be done in this regard. Before we tackle the map screens I want to bug @nozmajner to go through all of our collected references for orrery / system map / orbital map interfaces and come up with a coherent concept that works for Pioneer... no pressure! :D

@ElonSatoshi

This comment has been minimized.

Copy link
Contributor Author

@ElonSatoshi ElonSatoshi commented Nov 19, 2019

In my opinion, I think making it easier to implement the UI, and bug fixing the UI should come before porting the old UI to the new UI. Once the new UI works well, you can port another part of the old UI, but at the same time making sure the freshly ported new UI works well.

It sounds like it might even be productive to focus on improving this control flow thing first, that way it's really easy to improve and maintain the new UI.

Disclaimer: I'm a user, not a programmer. If I don't know what I'm talking about, feel free to disregard my silly opinions. I do a little bit of Bash scripting, though. A little bit. A very little bit. And I know how to exit Vim.

@fluffyfreak

This comment has been minimized.

Copy link
Contributor

@fluffyfreak fluffyfreak commented Nov 19, 2019

And I know how to exit Vim.

Ah, a power user then ;)

@ElonSatoshi

This comment has been minimized.

Copy link
Contributor Author

@ElonSatoshi ElonSatoshi commented Nov 19, 2019

indeed. i use neovim btw

@ElonSatoshi

This comment has been minimized.

Copy link
Contributor Author

@ElonSatoshi ElonSatoshi commented Nov 19, 2019

another idea would be to not use the new UI by default and have it available to turn on in the settings, or a compile option, and then hack away at it while letting users still use the old UI

@impaktor

This comment has been minimized.

Copy link
Member

@impaktor impaktor commented Nov 19, 2019

another idea would be to not use the new UI by default

No, we're not putting the old UI back, after +5 of ripping it out. Nor living with even more cludge of code. If someone wants the old UI, the can play an older version of the game.

@ElonSatoshi

This comment has been minimized.

Copy link
Contributor Author

@ElonSatoshi ElonSatoshi commented Nov 19, 2019

fair enough, but it might be a good idea to keep old UI after developing a replacement new UI, and only getting rid of that old UI once the new UI has been polished a bit. In the future, I mean.

@nozmajner

This comment has been minimized.

Copy link
Contributor

@nozmajner nozmajner commented Nov 19, 2019

I think we should embrace imgui, instead of half-assing it by providing it only as an option. We aren't working on commercial software, so there's less pressure for our releases to be bug free. The feedback we can get is much more valueable in my opinion. And I am not only talking about user feedback, but ours as well as we play. I already have quite a few things I would do or try differently on the HUD, not to mention the other parts.

If anybody is up for debugging and polishing what we currently have, I am open to discuss and mock up the design, and I can provide the assets.

@Web-eWorks

This comment has been minimized.

Copy link
Member

@Web-eWorks Web-eWorks commented Nov 20, 2019

In my opinion, I think making it easier to implement the UI, and bug fixing the UI should come before porting the old UI to the new UI. Once the new UI works well, you can port another part of the old UI, but at the same time making sure the freshly ported new UI works well.

The problem with that though, is that having three UI frameworks like we do means that we can't focus on improving just the one. There's always an interop issue just around the corner, or places where you can't improve the UI/UX without having to rewrite one of the older UI systems. Everything being moved to pigui means that we can actually breathe and be able to focus on the one single framework.

In counterpoint, a lot of the issues you're reporting are mostly tied to the inability to test pioneer's UI at multiple resolutions easily. I can't just drag the game window to change the size, instead I've got to completely quit and change the resolution in the config file before restarting. That's something I'm working towards tackling, but it's also a fairly major undertaking and, like mentioned above, the other two UI frameworks are a massive pain in regards to actually accomplishing it.

It sounds like it might even be productive to focus on improving this control flow thing first, that way it's really easy to improve and maintain the new UI.

This is just a quality-of-life improvement so we're not hardcoding which Lua functions C++ needs to call to draw the UIs for different screens. It's not a large undertaking, but it does require a moderate amount of planning so I don't just make a different, equally-worse problem.

... I'm also up to my neck in the scenegraph code right now, so everything seems worse than it actually is 😛

@Web-eWorks

This comment has been minimized.

Copy link
Member

@Web-eWorks Web-eWorks commented Nov 20, 2019

@ElonSatoshi if you could be so kind as to open a new issue with your bug images, I'll add it to the UI task so we can get those fixed. It's a little hard to track bugs in the middle of 2-3 pages of discussion; so I'd rather we have this issue for discussion and another with the list of current UI bugs you've found. You should be able to just drag and drop the images into the new issue dialog...

@ElonSatoshi

This comment has been minimized.

Copy link
Contributor Author

@ElonSatoshi ElonSatoshi commented Nov 20, 2019

Alright, I will next time I'm at my computer.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
7 participants
You can’t perform that action at this time.