mirror of
https://github.com/KytyPS5/KytyPS5.git
synced 2026-10-30 09:08:19 +00:00
graphics: add experimental Pro mode and linear PSSR
Co-authored-by: Joshua Jayasingh <joshuajayasingh08@gmail.com>
This commit is contained in:
1 parent
5e837a9bea
commit
651ef73a03
30 files changed
+1340
-278
No files matched your search
@@ -2,6 +2,7 @@
|
||||
|
||||
#include "common/assert.h"
|
||||
#include "common/common.h"
|
||||
#include "common/emulatorConfig.h"
|
||||
#include "common/file.h"
|
||||
#include "common/logging/log.h"
|
||||
#include "common/singleton.h"
|
||||
@@ -90,6 +91,7 @@ private:
|
||||
};
|
||||
|
||||
struct SystemContent {
|
||||
bool trinity_mode = false;
|
||||
std::filesystem::path psf_path;
|
||||
Psf psf;
|
||||
std::filesystem::path playgo_path;
|
||||
@@ -603,6 +605,14 @@ void SystemContentLoadParamSfo(const std::filesystem::path& file_name) {
|
||||
|
||||
sc->psf_path = file_name;
|
||||
sc->psf.DbgPrint();
|
||||
int32_t attribute3 = 0;
|
||||
const bool title_supports_trinity = sc->psf.GetParamInt("ATTRIBUTE3", &attribute3) &&
|
||||
(static_cast<uint32_t>(attribute3) & (1u << 22u)) != 0;
|
||||
sc->trinity_mode = Config::Ps5ProEnabled() && title_supports_trinity;
|
||||
if (Config::Ps5ProEnabled()) {
|
||||
Log::WriteToConsoleAndLog(fmt::format("[PS5] title Trinity support={}\n",
|
||||
title_supports_trinity ? "yes" : "no"));
|
||||
}
|
||||
|
||||
sc->icon_path = file_name.parent_path() / "icon0.png";
|
||||
|
||||
@@ -626,6 +636,10 @@ void SystemContentLoadParamSfo(const std::filesystem::path& file_name) {
|
||||
}
|
||||
}
|
||||
|
||||
bool SystemContentIsTrinityMode() {
|
||||
return Common::Singleton<SystemContent>::Instance()->trinity_mode;
|
||||
}
|
||||
|
||||
bool SystemContentParamSfoGetInt(const char* name, int32_t* value) {
|
||||
if (name == nullptr || value == nullptr) {
|
||||
return false;
|
||||
|
||||
@@ -11,6 +11,7 @@
|
||||
namespace Loader {
|
||||
|
||||
void SystemContentLoadParamSfo(const std::filesystem::path& file_name);
|
||||
bool SystemContentIsTrinityMode();
|
||||
bool SystemContentParamSfoGetInt(const char* name, int32_t* value);
|
||||
bool SystemContentParamSfoGetString(const char* name, std::string* value);
|
||||
bool SystemContentParamSfoGetString(const char* name, char* value, size_t value_size);
|
||||
|
||||
Reference in new issue
Block a user