-
-
Notifications
You must be signed in to change notification settings - Fork 850
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
Projection: plate carree #2856
Projection: plate carree #2856
Conversation
Great PR! Please pay attention to the following items before merging: Files matching
This is an automatically generated QA checklist based on modified files |
I think it's ready for discussion. What I see:
|
OK, yes, scale obviously matters... |
They appear to be at different scales: as I pan around, the horizon of the landscape moves as if with a parallax relative to the horizon of the sky dome. |
Actually, no, it's the atmosphere horizon that moves. The stars move synchronously with the landscape during panning. |
Grmpf... I have now set 125% and 150% scaling on Windows (works on the fly only with built-in screen), and see no issues (apart from obvious lack-of-screen space issues). For whatever reasons, it crashes with 175% when calling the view settings dialog. |
Change on the fly is done purely by the OS. Qt doesn't get a chance to adapt for some reason. Restart of the app should make Qt aware of the change and in charge of it. |
Yes, of course I quit Stellarium, changed resolution, and restarted Stellarium. It comes up with the new resolution/bigger GUI but still fills the window. So this is an issue visible only if running on Linux. Getting this screen scaling right on all platforms is a nightmare. |
- ProjectionCylinderFill (derived from ProjectionCylinder) - No functional changes yet - also clarified declaration of virtual methods
- Follow Qt's recommendation to code style (Q_DECL_OVERRIDE -> override) - implementation of 3 methods in base class - Removed corresponding overrides in several derived classes
- restore customized screen stretch when going to another projection - better specific map layout
eb42335
to
e327468
Compare
@10110111 just tried on Ubuntu 22.04.1/Geforce M 580. I set scaling to 125%, and now I see scaling issues in fullscreen, but for all projections. Our view frame is confined to the upper left quadrant. These issues are also present in master! Is the problem that you see above limited to the new projection? |
Master works perfectly fine for me (aside from failure to compile due to GregorianCalendar includes being commented out in JKV calendars). How do you set the scaling factor? I just use the following environment variables:
Similarly fine it is when I don't use any variables, while the screen DPI is set to 167 (in this case Qt sets scale factor 167/96, i.e. 1.73958...). I'm testing with Qt 6.4.0 on Ubuntu 20.04 and Intel UHD Graphics 620. |
Ah no, I set scaling in the OS's Settings GUI. (Ubuntu 22.04.1) First, enable Fractional Scaling, then set to 125%, then (to be sure all programs get it) logout/login. U22.04 includes Qt6.2.4. |
Oh well, I don't know what tricks they use. Could you post output of |
xrandr_100pct.txt This is without the QT... variables set. |
AFAICT, what you are setting is a scaling, but not the high-DPI scaling. Your setting only enlarges the desktop, downsampling the resulting raster to fit on the screen. Globally, regardless of app awareness, in a raster-downsample mode! This is definitely not something we can support well. Still, I have tried this on my Intel-based machine, and it works without confining the viewport. From the output names I figure that you are using Finally, you should be able to reproduce the problem of this branch being messed up while
Just retested, the problem equally affects all projections in this branch. |
OK, but I have no HiDPI device. This is what the user sees.
Ah, OK. Yes, this is the NVidia driver for Ubuntu.
Interesting. Changes other than the new projection (variant) were not so many. Let's see... |
Interesting. With these variables and without setting scaling via Windows system settings, I see the issue on Windows. Is this what users are supposed to configure, or is this a weird hack which should look broken by design? |
These variables have two use cases:
They definitely aren't supposed to look broken. |
e624ccd indeed makes things work better. To make this simplification work, the |
Yes, I have concluded the same. But it's not needed for this PR. So, I think this should be ready to merge. The next big thing would be moving some drawing code for the Landscapes into shader code to avoid the visible gaps. For now, this new mode works best for all-sky maps without labels or lines along the edge. About HiDPI, as they are becoming more common, we should add a section to the User Guide, e.g. 2.5.1. |
I have this in progress (spherical is done, fisheye almost done, old style not started yet), but I suppose it won't get into 1.2, since I'm getting a new job next week and won't have as much time then. |
Great to read, and of course this can wait until 23.1 or later. Congrats on the new job! |
Hello @gzotti! Please check the fresh version (development snapshot) of Stellarium: |
Hello @gzotti! Please check the latest stable version of Stellarium: |
Description
Ruslan's shader implementation of Milky Way and ZL makes this finally interesting: A window-filling all-sky map. I can imagine an application using Spout where the result goes into another program, as live texture for some object, or just a printed all-sky map.
Fixes #1120
What currently still looks bad at the seam are of course all meshes which are projected before being sent to the GPU:
Fixing the meshes is not part of this PR. For the time being the application is limited to mostly MW/ZL all-sky maps.
Screenshots (if appropriate):
Type of change
How Has This Been Tested?
Test Configuration:
Checklist: