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

Feature: Render solution default to display resolution / native #232

Open
TCB13 opened this issue Oct 16, 2024 · 8 comments
Open

Feature: Render solution default to display resolution / native #232

TCB13 opened this issue Oct 16, 2024 · 8 comments
Labels
enhancement New feature or request ready to close Issue is fixed and can be closed when the next update releases.

Comments

@TCB13
Copy link

TCB13 commented Oct 16, 2024

Hi,

image

It would be great if by default / on first launch SA Mod Manager automatically set the render resolution to be the same as the default display resolution.

Right now If I go into Default.json and delete this:

    "HorizontalResolution": 2560,
    "VerticalResolution": 1440,

It will default to something like 640px. Why not default to the main screen resolution instead?

Thank you.

@PiKeyAr
Copy link
Member

PiKeyAr commented Oct 19, 2024

640x480+windowed mode is the failsafe combination. For first startup, see #46.

@TCB13
Copy link
Author

TCB13 commented Oct 19, 2024

640x480+windowed mode is the failsafe combination

What do you mean by failsafe? Isn't it enough to make sure the game renders at the maximum resolution supported by the system? Are there any cases where it may fail?

Thanks.

@PiKeyAr
Copy link
Member

PiKeyAr commented Oct 19, 2024

We've had issues in the past with the game failing to set the correct window size and crashing silently, especially in the borderless fullscreen mode. 640x480+windowed is the combination that should work in the majority of scenarios, so I'd argue for that being the default. Anyway it's just the default value that is used when the actual value is missing in the JSON file.

I do think it would be good if the Manager could apply the optimal settings, including the rendering resolution, on first run.

@TCB13
Copy link
Author

TCB13 commented Oct 19, 2024

I do think it would be good if the Manager could apply the optimal settings, including the rendering resolution, on first run.

Yeah, me too, the question is, what's the difference between applying "apply the optimal settings, including the rendering resolution" on first run vs doing the same thing when the value is missing from the JSON?

I was assuming the way you would implement the first run settings would be the same as when it doesn't find a property in the JSON file.

@ItsEasyActually ItsEasyActually added enhancement New feature or request ready to close Issue is fixed and can be closed when the next update releases. labels Oct 19, 2024
@ItsEasyActually
Copy link
Contributor

I went in and implemented this. To keep it as unintrusive as possible, a native resolution will be set on initial game setup (ie when booting the mod manager for the first time and it finds a game or selecting one for the first time in the drop down) if there is no profile migration on initial setup.

Completed in 4ff074b.

As for why it has to be done this way, it's because you can't really make an arbitrary default value for a configuration setup like that. Rather, it's probable, but it's not necessary and risky to setup imo. Much better to have a safe fallback.

@TCB13
Copy link
Author

TCB13 commented Oct 19, 2024

I went in and implemented this. To keep it as unintrusive as possible, a native resolution will be set on initial game setup (ie when booting the mod manager for the first time and it finds a game or selecting one for the first time in the drop down) if there is no profile migration on initial setup.

Completed in 4ff074b.

As for why it has to be done this way, it's because you can't really make an arbitrary default value for a configuration setup like that. Rather, it's probable, but it's not necessary and risky to setup imo. Much better to have a safe fallback.

Woow! That's great, thank.

@PiKeyAr
Copy link
Member

PiKeyAr commented Oct 20, 2024

Might be a good idea to also set window mode to Borderless when it does that, otherwise it will be trying to create a window larger than screen size.

@ItsEasyActually
Copy link
Contributor

I went in and did just that in 28a32d6. Also added a check to ensure the data is valid in the event it fails to get the screen bounds for some reason.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request ready to close Issue is fixed and can be closed when the next update releases.
Projects
None yet
Development

No branches or pull requests

3 participants