[ 0.004034] Config core\settings.cpp:Settings::LogSettings:78: Citra Configuration: [ 0.004111] Config core\settings.cpp:Settings::LogSettings::::operator ():75: Core_UseCpuJit: true [ 0.004114] Config core\settings.cpp:Settings::LogSettings::::operator ():75: Core_CPUClockPercentage: 100 [ 0.004116] Config core\settings.cpp:Settings::LogSettings::::operator ():75: Renderer_UseGLES: false [ 0.004118] Config core\settings.cpp:Settings::LogSettings::::operator ():75: Renderer_UseHwRenderer: true [ 0.004120] Config core\settings.cpp:Settings::LogSettings::::operator ():75: Renderer_UseHwShader: true [ 0.004121] Config core\settings.cpp:Settings::LogSettings::::operator ():75: Renderer_SeparableShader: false [ 0.004123] Config core\settings.cpp:Settings::LogSettings::::operator ():75: Renderer_ShadersAccurateMul: true [ 0.004124] Config core\settings.cpp:Settings::LogSettings::::operator ():75: Renderer_UseShaderJit: true [ 0.004126] Config core\settings.cpp:Settings::LogSettings::::operator ():75: Renderer_UseResolutionFactor: 1 [ 0.004128] Config core\settings.cpp:Settings::LogSettings::::operator ():75: Renderer_FrameLimit: 100 [ 0.004129] Config core\settings.cpp:Settings::LogSettings::::operator ():75: Renderer_UseFrameLimitAlternate: false [ 0.004131] Config core\settings.cpp:Settings::LogSettings::::operator ():75: Renderer_FrameLimitAlternate: 200 [ 0.004133] Config core\settings.cpp:Settings::LogSettings::::operator ():75: Renderer_VSyncNew: true [ 0.004134] Config core\settings.cpp:Settings::LogSettings::::operator ():75: Renderer_PostProcessingShader: none (builtin) [ 0.004136] Config core\settings.cpp:Settings::LogSettings::::operator ():75: Renderer_FilterMode: false [ 0.004145] Config core\settings.cpp:Settings::LogSettings::::operator ():75: Renderer_TextureFilterName: none [ 0.004146] Config core\settings.cpp:Settings::LogSettings::::operator ():75: Stereoscopy_Render3d: 0 [ 0.004149] Config core\settings.cpp:Settings::LogSettings::::operator ():75: Stereoscopy_Factor3d: 0 [ 0.004150] Config core\settings.cpp:Settings::LogSettings::::operator ():75: Layout_LayoutOption: 0 [ 0.004152] Config core\settings.cpp:Settings::LogSettings::::operator ():75: Layout_SwapScreen: false [ 0.004153] Config core\settings.cpp:Settings::LogSettings::::operator ():75: Layout_UprightScreen: false [ 0.004155] Config core\settings.cpp:Settings::LogSettings::::operator ():75: Utility_DumpTextures: false [ 0.004157] Config core\settings.cpp:Settings::LogSettings::::operator ():75: Utility_CustomTextures: false [ 0.004158] Config core\settings.cpp:Settings::LogSettings::::operator ():75: Utility_UseDiskShaderCache: true [ 0.004160] Config core\settings.cpp:Settings::LogSettings::::operator ():75: Audio_EnableDspLle: true [ 0.004161] Config core\settings.cpp:Settings::LogSettings::::operator ():75: Audio_EnableDspLleMultithread: true [ 0.004165] Config core\settings.cpp:Settings::LogSettings::::operator ():75: Audio_OutputEngine: auto [ 0.004167] Config core\settings.cpp:Settings::LogSettings::::operator ():75: Audio_EnableAudioStretching: true [ 0.004171] Config core\settings.cpp:Settings::LogSettings::::operator ():75: Audio_OutputDevice: auto [ 0.004174] Config core\settings.cpp:Settings::LogSettings::::operator ():75: Audio_InputDeviceType: 0 [ 0.004175] Config core\settings.cpp:Settings::LogSettings::::operator ():75: Audio_InputDevice: Default [ 0.004177] Config core\settings.cpp:Settings::LogSettings::::operator ():75: Camera_OuterRightName: blank [ 0.004178] Config core\settings.cpp:Settings::LogSettings::::operator ():75: Camera_OuterRightConfig: [ 0.004180] Config core\settings.cpp:Settings::LogSettings::::operator ():75: Camera_OuterRightFlip: 0 [ 0.004181] Config core\settings.cpp:Settings::LogSettings::::operator ():75: Camera_InnerName: blank [ 0.004183] Config core\settings.cpp:Settings::LogSettings::::operator ():75: Camera_InnerConfig: [ 0.004184] Config core\settings.cpp:Settings::LogSettings::::operator ():75: Camera_InnerFlip: 0 [ 0.004186] Config core\settings.cpp:Settings::LogSettings::::operator ():75: Camera_OuterLeftName: blank [ 0.004187] Config core\settings.cpp:Settings::LogSettings::::operator ():75: Camera_OuterLeftConfig: [ 0.004189] Config core\settings.cpp:Settings::LogSettings::::operator ():75: Camera_OuterLeftFlip: 0 [ 0.004191] Config core\settings.cpp:Settings::LogSettings::::operator ():75: DataStorage_UseVirtualSd: true [ 0.004193] Config core\settings.cpp:Settings::LogSettings::::operator ():75: System_IsNew3ds: true [ 0.004194] Config core\settings.cpp:Settings::LogSettings::::operator ():75: System_RegionValue: -1 [ 0.004196] Config core\settings.cpp:Settings::LogSettings::::operator ():75: Debugging_UseGdbstub: false [ 0.004198] Config core\settings.cpp:Settings::LogSettings::::operator ():75: Debugging_GdbstubPort: 24689 [ 0.241994] Input input_common\udp\client.cpp:InputCommon::CemuhookUDP::Client::StartCommunication:207: Starting communication with UDP input server on 127.0.0.1:26760 [ 0.787578] Frontend citra_qt\main.cpp:GMainWindow::GMainWindow:193: Citra Version: | vanguard-520338400 [ 0.787591] Frontend citra_qt\main.cpp:GMainWindow::GMainWindow:195: Host CPU: AMD Athlon Gold 3150U with Radeon Graphics [ 0.787640] Frontend citra_qt\main.cpp:GMainWindow::GMainWindow:197: Host OS: Windows 10 (10.0) [ 0.811224] Frontend citra_qt\game_list.cpp:GameList::LoadCompatibilityList:635: Game compatibility list is empty [ 63.023071] Frontend citra_qt\main.cpp:GMainWindow::BootGame:1016: Citra starting... [ 63.616232] Audio.Sink audio_core\cubeb_sink.cpp:AudioCore::CubebSink::Impl::StateCallback:137: Cubeb Audio Stream Started [ 63.616246] RPC_Server core\rpc\rpc_server.cpp:RPC::RPCServer::RPCServer:12: Starting RPC server ... [ 63.616355] RPC_Server core\rpc\rpc_server.cpp:RPC::RPCServer::HandleRequestsLoop:113: Request handler started. [ 63.616446] RPC_Server core\rpc\rpc_server.cpp:RPC::RPCServer::RPCServer:16: RPC started. [ 63.630927] Service.HTTP core\hle\service\http_c.cpp:Service::HTTP::HTTP_C::DecryptClCertA:827: ClCertA file missing [ 63.678280] Render.OpenGL video_core\renderer_opengl\renderer_opengl.cpp:OpenGL::RendererOpenGL::Init:1208: GL_VERSION: 3.3.0 Core Profile Context 23.7.1.230626 [ 63.678292] Render.OpenGL video_core\renderer_opengl\renderer_opengl.cpp:OpenGL::RendererOpenGL::Init:1209: GL_VENDOR: ATI Technologies Inc. [ 63.678295] Render.OpenGL video_core\renderer_opengl\renderer_opengl.cpp:OpenGL::RendererOpenGL::Init:1210: GL_RENDERER: AMD Radeon(TM) Graphics [ 63.781611] Render.OpenGL video_core\renderer_opengl\gl_rasterizer.cpp:OpenGL::RasterizerOpenGL::RasterizerOpenGL:61: Shadow might not be able to render because of unsupported OpenGL extensions. [ 63.795335] Loader core\loader\ncch.cpp:Loader::AppLoader_NCCH::Load:192: Program ID: 00040000001C1E00 [ 63.795724] Service.FS core\file_sys\ncch_container.cpp:FileSys::NCCHContainer::OpenFile:130: Failed to open D:\VERSIONS\RTCV_5.1.1-b1\Citra/user/sdmc/Nintendo 3DS/00000000000000000000000000000000/00000000000000000000000000000000/title/0004000e/001c1e00/content/00000000.app [ 63.861188] Loader core\hle\kernel\process.cpp:Kernel::Process::ParseKernelCaps:141: ExHeader kernel version: 2.50 [ 63.865636] Service.CFG core\hle\service\cfg\cfg.cpp:Service::CFG::Module::SetPreferredRegionCodes:654: Preferred region code set to 1 [ 63.902107] Render.OpenGL video_core\renderer_opengl\gl_shader_disk_cache.cpp:OpenGL::ShaderDiskCache::LoadTransferable:169: Found a transferable disk cache with 1 entries [ 63.913863] Render.OpenGL video_core\renderer_opengl\gl_shader_disk_cache.cpp:OpenGL::ShaderDiskCache::LoadPrecompiledFile:268: Found a precompiled disk cache with 1 decompiled entries and 1 binary entries [ 64.146817] Service.SRV core\hle\service\sm\srv.cpp:Service::SM::SRV::RegisterClient:63: (STUBBED) called. Caller PID=11 [ 64.249060] Service.SRV core\hle\service\sm\srv.cpp:Service::SM::SRV::EnableNotification:85: (STUBBED) called [ 64.252775] Service.APT core\hle\service\apt\apt.cpp:Service::APT::Module::APTInterface::GetLockHandle:317: (STUBBED) called applet_attributes=0X00000000 [ 64.260076] Service.APT core\hle\service\apt\apt.cpp:Service::APT::Module::APTInterface::SetScreenCapPostPermission:808: (STUBBED) called, screen_capture_post_permission=0 [ 64.260987] Service.NDM core\hle\service\ndm\ndm_u.cpp:Service::NDM::NDM_U::OverrideDefaultDaemons:187: (STUBBED) bit_mask=0x0000000F [ 64.261250] Service.NDM core\hle\service\ndm\ndm_u.cpp:Service::NDM::NDM_U::SuspendDaemons:75: (STUBBED) bit_mask=0x00000006 [ 64.263392] Service.FS core\hle\service\fs\fs_user.cpp:Service::FS::FS_USER::InitializeWithSdkVersion:602: (STUBBED) called, version: 0x0B0501C8 [ 64.268160] Service.FS core/file_sys/archive_backend.h:FileSys::ArchiveBackend::GetOpenDelayNs:193: Delay generator was not initalized. Using default [ 64.273033] Service.FS core/file_sys/archive_backend.h:FileSys::ArchiveBackend::GetOpenDelayNs:193: Delay generator was not initalized. Using default [ 64.417527] Core core\cheats\cheats.cpp:Cheats::CheatEngine::RunCallback:117: Cheat ran [ 64.425420] Service.APT core\hle\service\apt\apt.cpp:Service::APT::Module::APTInterface::NotifyToWait:296: (STUBBED) app_id=768 [ 64.430457] Service.APT core\hle\service\apt\apt.cpp:Service::APT::Module::APTInterface::AppletUtility:596: (STUBBED) called command=0X00000007, input_size=0X00000004, output_size=0X00000001 [ 64.431136] Service.APT core\hle\service\apt\apt.cpp:Service::APT::Module::APTInterface::AppletUtility:596: (STUBBED) called command=0X00000004, input_size=0X00000001, output_size=0X00000001 [ 64.432113] Service.APT core\hle\service\apt\apt.cpp:Service::APT::Module::APTInterface::AppletUtility:596: (STUBBED) called command=0X00000004, input_size=0X00000001, output_size=0X00000001 [ 64.491738] Service.APT core\hle\service\apt\apt.cpp:Service::APT::Module::APTInterface::SetAppCpuTimeLimit:611: (STUBBED) called, cpu_percent=30, value=1 [ 64.505455] Service.SRV core\hle\service\sm\srv.cpp:Service::SM::SRV::Subscribe:210: (STUBBED) called, notification_id=0x207 [ 64.505725] Service.SRV core\hle\service\sm\srv.cpp:Service::SM::SRV::Subscribe:210: (STUBBED) called, notification_id=0x209 [ 64.660581] Service.GSP core\hle\service\gsp\gsp_gpu.cpp:Service::GSP::GSP_GPU::AcquireRight:704: called flag=00000000 process=11 thread_id=0 [ 64.679415] HW.Memory core\hle\service\gsp\gsp_gpu.cpp:Service::GSP::VirtualToPhysicalAddress:75: Unknown virtual address @ 0x0821B5D0 [ 64.679532] HW.Memory core\memory.cpp:Memory::MemorySystem::GetPhysicalRef:476: unknown GetPhysicalPointer @ 0x8821B5D0 at PC 0x001209C8 [ 64.679535] HW.GPU core\hw\gpu.cpp:GPU::DisplayTransfer:140: invalid output address 0X8821B5D0 [ 64.825728] Service.FS core/file_sys/archive_backend.h:FileSys::ArchiveBackend::GetOpenDelayNs:193: Delay generator was not initalized. Using default [ 64.826148] Service.FS core\file_sys\savedata_archive.cpp:FileSys::SaveDataArchive::OpenFile:78: Non-existing file D:\VERSIONS\RTCV_5.1.1-b1\Citra/user/sdmc/Nintendo 3DS/00000000000000000000000000000000/00000000000000000000000000000000/title/00040000/001c1e00/data/00000001/sys.sav can't be open without mode create. [ 64.826219] Service.FS core\hle\service\fs\fs_user.cpp:Service::FS::FS_USER::OpenFile:77: failed to get a handle for file [Wchar: //sys.sav] [ 64.938066] Core core\cheats\cheats.cpp:Cheats::CheatEngine::RunCallback:117: Cheat ran [ 65.176849] Core core\cheats\cheats.cpp:Cheats::CheatEngine::RunCallback:117: Cheat ran [ 65.188433] Render.OpenGL video_core\renderer_opengl\gl_shader_util.cpp:OpenGL::LoadShader:64: Error compiling fragment shader: WARNING: 0:28: 'defined' : nonportable when expanded from macros for preprocessor expression WARNING: 0:28: 'defined' : nonportable when expanded from macros for preprocessor expression WARNING: 0:132: 'defined' : nonportable when expanded from macros for preprocessor expression WARNING: 0:132: 'defined' : nonportable when expanded from macros for preprocessor expression ERROR: 0:148: 'imageSize' : no matching overloaded function found ERROR: 0:148: '' : missing #endif ERROR: 0:148: '' : compilation terminated ERROR: 3 compilation errors. No code generated. [ 65.188448] Render.OpenGL video_core\renderer_opengl\gl_shader_util.cpp:OpenGL::LoadShader:65: Shader source code: #version 330 #extension GL_ARB_shader_image_load_store : enable #extension GL_ARB_shader_image_size : enable #define ALLOW_SHADOW (defined(GL_ARB_shader_image_load_store) && defined(GL_ARB_shader_image_size)) #extension GL_ARB_separate_shader_objects : enable layout (location=1) in vec4 primary_color; layout (location=2) in vec2 texcoord0; layout (location=3) in vec2 texcoord1; layout (location=4) in vec2 texcoord2; layout (location=5) in float texcoord0_w; layout (location=6) in vec4 normquat; layout (location=7) in vec3 view; #ifndef CITRA_GLES in vec4 gl_FragCoord; #endif // CITRA_GLES out vec4 color; uniform sampler2D tex0; uniform sampler2D tex1; uniform sampler2D tex2; uniform samplerCube tex_cube; uniform samplerBuffer texture_buffer_lut_rg; uniform samplerBuffer texture_buffer_lut_rgba; #if ALLOW_SHADOW layout(r32ui) uniform readonly uimage2D shadow_texture_px; layout(r32ui) uniform readonly uimage2D shadow_texture_nx; layout(r32ui) uniform readonly uimage2D shadow_texture_py; layout(r32ui) uniform readonly uimage2D shadow_texture_ny; layout(r32ui) uniform readonly uimage2D shadow_texture_pz; layout(r32ui) uniform readonly uimage2D shadow_texture_nz; layout(r32ui) uniform uimage2D shadow_buffer; #endif #define NUM_TEV_STAGES 6 #define NUM_LIGHTS 8 #define NUM_LIGHTING_SAMPLERS 24 struct LightSrc { vec3 specular_0; vec3 specular_1; vec3 diffuse; vec3 ambient; vec3 position; vec3 spot_direction; float dist_atten_bias; float dist_atten_scale; }; layout (std140) uniform shader_data { int framebuffer_scale; int alphatest_ref; float depth_scale; float depth_offset; float shadow_bias_constant; float shadow_bias_linear; int scissor_x1; int scissor_y1; int scissor_x2; int scissor_y2; int fog_lut_offset; int proctex_noise_lut_offset; int proctex_color_map_offset; int proctex_alpha_map_offset; int proctex_lut_offset; int proctex_diff_lut_offset; float proctex_bias; int shadow_texture_bias; ivec4 lighting_lut_offset[NUM_LIGHTING_SAMPLERS / 4]; vec3 fog_color; vec2 proctex_noise_f; vec2 proctex_noise_a; vec2 proctex_noise_p; vec3 lighting_global_ambient; LightSrc light_src[NUM_LIGHTS]; vec4 const_color[NUM_TEV_STAGES]; vec4 tev_combiner_buffer_color; vec4 clip_coef; }; // Rotate the vector v by the quaternion q vec3 quaternion_rotate(vec4 q, vec3 v) { return v + 2.0 * cross(q.xyz, cross(q.xyz, v) + q.w * v); } float LookupLightingLUT(int lut_index, int index, float delta) { vec2 entry = texelFetch(texture_buffer_lut_rg, lighting_lut_offset[lut_index >> 2][lut_index & 3] + index).rg; return entry.r + entry.g * delta; } float LookupLightingLUTUnsigned(int lut_index, float pos) { int index = clamp(int(pos * 256.0), 0, 255); float delta = pos * 256.0 - float(index); return LookupLightingLUT(lut_index, index, delta); } float LookupLightingLUTSigned(int lut_index, float pos) { int index = clamp(int(pos * 128.0), -128, 127); float delta = pos * 128.0 - float(index); if (index < 0) index += 256; return LookupLightingLUT(lut_index, index, delta); } float byteround(float x) { return round(x * 255.0) * (1.0 / 255.0); } vec2 byteround(vec2 x) { return round(x * 255.0) * (1.0 / 255.0); } vec3 byteround(vec3 x) { return round(x * 255.0) * (1.0 / 255.0); } vec4 byteround(vec4 x) { return round(x * 255.0) * (1.0 / 255.0); } // PICA's LOD formula for 2D textures. // This LOD formula is the same as the LOD lower limit defined in OpenGL. // f(x, y) >= max{m_u, m_v, m_w} // (See OpenGL 4.6 spec, 8.14.1 - Scale Factor and Level-of-Detail) float getLod(vec2 coord) { vec2 d = max(abs(dFdx(coord)), abs(dFdy(coord))); return log2(max(d.x, d.y)); } #if ALLOW_SHADOW uvec2 DecodeShadow(uint pixel) { return uvec2(pixel >> 8, pixel & 0xFFu); } uint EncodeShadow(uvec2 pixel) { return (pixel.x << 8) | pixel.y; } float CompareShadow(uint pixel, uint z) { uvec2 p = DecodeShadow(pixel); return mix(float(p.y) * (1.0 / 255.0), 0.0, p.x <= z); } float SampleShadow2D(ivec2 uv, uint z) { if (any(bvec4( lessThan(uv, ivec2(0)), greaterThanEqual(uv, imageSize(shadow_texture_px)) ))) return 1.0; return CompareShadow(imageLoad(shadow_texture_px, uv).x, z); } float mix2(vec4 s, vec2 a) { vec2 t = mix(s.xy, s.zw, a.yy); return mix(t.x, t.y, a.x); } vec4 shadowTexture(vec2 uv, float w) { uv /= w;uint z = uint(max(0, int(min(abs(w), 1.0) * float(0xFFFFFF)) - shadow_texture_bias)); vec2 coord = vec2(imageSize(shadow_texture_px)) * uv - vec2(0.5); vec2 coord_floor = floor(coord); vec2 f = coord - coord_floor; ivec2 i = ivec2(coord_floor); vec4 s = vec4( SampleShadow2D(i , z), SampleShadow2D(i + ivec2(1, 0), z), SampleShadow2D(i + ivec2(0, 1), z), SampleShadow2D(i + ivec2(1, 1), z)); return vec4(mix2(s, f)); } vec4 shadowTextureCube(vec2 uv, float w) { ivec2 size = imageSize(shadow_texture_px); vec3 c = vec3(uv, w); vec3 a = abs(c); if (a.x > a.y && a.x > a.z) { w = a.x; uv = -c.zy; if (c.x < 0.0) uv.x = -uv.x; } else if (a.y > a.z) { w = a.y; uv = c.xz; if (c.y < 0.0) uv.y = -uv.y; } else { w = a.z; uv = -c.xy; if (c.z > 0.0) uv.x = -uv.x; } uint z = uint(max(0, int(min(w, 1.0) * float(0xFFFFFF)) - shadow_texture_bias)); vec2 coord = vec2(size) * (uv / w * vec2(0.5) + vec2(0.5)) - vec2(0.5); vec2 coord_floor = floor(coord); vec2 f = coord - coord_floor; ivec2 i00 = ivec2(coord_floor); ivec2 i10 = i00 + ivec2(1, 0); ivec2 i01 = i00 + ivec2(0, 1); ivec2 i11 = i00 + ivec2(1, 1); ivec2 cmin = ivec2(0), cmax = size - ivec2(1, 1); i00 = clamp(i00, cmin, cmax); i10 = clamp(i10, cmin, cmax); i01 = clamp(i01, cmin, cmax); i11 = clamp(i11, cmin, cmax); uvec4 pixels; // This part should have been refactored into functions, // but many drivers don't like passing uimage2D as parameters if (a.x > a.y && a.x > a.z) { if (c.x > 0.0) pixels = uvec4( imageLoad(shadow_texture_px, i00).r, imageLoad(shadow_texture_px, i10).r, imageLoad(shadow_texture_px, i01).r, imageLoad(shadow_texture_px, i11).r); else pixels = uvec4( imageLoad(shadow_texture_nx, i00).r, imageLoad(shadow_texture_nx, i10).r, imageLoad(shadow_texture_nx, i01).r, imageLoad(shadow_texture_nx, i11).r); } else if (a.y > a.z) { if (c.y > 0.0) pixels = uvec4( imageLoad(shadow_texture_py, i00).r, imageLoad(shadow_texture_py, i10).r, imageLoad(shadow_texture_py, i01).r, imageLoad(shadow_texture_py, i11).r); else pixels = uvec4( imageLoad(shadow_texture_ny, i00).r, imageLoad(shadow_texture_ny, i10).r, imageLoad(shadow_texture_ny, i01).r, imageLoad(shadow_texture_ny, i11).r); } else { if (c.z > 0.0) pixels = uvec4( imageLoad(shadow_texture_pz, i00).r, imageLoad(shadow_texture_pz, i10).r, imageLoad(shadow_texture_pz, i01).r, imageLoad(shadow_texture_pz, i11).r); else pixels = uvec4( imageLoad(shadow_texture_nz, i00).r, imageLoad(shadow_texture_nz, i10).r, imageLoad(shadow_texture_nz, i01).r, imageLoad(shadow_texture_nz, i11).r); } vec4 s = vec4( CompareShadow(pixels.x, z), CompareShadow(pixels.y, z), CompareShadow(pixels.z, z), CompareShadow(pixels.w, z)); return vec4(mix2(s, f)); } #else vec4 shadowTexture(vec2 uv, float w) { return vec4(1.0); } vec4 shadowTextureCube(vec2 uv, float w) { return vec4(1.0); } #endif void main() { vec4 rounded_primary_color = byteround(primary_color); vec4 primary_fragment_color = vec4(0.0); vec4 secondary_fragment_color = vec4(0.0); if (!(gl_FragCoord.x >= float(scissor_x1) && gl_FragCoord.y >= float(scissor_y1) && gl_FragCoord.x < float(scissor_x2) && gl_FragCoord.y < float(scissor_y2))) discard; float z_over_w = 2.0 * gl_FragCoord.z - 1.0; float depth = z_over_w * depth_scale + depth_offset; vec4 combiner_buffer = vec4(0.0); vec4 next_combiner_buffer = tev_combiner_buffer_color; vec4 last_tex_env_out = vec4(0.0); vec3 color_results_0[3] = vec3[3](rounded_primary_color.rgb, rounded_primary_color.rgb, rounded_primary_color.rgb); vec3 color_output_0 = byteround(clamp(color_results_0[0], vec3(0.0), vec3(1.0))); float alpha_results_0[3] = float[3](rounded_primary_color.a, rounded_primary_color.a, rounded_primary_color.a); float alpha_output_0 = byteround(clamp(alpha_results_0[0], 0.0, 1.0)); last_tex_env_out = vec4(clamp(color_output_0 * 1.0, vec3(0.0), vec3(1.0)), clamp(alpha_output_0 * 1.0, 0.0, 1.0)); combiner_buffer = next_combiner_buffer; combiner_buffer = next_combiner_buffer; combiner_buffer = next_combiner_buffer; combiner_buffer = next_combiner_buffer; combiner_buffer = next_combiner_buffer; combiner_buffer = next_combiner_buffer; gl_FragDepth = depth; color = byteround(last_tex_env_out); } [ 65.188466] Render.OpenGL video_core\renderer_opengl\gl_shader_util.cpp:OpenGL::LoadProgram:101: Error linking shader: Program Link Failed for unknown reason. [ 65.188468] Debug video_core\renderer_opengl\gl_shader_util.cpp:OpenGL::LoadProgram::::operator ():105: Assertion Failed! Shader not linked