Command Line: Add command line options for accessing the custom framebuffer sizing and texture postprocessing features.

--3d-texture-deposterize-enable
--3d-texture-upscale N [1|2|4]
--3d-texture-smoothing-enable
--gpu-resolution-multiplier N [1|2|3|4|5]
This commit is contained in:
rogerman 2016-12-09 16:52:56 -08:00
parent be11b35df9
commit 60e71ce823
3 changed files with 570 additions and 517 deletions

File diff suppressed because it is too large Load Diff

View File

@ -47,6 +47,8 @@ public:
int depth_threshold;
int autodetect_method;
int render3d;
int texture_upscale;
int gpu_resolution_multiplier;
int language;
std::string nds_file;
std::string play_movie_file;
@ -97,6 +99,8 @@ private:
int _num_cores;
int _rigorous_timing;
int _advanced_timing;
int _texture_deposterize;
int _texture_smooth;
#ifdef HAVE_JIT
int _cpu_mode;
int _jit_size;

View File

@ -2968,8 +2968,6 @@ int _main()
CommonSettings.GFX3D_Zelda_Shadow_Depth_Hack = GetPrivateProfileInt("3D", "ZeldaShadowDepthHack", 0, IniName);
CommonSettings.GFX3D_PrescaleHD = GetPrivateProfileInt("3D", "PrescaleHD", 1, IniName);
video.SetPrescale(CommonSettings.GFX3D_PrescaleHD, 1);
CommonSettings.GFX3D_Renderer_TextureScalingFactor = GetPrivateProfileInt("3D", "TextureScalingFactor ", 1, IniName);
CommonSettings.GFX3D_Renderer_TextureDeposterize = GetPrivateProfileBool("3D", "TextureDeposterize ", 1, IniName);
CommonSettings.GFX3D_Renderer_TextureSmoothing = GetPrivateProfileBool("3D", "TextureSmooth ", 1, IniName);
@ -3074,10 +3072,6 @@ int _main()
SetStyle(style);
SetMinWindowSize();
ScaleScreen(windowSize, false);
DragAcceptFiles(MainWindow->getHWnd(), TRUE);
#ifdef EXPERIMENTAL_WIFI_COMM
@ -3202,9 +3196,24 @@ int _main()
osd = new OSDCLASS(-1);
NDS_Init();
if (cmdline.texture_upscale != -1)
{
CommonSettings.GFX3D_Renderer_TextureScalingFactor = cmdline.texture_upscale;
}
if (cmdline.gpu_resolution_multiplier != -1)
{
CommonSettings.GFX3D_PrescaleHD = cmdline.gpu_resolution_multiplier;
}
video.SetPrescale(CommonSettings.GFX3D_PrescaleHD, 1);
GPU->SetCustomFramebufferSize(256*video.prescaleHD,192*video.prescaleHD);
//GPU->SetWillAutoBlitNativeToCustomBuffer(false); //we need to do this right now, because we depend on having one solitary framebuffer
GPU->ClearWithColor(0xFFFF);
SetMinWindowSize();
ScaleScreen(windowSize, false);
#ifdef GDB_STUB
gdbstub_mutex_init();