mirror of
https://github.com/shadps4-emu/shadPS4.git
synced 2025-12-09 21:31:04 +00:00
cli: add --show-fps to the CLI launcher (#3860)
* cli: add `--show-fps` to the CLI launcher * fix: clang-format * nit: PascalCase -> camelCase
This commit is contained in:
@@ -199,6 +199,7 @@ static ConfigEntry<bool> isDebugDump(false);
|
|||||||
static ConfigEntry<bool> isShaderDebug(false);
|
static ConfigEntry<bool> isShaderDebug(false);
|
||||||
static ConfigEntry<bool> isSeparateLogFilesEnabled(false);
|
static ConfigEntry<bool> isSeparateLogFilesEnabled(false);
|
||||||
static ConfigEntry<bool> isFpsColor(true);
|
static ConfigEntry<bool> isFpsColor(true);
|
||||||
|
static ConfigEntry<bool> showFpsCounter(false);
|
||||||
static ConfigEntry<bool> logEnabled(true);
|
static ConfigEntry<bool> logEnabled(true);
|
||||||
|
|
||||||
// GUI
|
// GUI
|
||||||
@@ -466,6 +467,14 @@ bool fpsColor() {
|
|||||||
return isFpsColor.get();
|
return isFpsColor.get();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool getShowFpsCounter() {
|
||||||
|
return showFpsCounter.get();
|
||||||
|
}
|
||||||
|
|
||||||
|
void setShowFpsCounter(bool enable, bool is_game_specific) {
|
||||||
|
showFpsCounter.set(enable, is_game_specific);
|
||||||
|
}
|
||||||
|
|
||||||
bool isLoggingEnabled() {
|
bool isLoggingEnabled() {
|
||||||
return logEnabled.get();
|
return logEnabled.get();
|
||||||
}
|
}
|
||||||
@@ -969,6 +978,7 @@ void load(const std::filesystem::path& path, bool is_game_specific) {
|
|||||||
isSeparateLogFilesEnabled.setFromToml(debug, "isSeparateLogFilesEnabled", is_game_specific);
|
isSeparateLogFilesEnabled.setFromToml(debug, "isSeparateLogFilesEnabled", is_game_specific);
|
||||||
isShaderDebug.setFromToml(debug, "CollectShader", is_game_specific);
|
isShaderDebug.setFromToml(debug, "CollectShader", is_game_specific);
|
||||||
isFpsColor.setFromToml(debug, "FPSColor", is_game_specific);
|
isFpsColor.setFromToml(debug, "FPSColor", is_game_specific);
|
||||||
|
showFpsCounter.setFromToml(debug, "showFpsCounter", is_game_specific);
|
||||||
logEnabled.setFromToml(debug, "logEnabled", is_game_specific);
|
logEnabled.setFromToml(debug, "logEnabled", is_game_specific);
|
||||||
current_version = toml::find_or<std::string>(debug, "ConfigVersion", current_version);
|
current_version = toml::find_or<std::string>(debug, "ConfigVersion", current_version);
|
||||||
}
|
}
|
||||||
@@ -1188,6 +1198,7 @@ void save(const std::filesystem::path& path, bool is_game_specific) {
|
|||||||
data["GPU"]["internalScreenHeight"] = internalScreenHeight.base_value;
|
data["GPU"]["internalScreenHeight"] = internalScreenHeight.base_value;
|
||||||
data["GPU"]["patchShaders"] = shouldPatchShaders.base_value;
|
data["GPU"]["patchShaders"] = shouldPatchShaders.base_value;
|
||||||
data["Debug"]["FPSColor"] = isFpsColor.base_value;
|
data["Debug"]["FPSColor"] = isFpsColor.base_value;
|
||||||
|
data["Debug"]["showFpsCounter"] = showFpsCounter.base_value;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Sorting of TOML sections
|
// Sorting of TOML sections
|
||||||
@@ -1296,6 +1307,7 @@ void setDefaultValues(bool is_game_specific) {
|
|||||||
|
|
||||||
// Debug
|
// Debug
|
||||||
isFpsColor.base_value = true;
|
isFpsColor.base_value = true;
|
||||||
|
showFpsCounter.base_value = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -126,6 +126,8 @@ bool getPSNSignedIn();
|
|||||||
void setPSNSignedIn(bool sign, bool is_game_specific = false);
|
void setPSNSignedIn(bool sign, bool is_game_specific = false);
|
||||||
bool patchShaders(); // no set
|
bool patchShaders(); // no set
|
||||||
bool fpsColor(); // no set
|
bool fpsColor(); // no set
|
||||||
|
bool getShowFpsCounter();
|
||||||
|
void setShowFpsCounter(bool enable, bool is_game_specific = false);
|
||||||
bool isNeoModeConsole();
|
bool isNeoModeConsole();
|
||||||
void setNeoMode(bool enable, bool is_game_specific = false);
|
void setNeoMode(bool enable, bool is_game_specific = false);
|
||||||
bool isDevKitConsole();
|
bool isDevKitConsole();
|
||||||
|
|||||||
@@ -311,6 +311,7 @@ static void LoadSettings(const char* line) {
|
|||||||
|
|
||||||
void L::SetupSettings() {
|
void L::SetupSettings() {
|
||||||
frame_graph.is_open = true;
|
frame_graph.is_open = true;
|
||||||
|
show_simple_fps = Config::getShowFpsCounter();
|
||||||
|
|
||||||
using SettingLoader = void (*)(const char*);
|
using SettingLoader = void (*)(const char*);
|
||||||
|
|
||||||
@@ -475,6 +476,11 @@ void ToggleSimpleFps() {
|
|||||||
visibility_toggled = true;
|
visibility_toggled = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void SetSimpleFps(bool enabled) {
|
||||||
|
show_simple_fps = enabled;
|
||||||
|
visibility_toggled = true;
|
||||||
|
}
|
||||||
|
|
||||||
void ToggleQuitWindow() {
|
void ToggleQuitWindow() {
|
||||||
show_quit_window = !show_quit_window;
|
show_quit_window = !show_quit_window;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -30,6 +30,7 @@ private:
|
|||||||
namespace Overlay {
|
namespace Overlay {
|
||||||
|
|
||||||
void ToggleSimpleFps();
|
void ToggleSimpleFps();
|
||||||
|
void SetSimpleFps(bool enabled);
|
||||||
void ToggleQuitWindow();
|
void ToggleQuitWindow();
|
||||||
|
|
||||||
} // namespace Overlay
|
} // namespace Overlay
|
||||||
|
|||||||
@@ -67,6 +67,7 @@ int main(int argc, char* argv[]) {
|
|||||||
"values, ignores the config file(s) entirely.\n"
|
"values, ignores the config file(s) entirely.\n"
|
||||||
" --config-global Run the emulator with the base config file "
|
" --config-global Run the emulator with the base config file "
|
||||||
"only, ignores game specific configs.\n"
|
"only, ignores game specific configs.\n"
|
||||||
|
" --show-fps Enable FPS counter display at startup\n"
|
||||||
" -h, --help Display this help message\n";
|
" -h, --help Display this help message\n";
|
||||||
exit(0);
|
exit(0);
|
||||||
}},
|
}},
|
||||||
@@ -174,13 +175,15 @@ int main(int argc, char* argv[]) {
|
|||||||
game_folder = folder;
|
game_folder = folder;
|
||||||
}},
|
}},
|
||||||
{"--wait-for-debugger", [&](int& i) { waitForDebugger = true; }},
|
{"--wait-for-debugger", [&](int& i) { waitForDebugger = true; }},
|
||||||
{"--wait-for-pid", [&](int& i) {
|
{"--wait-for-pid",
|
||||||
|
[&](int& i) {
|
||||||
if (++i >= argc) {
|
if (++i >= argc) {
|
||||||
std::cerr << "Error: Missing argument for --wait-for-pid\n";
|
std::cerr << "Error: Missing argument for --wait-for-pid\n";
|
||||||
exit(1);
|
exit(1);
|
||||||
}
|
}
|
||||||
waitPid = std::stoi(argv[i]);
|
waitPid = std::stoi(argv[i]);
|
||||||
}}};
|
}},
|
||||||
|
{"--show-fps", [&](int& i) { Config::setShowFpsCounter(true); }}};
|
||||||
|
|
||||||
if (argc == 1) {
|
if (argc == 1) {
|
||||||
if (!SDL_ShowSimpleMessageBox(
|
if (!SDL_ShowSimpleMessageBox(
|
||||||
|
|||||||
Reference in New Issue
Block a user