2
0
mirror of https://github.com/AxioDL/metaforce.git synced 2025-12-09 04:27:42 +00:00

Various bug fixes

This commit is contained in:
Jack Andersen
2018-05-26 18:22:38 -10:00
parent 92ed463051
commit cc6d79e280
25 changed files with 182 additions and 46 deletions

View File

@@ -70,17 +70,32 @@ void CGraphics::SetAmbientColor(const zeus::CColor& col)
void CGraphics::SetFog(ERglFogMode mode, float startz, float endz, const zeus::CColor& color)
{
if (mode == ERglFogMode::None)
g_Fog.m_mode = mode > ERglFogMode::PerspRevExp2 ? ERglFogMode(int(mode) - 8) : mode;
switch (g_Fog.m_mode)
{
case ERglFogMode::None:
{
g_Fog.m_start = 4096.f;
g_Fog.m_rangeScale = 0.f;
break;
}
else
case ERglFogMode::PerspRevExp:
case ERglFogMode::PerspRevExp2:
{
float userRange = endz - startz;
g_Fog.m_color = color;
g_Fog.m_start = endz;
g_Fog.m_rangeScale = 1.f / userRange;
break;
}
default:
{
float userRange = endz - startz;
g_Fog.m_color = color;
g_Fog.m_start = startz;
g_Fog.m_rangeScale = 1.f / userRange;
break;
}
}
}