mirror of
https://github.com/FunkyFr3sh/cnc-ddraw.git
synced 2025-03-15 06:04:49 +01:00
add option to configure d3d9 filter
This commit is contained in:
parent
9de2c045a7
commit
d7a173b0da
@ -662,6 +662,12 @@ void __fastcall TConfigForm::FormCreate(TObject *Sender)
|
||||
if (renderer == "direct3d9on12") {
|
||||
RendererCbx->AddItem(L"Direct3D 12 (9On12)", NULL);
|
||||
RendererCbx->ItemIndex = 4;
|
||||
|
||||
ShaderLbl->Caption =
|
||||
ReplaceStr(ShaderLbl->Caption, "OpenGL", "Direct3D");
|
||||
|
||||
ShaderD3DCbx->Visible = true;
|
||||
ShaderCbx->Visible = false;
|
||||
}
|
||||
else if (renderer == "openglcore") {
|
||||
RendererCbx->AddItem(L"OpenGL Core", NULL);
|
||||
@ -669,6 +675,12 @@ void __fastcall TConfigForm::FormCreate(TObject *Sender)
|
||||
}
|
||||
else if (StartsStr("d", renderer)) {
|
||||
RendererCbx->ItemIndex = 1;
|
||||
|
||||
ShaderLbl->Caption =
|
||||
ReplaceStr(ShaderLbl->Caption, "OpenGL", "Direct3D");
|
||||
|
||||
ShaderD3DCbx->Visible = true;
|
||||
ShaderCbx->Visible = false;
|
||||
}
|
||||
else if (StartsStr("o", renderer)) {
|
||||
RendererCbx->ItemIndex = 2;
|
||||
@ -697,6 +709,20 @@ void __fastcall TConfigForm::FormCreate(TObject *Sender)
|
||||
{
|
||||
}
|
||||
|
||||
int d3d9_filter = ini->ReadInteger("ddraw", "d3d9_filter", 2);
|
||||
|
||||
switch (d3d9_filter) {
|
||||
case 0:
|
||||
ShaderD3DCbx->ItemIndex = 0;
|
||||
break;
|
||||
case 1:
|
||||
ShaderD3DCbx->ItemIndex = 1;
|
||||
break;
|
||||
default:
|
||||
ShaderD3DCbx->ItemIndex = 2;
|
||||
break;
|
||||
}
|
||||
|
||||
Maxfps = ini->ReadInteger("ddraw", "maxfps", -1);
|
||||
MaxfpsChk->State = Maxfps != 0 ? tssOn : tssOff;
|
||||
|
||||
@ -868,6 +894,8 @@ void TConfigForm::SaveSettings()
|
||||
|
||||
ini->WriteString("ddraw", "shader", ShaderCbx->Text);
|
||||
|
||||
ini->WriteInteger("ddraw", "d3d9_filter", ShaderD3DCbx->ItemIndex);
|
||||
|
||||
int maxfps = Maxfps == 0 ? -1 : Maxfps;
|
||||
|
||||
ini->WriteInteger(
|
||||
@ -1139,6 +1167,22 @@ void __fastcall TConfigForm::DevmodeChkClick(TObject *Sender)
|
||||
|
||||
void __fastcall TConfigForm::RendererCbxChange(TObject *Sender)
|
||||
{
|
||||
if (ContainsStr(RendererCbx->Text, "Direct3D")) {
|
||||
|
||||
ShaderLbl->Caption =
|
||||
ReplaceStr(ShaderLbl->Caption, "OpenGL", "Direct3D");
|
||||
|
||||
ShaderD3DCbx->Visible = true;
|
||||
ShaderCbx->Visible = false;
|
||||
}
|
||||
else {
|
||||
ShaderLbl->Caption =
|
||||
ReplaceStr(ShaderLbl->Caption, "Direct3D", "OpenGL");
|
||||
|
||||
ShaderCbx->Visible = true;
|
||||
ShaderD3DCbx->Visible = false;
|
||||
}
|
||||
|
||||
SaveSettings();
|
||||
}
|
||||
|
||||
@ -1151,6 +1195,11 @@ void __fastcall TConfigForm::ShaderCbxChange(TObject *Sender)
|
||||
SaveSettings();
|
||||
}
|
||||
|
||||
void __fastcall TConfigForm::ShaderD3DCbxChange(TObject *Sender)
|
||||
{
|
||||
SaveSettings();
|
||||
}
|
||||
|
||||
void __fastcall TConfigForm::MaxfpsChkClick(TObject *Sender)
|
||||
{
|
||||
SaveSettings();
|
||||
|
@ -3178,6 +3178,30 @@ object ConfigForm: TConfigForm
|
||||
Height = 31
|
||||
OnPaint = PboxPaint
|
||||
end
|
||||
object ShaderD3DCbx: TComboBox
|
||||
Left = 41
|
||||
Top = 132
|
||||
Width = 425
|
||||
Height = 29
|
||||
BevelEdges = []
|
||||
BevelInner = bvNone
|
||||
BevelOuter = bvSpace
|
||||
Style = csDropDownList
|
||||
DropDownCount = 10
|
||||
Font.Charset = DEFAULT_CHARSET
|
||||
Font.Color = clWindowText
|
||||
Font.Height = -16
|
||||
Font.Name = 'Segoe UI'
|
||||
Font.Style = []
|
||||
ParentFont = False
|
||||
TabOrder = 6
|
||||
Visible = False
|
||||
OnChange = ShaderD3DCbxChange
|
||||
Items.Strings = (
|
||||
'Nearest neighbor'
|
||||
'Bilinear'
|
||||
'Bicubic Catmull-Rom')
|
||||
end
|
||||
object RendererCbx: TComboBox
|
||||
Left = 41
|
||||
Top = 55
|
||||
|
@ -78,6 +78,7 @@ __published: // Von der IDE verwaltete Komponenten
|
||||
TLabel *UnlockCursor2KeyLbl;
|
||||
TLabel *ScreenshotLbl;
|
||||
TEdit *ScreenshotEdt;
|
||||
TComboBox *ShaderD3DCbx;
|
||||
void __fastcall DisplayBtnClick(TObject *Sender);
|
||||
void __fastcall AdvancedBtnClick(TObject *Sender);
|
||||
void __fastcall CompatibilityBtnClick(TObject *Sender);
|
||||
@ -105,6 +106,7 @@ __published: // Von der IDE verwaltete Komponenten
|
||||
void __fastcall HotkeyBtnClick(TObject *Sender);
|
||||
void __fastcall HotkeyEdtKeyDown(TObject *Sender, WORD &Key, TShiftState Shift);
|
||||
void __fastcall HotkeyEdtKeyUp(TObject *Sender, WORD &Key, TShiftState Shift);
|
||||
void __fastcall ShaderD3DCbxChange(TObject *Sender);
|
||||
|
||||
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user