When running on an older Mac OS, the application falls back to running OpenGL and displays a warning message explaining that it is deprecated; but allows you to continue and load it up.
When submitting to Apple, the reviewer rejected the application because of this warning. Now I have spoken to one of the Unreal Staff who said I am able to suppress the warning message.
I found the setting that can be used, however when I tested it, it didn’t work. (see below) I added the MacOpenGLDeprecated=True to the GameUserSettings.ini
Anyone know how I can do this (without removing the message popup from the engine source) ?
const static FString ConfigSection = TEXT("SuppressableDialogs");
bool bShouldSuppressDialog = false;
if (GConfig)
{
GConfig->GetBool( *ConfigSection, TEXT("MacOpenGLDeprecated"), bShouldSuppressDialog, GGameUserSettingsIni );
}
FText LocalizedMsg = FText::Format(NSLOCTEXT("MessageDialog", "MessageMacOpenGLDeprecated","Support for running Unreal Engine 4 using OpenGL on macOS is deprecated and will be removed in a future release. Unreal Engine 4 may not render correctly and may run at substantially reduced performance."),Args);
if (!bShouldSuppressDialog)
{
FPlatformMisc::MessageBoxExt(EAppMsgType::Ok,
*LocalizedMsg.ToString(),
*NSLOCTEXT("MessageDialog", "TitleMacOpenGLDeprecated", "WARNING: OpenGL on macOS Deprecated").ToString());
}
else
{
UE_LOG(LogRHI, Warning, TEXT("%s: %s"), *NSLOCTEXT("MessageDialog", "TitleMacOpenGLDeprecated", "WARNING: OpenGL on macOS Deprecated").ToString(), *LocalizedMsg.ToString());
}