Whoops, looks like there was a bug in there as well preventing it from taking. If you change the following lines in your OculusRiftHMD.cpp, and recompile, you should be able to change the FOV at will:
// debug configuration
if (Flags.bDevSettingsEnabled)
{
float fov;
bool bChangedStereo = false;
if (FParse::Value(Cmd, TEXT("HFOV="), fov))
{
HFOVInRadians = FMath::DegreesToRadians(fov);
const float HalfTan = FMath::Tan(HFOVInRadians / 2.f);
EyeFov[0].LeftTan = EyeFov[0].RightTan = EyeFov[1].LeftTan = EyeFov[1].RightTan = HalfTan;
Flags.bOverrideStereo = true;
bChangedStereo = true;
}
if (FParse::Value(Cmd, TEXT("VFOV="), fov))
{
VFOVInRadians = FMath::DegreesToRadians(fov);
const float HalfTan = FMath::Tan(VFOVInRadians / 2.f);
EyeFov[0].UpTan = EyeFov[0].DownTan = EyeFov[1].UpTan = EyeFov[1].DownTan = HalfTan;
Flags.bOverrideStereo = true;
bChangedStereo = true;
}
// Recalculate the stereo projection matrices, if needed
if (bChangedStereo)
{
const bool bRightHanded = false;
EyeProjectionMatrices[0] = ovrMatrix4f_Projection(EyeFov[0], 0.01f, 10000.0f, bRightHanded);
EyeProjectionMatrices[1] = ovrMatrix4f_Projection(EyeFov[1], 0.01f, 10000.0f, bRightHanded);
}
}