2010-04-25 00:31:27 +00:00
/*
2015-05-26 13:36:47 +00:00
* Copyright ( C ) 2007 - 2015 Gabest
2009-02-09 21:15:56 +00:00
* http : //www.gabest.org
*
* This Program is free software ; you can redistribute it and / or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation ; either version 2 , or ( at your option )
* any later version .
2010-04-25 00:31:27 +00:00
*
2009-02-09 21:15:56 +00:00
* This Program is distributed in the hope that it will be useful ,
* but WITHOUT ANY WARRANTY ; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE . See the
* GNU General Public License for more details .
2010-04-25 00:31:27 +00:00
*
2009-02-09 21:15:56 +00:00
* You should have received a copy of the GNU General Public License
* along with GNU Make ; see the file COPYING . If not , write to
2012-09-09 18:16:11 +00:00
* the Free Software Foundation , Inc . , 51 Franklin Street , Fifth Floor , Boston , MA 02110 - 1301 , USA USA .
2009-02-09 21:15:56 +00:00
* http : //www.gnu.org/copyleft/gpl.html
*
*/
2011-02-19 03:36:30 +00:00
# include "stdafx.h"
2009-02-09 21:15:56 +00:00
# include "GSSetting.h"
2016-05-01 09:43:18 +00:00
# ifdef _WIN32
2015-04-16 20:28:09 +00:00
# include "resource.h"
# endif
2009-02-09 21:15:56 +00:00
2015-04-16 17:20:17 +00:00
const char * dialog_message ( int ID , bool * updateText ) {
if ( updateText )
* updateText = true ;
switch ( ID )
{
2015-07-19 21:27:45 +00:00
case IDC_FILTER :
2016-10-02 11:26:54 +00:00
return " Control the texture filtering of the emulation. \n \n "
2015-08-11 22:48:49 +00:00
" Nearest: \n Always disable interpolation, rendering will be blocky. \n \n "
2016-10-02 11:26:54 +00:00
" Bilinear Forced: \n Always enable interpolation. Rendering is smoother but it could generate some glitches. \n \n "
2016-10-14 13:30:17 +00:00
" Bilinear PS2: \n Use same mode as the PS2. It is the more accurate option. \n \n "
2016-10-02 11:26:54 +00:00
" Trilinear: \n Use OpenGL trilinear interpolation when PS2 uses mipmaps. \n \n "
" Trilinear Forced Bilinear: \n Same as above but always enable bilinear interpolation. \n \n "
" Trilinear Ultra: \n Always enable full trilinear interpolation. Warning Slow! \n \n " ;
2015-06-04 16:52:58 +00:00
case IDC_CRC_LEVEL :
2015-06-17 21:05:26 +00:00
return " Control the number of Auto-CRC hacks applied to games. \n \n "
2015-08-11 22:48:49 +00:00
" None: \n Remove nearly all CRC hacks (debug only). \n \n "
" Minimum: \n Enable a couple of CRC hacks (23). \n \n "
" Partial: \n Enable most of the CRC hacks. \n Recommended OpenGL setting (Accurate/depth options may be required). \n \n "
" Full: \n Enable all CRC hacks. \n Recommended Direct3D setting. \n \n "
" Aggressive: \n Use more aggressive CRC hacks. Only affects a few games, removing some effects which might make the image sharper/clearer. \n "
2015-06-17 21:05:26 +00:00
" Affected games: FFX, FFX2, FFXII, GOW2, ICO, SoTC, SSX3, SMT3, SMTDDS1, SMTDDS2. \n "
" Works as a speedhack for: Steambot Chronicles. " ;
2015-04-16 17:20:17 +00:00
case IDC_SKIPDRAWHACK :
case IDC_SKIPDRAWHACKEDIT :
2015-08-11 22:48:49 +00:00
return " Skips drawing n surfaces completely. "
2015-04-16 17:20:17 +00:00
" Use it, for example, to try and get rid of bad post processing effects. "
" Try values between 1 and 100. " ;
case IDC_ALPHAHACK :
2015-08-11 22:48:49 +00:00
return " Different alpha handling. Can work around some shadow problems. " ;
2015-04-16 17:20:17 +00:00
case IDC_OFFSETHACK :
2015-08-11 22:48:49 +00:00
return " Might fix some misaligned fog, bloom, or blend effect. " ;
2015-04-16 17:20:17 +00:00
case IDC_SPRITEHACK :
2015-08-11 22:48:49 +00:00
return " Helps getting rid of black inner lines in some filtered sprites. "
" Half option is the preferred one. Use it for Mana Khemia or Ar tonelico for example. "
2015-04-16 17:20:17 +00:00
" Full can be used for Tales of Destiny. " ;
case IDC_WILDHACK :
2015-08-11 22:48:49 +00:00
return " Lowers the GS precision to avoid gaps between pixels when upscaling. Fixes the text on Wild Arms games. " ;
2015-04-16 17:20:17 +00:00
case IDC_MSAACB :
2015-08-11 22:48:49 +00:00
return " Enables hardware Anti-Aliasing. Needs lots of memory. "
2015-06-30 21:08:31 +00:00
" The Z-24 modes might need to have LogarithmicZ to compensate for the bits lost (only in DX9 mode). \n \n "
2015-08-11 22:48:49 +00:00
" MSAA is not implemented on the OpenGL renderer. " ;
2015-04-16 17:20:17 +00:00
case IDC_ALPHASTENCIL :
return " Extend stencil based emulation of destination alpha to perform stencil operations while drawing. \n \n "
" Improves many shadows which are normally overdrawn in parts, may affect other effects. \n "
2015-08-11 22:48:49 +00:00
" Will disable partial transparency in some games or even prevent drawing some elements altogether. " ;
2015-04-16 17:20:17 +00:00
case IDC_CHECK_DISABLE_ALL_HACKS :
return " FOR TESTING ONLY!! \n \n "
" Disable all CRC hacks - will break many games. Overrides CrcHacksExclusion at gsdx.ini \n "
" \n "
" It's possible to exclude CRC hacks also via the gsdx.ini. E.g.: \n "
" CrcHacksExclusions=all \n "
" CrcHacksExclusions=0x0F0C4A9C, 0x0EE5646B, 0x7ACF7E03 " ;
case IDC_ALIGN_SPRITE :
2015-08-11 22:48:49 +00:00
return " Fixes issues with upscaling(vertical lines) in Namco games like Ace Combat, Tekken, Soul Calibur, etc. " ;
2015-05-02 06:24:41 +00:00
case IDC_ROUND_SPRITE :
2015-04-16 17:20:17 +00:00
return " Corrects the sampling of 2D sprite textures when upscaling. \n \n "
2015-05-02 06:24:41 +00:00
" Fixes lines in sprites of games like Ar tonelico when upscaling. \n \n "
2015-08-11 22:48:49 +00:00
" Half option is for flat sprites, Full is for all sprites. " ;
2015-04-16 17:20:17 +00:00
case IDC_TCOFFSETX :
case IDC_TCOFFSETX2 :
case IDC_TCOFFSETY :
case IDC_TCOFFSETY2 :
2015-08-11 22:48:49 +00:00
return " Offset for the ST/UV texture coordinates. Fixes some odd texture issues and might fix some post processing alignment too. \n \n "
2015-04-16 17:20:17 +00:00
" 0500 0500, fixes Persona 3 minimap, helps Haunting Ground. \n "
2015-08-11 22:48:49 +00:00
" 0000 1000, fixes Xenosaga hair edges (DX10+ Issue) " ;
2015-05-11 12:12:41 +00:00
case IDC_PALTEX :
2015-07-19 15:29:25 +00:00
return " When checked 4/8 bits texture will be send to the GPU with a palette. GPU will be in charge of the conversion. \n \n "
2015-08-11 22:48:49 +00:00
" When unchecked the CPU will convert directly the texture to 32 bits. \n \n "
" It is basically a trade-off between GPU/CPU. " ;
2015-05-11 12:12:41 +00:00
case IDC_ACCURATE_DATE :
return " Implement a more accurate algorithm to compute GS destination alpha testing. \n \n "
2016-05-15 14:29:29 +00:00
" It could be slower when the effects are used. " ;
2015-07-19 07:34:06 +00:00
case IDC_ACCURATE_BLEND_UNIT :
2016-04-10 11:22:55 +00:00
return " Control the accuracy level of the GS blending unit emulation. \n \n "
2015-08-11 22:48:49 +00:00
" None: \n Fast but introduce various rendering issues. It is intended for slow computer. \n \n "
" Basic: \n Emulate correctly most of the effects with a limited speed penalty. It is the recommended setting. \n \n "
" Medium: \n Extend it to all sprites. Performance impact remains reasonable in 3D game. \n \n "
" High: \n Extend it to destination alpha blending and color wrapping. (help shadow and fog effect). A good CPU is required. \n \n "
" Full: \n Except few cases, the blending unit will be fully emulated by the shader. It is ultra slow! It is intended for debug. \n \n "
" Ultra: \n The blending unit will be completely emulated by the shader. It is ultra slow! It is intended for debug. " ;
2015-06-26 20:07:51 +00:00
case IDC_TC_DEPTH :
2016-04-10 11:22:55 +00:00
return " Disable the support of Depth buffer in the texture cache. \n "
" It can help to increase speed but it will likely create various glitches. " ;
gsdx: Add new tooltips and descriptions.
For Linux and Windows, add tooltip descriptions for AF, AA1, extra
rendering threads, Enable Shade Boost, FX Shader/External Shader, FXAA.
For Windows, also add Alpha Correction and Logarithmic Z tooltips.
For Linux, add software mipmap tooltip.
Thanks to tsunami2311, ssakash, gregory38 and whoever did the wiki for
helping with descriptions.
2015-08-26 22:22:36 +00:00
case IDC_AFCOMBO :
return " Reduces texture aliasing at extreme viewing angles. High performance impact. " ;
case IDC_AA1 :
return " Internal GS feature. Reduces edge aliasing of lines and triangles when the game requests it. " ;
case IDC_SWTHREADS :
case IDC_SWTHREADS_EDIT :
2015-12-23 14:17:56 +00:00
return " Number of rendering threads: 0 for single thread, 2 or more for multithread (1 is for debugging) " ;
2016-11-05 16:49:17 +00:00
case IDC_MIPMAP_SW :
return " Enables mipmapping, which some games require to render correctly. " ;
gsdx: Add new tooltips and descriptions.
For Linux and Windows, add tooltip descriptions for AF, AA1, extra
rendering threads, Enable Shade Boost, FX Shader/External Shader, FXAA.
For Windows, also add Alpha Correction and Logarithmic Z tooltips.
For Linux, add software mipmap tooltip.
Thanks to tsunami2311, ssakash, gregory38 and whoever did the wiki for
helping with descriptions.
2015-08-26 22:22:36 +00:00
case IDC_SHADEBOOST :
return " Allows brightness, contrast and saturation to be manually adjusted. " ;
case IDC_SHADER_FX :
return " Enables external shader for additional post-processing effects. " ;
case IDC_FXAA :
return " Enables fast approximate anti-aliasing. Small performance impact. " ;
2016-09-15 10:48:12 +00:00
case IDC_AUTO_FLUSH :
return " Force a primitive flush when a framebuffer is also an input texture. Fixes some processing effects such as the shadows in the Jak series and radiosity in GTA:SA. \n "
" Warning: it's very costly on the performance. \n \n "
" Note: OpenGL HW renderer is able to handle Jak shadows at full speed without this option. " ;
case IDC_UNSCALE_POINT_LINE :
return " Increases the width of lines at higher than native resolutions. This ensures that the lines will keep the correct proportions and prevents aliasing. Avoids empty lines on the screen in games such as Ridge Racer V, and clears FMV's obscured by a grid like Silent Hill series and Dirge of Cerberus. " ;
gsdx: Add new tooltips and descriptions.
For Linux and Windows, add tooltip descriptions for AF, AA1, extra
rendering threads, Enable Shade Boost, FX Shader/External Shader, FXAA.
For Windows, also add Alpha Correction and Logarithmic Z tooltips.
For Linux, add software mipmap tooltip.
Thanks to tsunami2311, ssakash, gregory38 and whoever did the wiki for
helping with descriptions.
2015-08-26 22:22:36 +00:00
# ifdef _WIN32
// DX9 only
case IDC_FBA :
return " Makes textures partially or fully transparent as required by emulation. May cause unusual slowdowns for some games. " ;
case IDC_LOGZ :
return " Treat depth as logarithmic instead of linear. Recommended setting is on unless it causes graphical glitches. " ;
2016-08-27 17:23:12 +00:00
# endif
# ifdef __linux__
case IDC_LINEAR_PRESENT :
return " Use bilinear filtering when Upscaling/Downscaling the image to the screen. Disable it if you want a sharper/pixelated output. " ;
2015-11-12 20:00:10 +00:00
# endif
2015-10-21 14:49:32 +00:00
// Exclusive for Hardware Renderer
case IDC_PRELOAD_GS :
return " Uploads GS data when rendering a new frame to reproduce some effects accurately. Fixes black screen issues in games like Armored Core: Last Raven. " ;
2016-11-05 16:49:17 +00:00
case IDC_MIPMAP_HW :
return " Control the accuracy level of the mipmapping emulation \n \n "
" Off: \n Mipmapping emulation is disabled. \n \n "
" Basic (Fast): \n Partially emulates mipmapping, performance impact is negligent at most cases. \n \n "
" Full (Slow): \n Completely emulates the mipmapping function of the GS, might significantly impact performance. " ;
2016-03-20 12:58:55 +00:00
case IDC_FAST_TC_INV :
return " By default, the texture cache handles partial invalidations. Unfortunately it is very costly to compute CPU wise. "
" \n \n This hack replaces the partial invalidation with a complete deletion of the texture to reduce the CPU load. \n \n It helps snowblind engine game. " ;
2016-05-23 17:38:23 +00:00
case IDC_LARGE_FB :
2016-05-25 16:33:32 +00:00
return " Allocate a large framebuffer to be compliant with GS memory (Prevents FMV flickering). \n "
2016-05-23 17:38:23 +00:00
" It increases GPU/memory requirements. " ;
2015-04-16 17:20:17 +00:00
default :
if ( updateText )
* updateText = false ;
return " " ;
}
}