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

Options to remove #8171

Open
hrydgard opened this issue Nov 4, 2015 · 37 comments
Open

Options to remove #8171

hrydgard opened this issue Nov 4, 2015 · 37 comments

Comments

@hrydgard
Copy link
Owner

hrydgard commented Nov 4, 2015

We've done this before, but it's time again.

PPSSPP has WAY too many options. It's even hard to find the ones you know are there somewhere.

Here are some candidates for removal:

Graphics candidates:

  • Disable alpha test (speedup on older devices but breaks so much)
  • Disable stencil test (unclear value now that Star Ocean works)
  • Force max 60 fps is now on for specific games that are improved by it
  • Mipmapping (why would you want to turn it off?)
  • Timer Hack (I forgot what this does)
  • Always Depth Write
  • Depth Range Hack should be turned into a compat.ini hack
  • Remove F5 shortcut to render modes
  • Disable slower effects
  • Retain changed textures
  • Frameskipping Types

Audio candidates:

  • Audio Latency is quite misleading as has little effect except screwing up the sound in some games
  • Sound Speed Hack - the issue should be fixed or we should turn it into a compat.ini hack

System candidates:

  • Daylight Savings, PSP date format etc - set some sensible defaults, maybe locale based
  • Confirmation button should be autodetected from the game region (?)
  • I/O on thread

Reconsidered for now:

  • Hardware transform. It hurts/benefits devices very unequally so worth to keep as tweakable for a while longer.

If anyone strongly disagrees with any of these changes, or have proposals for other options to remove, speak up now.

@LunaMoo
Copy link
Collaborator

LunaMoo commented Nov 5, 2015

Finally:) ~ most of those are only used by users which don't understand what they're doing and then report problems they cause as bugs, so will be nice to say those settings "bye bye".

If any dangerous hacks stay after this clearing, we could maybe hide them deeper, like on separate page under tools->hacks or something.
Read framebuffers to memory modes could be hidden a bit as well and also removed from the F5 shortcut since while it's still required for some games, it can corrupt memory by just cycling through the modes accidently and create issues where there are none.

@daniel229
Copy link
Collaborator

@Trokinos
Copy link

Trokinos commented Nov 5, 2015

If the "Force Max 60 fp" is the same option as "Prevent FPS to exceed 60 (Speed up GoW) " i see in PPSSPP, while i do not have that GoW game, having that " Prevent FPS to exceed 60 (Speed up GoW) " disabled is a part of what helps in getting rid of the PPSSPP flickering of the crowd when playing SvR 2006 on D3D9 (along with turning off any frameskip)

@unknownbrackets
Copy link
Collaborator

See also #6288. AFAIK stencil test still affects some Silent Hill game but I'm not sure how bad the experience is without it.

"Force max 60 fps" seems mostly stable now. However, it definitely introduces thread reschedules in incorrect cases. Most of the time it doesn't activate. I'd prefer keeping it as an ini option.

Timer hack was added for Symbian. It scales certain sysclock-related HLE functions based on real time. Therefore, it can activate games' internal frameskipping (if you remember, Wipeout had this.) It's a dangerous speed setting, but in some ways it is less dangerous than changing the CPU clock IMHO.

"Depth Range Hack" is afaik broken.

Under System, I'm generally fine with removing/hiding, but please note that these are actually ALL system preferences on the PSP configurable by users. For example, sceUtilityGetSystemParamInt() can retrieve the user's preferred confirmation button, and some games use it. Removing the option means no way to change these games behavior - e.g. if you prefer X but the game is Japanese.

In practice, games only check the setting rarely, and when they do, it's only in certain areas. So I'm not against, just trying to clarify.

removed from the F5 shortcut

Very agree. See also #6261.

-[Unknown]

@xiushudongfang
Copy link
Contributor

Timer hack is very useful for some games on android,such as God of War.

@SukharevAndrey
Copy link

Low audio latency, as I remember, is required for smooth gaming experience in Patapon series. But last time I tested it was a year ago or so on slower hardware.

hrydgard added a commit that referenced this issue Nov 5, 2015
…ific compatibility hack.

I hate doing this, but it's not really better off as an option.

See #8171
@hrydgard
Copy link
Owner Author

hrydgard commented Nov 5, 2015

F5 shortcut removed.

@GamerzHell9137
Copy link

I'm against removing Audio Latency because its helping in rhythm games.
And i'd say that auto frameskip is redundant but some people might be against of its removal.
Display Rotation and Cheats should be removed too. There's no reason to not have Cheats disabled in OG state of the emulator, just force enable the option and delete it from the UI in settings.
A name change of the " Save screenshots in PNG format " would be great, something like " Screenshot format " and have options to save to PNG or JPEG.

@unknownbrackets
Copy link
Collaborator

If we remove the cheats option I want it to be off. For one thing, enabling cheats disables all reporting and I'm strongly in favor of that for very good reasons.

-[Unknown]

@vnctdj
Copy link
Contributor

vnctdj commented Nov 6, 2015

+1 for keeping the ability to disable cheats.

@GamerzHell9137
Copy link

Fair enough then, i'm only using them for 60 FPS hacks.

@hrydgard
Copy link
Owner Author

hrydgard commented Nov 7, 2015

So for the cheats option, we really do need to disable reporting when people use cheats (or use savestates where cheats have once been enabled - I'm not sure we track that in a completely safe way right now).

But there are other options than what's been stated so far. One is to disable reporting as soon as any cheat is actually activated. Another is to make the user experience easier in another way: always keeping the cheats option there, but when you click it it will ask you to enable cheats if they aren't enabled already, warning you of the consequences (possible stability problems, no reporting, etc).

@SukharevAndrey
Copy link

BTW in PPSSPP there is no message that warns users about disabling reports while cheats are enabled.

@unknownbrackets
Copy link
Collaborator

We do, we save a flag in savestates created from cheats. It never goes away at that point. Have you seen bugs in that functionality?

Also, the reporting checkbox is no longer checkable after using cheats until you exit the game.

-[Unknown]

@CarlKenner
Copy link
Contributor

We might need some of these options for virtual reality. I'm going to keep them for a while.

What is "Force max 60 fps"? I'm running games at 75 FPS or 90 FPS, so I assume it's something I don't want turned on. But I'd like to know what it actually does. There are currently 3 different ways I run games at 75 FPS: 1) use asynchronous timewarp on another thread so the emulator runs at its normal framerate but I present the frames to the HMD at 75 FPS with warping to compensate for head rotation since the frame was rendered. 2) use synchronous timewarp on the Emu thread so the emulator does a frame in a 75th of a second, but then presents it either once or a few times with warping as needed. That way the game still runs at 60 FPS, but the frames always take more or less than a 60th of a second. 3) just run unthrottled. Unfortunately none of those methods work perfectly, so the user needs to choose. I plan to add a fourth option of storing the draw calls and rerendering the frame.

I like that you have to enable cheats in a difficult way. Cheating takes all the fun out of games, so we want to discourage it for people who want to play clean but might be tempted.

"Fair enough then, i'm only using them for 60 FPS hacks."
I do 60 FPS hacks (and disable-culling hacks) separately from cheats. I store them in a separate file, and change the cheat menu name to "VR Hacks" when there are those hacks but cheats aren't enabled.

The one thing I do want to remove (and did so in my branch) is any Ctrl+WASD keyboard shortcuts. They are very dangerous when playing using the keyboard, especially when I'm in the Rift and can't see what happened. Some of them are hardcoded and can't be configured.

What is this reporting feature, and what do you want me to do about it in VR mode?

@SukharevAndrey
Copy link

Yeah, @unknownbrackets, sorry about that. Reporting game status is disabled when the game has cheats.

@unknownbrackets
Copy link
Collaborator

What is "Force max 60 fps"? I'd like to know what it actually does.

Whenever a game wants to show a new frame, assuming it's double buffering (which is a valid assumption in virtually all games, with a few exceptions), it generally calls a function to set the displayed framebuffer.

Since the PSP only displays at 60 fps, and some games (mostly just God of War) flip the framebuffer more than that sometimes (even on hardware), this is a pretty "free" performance win. Obviously the goal is to prevent the hard work of rendering multiple times before a vblank.

It's still a hack; it makes the calling thread (generally the right thread) block when attempting to flip the framebuffer. Other threads (like music) continue. This behavior does NOT appear on the PSP; that function never reschedules / blocks a thread.

What is this reporting feature, and what do you want me to do about it in VR mode?

Probably disable it. The reporting feature sends log information about compatibility, shader compile errors, HLE errors, and other situations to a server so we can track them, along with GPU, CPU, and platform information. That's also what "ReportedConfigSetting" is for, and I've noticed you've marked a bunch of them as "Reported" that probably shouldn't be.

The data is sent here:
http://report.ppsspp.org/logs/kinds/

When people have cheats enabled, there's usually a lot of confusing garbage that shows up here, which we can waste time trying to understand. Even 60 fps cheats. When we disabled reporting for a number of dangerous settings, the amount of garbage reports went down a lot.

This is how, for example, we gathered a good sample of games using SAS reverb to test with; we enabled the flag, waited a day, and then we had a list. Luckily both me and hrydgard had many of the games on the resulting list.

-[Unknown]

@Papermanzero
Copy link

  • Hiding all System Messages (available in Debug options)
    Includes all OSD Messages like Internal Resolution/Windows Size etc.

@GamerzHell9137
Copy link

Ohhh +1 for hiding resolution messages.

@asbel123
Copy link

i dont need hacks i got one problems is disable slow effects made brave story new traviller fullspeed on my samsung galaxy s6 edge on high resloution but video doesnt work show white screen and turn off disable slow effects made brave story new traveller slow wierd hack ever seen.

hrydgard added a commit that referenced this issue Nov 15, 2015
…ific compatibility hack.

I hate doing this, but it's not really better off as an option.

See #8171
@hrydgard
Copy link
Owner Author

Marked "disable alpha test" as removed. There's more to do here...

unknownbrackets added a commit that referenced this issue May 26, 2017
Remove the Mipmap setting. One step forward for #8171
unknownbrackets added a commit that referenced this issue May 26, 2017
Remove "Always Depth Write" setting. One step forward for #8171
hrydgard added a commit that referenced this issue Feb 6, 2019
… two games that really need it.

Takes care of one setting listed in #8171 "Options to remove"
hrydgard added a commit that referenced this issue Feb 6, 2019
… two games that really need it.

Takes care of one setting listed in #8171 "Options to remove"
hrydgard added a commit that referenced this issue Feb 6, 2019
… two games that really need it.

Takes care of one setting listed in #8171 "Options to remove"
hrydgard added a commit that referenced this issue Feb 6, 2019
… two games that really need it.

Takes care of one setting listed in #8171 "Options to remove"
@ghost
Copy link

ghost commented Jul 11, 2019

@hrydgard can I ask Sir what is the use of Anti-Aliasing in graphics settings in ppsspp older version?
1562804536720
It is the same as MSAA or not?

@unknownbrackets
Copy link
Collaborator

It just increased the resolution, iirc. So if you picked 2x PSP, it would actually use 3x PSP. Or maybe it doubled it. But it wasn't anything advanced.

-[Unknown]

@ghost
Copy link

ghost commented Mar 24, 2020

Disable slower effects seem that is not working like before not helping anymore in 3rd birthday #11092 and Brave Story but fixes graphics Issue in Call of Duty #11573

@Joyje
Copy link

Joyje commented Oct 24, 2020

See also #6288. AFAIK stencil test still affects some Silent Hill game but I'm not sure how bad the experience is without it.

I just tried "Silent Hill: Origins" and the game becomes unplayable as soon as you turn on the flashlight. The game automatically turns on the flashlight in some places which makes the option absolutely necessary for this game. This option definitely shouldn't be available in any menu though, since it seems like only 2 games needs to use it. I assume the games should instead be listed in the "assets/compat.ini" file under said option.

I have no clue what the option is called in the .ini file since it has been removed completely and no other games needs it. I tried to add the following:

[DisableStencilTest]
ULUS10285 = true

It didn't work so maybe the option is called something else?

@hrydgard
Copy link
Owner Author

Yeah there's no option for that. I hope to find a proper fix to those games after I'm done with all my shader refactoring work, but in the meantime we might just have to do that..

@Joyje
Copy link

Joyje commented Oct 25, 2020

Yeah there's no option for that. I hope to find a proper fix to those games after I'm done with all my shader refactoring work, but in the meantime we might just have to do that..

What do you mean by "no option for that"? Has the function been removed completely from PPSSPP, or just the "option" to enable/disable from the menus?

If it has been completely removed then there is no fix for this game at the moment and I guess Silent Hill will just have to wait for now.

If it has only been removed from the menus it should still be possible to enable "disable stencil test" through compat.ini settings. I either have the wrong name for this function, or maybe some other files also needs to be edited in wich case I need to know the following:

Is the setting called "[DisableStencilTest]" in compat.ini or is it called something else? Am I editing the wrong file or do I also need to edit any other file?

Thanks!

@unknownbrackets
Copy link
Collaborator

Given we have #11610, should we keep this open?

If it has been completely removed then there is no fix for this game at the moment and I guess Silent Hill will just have to wait for now.

It's been removed.

-[Unknown]

@ghost
Copy link

ghost commented Sep 9, 2021

Can you hide and enable by default the hardware transform and software skinning :)

@hrydgard
Copy link
Owner Author

hrydgard commented Sep 9, 2021

I think I'd move them to developer settings maybe, turning off hardware transform can veeery occasionally be useful when debugging, and turning off software skinning helps some old devices in certain games (but you're right, it's barely relevant anymore).

@ghost
Copy link

ghost commented Sep 9, 2021

I think I'd move them to developer settings

Yeah I agree with this 👍

@ghost
Copy link

ghost commented Oct 21, 2021

I/O on thread settings is now remove #14999

@ghost
Copy link

ghost commented May 12, 2022

Skip-bufferd rendering mode is unusable now on the recent build it produce blackscreen only unlike before.

Tested on Tekken6 and Burnout Legends.The last working build is a987261

Opinion: remove rendering mode option.?

@ghost
Copy link

ghost commented Jul 14, 2022

IMG_20220714_134531
@hrydgard what's the use of Enable Driver Bug Workaround I tried it doesn't work?

@hrydgard
Copy link
Owner Author

@Gamemulatorer If you uncheck that, some fixes like the Mali stencil bug workaround are deactivated

@ghost
Copy link

ghost commented Sep 3, 2022

Disable Slower Effects is now remove in option #15948

@ghost
Copy link

ghost commented Dec 10, 2022

Retain chaged texture are remove from the settings ui #16346

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests