Hi guys, I am a game programmer using UE4, I am integrating Mali OpenGLES Emulator into UE4.
After some modification, I met the situation that the shader cannot be compiled, it throw a exception in the dll of the emulator, "gles::glessl::NoCompilerFound at memory location 0x00000067874AA270".
And after I enabled EGL debug, I saw the log which seemd that the emulator processed the original shader to 430 shader.
I list the output here:
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
[2020.01.10-12.53.51:876][ 0]LogRHI: Warning: [API][Error][Notification][9829] GLES: (gles::_after_gl_shader_source_call 52) ORIGINAL SOURCE:
=====
#version 310 es
INTERFACE_LOCATION(0) out highp vec4 out_Target0;
void main()
{
out_Target0.xyzw = float4(1.0, 1.0, 1.0, 1.0);
}
====
[2020.01.10-12.53.51:876][ 0]LogRHI: Warning: [API][Error][Notification][9878] GLES: (gles::_after_gl_shader_source_call 53) PROCESSED SOURCE:
=====
#version 430
vec4 mix(vec4 v1, vec4 v2, bvec4 a) { return vec4( a.x?v2.x:v1.x, a.y?v2.y:v1.y, a.z?v2.z:v1.z, a.w?v2.w:v1.w ); }
vec3 mix(vec3 v1, vec3 v2, bvec3 a) { return vec3( a.x?v2.x:v1.x, a.y?v2.y:v1.y, a.z?v2.z:v1.z ); }
vec2 mix(vec2 v1, vec2 v2, bvec2 a) { return vec2( a.x?v2.x:v1.x, a.y?v2.y:v1.y ); }
ivec4 mix(ivec4 v1, ivec4 v2, bvec4 a) { return ivec4( a.x?v2.x:v1.x, a.
[2020.01.10-12.53.51:876][ 0]LogRHI: Warning: [API][Error][Notification][8784] GLES: (gles::_after_gl_shader_source_call 54) GL RETURNED SOURCE:
=====
#version 430
vec4 mix(vec4 v1, vec4 v2, bvec4 a) { return vec4( a.x?v2.x:v1.x, a.y?v2.y:v1.y, a.z?v2.z:v1.z, a.w?v2.w:v1.w ); }
vec3 mix(vec3 v1, vec3 v2, bvec3 a) { return vec3( a.x?v2.x:v1.x, a.y?v2.y:v1.y, a.z?v2.z:v1.z ); }
vec2 mix(vec2 v1, vec2 v2, bvec2 a) { return vec2( a.x?v2.x:v1.x, a.y?v2.y:v1.y ); }
ivec4 mix(ivec4 v1, ivec4 v2, bvec4 a) { return ivec4( a.x?v2.x:v1.x,
[2020.01.10-12.53.51:876][ 0]LogRHI: Warning: [API][Error][Notification][8739] GLES: (gles::_after_gl_shader_source_call 55) ERROR LOG MALI:
=====
====
[2020.01.10-12.53.51:876][ 0]LogRHI: Warning: [API][Error][Notification][8738] GLES: (gles::_after_gl_shader_source_call 56) ERROR LOG GL:
=====
====
Exception thrown at 0x00007FFB2906A839 in UE4Editor-Win64-Debug.exe: Microsoft C++ exception: gles::glessl::NoCompilerFound at memory location 0x00000008E28948F0.