Skip to content

Quality Configuration #1070

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

Merged
merged 24 commits into from
Jun 20, 2025
Merged

Quality Configuration #1070

merged 24 commits into from
Jun 20, 2025

Conversation

Dhruv-0-Arora
Copy link
Collaborator

@Dhruv-0-Arora Dhruv-0-Arora commented Jul 31, 2024

Description

Creates a new panel that allows users to have more control over their graphics settings (specifically cascading shadows). Allows for enhancing graphics or improving performance.

Screenshot 2025-06-17 at 4 53 22 PM Screenshot 2025-06-17 at 4 56 36 PM

Features

  • Change light intensity
  • Toggle cascading shadows
  • Change Max Far (zoom out distance before the shadows are unrendered)
  • Change Shadow Map Size (shadow texture size/detail)
  • Reset cascading shadows values button
  • Anti-aliasing toggle (will hot reload the page)

Notes

  • Removed previous quality dropdown
Screenshot 2025-06-17 at 4 56 05 PM

JIRA Issue

@Dhruv-0-Arora Dhruv-0-Arora self-assigned this Aug 2, 2024
@Dhruv-0-Arora Dhruv-0-Arora marked this pull request as ready for review August 6, 2024 03:42
@Dhruv-0-Arora Dhruv-0-Arora requested review from HunterBarclay and a team as code owners August 6, 2024 03:42
@Dhruv-0-Arora Dhruv-0-Arora requested review from a-crowell and LucaHaverty and removed request for a team August 6, 2024 03:42
@Dhruv-0-Arora Dhruv-0-Arora marked this pull request as draft August 6, 2024 21:00
@LucaHaverty
Copy link
Contributor

Hovering over the '?' icon causes a jittering behavior for me because it shifts the panel over slightly

@Dhruv-0-Arora Dhruv-0-Arora mentioned this pull request Aug 8, 2024
3 tasks
@LucaHaverty
Copy link
Contributor

Is this PR waiting for something else to be merged in or on hold?

Copy link
Contributor

@LucaHaverty LucaHaverty left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I feel like the vast majority of users won't know what things like "cascades" and "shadow map size" are, so in my opinion it would be better to have preset quality levels that we know are stable rather than give them control over all the specific settings with the potential of breaking something or ending up with crazy artifacts.

Copy link
Member

@BrandonPacewic BrandonPacewic left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I feel like the vast majority of users won't know what things like "cascades" and "shadow map size" are, so in my opinion it would be better to have preset quality levels that we know are stable rather than give them control over all the specific settings with the potential of breaking something or ending up with crazy artifacts.

I agree, but I do think we should eventually have both as an option. Similar to how most games give you low, medium, and high presets but still let you change whatever specific option you want. (At your own risk of course).

@Dhruv-0-Arora Dhruv-0-Arora marked this pull request as ready for review June 17, 2025 23:45
@Dhruv-0-Arora Dhruv-0-Arora requested review from BrandonPacewic and PepperLola and removed request for a-crowell June 17, 2025 23:45
@Dhruv-0-Arora Dhruv-0-Arora added ui/ux Relating to user interface, or in general, user experience gameplay Relating to the playability of Synthesis labels Jun 18, 2025
Copy link
Member

@BrandonPacewic BrandonPacewic left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Additionally I don't know if I'm the biggest fan of having the panel for settings open in a different place compared to the main settings panel. It does make sense from a visual perspective so you can see what changes your actually making. Open to feedback on that.

chore: removed unused commented code
moved panel location to the middle of the screen
@Dhruv-0-Arora Dhruv-0-Arora requested a review from a team as a code owner June 18, 2025 17:03
Copy link
Member

@BrandonPacewic BrandonPacewic left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Small merge conflict.

Copy link
Member

@PepperLola PepperLola left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think it looks good. We might want to eventually make the settings tabbed rather than opening new panels with buttons but that should happen after the UI refactor. I suggested a change for a typo but other than that I think it's ready to merge.

Do we want to limit the maximum values that someone can choose? I think the upper end of the texture size values is almost impossible to run at an acceptable frame rate (especially since most people will probably be using chromebooks), so would it make sense to limit options that would tank performance like that to ones that are actually feasible to run? Especially if the settings are persisted, because it would be hard to reset the values if it takes a minute to click each button.

@Dhruv-0-Arora
Copy link
Collaborator Author

I think it looks good. We might want to eventually make the settings tabbed rather than opening new panels with buttons but that should happen after the UI refactor. I suggested a change for a typo but other than that I think it's ready to merge.

Do we want to limit the maximum values that someone can choose? I think the upper end of the texture size values is almost impossible to run at an acceptable frame rate (especially since most people will probably be using chromebooks), so would it make sense to limit options that would tank performance like that to ones that are actually feasible to run? Especially if the settings are persisted, because it would be hard to reset the values if it takes a minute to click each button.

@PepperLola
Currently I have the max shadow map size set to the renderers maxTextureSize capability, so on slower computers it will automatically limit the user. We could also manually set the value.

Screenshot 2025-06-19 at 3 39 01 PM

@Dhruv-0-Arora Dhruv-0-Arora requested a review from PepperLola June 19, 2025 23:18
Copy link
Member

@BrandonPacewic BrandonPacewic left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think it's time to move onto something else. I have a few remaining issues that I think we should address after the UI refactor:

  1. I agree that this should probably be a tab within the setting panel itself, rather than opening a new panel.
  2. I think that we should consider splitting up the settings into collections (maybe a drop down) of basic and advanced.
  3. I'm not that big of a fan of how we currently handle settings that need a refresh to take effect, again something that will be easier to handle (or at least implement) post UI refactor.
  4. I think removing the presets all together is not what we want the final version of this to look like. I'm adding this as an additional task blocked by AARD-1781.

Since all my problems are essentially just UI nitpicks and the functionality is here I think its appropriate to make these changes after we finish the UI refactor.

Copy link
Member

@PepperLola PepperLola left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think it looks good except for the max texture size issues. In my experience it isn't properly limited and setting it too high can cause the app to become entirely unusable. I'm willing to leave that until later though, but I do think it should be addressed at some point.

@BrandonPacewic
Copy link
Member

BrandonPacewic commented Jun 20, 2025

I think it looks good except for the max texture size issues. In my experience it isn't properly limited and setting it too high can cause the app to become entirely unusable. I'm willing to leave that until later though, but I do think it should be addressed at some point.

Noted AARD-1928.

@BrandonPacewic BrandonPacewic mentioned this pull request Jun 20, 2025
@BrandonPacewic BrandonPacewic merged commit b7113e3 into dev Jun 20, 2025
15 checks passed
@BrandonPacewic BrandonPacewic deleted the dhruv/1780/quality-panel branch June 20, 2025 21:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
gameplay Relating to the playability of Synthesis ui/ux Relating to user interface, or in general, user experience
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants