mirror of https://github.com/PCSX2/pcsx2.git
GSdx:
Initial pixel offsetting support via gsdx.ini. Use pixoff_x = somevalue and pixoff_y = somevalue. This can be used as a workaround for the various upscaling errors :) Try these values for Takes of the Abyss for example: pixoff_x=-8 pixoff_y=-8 git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1650 96395faa-99c1-11dd-bbfe-3dabce05a288
This commit is contained in:
parent
a1f45eab3c
commit
dc4f05d7c2
|
@ -31,6 +31,8 @@ class GSRendererDX : public GSRendererHW<Vertex>
|
|||
GSVector2 m_pixelcenter;
|
||||
bool m_logz;
|
||||
bool m_fba;
|
||||
int m_pixoff_x;
|
||||
int m_pixoff_y;
|
||||
|
||||
protected:
|
||||
int m_topology;
|
||||
|
@ -47,6 +49,8 @@ public:
|
|||
{
|
||||
m_logz = !!theApp.GetConfig("logz", 0);
|
||||
m_fba = !!theApp.GetConfig("fba", 1);
|
||||
m_pixoff_x = theApp.GetConfig("pixoff_x", 0);
|
||||
m_pixoff_y = theApp.GetConfig("pixoff_y", 0);
|
||||
}
|
||||
|
||||
virtual ~GSRendererDX()
|
||||
|
@ -167,8 +171,8 @@ public:
|
|||
|
||||
float sx = 2.0f * rt->GetScale().x / (rt->GetWidth() << 4);
|
||||
float sy = 2.0f * rt->GetScale().y / (rt->GetHeight() << 4);
|
||||
float ox = (float)(int)context->XYOFFSET.OFX;
|
||||
float oy = (float)(int)context->XYOFFSET.OFY;
|
||||
float ox = (float)(int)context->XYOFFSET.OFX + m_pixoff_x;
|
||||
float oy = (float)(int)context->XYOFFSET.OFY + m_pixoff_y;
|
||||
float ox2 = 2.0f * m_pixelcenter.x / rt->GetWidth();
|
||||
float oy2 = 2.0f * m_pixelcenter.y / rt->GetHeight();
|
||||
|
||||
|
|
Loading…
Reference in New Issue