mirror of
https://github.com/KytyPS5/KytyPS5.git
synced 2026-10-28 22:06:59 +01:00
Make tessellation optional
This commit is contained in:
@@ -135,6 +135,10 @@ bool ReadbackLinearImagesEnabled() {
|
|||||||
return g_config->readback_linear_images;
|
return g_config->readback_linear_images;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool TessellationEnabled() {
|
||||||
|
return g_config->tessellation_enabled;
|
||||||
|
}
|
||||||
|
|
||||||
bool PlayGoHackEnabled() {
|
bool PlayGoHackEnabled() {
|
||||||
return g_config->playgo_hack_enabled;
|
return g_config->playgo_hack_enabled;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -66,6 +66,7 @@ struct ConfigOptions {
|
|||||||
bool gpu_assisted_validation_enabled = false;
|
bool gpu_assisted_validation_enabled = false;
|
||||||
bool renderdoc_enabled = false;
|
bool renderdoc_enabled = false;
|
||||||
bool readback_linear_images = false;
|
bool readback_linear_images = false;
|
||||||
|
bool tessellation_enabled = false;
|
||||||
bool playgo_hack_enabled = false;
|
bool playgo_hack_enabled = false;
|
||||||
#if KYTY_PLATFORM == KYTY_PLATFORM_WINDOWS
|
#if KYTY_PLATFORM == KYTY_PLATFORM_WINDOWS
|
||||||
bool red_zone_protection_enabled = false;
|
bool red_zone_protection_enabled = false;
|
||||||
@@ -110,6 +111,7 @@ bool GpuAssistedValidationEnabled();
|
|||||||
|
|
||||||
bool RenderDocEnabled();
|
bool RenderDocEnabled();
|
||||||
bool ReadbackLinearImagesEnabled();
|
bool ReadbackLinearImagesEnabled();
|
||||||
|
bool TessellationEnabled();
|
||||||
bool PlayGoHackEnabled();
|
bool PlayGoHackEnabled();
|
||||||
#if KYTY_PLATFORM == KYTY_PLATFORM_WINDOWS
|
#if KYTY_PLATFORM == KYTY_PLATFORM_WINDOWS
|
||||||
bool RedZoneProtectionEnabled();
|
bool RedZoneProtectionEnabled();
|
||||||
|
|||||||
@@ -2,6 +2,7 @@
|
|||||||
|
|
||||||
#include "common/assert.h"
|
#include "common/assert.h"
|
||||||
#include "common/common.h"
|
#include "common/common.h"
|
||||||
|
#include "common/emulatorConfig.h"
|
||||||
#include "common/file.h"
|
#include "common/file.h"
|
||||||
#include "common/logging/log.h"
|
#include "common/logging/log.h"
|
||||||
#include "common/profiler.h"
|
#include "common/profiler.h"
|
||||||
@@ -813,6 +814,8 @@ static bool GetDrawTopology(const HW::UserConfig& ucfg, bool auto_draw,
|
|||||||
topology = vk::PrimitiveTopology::eTriangleStrip;
|
topology = vk::PrimitiveTopology::eTriangleStrip;
|
||||||
break;
|
break;
|
||||||
case Prospero::PrimitiveType::kPatch:
|
case Prospero::PrimitiveType::kPatch:
|
||||||
|
if (!Config::TessellationEnabled()) return false;
|
||||||
|
[[fallthrough]];
|
||||||
case Prospero::PrimitiveType::kRectList:
|
case Prospero::PrimitiveType::kRectList:
|
||||||
topology = vk::PrimitiveTopology::ePatchList;
|
topology = vk::PrimitiveTopology::ePatchList;
|
||||||
break;
|
break;
|
||||||
|
|||||||
@@ -64,6 +64,7 @@ static void PrintUsage() {
|
|||||||
::printf(" --gpu-assisted-validation <t|f> Bounds-check shader accesses on the GPU.\n"
|
::printf(" --gpu-assisted-validation <t|f> Bounds-check shader accesses on the GPU.\n"
|
||||||
" Implies --vulkan-validation; very slow.\n");
|
" Implies --vulkan-validation; very slow.\n");
|
||||||
::printf(" --shader-validation <true|false> Enable shader validation.\n");
|
::printf(" --shader-validation <true|false> Enable shader validation.\n");
|
||||||
|
::printf(" --tessellation Draw tessellation patches; skipped by default.\n");
|
||||||
::printf(" --shader-optimization-type <value> None, Size, or Performance.\n");
|
::printf(" --shader-optimization-type <value> None, Size, or Performance.\n");
|
||||||
::printf(" --shader-log-direction <value> Silent, Console, or File.\n");
|
::printf(" --shader-log-direction <value> Silent, Console, or File.\n");
|
||||||
::printf(" --shader-log-folder <path> Shader log output folder.\n");
|
::printf(" --shader-log-folder <path> Shader log output folder.\n");
|
||||||
@@ -180,6 +181,11 @@ static bool ParseArgs(int argc, char* argv[], RunOptions& options, bool& show_he
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (arg == "--tessellation") {
|
||||||
|
options.config.tessellation_enabled = true;
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
if (arg == "--profile") {
|
if (arg == "--profile") {
|
||||||
options.config.profiler_enabled = true;
|
options.config.profiler_enabled = true;
|
||||||
continue;
|
continue;
|
||||||
|
|||||||
Reference in New Issue
Block a user