Add the wide screen hack by <---Does the person even have a user name?

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4171 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
death2droid
2009-09-02 21:30:19 +00:00
parent 1e016dd522
commit 2be5d013e0
7 changed files with 32 additions and 3 deletions

View File

@ -24,6 +24,7 @@ static bool g_ProjHack0;
static ProjectionHack g_ProjHack1;
static ProjectionHack g_ProjHack2;
static bool g_FreeLook;
static bool g_Widescreen;
} // Namespace
@ -47,6 +48,11 @@ void Projection_SetFreeLook(bool enabled)
g_FreeLook = enabled;
}
void Projection_SetWidescreen(bool enabled)
{
g_Widescreen = enabled;
}
bool Projection_GetHack0()
{
return g_ProjHack0;
@ -66,3 +72,8 @@ bool Projection_GetFreeLook()
{
return g_FreeLook;
}
bool Projection_GetWidescreen()
{
return g_Widescreen;
}

View File

@ -44,8 +44,10 @@ void Projection_SetHack0(bool value);
void Projection_SetHack1(ProjectionHack value);
void Projection_SetHack2(ProjectionHack value);
void Projection_SetFreeLook(bool enabled);
void Projection_SetWidescreen(bool enabled);
bool Projection_GetHack0();
ProjectionHack Projection_GetHack1();
ProjectionHack Projection_GetHack2();
bool Projection_GetFreeLook();
bool Projection_GetWidescreen();

View File

@ -226,8 +226,9 @@ void VertexShaderManager::SetConstants()
if (xfregs.rawProjection[6] == 0)
{
bool bWidescreenHack = Projection_GetWidescreen();
// Perspective
g_fProjectionMatrix[0] = xfregs.rawProjection[0];
g_fProjectionMatrix[0] = (bWidescreenHack ? xfregs.rawProjection[0]*0.75f : xfregs.rawProjection[0]);
g_fProjectionMatrix[1] = 0.0f;
g_fProjectionMatrix[2] = xfregs.rawProjection[1];
g_fProjectionMatrix[3] = 0.0f;