Merge pull request #18572 from hrydgard/disable-range-culling-hack

Add "Disable culling" as a speedhack for experimentation
This commit is contained in:
Henrik Rydgård 2023-12-18 21:49:37 +01:00 committed by GitHub
commit ffa3529e6f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
48 changed files with 56 additions and 1 deletions

View File

@ -602,6 +602,7 @@ static const ConfigSetting graphicsSettings[] = {
ConfigSetting("VendorBugChecksEnabled", &g_Config.bVendorBugChecksEnabled, true, CfgFlag::DONT_SAVE),
ConfigSetting("UseGeometryShader", &g_Config.bUseGeometryShader, false, CfgFlag::PER_GAME),
ConfigSetting("SkipBufferEffects", &g_Config.bSkipBufferEffects, false, CfgFlag::PER_GAME | CfgFlag::REPORT),
ConfigSetting("DisableRangeCulling", &g_Config.bDisableRangeCulling, false, CfgFlag::PER_GAME | CfgFlag::REPORT),
ConfigSetting("SoftwareRenderer", &g_Config.bSoftwareRendering, false, CfgFlag::PER_GAME),
ConfigSetting("SoftwareRendererJit", &g_Config.bSoftwareRenderingJit, true, CfgFlag::PER_GAME),
ConfigSetting("HardwareTransform", &g_Config.bHardwareTransform, true, CfgFlag::PER_GAME | CfgFlag::REPORT),

View File

@ -166,6 +166,7 @@ public:
// Speedhacks (more will be moved here):
bool bSkipBufferEffects;
bool bDisableRangeCulling;
int iTexFiltering; // 1 = auto , 2 = nearest , 3 = linear , 4 = auto max quality

View File

@ -603,7 +603,7 @@ u32 GPUCommonHW::CheckGPUFeatures() const {
bool canClipOrCull = draw_->GetDeviceCaps().clipDistanceSupported || draw_->GetDeviceCaps().cullDistanceSupported;
bool canDiscardVertex = !draw_->GetBugs().Has(Draw::Bugs::BROKEN_NAN_IN_CONDITIONAL);
if (canClipOrCull || canDiscardVertex) {
if ((canClipOrCull || canDiscardVertex) && !g_Config.bDisableRangeCulling) {
// We'll dynamically use the parts that are supported, to reduce artifacts as much as possible.
features |= GPU_USE_VS_RANGE_CULLING;
}

View File

@ -410,6 +410,14 @@ void EmuScreen::bootComplete() {
#endif
}
if (g_Config.bStereoRendering) {
auto gr = GetI18NCategory(I18NCat::GRAPHICS);
auto di = GetI18NCategory(I18NCat::DIALOG);
// Stereo rendering is experimental, so let's notify the user it's being used.
// Carefully reuse translations for this rare warning.
g_OSD.Show(OSDType::MESSAGE_WARNING, std::string(gr->T("Stereo rendering")) + ": " + di->T("Enabled"));
}
saveStateSlot_ = SaveState::GetCurrentSlot();
loadingViewColor_->Divert(0x00FFFFFF, 0.2f);

View File

@ -428,6 +428,8 @@ void GameSettingsScreen::CreateGraphicsSettings(UI::ViewGroup *graphicsSettings)
});
skipBufferEffects->SetDisabledPtr(&g_Config.bSoftwareRendering);
graphicsSettings->Add(new CheckBox(&g_Config.bDisableRangeCulling, gr->T("Disable culling")));
static const char *skipGpuReadbackModes[] = { "No (default)", "Skip", "Copy to texture" };
PopupMultiChoice *skipGPUReadbacks = graphicsSettings->Add(new PopupMultiChoice(&g_Config.iSkipGPUReadbackMode, gr->T("Skip GPU Readbacks"), skipGpuReadbackModes, 0, ARRAY_SIZE(skipGpuReadbackModes), I18NCat::GRAPHICS, screenManager()));

View File

@ -597,6 +597,7 @@ Deposterize Tip = Fixes visual banding glitches in upscaled textures
Device = Device
Direct3D 9 = Direct3D 9
Direct3D 11 = Direct3D 11
Disable culling = Disable culling
Disabled = Disabled
Display Layout && Effects = ‎أظهر مُعدل النسق
Display Resolution (HW scaler) = Display resolution (HW scaler)

View File

@ -589,6 +589,7 @@ Deposterize Tip = Fixes visual banding glitches in upscaled textures
Device = Device
Direct3D 9 = Direct3D 9
Direct3D 11 = Direct3D 11
Disable culling = Disable culling
Disabled = Disabled
Display Layout && Effects = Display layout && effects
Display Resolution (HW scaler) = Display resolution (HW scaler)

View File

@ -589,6 +589,7 @@ Deposterize Tip = Fixes visual banding glitches in upscaled textures
Device = Device
Direct3D 9 = Direct3D 9
Direct3D 11 = Direct3D 11
Disable culling = Disable culling
Disabled = Disabled
Display Layout && Effects = Display layout && effects
Display Resolution (HW scaler) = Display resolution (HW scaler)

View File

@ -589,6 +589,7 @@ Deposterize Tip = Arregla petits errors a les textures causades per l'escalat
Device = Dispositiu
Direct3D 9 = Direct3D 9
Direct3D 11 = Direct3D 11
Disable culling = Disable culling
Disabled = Desactivat
Display Layout && Effects = Editor de l'àrea de pantalla
Display Resolution (HW scaler) = Resolució de pantalla (escalat per maquinari)

View File

@ -589,6 +589,7 @@ Deposterize Tip = Fixes visual banding glitches in upscaled textures
Device = Device
Direct3D 9 = Direct3D 9
Direct3D 11 = Direct3D 11
Disable culling = Disable culling
Disabled = Disabled
Display Layout && Effects = Zobrazit editor rozvržení
Display Resolution (HW scaler) = Rozlišení obrazovky (Hardwarové zvětšení)

View File

@ -589,6 +589,7 @@ Deposterize Tip = Retter visuel banding fejl in opskalerede textures
Device = Device
Direct3D 9 = Direct3D 9
Direct3D 11 = Direct3D 11
Disable culling = Disable culling
Disabled = Disabled
Display Layout && Effects = Display layout && effects
Display Resolution (HW scaler) = Skærmopløsning (HW scaler)

View File

@ -589,6 +589,7 @@ Deposterize Tip = Behebt visuelle Artifakte von hochskalierten Texturen
Device = Gerät
Direct3D 9 = Direct3D 9
Direct3D 11 = Direct3D 11
Disable culling = Disable culling
Disabled = Deaktiviert
Display Layout && Effects = Bildschirmlayout Editor
Display Resolution (HW scaler) = Bildschirmauflösung (HW Skalierung)

View File

@ -589,6 +589,7 @@ Deposterize Tip = Fixes visual banding glitches in upscaled textures
Device = Device
Direct3D 9 = Direct3D 9
Direct3D 11 = Direct3D 11
Disable culling = Disable culling
Disabled = Disabled
Display Layout && Effects = Display layout && effects
Display Resolution (HW scaler) = Display resolution (HW scaler)

View File

@ -595,6 +595,7 @@ Balanced = Balanced
Bicubic = Bicubic
Copy to texture = Copy to texture
Current GPU Driver = Current GPU Driver
Disable culling = Disable culling
GPUReadbackRequired = Warning: This game requires "Skip GPU Readbacks" to be set to Off.
Both = Both
Buffer graphics commands (faster, input lag) = Buffer graphics commands (faster, input lag)

View File

@ -589,6 +589,7 @@ Deposterize Tip = Arregla pequeños errores en las texturas causadas por el esca
Device = Dispositivo
Direct3D 9 = Direct3D 9
Direct3D 11 = Direct3D 11
Disable culling = Disable culling
Disabled = Desactivado
Display Layout && Effects = Editar pantalla y Shaders
Display Resolution (HW scaler) = Resolución de pantalla (escalado por hardware)

View File

@ -589,6 +589,7 @@ Deposterize Tip = Arregla glitches de banda visual en texturas causadas por el e
Device = Dispositivo
Direct3D 9 = Direct3D 9
Direct3D 11 = Direct3D 11
Disable culling = Disable culling
Disabled = Apagado
Display Layout && Effects = Editar pantalla y Shaders
Display Resolution (HW scaler) = Resolución de pantalla (escalado por HW)

View File

@ -589,6 +589,7 @@ Deposterize Tip = ‎مشکل نواری شدن در تکسچر های تغیی
Device = Device
Direct3D 9 = Direct3D 9
Direct3D 11 = Direct3D 11
Disable culling = Disable culling
Disabled = Disabled
Display Layout && Effects = ‎ویرایشگر چیدمان صفحه
Display Resolution (HW scaler) = ‎رزولوشن صفحه

View File

@ -589,6 +589,7 @@ Deposterize Tip = Korjaa visuaaliset viivamaiset häiriöt ylöskaalattujen teks
Device = Laite
Direct3D 9 = Direct3D 9
Direct3D 11 = Direct3D 11
Disable culling = Disable culling
Disabled = Poistettu käytöstä
Display Layout && Effects = Näyttöasettelu ja -efektit
Display Resolution (HW scaler) = Näyttöresoluutio (Laitteiston skaalaaja)

View File

@ -589,6 +589,7 @@ Deposterize Tip = Corrige le bug graphique qui fait apparaître des bandes dans
Device = Appareil
Direct3D 9 = Direct3D 9
Direct3D 11 = Direct3D 11
Disable culling = Disable culling
Disabled = Désactivé
Display Layout && Effects = Éditeur d'affichage
Display Resolution (HW scaler) = Définition d'affichage (mise à l'échelle matérielle)

View File

@ -589,6 +589,7 @@ Deposterize Tip = Fixes visual banding glitches in upscaled textures
Device = Device
Direct3D 9 = Direct3D 9
Direct3D 11 = Direct3D 11
Disable culling = Disable culling
Disabled = Disabled
Display Layout && Effects = Display layout && effects
Display Resolution (HW scaler) = Resolución de pantalla (escalado por hardware)

View File

@ -589,6 +589,7 @@ Deposterize Tip = Διορθώνει μικρές ατέλειες υφών με
Device = Device
Direct3D 9 = Direct3D 9
Direct3D 11 = Direct3D 11
Disable culling = Disable culling
Disabled = Απενεργοποιημένο
Display Layout && Effects = Επεξεργασία διάταξης οθόνης
Display Resolution (HW scaler) = Ανάλυση οθόνης (Κλιμακοτής hardware)

View File

@ -589,6 +589,7 @@ Deposterize Tip = Fixes visual banding glitches in upscaled textures
Device = Device
Direct3D 9 = Direct3D 9
Direct3D 11 = Direct3D 11
Disable culling = Disable culling
Disabled = Disabled
Display Layout && Effects = Display layout && effects
Display Resolution (HW scaler) = Display resolution (HW scaler)

View File

@ -589,6 +589,7 @@ Deposterize Tip = Fixes visual banding glitches in upscaled textures
Device = Device
Direct3D 9 = Direct3D 9
Direct3D 11 = Direct3D 11
Disable culling = Disable culling
Disabled = Disabled
Display Layout && Effects = Display layout && effects
Display Resolution (HW scaler) = Display resolution (HW scaler)

View File

@ -589,6 +589,7 @@ Deposterize Tip = Popravlja vizualne banding glitcheve u podignutim teksturama
Device = Uređaj
Direct3D 9 = Direct3D 9
Direct3D 11 = Direct3D 11
Disable culling = Disable culling
Disabled = Isključeno
Display Layout && Effects = Prikaz layout uređivača
Display Resolution (HW scaler) = Prikaz rezolucije (HW mjeritelj)

View File

@ -589,6 +589,7 @@ Deposterize Tip = Skálázásból eredő kisebb textúra hibák megszüntetése.
Device = Eszköz
Direct3D 9 = Direct3D 9
Direct3D 11 = Direct3D 11
Disable culling = Disable culling
Disabled = Letiltva
Display Layout && Effects = Elrendezés szerkesztő
Display Resolution (HW scaler) = Megjelenítési felbontás (HW skálázó)

View File

@ -589,6 +589,7 @@ Deposterize Tip = Memperbaiki gangguan pita visual pada tekstur yang ditingkatka
Device = Perangkat
Direct3D 9 = Direct3D 9
Direct3D 11 = Direct3D 11
Disable culling = Disable culling
Disabled = Nonaktif
Display Layout && Effects = Penyesuaian tata letak tampilan
Display Resolution (HW scaler) = Resolusi tampilan (penskala HW)

View File

@ -590,6 +590,7 @@ Device = Dispositivo
Direct3D 9 = Direct3D 9
Direct3D 11 = Direct3D 11
#Disable slower effects (speedup) = Disattiva gli effetti più lenti (veloce)
Disable culling = Disable culling
Disabled = Disabilitato
Display Layout && Effects = Editor Display
Display Resolution (HW scaler) = Risoluzione Display (scaler HW)

View File

@ -589,6 +589,7 @@ Deposterize Tip = アップスケールされたテクスチャのバンディ
Device = デバイス
Direct3D 9 = Direct3D 9
Direct3D 11 = Direct3D 11
Disable culling = Disable culling
Disabled = 無効
Display Layout && Effects = 画面のレイアウトを編集する
Display Resolution (HW scaler) = 画面解像度 (HWスケーラー)

View File

@ -589,6 +589,7 @@ Deposterize Tip = Fixes visual banding glitches in upscaled textures
Device = Device
Direct3D 9 = Direct3D 9
Direct3D 11 = Direct3D 11
Disable culling = Disable culling
Disabled = Disabled
Display Layout && Effects = Tata letak Tampilan editor
Display Resolution (HW scaler) = Resolusi tampilan (HW scaler)

View File

@ -571,6 +571,7 @@ Balanced = 평형
Bicubic = 고등차수보간
Copy to texture = Copy to texture
Current GPU Driver = Current GPU Driver
Disable culling = Disable culling
GPUReadbackRequired = 경고: 이 게임은 "GPU 다시 읽기 건너뛰기"를 꺼짐으로 설정해야 합니다.
Both = 둘 다
Buffer graphics commands (faster, input lag) = 버퍼 그래픽 명령 (빠름, 입력 지연)

View File

@ -589,6 +589,7 @@ Deposterize Tip = ແກ້ໄຂການສະແດງຜົນຜິດພ
Device = Device
Direct3D 9 = Direct3D 9
Direct3D 11 = Direct3D 11
Disable culling = Disable culling
Disabled = Disabled
Display Layout && Effects = ແກ້ໄຂຮູບແບບໜ້າຈໍ
Display Resolution (HW scaler) = ຄວາມລະອຽດໜ້າຈໍ (ຕາມຮາດແວຣ໌)

View File

@ -589,6 +589,7 @@ Deposterize Tip = Fixes visual banding glitches in upscaled textures
Device = Device
Direct3D 9 = Direct3D 9
Direct3D 11 = Direct3D 11
Disable culling = Disable culling
Disabled = Disabled
Display Layout && Effects = Display layout && effects
Display Resolution (HW scaler) = Ekrano rezoliucija ("HW" ištiesinimas)

View File

@ -589,6 +589,7 @@ Deposterize Tip = Fixes visual banding glitches in upscaled textures
Device = Device
Direct3D 9 = Direct3D 9
Direct3D 11 = Direct3D 11
Disable culling = Disable culling
Disabled = Disabled
Display Layout && Effects = Display layout && effects
Display Resolution (HW scaler) = Display resolution (HW scaler)

View File

@ -589,6 +589,7 @@ Deposterize Tip = Verhelpt visuele streepglitches in opgeschaalde textures
Device = Device
Direct3D 9 = Direct3D 9
Direct3D 11 = Direct3D 11
Disable culling = Disable culling
Disabled = Disabled
Display Layout && Effects = Schermweergave bewerken
Display Resolution (HW scaler) = Schermresolutie (hardware)

View File

@ -589,6 +589,7 @@ Deposterize Tip = Fixes visual banding glitches in upscaled textures
Device = Device
Direct3D 9 = Direct3D 9
Direct3D 11 = Direct3D 11
Disable culling = Disable culling
Disabled = Disabled
Display Layout && Effects = Display layout && effects
Display Resolution (HW scaler) = Display resolution (HW scaler)

View File

@ -594,6 +594,7 @@ Deposterize Tip = Poprawia banding koloru na przeskalowanych teksturach
Device = Urządzenie
Direct3D 9 = Direct3D 9
Direct3D 11 = Direct3D 11
Disable culling = Disable culling
Disabled = Wył.
Display Layout && Effects = Edytor położenia obrazu
Display Resolution (HW scaler) = Rozdzielczość ekranu (skaler sprz.)

View File

@ -595,6 +595,7 @@ Balanced = Balanceado
Bicubic = Bi-cúbico
Copy to texture = Copy to texture
Current GPU Driver = Current GPU Driver
Disable culling = Disable culling
GPUReadbackRequired = Aviso: Este jogo requer "Ignorar Leituras da GPU" pra ser configurado como Desligado.
Both = Ambos
Buffer graphics commands (faster, input lag) = Buffer dos comandos dos gráficos (mais rápido, atraso na entrada dos dados)

View File

@ -613,6 +613,7 @@ Deposterize Tip = Conserta erros gráficos visuais das faixas nas texturas ampli
Device = Dispositivo
Direct3D 9 = Direct3D 9
Direct3D 11 = Direct3D 11
Disable culling = Disable culling
Disabled = Desativado
Display Layout && Effects = Mostrar o editor dos esquemas
Display Resolution (HW scaler) = Resolução da tela (Dimensionador do hardware)

View File

@ -590,6 +590,7 @@ Deposterize Tip = Fixes visual banding glitches in upscaled textures
Device = Device
Direct3D 9 = Direct3D 9
Direct3D 11 = Direct3D 11
Disable culling = Disable culling
Disabled = Disabled
Display Layout && Effects = Display layout && effects
Display Resolution (HW scaler) = Rezoluție ecran (scalare HW)

View File

@ -589,6 +589,7 @@ Deposterize Tip = Исправляет полосатость в масштаб
Device = Устройство
Direct3D 9 = Direct3D 9
Direct3D 11 = Direct3D 11
Disable culling = Disable culling
Disabled = Отключено
Display Layout && Effects = Редактор расположения экрана и эффектов
Display Resolution (HW scaler) = Разрешение экрана (аппаратное)

View File

@ -590,6 +590,7 @@ Deposterize Tip = Fixes visual banding glitches in upscaled textures
Device = Enhet
Direct3D 9 = Direct3D 9
Direct3D 11 = Direct3D 11
Disable culling = Disable culling
Disabled = Avstängd
Display Layout && Effects = Skärmlayout och effekter
Display Resolution (HW scaler) = Skärmupplösning (HW scaler)

View File

@ -589,6 +589,7 @@ Deposterize Tip = Fixes visual banding glitches in upscaled textures
Device = Device
Direct3D 9 = Direct3D 9
Direct3D 11 = Direct3D 11
Disable culling = Disable culling
Disabled = Disabled
Display Layout && Effects = Display layout && effects
Display Resolution (HW scaler) = Display resolution (HW scaler)

View File

@ -589,6 +589,7 @@ Deposterize Tip = แก้ไขขอบภาพเบลอ หรือภ
Device = การ์ดจอ
Direct3D 9 = ไดเร็คท์ 3D 9
Direct3D 11 = ไดเร็คท์ 3D 11
Disable culling = Disable culling
Disabled = ปิดการใช้งาน
Display Layout && Effects = รูปแบบหน้าจอ และเอฟเฟ็คท์
Display Resolution (HW scaler) = ความละเอียดหน้าจอ (ตามฮาร์ดแวร์)

View File

@ -591,6 +591,7 @@ Deposterize Tip = Yeniden ölçeklenen dokulardaki görsel şerit hatalarını d
Device = Cihaz
Direct3D 9 = Direct3D 9
Direct3D 11 = Direct3D 11
Disable culling = Disable culling
Disabled = Devre dışı
Display Layout && Effects = Görüntü Düzeni Düzenleyicisi
Display Resolution (HW scaler) = Görüntü Çözünürlüğü (HW scaler)

View File

@ -589,6 +589,7 @@ Deposterize Tip = Виправляє візуальні глюки в масшт
Device = Пристрій
Direct3D 9 = Direct3D 9
Direct3D 11 = Direct3D 11
Disable culling = Disable culling
Disabled = Вимкнено
Display Layout && Effects = Редактор розташування екрану
Display Resolution (HW scaler) = Розширення екрану (HW масштабування)

View File

@ -589,6 +589,7 @@ Deposterize Tip = Sửa lỗi trục trặc hình ảnh trong textures
Device = Thiết bị
Direct3D 9 = Direct3D 9
Direct3D 11 = Direct3D 11
Disable culling = Disable culling
Disabled = Vô hiệu hóa
Display Layout && Effects = Chỉnh bố trí hiển thị
Display Resolution (HW scaler) = Độ phân giải màn hình (HW scaler)

View File

@ -589,6 +589,7 @@ Deposterize Tip = 修复纹理被放大时可见的缝隙
Device = 设备
Direct3D 9 = Direct3D 9
Direct3D 11 = Direct3D 11
Disable culling = Disable culling
Disabled = 禁用
Display Layout && Effects = 屏幕布局和滤镜
Display Resolution (HW scaler) = 屏幕分辨率

View File

@ -589,6 +589,7 @@ Deposterize Tip = 修正放大化紋理中的視覺帶狀故障
Device = 裝置
Direct3D 9 = Direct3D 9
Direct3D 11 = Direct3D 11
Disable culling = Disable culling
Disabled = Disabled
Display Layout && Effects = 顯示版面配置與效果
Display Resolution (HW scaler) = 顯示解析度 (硬體縮放)