optifine icon indicating copy to clipboard operation
optifine copied to clipboard

[Feature Request / GUI] Reorganization/Overhaul of the OptiFine & Vanilla settings menus

Open Jiingy opened this issue 3 years ago • 12 comments

Introduction

This post will function sort of "master post" of all the prominent GUI suggestions that have been laying around, along side my changes that I have made conceptually.

**NOTES:

  • All of these menus have the new 1.18 background behind them, this is a change that is not listed anywhere but would be very nice to have)**
  • The buttons have been ever-so-slightly moved a bit further apart from each other. In OptiFine now, the buttons are really crammed together.

"It works fine as is, why should it be changed?"

To me, and for others that I've had conversations with, a common theme seems to be that things just feel messy. And, with 1.18 releasing soon, there are quite a few new features and settings being added to the "Video Settings" tab. With that being said, OptiFine will have to make room for them, or find a place to put them. While it might be easy to find a place to put them, I figured this is the perfect time to take a step back at the OptiFine settings menu and see what can be improved, and organized.

"What if it doesn't feel like 'OptiFine' anymore?"

This is something I myself wanted to try to keep in the settings menu as much as possible as I know people can be judgemental towards change, but I genuinely think I did a very good job at keep the new menus very close to the OptiFine/Vanilla style that has been around for so long. It really is not that drastic.

"What are the pros of changing the settings menu?"

For one, I think this new settings redux makes a lot of the sections very "future" proof in that they are very clearly outlined, and when new features are added, it will be very easy to assume where they have been put, compared to before when it could feel very vague where a specific setting is listed unless you have developed a good memory of everything.

The Menus

Main Pause Menu

Design Goals:

  • Not much to explain for this menu.

Changes:

  • Now includes the settings search bar from issue #5663 to search for settings

Notes:

  • This version is entirely conceptual, and would probably be done differently (possibly done on the left side as how the recipe book does it)
  • Could also possibly have mod support.

new_main_menu_settings(with search)

Skin Customization

Design Goal:

  • Not much to explain for this menu.

Changes:

  • New "Toggle All" buttom from #2790
  • Removal of "OptiFine Cape" tab (explained later)

new_skin_settings_

Video Settings

Design Goals:

  • The design goal for this menu was to take "Video Settings" literally, and have this menu be entirely video related settings such as; fullscreen, AA, AF, and more.

Changes:

  • All the settings here before that did not relate to "Video Settings" have been moved.
  • "Details" has been renamed to "World"
  • "Quality" has been replaced with "Player"

new_video_settings

Resource Packs

Design Goals:

  • The goal for this menu was to keep everything almost exactly the same way you know and love, but move all the resource pack dependant settings (which used to be in the aforementioned "quality" tab) into the resource pack tab. Doing this allows the tab to both function as a resource pack browser, while also allowing for it to house all of the resource pack settings together.

Changes:

  • As mentioned before, this menu now houses the emissive textures, random entities, custon fonts, custon colors, natural textures, custon items, custom GUIs, custom sky, and custom entity models settings.
  • There is a new toggle for enable all ON/OFF (This can be made into separate issue).

Notes:

  • As this is a very rough edit, I would like to mention that there would probably be a scroll bar added to allow for more toggles to be added.

new_resource_packs

Performance

Design Goals:

  • This category functions perfectly fine as is. Is houses all the performance options.

Changes:

  • New "Chunk Builder" setting is moved there as it is a performance setting.

new_performance

World (NEW)

Design Goals:

  • This category functions similarly to the current "details" tab in OptiFine, but differs in that it is entirely settings that relate to the Minecraft world and how it changes to fit the player's experience. These settings do not effect the player in any way, it is entirely changes to what is around the player.

Changes:

  • Most of the world settings that used to be in the details tab are now here, with additional settings such as; biome blend, connected textures, translucent blocks, dropped items, trees, better grass/snow, and more.

Notes:

  • This section is probably one of the ones I'm most happy about. It think it makes a lot of sense, and is very clean/easy to understand.

new_world_settings

Player (NEW)

Design Goals:

  • As the "World" tab was how the world changes to fit the player's wants and needs, this category is how player/camera attributes change to fit the player's wants and needs.

Changes:

  • All of the settings that alter UI/GUI elements are now in this category. This includes things such as; GUI scale, dynamic FOV/FOV effects, view bobbing, and more.
  • The previously mentioned "OptiFine Cape" tab which was removed from "Skin Settings" is now here, and renamed to "OptiFine Cosmetics" to fit future plans for more cosmetic OptiFine features. (Category can later be expanded upon when features are implimented)

new_player_settings

OptiFine Cosmetics

Design Goals:

  • As stated before, the goal with this category is to make it more open to allow for future versions of OptiFine to impliment cosmetic features.

Changes:

  • "Show Capes" option is now moved here

Notes:

  • This is probably one of the roughest concepts here as it requires the most implimentation from other features to have any footing.

new_optifine_cosmetic_settings

Other

Design Goals:

  • This category mostly remains the same. It's focussed on housing the debug features along side features such as "show FPS".

Changes:

  • Show FPS now has 3 toggles; Simple/Detailed/OFF. Simpe only shows FPS (from issue #2130) Detailed shows the FPS as it is currently shown in OptiFine, and OFF is simply OFF.
  • New button for the planned "Coordinates" feature from issue #2389.
  • New button for toggling ON/OFF toast notifications.

new_other_settings

Conclusion

Overall, this was a super fun project to undertake, and I think it has some real potential, even if not all of it is used, or if it was just used as food for thought. I put a TON of work into this so I really hope it turned out okay. I would love to see this be implimented in 1.18, but we'll see.

As a final tail note, these issues here tie in with this whole reorganization but I couldn't fit them in. If this project was undertaken these issues would be great to solve while you're at it! https://github.com/sp614x/optifine/issues/6211 https://github.com/sp614x/optifine/issues/6366 https://github.com/sp614x/optifine/issues/5829 https://github.com/sp614x/optifine/issues/2839 https://github.com/sp614x/optifine/issues/2690 https://github.com/sp614x/optifine/issues/327 https://github.com/sp614x/optifine/issues/205

Jiingy avatar Nov 19 '21 06:11 Jiingy

Sounds great. I think it should be avoided to have any of the UI wider than default (looking at resource packs) due to it getting cut off on smaller screens. Maybe instead add a third options button at the bottom.

ewanhowell5195 avatar Nov 19 '21 08:11 ewanhowell5195

Also the dropped item setting needs to either be fixed or removed. It’s been broken for a while now.

ewanhowell5195 avatar Nov 19 '21 08:11 ewanhowell5195

True

Jiingy avatar Nov 22 '21 10:11 Jiingy

The search functionality would be useful. Unfortunately some options are tied to their parent screen and there may be problems if they are changed outside of it.

sp614x avatar Dec 06 '21 21:12 sp614x

Which options would be troublesome?

Jiingy avatar Dec 06 '21 21:12 Jiingy

The separation between Resource packs and World seems to be strange. Alternate blocks is in World, but Natural textures is in Resource packs, while both do practically the same (one works on models, the other one on individual textures). Dynamic Lights seems strange in Player settings, it should be in World - it changes how the world lighting works.

sp614x avatar Dec 06 '21 21:12 sp614x

Weather/Time may also be moved to world. Hard to say if the new organization is better.

sp614x avatar Dec 06 '21 21:12 sp614x

The two you had mentioned could definitely be moved around as I do remember sort of not feeling 100% about them, but like said in the post a lot of the menus are very conceptual. Main focus was to get a general idea, which could later be refined as needed/desired.

Jiingy avatar Dec 06 '21 21:12 Jiingy

Some settings can fall under the umbrella definitions of multiple categories, so chosing which one that works best can be a bit difficult.

Most resource pack options are a simple "on/off", where as some have quality settings too, which can then move it closer to world settings.

Jiingy avatar Dec 06 '21 21:12 Jiingy

this is such a great suggestion, the settings are really kind off a mess. I hope there will be a big GUI Overhaul update, where also stuff like this https://github.com/sp614x/optifine/issues/6396 gets fixed.

vitasomething avatar Dec 07 '21 18:12 vitasomething

Has it been decided whether or not this can be implemented, even if partially?

Jiingy avatar Feb 07 '22 06:02 Jiingy

@sp614x are there any updates on whether a coordinates display will be added? having a light level counter in a similar vein would be nice as well, but any sort of update would be awesome to hear!

leifdotwav avatar Nov 27 '22 22:11 leifdotwav