diff options
author | Justin Weiss | 2020-08-02 22:04:52 -0700 |
---|---|---|
committer | Justin Weiss | 2020-08-13 08:56:50 -0700 |
commit | 43047988e507799d7d5bbcd926c5d0b5b94fcdc1 (patch) | |
tree | 40cdd3800bfb51ca35efc795417e9daa8d33296f /plugins/gpu_unai/gpu_unai.h | |
parent | ab323c13064ac483e66682556ae3bf387df0f29d (diff) | |
download | pcsx_rearmed-43047988e507799d7d5bbcd926c5d0b5b94fcdc1.tar.gz pcsx_rearmed-43047988e507799d7d5bbcd926c5d0b5b94fcdc1.tar.bz2 pcsx_rearmed-43047988e507799d7d5bbcd926c5d0b5b94fcdc1.zip |
Add an option to downscale hi-res views
Some older devices that use gpu_unai don't have a high enough
resolution to display all of the pixels in high-res mode. There's a
setting in unai to skip rendering of these pixels, but it's not
connected to the libretro frontend, and does not appear to be used in
the gpulib implementation at all.
This commit adds a gpu_unai setting, Enable Hi-Res Downscaling, that
will enable pixel skipping and blit only the pixels actually rendered
into a buffer no larger than 384x240. This buffer is then treated as
the actual framebuffer by gpulib and the libretro frontend.
Diffstat (limited to 'plugins/gpu_unai/gpu_unai.h')
-rw-r--r-- | plugins/gpu_unai/gpu_unai.h | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/plugins/gpu_unai/gpu_unai.h b/plugins/gpu_unai/gpu_unai.h index 8fb2293..6886eb8 100644 --- a/plugins/gpu_unai/gpu_unai.h +++ b/plugins/gpu_unai/gpu_unai.h @@ -138,6 +138,9 @@ struct gpu_unai_t { GPUPacket PacketBuffer; u16 *vram; +#ifdef USE_GPULIB + u16 *downscale_vram; +#endif //////////////////////////////////////////////////////////////////////////// // Variables used only by older standalone version of gpu_unai (gpu.cpp) #ifndef USE_GPULIB @@ -307,7 +310,7 @@ static inline bool ProgressiveInterlaceEnabled() // running on higher-res device or a resampling downscaler is enabled. static inline bool PixelSkipEnabled() { - return gpu_unai.config.pixel_skip; + return gpu_unai.config.pixel_skip || gpu_unai.config.scale_hires; } static inline bool LineSkipEnabled() |