mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-07-23 06:09:50 -06:00
D3D: Projection hack feature. Have also moved related functions and constant definitions from OGL to VideoCommon, will clean up the code better if it works for D3D.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4252 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
@ -77,3 +77,72 @@ bool Projection_GetWidescreen()
|
||||
{
|
||||
return g_Widescreen;
|
||||
}
|
||||
|
||||
|
||||
void UpdateProjectionHack(int iPhackvalue)
|
||||
{
|
||||
bool bProjHack1=0, bPhackvalue1=0, bPhackvalue2=0;
|
||||
float fhackvalue1=0, fhackvalue2=0;
|
||||
switch(iPhackvalue)
|
||||
{
|
||||
case PROJECTION_HACK_NONE:
|
||||
bProjHack1 = 0;
|
||||
bPhackvalue1 = 0;
|
||||
bPhackvalue2 = 0;
|
||||
break;
|
||||
case PROJECTION_HACK_ZELDA_TP_BLOOM_HACK:
|
||||
bPhackvalue1 = 1;
|
||||
bProjHack1 = 1;
|
||||
break;
|
||||
case PROJECTION_HACK_SONIC_AND_THE_BLACK_KNIGHT:
|
||||
bPhackvalue1 = 1;
|
||||
fhackvalue1 = 0.00002f;
|
||||
bPhackvalue2 = 1;
|
||||
fhackvalue2 = 1.999980f;
|
||||
break;
|
||||
case PROJECTION_HACK_BLEACH_VERSUS_CRUSADE:
|
||||
bPhackvalue2 = 1;
|
||||
fhackvalue2 = 0.5f;
|
||||
bPhackvalue1 = 0;
|
||||
bProjHack1 = 0;
|
||||
break;
|
||||
case PROJECTION_HACK_FINAL_FANTASY_CC_ECHO_OF_TIME:
|
||||
bPhackvalue1 = 1;
|
||||
fhackvalue1 = 0.8f;
|
||||
bPhackvalue2 = 1;
|
||||
fhackvalue2 = 1.2f;
|
||||
bProjHack1 = 0;
|
||||
break;
|
||||
case PROJECTION_HACK_HARVESTMOON_MM:
|
||||
bPhackvalue1 = 1;
|
||||
fhackvalue1 = 0.0075f;
|
||||
bPhackvalue2 = 0;
|
||||
bProjHack1 = 0;
|
||||
case PROJECTION_HACK_BATEN_KAITOS:
|
||||
bPhackvalue1 = 1;
|
||||
fhackvalue1 = 0.0026f;
|
||||
bPhackvalue2 = 1;
|
||||
fhackvalue2 = 1.9974f;
|
||||
bProjHack1 = 1;
|
||||
break;
|
||||
case PROJECTION_HACK_BATEN_KAITOS_ORIGIN:
|
||||
bPhackvalue1 = 1;
|
||||
fhackvalue1 = 0.0012f;
|
||||
bPhackvalue2 = 1;
|
||||
fhackvalue2 = 1.9988f;
|
||||
bProjHack1 = 1;
|
||||
break;
|
||||
case PROJECTION_HACK_SKIES_OF_ARCADIA:
|
||||
bPhackvalue1 = 1;
|
||||
fhackvalue1 = 0.04f;
|
||||
bPhackvalue2 = 0;
|
||||
bProjHack1 = 0;
|
||||
break;
|
||||
}
|
||||
|
||||
// Set the projections hacks
|
||||
Projection_SetHack0(bProjHack1);
|
||||
Projection_SetHack1(ProjectionHack(bPhackvalue1 == 0 ? false : true, fhackvalue1));
|
||||
Projection_SetHack2(ProjectionHack(bPhackvalue2 == 0 ? false : true, fhackvalue2));
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user