hrydgard / ppsspp

A PSP emulator for Android, Windows, Mac and Linux, written in C++. Want to contribute? Join us on Discord at https://discord.gg/5NJB6dD or just send pull requests / issues. For discussion use the forums at forums.ppsspp.org.
https://www.ppsspp.org
Other
11.45k stars 2.19k forks source link

Options to remove #8171

Open hrydgard opened 9 years ago

hrydgard commented 9 years ago

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:

Audio candidates:

System candidates:

Reconsidered for now:

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

LunaMoo commented 9 years ago

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 commented 9 years ago
Trokinos commented 9 years ago

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 commented 9 years ago

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 commented 9 years ago

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

SukharevAndrey commented 9 years ago

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 commented 9 years ago

F5 shortcut removed.

GamerzHell9137 commented 9 years ago

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 commented 9 years ago

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 commented 9 years ago

+1 for keeping the ability to disable cheats.

GamerzHell9137 commented 9 years ago

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

hrydgard commented 9 years ago

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 commented 9 years ago

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

unknownbrackets commented 9 years ago

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 commented 9 years ago

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 commented 9 years ago

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

unknownbrackets commented 9 years ago

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 commented 9 years ago
GamerzHell9137 commented 9 years ago

Ohhh +1 for hiding resolution messages.

asbel123 commented 9 years ago

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 commented 7 years ago

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

ghost commented 5 years ago

@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 commented 5 years ago

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 commented 4 years ago

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 commented 4 years ago

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 commented 4 years ago

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 commented 4 years ago

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 commented 3 years ago

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 commented 3 years ago

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

hrydgard commented 3 years ago

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 commented 3 years ago

I think I'd move them to developer settings

Yeah I agree with this 👍

ghost commented 3 years ago

I/O on thread settings is now remove https://github.com/hrydgard/ppsspp/pull/14999

ghost commented 2 years ago

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 https://github.com/hrydgard/ppsspp/commit/a987261f1d5609c80be71ce10702e8f3d6d66e00

Opinion: remove rendering mode option.?

ghost commented 2 years ago

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

hrydgard commented 2 years ago

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

ghost commented 2 years ago

Disable Slower Effects is now remove in option https://github.com/hrydgard/ppsspp/pull/15948

ghost commented 1 year ago

Retain chaged texture are remove from the settings ui https://github.com/hrydgard/ppsspp/pull/16346