mirror of
https://github.com/narzoul/DDrawCompat
synced 2024-12-30 08:55:36 +01:00
Added SpriteFilter config
This commit is contained in:
parent
19985f294e
commit
6ca41202f3
@ -12,6 +12,7 @@ namespace Config
|
|||||||
Settings::DisplayResolution displayResolution;
|
Settings::DisplayResolution displayResolution;
|
||||||
Settings::RenderColorDepth renderColorDepth;
|
Settings::RenderColorDepth renderColorDepth;
|
||||||
Settings::ResolutionScale resolutionScale;
|
Settings::ResolutionScale resolutionScale;
|
||||||
|
Settings::SpriteFilter spriteFilter;
|
||||||
Settings::SpriteTexCoord spriteTexCoord;
|
Settings::SpriteTexCoord spriteTexCoord;
|
||||||
Settings::SupportedResolutions supportedResolutions;
|
Settings::SupportedResolutions supportedResolutions;
|
||||||
Settings::TextureFilter textureFilter;
|
Settings::TextureFilter textureFilter;
|
||||||
|
@ -10,6 +10,7 @@
|
|||||||
#include <Config/Settings/DisplayResolution.h>
|
#include <Config/Settings/DisplayResolution.h>
|
||||||
#include <Config/Settings/RenderColorDepth.h>
|
#include <Config/Settings/RenderColorDepth.h>
|
||||||
#include <Config/Settings/ResolutionScale.h>
|
#include <Config/Settings/ResolutionScale.h>
|
||||||
|
#include <Config/Settings/SpriteFilter.h>
|
||||||
#include <Config/Settings/SpriteTexCoord.h>
|
#include <Config/Settings/SpriteTexCoord.h>
|
||||||
#include <Config/Settings/SupportedResolutions.h>
|
#include <Config/Settings/SupportedResolutions.h>
|
||||||
#include <Config/Settings/TextureFilter.h>
|
#include <Config/Settings/TextureFilter.h>
|
||||||
@ -30,6 +31,7 @@ namespace Config
|
|||||||
extern Settings::DisplayResolution displayResolution;
|
extern Settings::DisplayResolution displayResolution;
|
||||||
extern Settings::RenderColorDepth renderColorDepth;
|
extern Settings::RenderColorDepth renderColorDepth;
|
||||||
extern Settings::ResolutionScale resolutionScale;
|
extern Settings::ResolutionScale resolutionScale;
|
||||||
|
extern Settings::SpriteFilter spriteFilter;
|
||||||
extern Settings::SpriteTexCoord spriteTexCoord;
|
extern Settings::SpriteTexCoord spriteTexCoord;
|
||||||
extern Settings::SupportedResolutions supportedResolutions;
|
extern Settings::SupportedResolutions supportedResolutions;
|
||||||
extern Settings::TextureFilter textureFilter;
|
extern Settings::TextureFilter textureFilter;
|
||||||
|
17
DDrawCompat/Config/Settings/SpriteFilter.cpp
Normal file
17
DDrawCompat/Config/Settings/SpriteFilter.cpp
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
#include <Config/Settings/SpriteFilter.h>
|
||||||
|
#include <D3dDdi/DeviceState.h>
|
||||||
|
|
||||||
|
namespace Config
|
||||||
|
{
|
||||||
|
namespace Settings
|
||||||
|
{
|
||||||
|
SpriteFilter::SpriteFilter()
|
||||||
|
: MappedSetting("SpriteFilter", "app", {
|
||||||
|
{"app", D3DTEXF_NONE},
|
||||||
|
{"point", D3DTEXF_POINT},
|
||||||
|
{"linear", D3DTEXF_LINEAR}
|
||||||
|
})
|
||||||
|
{
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
15
DDrawCompat/Config/Settings/SpriteFilter.h
Normal file
15
DDrawCompat/Config/Settings/SpriteFilter.h
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include <Config/MappedSetting.h>
|
||||||
|
|
||||||
|
namespace Config
|
||||||
|
{
|
||||||
|
namespace Settings
|
||||||
|
{
|
||||||
|
class SpriteFilter : public MappedSetting<UINT>
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
SpriteFilter();
|
||||||
|
};
|
||||||
|
}
|
||||||
|
}
|
@ -310,7 +310,10 @@ namespace D3dDdi
|
|||||||
|
|
||||||
case D3DDDITSS_MAGFILTER:
|
case D3DDDITSS_MAGFILTER:
|
||||||
case D3DDDITSS_MINFILTER:
|
case D3DDDITSS_MINFILTER:
|
||||||
return D3DTEXF_NONE == Config::textureFilter.getFilter() ? value : Config::textureFilter.getFilter();
|
{
|
||||||
|
auto filter = (m_spriteMode && 0 == stage) ? Config::spriteFilter.get() : Config::textureFilter.getFilter();
|
||||||
|
return D3DTEXF_NONE == filter ? value : filter;
|
||||||
|
}
|
||||||
|
|
||||||
case D3DDDITSS_MIPFILTER:
|
case D3DDDITSS_MIPFILTER:
|
||||||
return D3DTEXF_NONE == Config::textureFilter.getMipFilter() ? value : Config::textureFilter.getMipFilter();
|
return D3DTEXF_NONE == Config::textureFilter.getMipFilter() ? value : Config::textureFilter.getMipFilter();
|
||||||
@ -646,6 +649,8 @@ namespace D3dDdi
|
|||||||
m_changedTextureStageStates[0].set(D3DDDITSS_ADDRESSU);
|
m_changedTextureStageStates[0].set(D3DDDITSS_ADDRESSU);
|
||||||
m_changedTextureStageStates[0].set(D3DDDITSS_ADDRESSV);
|
m_changedTextureStageStates[0].set(D3DDDITSS_ADDRESSV);
|
||||||
}
|
}
|
||||||
|
m_changedTextureStageStates[0].set(D3DDDITSS_MAGFILTER);
|
||||||
|
m_changedTextureStageStates[0].set(D3DDDITSS_MINFILTER);
|
||||||
|
|
||||||
D3DDDIARG_SETVERTEXSHADERCONSTB data = {};
|
D3DDDIARG_SETVERTEXSHADERCONSTB data = {};
|
||||||
data.Register = 15;
|
data.Register = 15;
|
||||||
|
@ -227,6 +227,7 @@
|
|||||||
<ClInclude Include="Config\Settings\DisplayResolution.h" />
|
<ClInclude Include="Config\Settings\DisplayResolution.h" />
|
||||||
<ClInclude Include="Config\Settings\RenderColorDepth.h" />
|
<ClInclude Include="Config\Settings\RenderColorDepth.h" />
|
||||||
<ClInclude Include="Config\Settings\ResolutionScale.h" />
|
<ClInclude Include="Config\Settings\ResolutionScale.h" />
|
||||||
|
<ClInclude Include="Config\Settings\SpriteFilter.h" />
|
||||||
<ClInclude Include="Config\Settings\SpriteTexCoord.h" />
|
<ClInclude Include="Config\Settings\SpriteTexCoord.h" />
|
||||||
<ClInclude Include="Config\Settings\SupportedResolutions.h" />
|
<ClInclude Include="Config\Settings\SupportedResolutions.h" />
|
||||||
<ClInclude Include="Config\Settings\TextureFilter.h" />
|
<ClInclude Include="Config\Settings\TextureFilter.h" />
|
||||||
@ -352,6 +353,7 @@
|
|||||||
<ClCompile Include="Config\Settings\DisplayRefreshRate.cpp" />
|
<ClCompile Include="Config\Settings\DisplayRefreshRate.cpp" />
|
||||||
<ClCompile Include="Config\Settings\DisplayResolution.cpp" />
|
<ClCompile Include="Config\Settings\DisplayResolution.cpp" />
|
||||||
<ClCompile Include="Config\Settings\ResolutionScale.cpp" />
|
<ClCompile Include="Config\Settings\ResolutionScale.cpp" />
|
||||||
|
<ClCompile Include="Config\Settings\SpriteFilter.cpp" />
|
||||||
<ClCompile Include="Config\Settings\SpriteTexCoord.cpp" />
|
<ClCompile Include="Config\Settings\SpriteTexCoord.cpp" />
|
||||||
<ClCompile Include="Config\Settings\SupportedResolutions.cpp" />
|
<ClCompile Include="Config\Settings\SupportedResolutions.cpp" />
|
||||||
<ClCompile Include="Config\Settings\TextureFilter.cpp" />
|
<ClCompile Include="Config\Settings\TextureFilter.cpp" />
|
||||||
|
@ -531,6 +531,9 @@
|
|||||||
<ClInclude Include="Config\Settings\SpriteTexCoord.h">
|
<ClInclude Include="Config\Settings\SpriteTexCoord.h">
|
||||||
<Filter>Header Files\Config\Settings</Filter>
|
<Filter>Header Files\Config\Settings</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
<ClInclude Include="Config\Settings\SpriteFilter.h">
|
||||||
|
<Filter>Header Files\Config\Settings</Filter>
|
||||||
|
</ClInclude>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ClCompile Include="Gdi\Gdi.cpp">
|
<ClCompile Include="Gdi\Gdi.cpp">
|
||||||
@ -839,6 +842,9 @@
|
|||||||
<ClCompile Include="Config\Settings\SpriteTexCoord.cpp">
|
<ClCompile Include="Config\Settings\SpriteTexCoord.cpp">
|
||||||
<Filter>Source Files\Config\Settings</Filter>
|
<Filter>Source Files\Config\Settings</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
|
<ClCompile Include="Config\Settings\SpriteFilter.cpp">
|
||||||
|
<Filter>Source Files\Config\Settings</Filter>
|
||||||
|
</ClCompile>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ResourceCompile Include="DDrawCompat.rc">
|
<ResourceCompile Include="DDrawCompat.rc">
|
||||||
|
@ -16,6 +16,7 @@ namespace Overlay
|
|||||||
addControl(Config::displayFilter);
|
addControl(Config::displayFilter);
|
||||||
addControl(Config::renderColorDepth);
|
addControl(Config::renderColorDepth);
|
||||||
addControl(Config::resolutionScale);
|
addControl(Config::resolutionScale);
|
||||||
|
addControl(Config::spriteFilter);
|
||||||
addControl(Config::spriteTexCoord);
|
addControl(Config::spriteTexCoord);
|
||||||
addControl(Config::textureFilter);
|
addControl(Config::textureFilter);
|
||||||
}
|
}
|
||||||
|
@ -78,6 +78,7 @@ namespace Overlay
|
|||||||
if (&Config::antialiasing == &m_setting ||
|
if (&Config::antialiasing == &m_setting ||
|
||||||
&Config::renderColorDepth == &m_setting ||
|
&Config::renderColorDepth == &m_setting ||
|
||||||
&Config::resolutionScale == &m_setting ||
|
&Config::resolutionScale == &m_setting ||
|
||||||
|
&Config::spriteFilter == &m_setting ||
|
||||||
&Config::spriteTexCoord == &m_setting ||
|
&Config::spriteTexCoord == &m_setting ||
|
||||||
&Config::textureFilter == &m_setting)
|
&Config::textureFilter == &m_setting)
|
||||||
{
|
{
|
||||||
|
Loading…
x
Reference in New Issue
Block a user