Fix for runtime shader error on Android with multiview enabled

#rb Lukas.Hermanns
#jira UE-132575
#robomerge 5.0
#robomerge FNMain

[CL 17978898 by carl lloyd in ue5-main branch]
This commit is contained in:
carl lloyd
2021-10-29 10:20:25 -04:00
parent ca186022f5
commit a31d5d3a3b

View File

@@ -2160,10 +2160,14 @@ static bool CompileToGlslWithShaderConductor(
default:
TargetDesc.CompileFlags.SetDefine(TEXT("force_flattened_io_blocks"), 1);
TargetDesc.CompileFlags.SetDefine(TEXT("emit_uniform_buffer_as_plain_uniforms"), 1);
if (Frequency == SF_Vertex)
// If we have mobile multiview define set then set the view count and enable extension
const FString* MultiViewDefine = Input.Environment.GetDefinitions().Find(TEXT("MOBILE_MULTI_VIEW"));
if (Frequency == SF_Vertex && MultiViewDefine && *MultiViewDefine == "1")
{
TargetDesc.CompileFlags.SetDefine(TEXT("ovr_multiview_view_count"), 2);
}
TargetDesc.Language = CrossCompiler::EShaderConductorLanguage::Essl;
TargetDesc.Version = 320;
break;