expf throws floating point underflow exception on every value in VS2017.

switch to IEEE-compatible type double exp

git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6099 dfc29bdd-3216-0410-991c-e03cc46cb475
This commit is contained in:
engineer_apple
2020-02-23 14:15:53 +00:00
parent 2a1d6e5f48
commit 5bf308139c
2 changed files with 3 additions and 3 deletions

View File

@ -1607,10 +1607,10 @@ void CBurningVideoDriver::VertexCache_fill(const u32 sourceIndex, const u32 dest
fog_factor = (FogEnd - EyeSpace.vertex.z) * EyeSpace.fog_scale;
break;
case EFT_FOG_EXP:
fog_factor = expf(-FogDensity * EyeSpace.vertex.z);
fog_factor = (f32)exp(-FogDensity * EyeSpace.vertex.z);
break;
case EFT_FOG_EXP2:
fog_factor = expf(-FogDensity * FogDensity * EyeSpace.vertex.z * EyeSpace.vertex.z);
fog_factor = (f32)exp(-FogDensity * FogDensity * EyeSpace.vertex.z * EyeSpace.vertex.z);
break;
}