WIP Updates.

This commit is contained in:
Jules.A 2018-10-24 04:41:15 +08:00
parent acf49dfa01
commit 3fd42ae720
7 changed files with 81 additions and 125 deletions

2
.gitignore vendored
View File

@ -5,7 +5,6 @@
/desmume/src/frontend/windows/__bins
/desmume/src/frontend/windows/*.tlog
/desmume/src/frontend/windows/*.aps
/desmume/src/frontend/windows/.vs/desmume/v15/
.vs/VSWorkspaceState.json
.vs/slnx.sqlite
*.user
@ -13,6 +12,7 @@
*.VC.db
*.VC.opendb
*.o
*.ipch
.deps
*.dirstamp
Makefile.in

View File

@ -534,8 +534,6 @@ extern struct TCommonSettings
, GFX3D_Renderer_Multisample(false)
, GFX3D_Renderer_MultisampleSize(0)
, GFX3D_Renderer_TextureScalingFactor(1) // Possible values: 1, 2, 4
, GFX3D_Renderer_AntiAliasingSamples(8) // Possible values: 2, 4, 8
, GFX3D_Renderer_AntiAliasingLimit(false)
, GFX3D_Renderer_TextureDeposterize(false)
, GFX3D_Renderer_TextureSmoothing(false)
, GFX3D_TXTHack(false)
@ -596,8 +594,6 @@ extern struct TCommonSettings
bool GFX3D_Renderer_Multisample;
int GFX3D_Renderer_MultisampleSize;
int GFX3D_Renderer_TextureScalingFactor; //must be one of {1,2,4}
int GFX3D_Renderer_AntiAliasingSamples; //must be one of {2,4,8}
bool GFX3D_Renderer_AntiAliasingLimit;
bool GFX3D_Renderer_TextureDeposterize;
bool GFX3D_Renderer_TextureSmoothing;
bool GFX3D_TXTHack;

View File

@ -1489,10 +1489,6 @@ GLsizei OpenGLRenderer::GetLimitedMultisampleSize() const
// in the future, then this would be the place to reimplement it.
workingMultisamples = 2;
}
else if (CommonSettings.GFX3D_Renderer_AntiAliasingLimit && CommonSettings.GFX3D_Renderer_AntiAliasingSamples == 2)
{
maxMultisamples = 2; // Only used when manually limiting.
}
else
{
// Ensure that workingMultisamples is a power-of-two, which is what OpenGL likes.

View File

@ -424,6 +424,9 @@ static int sndcoretype=SNDCORE_DIRECTX;
static int sndbuffersize=DESMUME_SAMPLE_RATE*8/60;
int sndvolume=100;
const int possibleMSAA[] = {0, 2, 4, 8, 16, 32};
int maxSamples=32;
SoundInterface_struct *SNDCoreList[] = {
&SNDDummy,
&SNDDIRECTX,
@ -2375,14 +2378,8 @@ int _main()
CommonSettings.GFX3D_LineHack = GetPrivateProfileBool("3D", "EnableLineHack", 1, IniName);
CommonSettings.GFX3D_TXTHack = GetPrivateProfileBool("3D", "EnableTXTHack", 0, IniName); //default is off.
CommonSettings.GFX3D_Renderer_Multisample = GetPrivateProfileBool("3D", "EnableAntiAliasing", 0, IniName);
CommonSettings.GFX3D_Renderer_AntiAliasingLimit = GetPrivateProfileBool("3D", "AntiAliasingLimit", 0, IniName);
CommonSettings.GFX3D_Renderer_AntiAliasingSamples = GetPrivateProfileInt("3D", "AntiAliasingSamples", 8, IniName); //only place this user variable gets read
if (CommonSettings.GFX3D_Renderer_AntiAliasingSamples != 2 && CommonSettings.GFX3D_Renderer_AntiAliasingSamples != 4 &&
CommonSettings.GFX3D_Renderer_AntiAliasingSamples != 8) //so just check for invalid values here
{
CommonSettings.GFX3D_Renderer_AntiAliasingSamples = 8;
WritePrivateProfileInt("3D", "AntiAliasingSamples", CommonSettings.GFX3D_Renderer_AntiAliasingSamples, IniName);
}
CommonSettings.GFX3D_Renderer_MultisampleSize = GetPrivateProfileInt("3D", "MultisampleSize", 0, IniName);
CheckValidMSAA(CommonSettings.GFX3D_Renderer_MultisampleSize);
Change3DCoreWithFallbackAndSave(cur3DCore);
@ -2621,6 +2618,23 @@ int WINAPI WinMain (HINSTANCE hThisInstance,
return ret;
}
void CheckValidMSAA(int userVal)
{
bool validMSAA = false;
for(int i=0; i < 6; i++)
{
if(CommonSettings.GFX3D_Renderer_MultisampleSize == possibleMSAA[i])
validMSAA = true;
}
if(!validMSAA)
{
CommonSettings.GFX3D_Renderer_MultisampleSize=0; //Just disable for now until I find a better solution
WritePrivateProfileInt("3D","MultisampleSize",0,IniName);
}
}
void UpdateScreenRects()
{
@ -5666,7 +5680,7 @@ LRESULT CALLBACK GFX3DSettingsDlgProc(HWND hw, UINT msg, WPARAM wp, LPARAM lp)
{
case WM_INITDIALOG:
{
int i;
int i = 0, z = 0;
HWND cur;
CheckDlgButton(hw,IDC_INTERPOLATECOLOR,CommonSettings.GFX3D_HighResolutionInterpolateColor);
@ -5674,11 +5688,6 @@ LRESULT CALLBACK GFX3DSettingsDlgProc(HWND hw, UINT msg, WPARAM wp, LPARAM lp)
CheckDlgButton(hw,IDC_3DSETTINGS_FOG,CommonSettings.GFX3D_Fog);
CheckDlgButton(hw,IDC_3DSETTINGS_TEXTURE,CommonSettings.GFX3D_Texture);
CheckDlgButton(hw,IDC_3DSETTINGS_LINEHACK, CommonSettings.GFX3D_LineHack);
CheckDlgButton(hw,IDC_3DSETTINGS_ANTIALIASING, CommonSettings.GFX3D_Renderer_Multisample);
CheckDlgButton(hw,IDC_MSAA_LIMIT, CommonSettings.GFX3D_Renderer_AntiAliasingLimit);
CheckDlgButton(hw,IDC_MSAA_SAMPLES_8, CommonSettings.GFX3D_Renderer_AntiAliasingSamples == 8);
CheckDlgButton(hw,IDC_MSAA_SAMPLES_4, CommonSettings.GFX3D_Renderer_AntiAliasingSamples == 4);
CheckDlgButton(hw,IDC_MSAA_SAMPLES_2, CommonSettings.GFX3D_Renderer_AntiAliasingSamples == 2);
CheckDlgButton(hw,IDC_TXTHACK, CommonSettings.GFX3D_TXTHack);
CheckDlgButton(hw,IDC_TEXSCALE_1, CommonSettings.GFX3D_Renderer_TextureScalingFactor == 1);
@ -5692,30 +5701,30 @@ LRESULT CALLBACK GFX3DSettingsDlgProc(HWND hw, UINT msg, WPARAM wp, LPARAM lp)
CheckDlgButton(hw,IDC_TEX_DEPOSTERIZE, CommonSettings.GFX3D_Renderer_TextureDeposterize);
CheckDlgButton(hw,IDC_TEX_SMOOTH, CommonSettings.GFX3D_Renderer_TextureSmoothing);
if(CommonSettings.GFX3D_Renderer_Multisample == false)
{
cur = GetDlgItem(hw, IDC_MSAA_LIMIT);
EnableWindow(cur, FALSE);
cur = GetDlgItem(hw, IDC_MSAA_SAMPLES_8);
EnableWindow(cur, FALSE);
cur = GetDlgItem(hw, IDC_MSAA_SAMPLES_4);
EnableWindow(cur, FALSE);
cur = GetDlgItem(hw, IDC_MSAA_SAMPLES_2);
EnableWindow(cur, FALSE);
}
else if(CommonSettings.GFX3D_Renderer_Multisample && CommonSettings.GFX3D_Renderer_AntiAliasingLimit == false)
{
cur = GetDlgItem(hw, IDC_MSAA_SAMPLES_8);
EnableWindow(cur, FALSE);
cur = GetDlgItem(hw, IDC_MSAA_SAMPLES_4);
EnableWindow(cur, FALSE);
cur = GetDlgItem(hw, IDC_MSAA_SAMPLES_2);
EnableWindow(cur, FALSE);
}
SendDlgItemMessage(hw, IDC_NUD_PRESCALEHD, UDM_SETRANGE, 0, MAKELPARAM(16, 1));
SendDlgItemMessage(hw, IDC_NUD_PRESCALEHD, UDM_SETPOS, 0, video.prescaleHD);
const char MSAADescriptions[6][9] = {"Disabled", "2x", "4x", "8x", "16x", "32x"};
CheckValidMSAA(CommonSettings.GFX3D_Renderer_MultisampleSize);
if(cur3DCore != 0 && cur3DCore != 2) //Not sure how to get maxSamples when renderer is null or softrast
{
maxSamples = CurrentRenderer->GetDeviceInfo().maxSamples;
if (CommonSettings.GFX3D_Renderer_MultisampleSize > maxSamples)
{
CommonSettings.GFX3D_Renderer_MultisampleSize = maxSamples;
WritePrivateProfileInt("3D", "MultisampleSize", maxSamples, IniName);
}
}
while (z <= maxSamples && i < 6) //There's a better way of handling this, I just can't think of it atm.
{
ComboBox_AddString(GetDlgItem(hw,IDC_MULTISAMPLE_SIZE),MSAADescriptions[i]);
if (z == CommonSettings.GFX3D_Renderer_MultisampleSize)
ComboBox_SetCurSel(GetDlgItem(hw,IDC_MULTISAMPLE_SIZE),i);
i++;
if(z >= 2) z *= 2; else z=2; //Double the samplesize if 2 or more;
}
for(i = 0; core3DList[i] != NULL; i++)
{
ComboBox_AddString(GetDlgItem(hw, IDC_3DCORE), core3DList[i]->name);
@ -5735,8 +5744,6 @@ LRESULT CALLBACK GFX3DSettingsDlgProc(HWND hw, UINT msg, WPARAM wp, LPARAM lp)
CommonSettings.GFX3D_Fog = IsDlgCheckboxChecked(hw,IDC_3DSETTINGS_FOG);
CommonSettings.GFX3D_Texture = IsDlgCheckboxChecked(hw,IDC_3DSETTINGS_TEXTURE);
CommonSettings.GFX3D_LineHack = IsDlgCheckboxChecked(hw,IDC_3DSETTINGS_LINEHACK);
CommonSettings.GFX3D_Renderer_Multisample = IsDlgCheckboxChecked(hw,IDC_3DSETTINGS_ANTIALIASING);
CommonSettings.GFX3D_Renderer_AntiAliasingLimit = IsDlgCheckboxChecked(hw,IDC_MSAA_LIMIT);
CommonSettings.GFX3D_TXTHack = IsDlgCheckboxChecked(hw,IDC_TXTHACK);
int newPrescaleHD = video.prescaleHD;
@ -5746,10 +5753,6 @@ LRESULT CALLBACK GFX3DSettingsDlgProc(HWND hw, UINT msg, WPARAM wp, LPARAM lp)
newPrescaleHD = LOWORD(scaleResult);
}
if(IsDlgCheckboxChecked(hw,IDC_MSAA_SAMPLES_8)) CommonSettings.GFX3D_Renderer_AntiAliasingSamples = 8;
else if(IsDlgCheckboxChecked(hw,IDC_MSAA_SAMPLES_4)) CommonSettings.GFX3D_Renderer_AntiAliasingSamples = 4;
else if(IsDlgCheckboxChecked(hw,IDC_MSAA_SAMPLES_2)) CommonSettings.GFX3D_Renderer_AntiAliasingSamples = 2;
if(IsDlgCheckboxChecked(hw,IDC_TEXSCALE_1)) CommonSettings.GFX3D_Renderer_TextureScalingFactor = 1;
else if(IsDlgCheckboxChecked(hw,IDC_TEXSCALE_2)) CommonSettings.GFX3D_Renderer_TextureScalingFactor = 2;
else if(IsDlgCheckboxChecked(hw,IDC_TEXSCALE_4)) CommonSettings.GFX3D_Renderer_TextureScalingFactor = 4;
@ -5759,6 +5762,7 @@ LRESULT CALLBACK GFX3DSettingsDlgProc(HWND hw, UINT msg, WPARAM wp, LPARAM lp)
CommonSettings.GFX3D_Renderer_TextureDeposterize = IsDlgCheckboxChecked(hw,IDC_TEX_DEPOSTERIZE);
CommonSettings.GFX3D_Renderer_TextureSmoothing = IsDlgCheckboxChecked(hw,IDC_TEX_SMOOTH);
CommonSettings.GFX3D_Renderer_MultisampleSize = possibleMSAA[SendDlgItemMessage(hw,IDC_MULTISAMPLE_SIZE,CB_GETCURSEL,0,0)];
{
Lock lock(win_backbuffer_sync);
@ -5784,8 +5788,7 @@ LRESULT CALLBACK GFX3DSettingsDlgProc(HWND hw, UINT msg, WPARAM wp, LPARAM lp)
WritePrivateProfileBool("3D", "EnableTexture", CommonSettings.GFX3D_Texture, IniName);
WritePrivateProfileInt ("3D", "EnableLineHack", CommonSettings.GFX3D_LineHack, IniName);
WritePrivateProfileInt ("3D", "EnableAntiAliasing", CommonSettings.GFX3D_Renderer_Multisample, IniName);
WritePrivateProfileInt ("3D", "AntiAliasingSamples", CommonSettings.GFX3D_Renderer_AntiAliasingSamples, IniName);
WritePrivateProfileBool("3D", "AntiAliasingLimit", CommonSettings.GFX3D_Renderer_AntiAliasingLimit, IniName);
WritePrivateProfileInt ("3D", "MultisampleSize", CommonSettings.GFX3D_Renderer_MultisampleSize, IniName);
WritePrivateProfileInt ("3D", "EnableTXTHack", CommonSettings.GFX3D_TXTHack, IniName);
WritePrivateProfileInt ("3D", "PrescaleHD", video.prescaleHD, IniName);
WritePrivateProfileInt ("3D", "TextureScalingFactor", CommonSettings.GFX3D_Renderer_TextureScalingFactor, IniName);
@ -5798,39 +5801,6 @@ LRESULT CALLBACK GFX3DSettingsDlgProc(HWND hw, UINT msg, WPARAM wp, LPARAM lp)
EndDialog(hw, TRUE);
}
return TRUE;
case IDC_3DSETTINGS_ANTIALIASING:
{
HWND cur;
BOOL enable = IsDlgButtonChecked(hw, IDC_3DSETTINGS_ANTIALIASING);
cur = GetDlgItem(hw, IDC_MSAA_LIMIT);
EnableWindow(cur, enable);
if (CommonSettings.GFX3D_Renderer_AntiAliasingLimit)
{
cur = GetDlgItem(hw, IDC_MSAA_SAMPLES_8);
EnableWindow(cur, enable);
cur = GetDlgItem(hw, IDC_MSAA_SAMPLES_4);
EnableWindow(cur, enable);
cur = GetDlgItem(hw, IDC_MSAA_SAMPLES_2);
EnableWindow(cur, enable);
}
}
return TRUE;
case IDC_MSAA_LIMIT:
{
HWND cur;
CommonSettings.GFX3D_Renderer_AntiAliasingLimit = IsDlgButtonChecked(hw, IDC_MSAA_LIMIT);
BOOL enable = CommonSettings.GFX3D_Renderer_AntiAliasingLimit;
WritePrivateProfileBool("3D", "AntiAliasingLimit", enable, IniName);
cur = GetDlgItem(hw, IDC_MSAA_SAMPLES_8);
EnableWindow(cur, enable);
cur = GetDlgItem(hw, IDC_MSAA_SAMPLES_4);
EnableWindow(cur, enable);
cur = GetDlgItem(hw, IDC_MSAA_SAMPLES_2);
EnableWindow(cur, enable);
}
return TRUE;
case IDC_DEFAULT:
{
Change3DCoreWithFallbackAndSave(GPU3D_DEFAULT);

View File

@ -53,6 +53,7 @@ void SaveWindowSize(HWND hwnd);
void SaveWindowSizePos(HWND hwnd);
void RestoreWindow(HWND hwnd);
void ShowFullScreen(HWND hwnd);
void CheckValidMSAA(int userVal);
extern bool frameCounterDisplay;
extern bool FpsDisplay;

View File

@ -504,10 +504,7 @@
#define IDC_S4X 1091
#define IDC_S8X 1092
#define IDC_S16X 1093
#define IDC_MSAA_SAMPLES_2 1094
#define IDC_MSAA_SAMPLES_4 1095
#define IDC_MSAA_SAMPLES_8 1096
#define IDC_MSAA_LIMIT 1097
#define IDC_MULTISAMPLE_SIZE 1094
#define IDM_FIRMSETTINGS 1100
#define IDD_FIRMSETTINGS 1101
#define IDC_EDIT1 1102
@ -1092,8 +1089,8 @@
#define IDC_AUTOLOADLUA 64001
#define IDC_TXTHACK 64002
#define ID_LABEL_TXTHACK1 64003
#define IDC_3DSETTINGS_ANTIALIASING 64004
#define ID_LABEL_TXTHACK2 64005
#define ID_LABEL_TXTHACK2 64004
#define ID_LABEL_MSAA_SAMPLES 64005
// Next default values for new objects
//

View File

@ -110,46 +110,42 @@ BEGIN
PUSHBUTTON "&Cancel",IDCANCEL,127,94,50,16
END
IDD_3DSETTINGS DIALOGEX 0, 0, 310, 218
IDD_3DSETTINGS DIALOGEX 0, 0, 311, 182
STYLE DS_SETFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "3D settings"
FONT 8, "MS Sans Serif", 0, 0, 0x0
BEGIN
COMBOBOX IDC_3DCORE,15,23,163,138,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
GROUPBOX "3D Rendering Engine",IDC_STATIC,7,7,180,34
COMBOBOX IDC_3DCORE,15,20,108,138,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
PUSHBUTTON "Default",IDC_DEFAULT,130,19,50,15
GROUPBOX "SoftRasterizer Options",IDC_STATIC,7,44,180,83
CONTROL "Unrealistically High-Precision Color Interpolation",IDC_INTERPOLATECOLOR,
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,13,62,165,10
CONTROL "Enable Edge Marking",IDC_3DSETTINGS_EDGEMARK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,200,118,84,10
CONTROL "Enable Fog",IDC_3DSETTINGS_FOG,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,200,128,52,10
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,13,56,165,10
CONTROL "Enable TXT Hack",IDC_TXTHACK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,13,67,73,10
LTEXT "Fixes text bugs in some games.(e.g. Etrian Odyssey)",ID_LABEL_TXTHACK1,13,77,167,11
LTEXT "You may need to toggle off && on by scene.",ID_LABEL_TXTHACK2,13,85,165,11
CONTROL "Enable Line Hack",IDC_3DSETTINGS_LINEHACK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,13,96,73,10
LTEXT "Fixes some graphical bugs involving lines, but causes some other bugs. Not many games use lines.",ID_LABEL_ZELDA_SHADOW_DEPTH_HACK2,13,106,170,18
GROUPBOX "OpenGL Options",IDC_STATIC,7,131,180,43
LTEXT "Multisample Antialiasing:",ID_LABEL_MSAA_SAMPLES,13,145,78,8
COMBOBOX IDC_MULTISAMPLE_SIZE,95,144,84,138,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
CONTROL "Smooth Textures",IDC_TEX_SMOOTH,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,13,160,75,10
GROUPBOX "General Options",IDC_STATIC,194,7,109,146
LTEXT "GPU Scaling Factor",IDC_STATIC,200,20,64,8
EDITTEXT IDC_TEXT_PRESCALEHD,267,17,20,14,ES_AUTOHSCROLL
CONTROL "",IDC_NUD_PRESCALEHD,"msctls_updown32",UDS_SETBUDDYINT | UDS_AUTOBUDDY | UDS_ARROWKEYS,286,17,11,14
CONTROL "GPU Color Depth 24 bit",IDC_GPU_24BPP,"Button",BS_AUTORADIOBUTTON,200,34,98,10
CONTROL "GPU Color Depth 18 bit",IDC_GPU_18BPP,"Button",BS_AUTORADIOBUTTON,200,44,98,10
CONTROL "GPU Color Depth 15 bit",IDC_GPU_15BPP,"Button",BS_AUTORADIOBUTTON,200,54,98,10
CONTROL "Deposterize Textures",IDC_TEX_DEPOSTERIZE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,200,71,79,10
CONTROL "Texture Scaling 1x",IDC_TEXSCALE_1,"Button",BS_AUTORADIOBUTTON,200,82,77,10
CONTROL "Texture Scaling 2x",IDC_TEXSCALE_2,"Button",BS_AUTORADIOBUTTON,200,92,79,10
CONTROL "Texture Scaling 4x",IDC_TEXSCALE_4,"Button",BS_AUTORADIOBUTTON,200,102,72,10
CONTROL "Enable Edge Marking",IDC_3DSETTINGS_EDGEMARK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,200,119,84,10
CONTROL "Enable Fog",IDC_3DSETTINGS_FOG,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,200,129,52,10
CONTROL "Enable Textures",IDC_3DSETTINGS_TEXTURE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,200,138,67,10
CONTROL "Enable Multisample Antialiasing",IDC_3DSETTINGS_ANTIALIASING,
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,13,151,114,10
CONTROL "Limit MSAA Samples",IDC_MSAA_LIMIT,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,13,161,90,10
CONTROL "8x Samples",IDC_MSAA_SAMPLES_8,"Button",BS_AUTORADIOBUTTON,13,172,74,10
CONTROL "4x Samples",IDC_MSAA_SAMPLES_4,"Button",BS_AUTORADIOBUTTON,13,182,74,10
CONTROL "2x Samples",IDC_MSAA_SAMPLES_2,"Button",BS_AUTORADIOBUTTON,13,192,74,10
EDITTEXT IDC_TEXT_PRESCALEHD,267,16,20,14,ES_AUTOHSCROLL
CONTROL "",IDC_NUD_PRESCALEHD,"msctls_updown32",UDS_SETBUDDYINT | UDS_AUTOBUDDY | UDS_ARROWKEYS,286,16,11,14
PUSHBUTTON "Default",IDC_DEFAULT,194,163,50,14
DEFPUSHBUTTON "OK",IDOK,194,194,50,14
PUSHBUTTON "Cancel",IDCANCEL,253,194,50,14
GROUPBOX "Renderer:",IDC_STATIC,7,7,180,39
GROUPBOX "SoftRasterizer Options",IDC_STATIC,7,50,180,82
LTEXT "Fixes some graphical bugs involving lines, but causes some other bugs. Not many games use lines.",ID_LABEL_ZELDA_SHADOW_DEPTH_HACK2,14,112,170,18
CONTROL "Enable Line Hack",IDC_3DSETTINGS_LINEHACK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,13,102,73,10
LTEXT "Fixes text bugs in some games.(e.g. Etrian Odyssey)",ID_LABEL_TXTHACK1,14,83,167,11
CONTROL "Enable TXT Hack",IDC_TXTHACK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,13,73,73,10
GROUPBOX "OpenGL Renderer Options",IDC_STATIC,7,137,180,78
GROUPBOX "General Options",IDC_STATIC,194,6,109,146
LTEXT "GPU Scaling Factor",IDC_STATIC,200,19,64,8
CONTROL "Texture Scaling 1x",IDC_TEXSCALE_1,"Button",BS_AUTORADIOBUTTON,200,81,77,10
CONTROL "Texture Scaling 2x",IDC_TEXSCALE_2,"Button",BS_AUTORADIOBUTTON,200,91,79,10
CONTROL "Texture Scaling 4x",IDC_TEXSCALE_4,"Button",BS_AUTORADIOBUTTON,200,101,72,10
CONTROL "Deposterize Textures",IDC_TEX_DEPOSTERIZE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,200,70,79,10
CONTROL "Smooth Textures",IDC_TEX_SMOOTH,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,13,202,75,10
LTEXT "You may need to toggle off && on by scene.",ID_LABEL_TXTHACK2,14,91,165,11
CONTROL "GPU Color Depth 24 bit",IDC_GPU_24BPP,"Button",BS_AUTORADIOBUTTON,200,33,98,10
CONTROL "GPU Color Depth 18 bit",IDC_GPU_18BPP,"Button",BS_AUTORADIOBUTTON,200,43,98,10
CONTROL "GPU Color Depth 15 bit",IDC_GPU_15BPP,"Button",BS_AUTORADIOBUTTON,200,53,98,10
DEFPUSHBUTTON "OK",IDOK,194,159,50,15
PUSHBUTTON "Cancel",IDCANCEL,254,159,50,15
END
IDD_ABOUT_BOX DIALOGEX 0, 0, 268, 198