Citra core crashes on startup

Never had this problem before. Today, after updating the Citra core, any game I try to launch throws the error “OpenGL 3.3 is not supported”.

Here’s the entire startup message:

[INFO] Loading dynamic libretro core from: "C:\Users\metam\Desktop\Spel\Emulatorer\RetroArch\cores\citra_libretro.dll"
[INFO] [overrides] no core-specific overrides found at C:\Users\metam\Desktop\Spel\Emulatorer\RetroArch\config\Citra\Citra.cfg.
[INFO] [overrides] no game-specific overrides found at C:\Users\metam\Desktop\Spel\Emulatorer\RetroArch\config\Citra\Super Mario 3D Land.cfg.
[INFO] Shaders: preset directory: C:\Users\metam\Desktop\Spel\Emulatorer\RetroArch\shaders\presets
[INFO] Shaders: no game-specific preset found at C:\Users\metam\Desktop\Spel\Emulatorer\RetroArch\shaders\presets\Citra\Super Mario 3D Land.slangp.
[INFO] Shaders: no core-specific preset found at C:\Users\metam\Desktop\Spel\Emulatorer\RetroArch\shaders\presets\Citra\Citra.slangp.
[INFO] Environ SET_VARIABLES.
[INFO] Environ SET_CONTROLLER_INFO.
[INFO] Controller port: 1
[INFO]    Nintendo 3DS (ID: 257)
[INFO] Remaps: remap directory: C:\Users\metam\Desktop\Spel\Emulatorer\RetroArch\config\remaps
[INFO] Remaps: no game-specific remap found at C:\Users\metam\Desktop\Spel\Emulatorer\RetroArch\config\remaps\Citra\Super Mario 3D Land.rmp.
[INFO] Remaps: no core-specific remap found at C:\Users\metam\Desktop\Spel\Emulatorer\RetroArch\config\remaps\Citra\Citra.rmp.
[INFO] Redirecting save file to "C:\Users\metam\Desktop\Spel\Emulatorer\RetroArch\saves\Super Mario 3D Land.srm".
[INFO] Redirecting savestate to "C:\Users\metam\Desktop\Spel\Emulatorer\RetroArch\states\Super Mario 3D Land.state".
[   0.000000] Frontend <Debug> citra_libretro/citra_libretro.cpp:retro_init:37: Initialising core...
[INFO] Content loading skipped. Implementation will load it on its own.
[   0.000221] Frontend <Info> citra_libretro/citra_libretro.cpp:retro_load_game:327: Starting Citra RetroArch game...
[INFO] Environ SET_PIXEL_FORMAT: XRGB8888.
[INFO] Environ SET_HW_RENDER.
[INFO] Requesting core OpenGL context (3.3).
[   0.000542] Frontend <Critical> citra_libretro/citra_libretro.cpp:retro_load_game:347: OpenGL 3.3 is not supported.
[INFO] Environ SET_MESSAGE: OpenGL 3.3 is not supported.
[ERROR] Failed to load content.

I’m on a 780Ti and Citra’s always worked for me, so I don’t know what’s up with that. Every other core works fine, too.

Looks like you’re using the vulkan driver while the core needs GL.

Actually, that doesn’t matter. I’ve simply reset the default driver in retroarch.cfg to vulkan again after having considered that very thing. No matter which driver I try I get the same error.

EDIT: Sorry. I am a bonafide idiot who could’ve solved this issue on my own, by simply realizing I have to set ‘driver’ to ‘gl’ NOT ‘opengl’. Thanks for your patience, guys.

EDIT2: All right. Setting ‘video_driver = “gl”’ in Citra.cfg doesn’t seem to actually work if I have vulkan as the default driver. What gives?

You can’t swap drivers during runtime. It requires a full teardown of the whole thing (that is, change it, exit restart RetroArch)

So how would one go about running OpenGL for some cores and Vulkan for others without it being cumbersome?

We don’t have a good solution for that, unfortunately. If you’re using an external launcher like Hyperspin/Launchbox, you can pass different configs using the -c /path/to/config command line switch and those configs can have different drivers, since they’re launching the entire program from scratch, but there’s no way to gracefully do it while RetroArch is running, unfortunately.

1 Like

OH, right! I used to do that for every core before overrides were a thing, and that must be why I didn’t have that problem earlier! Guess I’m a lucky LB user, then. :smile:

Again, thanks.

I got the same problem. Just fresh install the Retroarch 1.8.1 and i can`t load any Citra core.

[INFO] RetroArch 1.8.1 (Git bfdc8e6a62)
[INFO] === Build =======================================
[INFO] CPU Model Name: AMD Ryzen 7 2700X Eight-Core Processor         
[INFO] Capabilities:  MMX MMXEXT SSE SSE2 SSE3 SSSE3 SSE4 SSE4.2 AES AVX
[INFO] Built: Nov  2 2019
[INFO] Version: 1.8.1
[INFO] Git: bfdc8e6a62
[INFO] =================================================
[INFO] [Environ]: SET_PIXEL_FORMAT: RGB565.
[INFO] Redirecting save file to "F:\DUCKGAMES\EMULADORES\RetroArch\saves\.srm".
[INFO] Redirecting savestate to "F:\DUCKGAMES\EMULADORES\RetroArch\states\.state".
[INFO] Version of libretro API: 1
[INFO] Compiled against API: 1
[INFO] [Audio]: Set audio input rate to: 30000.00 Hz.
[INFO] [Video]: Video @ fullscreen
[INFO] [GL]: Found GL context: wgl
[INFO] [GL]: Detecting screen resolution 1920x1080.
[INFO] [WGL] extensions: WGL_ARB_buffer_region WGL_ARB_create_context WGL_ARB_create_context_no_error WGL_ARB_create_context_profile WGL_ARB_create_context_robustness WGL_ARB_context_flush_control WGL_ARB_extensions_string WGL_ARB_make_current_read WGL_ARB_mult
[INFO] [WGL]: Adaptive VSync supported.
[INFO] [WGL]: wglSwapInterval(1)
[INFO] [GL]: Vendor: NVIDIA Corporation, Renderer: GeForce GTX 1080 Ti/PCIe/SSE2.
[INFO] [GL]: Version: 4.6.0 NVIDIA 441.20.
[INFO] [GL]: Using resolution 1920x1080
[INFO] [GL]: Default shader backend found: glsl.
[INFO] [Shader driver]: Using GLSL shader backend.
[INFO] [GLSL]: Checking GLSL shader support ...
[WARN] [GL]: Stock GLSL shaders will be used.
[INFO] [GLSL]: Found GLSL vertex shader.
[INFO] [GLSL]: Found GLSL fragment shader.
[INFO] [GLSL]: Linking GLSL program.
[INFO] [GLSL]: Found GLSL vertex shader.
[INFO] [GLSL]: Found GLSL fragment shader.
[INFO] [GLSL]: Linking GLSL program.
[INFO] [GLSL]: Found GLSL vertex shader.
[INFO] [GLSL]: Found GLSL fragment shader.
[INFO] [GLSL]: Linking GLSL program.
[INFO] Setting up menu pipeline shaders for XMB ... 
[INFO] [GLSL]: Compiling ribbon shader..
[INFO] [GLSL]: Found GLSL vertex shader.
[INFO] [GLSL]: Found GLSL fragment shader.
[INFO] [GLSL]: Linking GLSL program.
[INFO] [GLSL]: Compiling simple ribbon shader..
[INFO] [GLSL]: Found GLSL vertex shader.
[INFO] [GLSL]: Found GLSL fragment shader.
[INFO] [GLSL]: Linking GLSL program.
[INFO] [GLSL]: Compiling snow shader..
[INFO] [GLSL]: Found GLSL vertex shader.
[INFO] [GLSL]: Found GLSL fragment shader.
[INFO] [GLSL]: Linking GLSL program.
[INFO] [GLSL]: Compiling modern snow shader..
[INFO] [GLSL]: Found GLSL vertex shader.
[INFO] [GLSL]: Found GLSL fragment shader.
[INFO] [GLSL]: Linking GLSL program.
[INFO] [GLSL]: Compiling bokeh shader..
[INFO] [GLSL]: Found GLSL vertex shader.
[INFO] [GLSL]: Found GLSL fragment shader.
[INFO] [GLSL]: Linking GLSL program.
[INFO] [GLSL]: Compiling snowflake shader..
[INFO] [GLSL]: Found GLSL vertex shader.
[INFO] [GLSL]: Found GLSL fragment shader.
[INFO] [GLSL]: Linking GLSL program.
[INFO] [GL]: Using 4 textures.
[INFO] [GL]: Loaded 1 program(s).
[INFO] [GL]: Using GL_RGB565 for texture uploads.
[INFO] [XInput]: Found XInput v1.4.
[INFO] [XInput]: Found controller, user #0
[INFO] [XInput]: Found controller, user #1
[INFO] [XInput]: Pads connected: 2
[INFO] [DINPUT]: Enumerating joypads ...
[INFO] [DINPUT]: Device #0 PID: {0410} VID:{D209}
[WARN] [DINPUT]: Strong rumble unavailable.
[WARN] [DINPUT]: Weak rumble unavailable.
[INFO] [Autoconf]: 143 profiles found.
[INFO] [DINPUT]: Device #1 PID: {0410} VID:{D209}
[WARN] [DINPUT]: Strong rumble unavailable.
[WARN] [DINPUT]: Weak rumble unavailable.
[INFO] [DINPUT]: Device #2 PID: {028E} VID:{045E}
[INFO] [Autoconf]: selected configuration: F:\DUCKGAMES\EMULADORES\RetroArch\autoconfig\xinput\I-PAC Ultimate.cfg
[INFO] [Autoconf]: 143 profiles found.
[INFO] [Autoconf]: selected configuration: F:\DUCKGAMES\EMULADORES\RetroArch\autoconfig\xinput\I-PAC Ultimate.cfg
[INFO] [DINPUT]: Device #3 PID: {028E} VID:{045E}
[INFO] [DINPUT]: Done enumerating joypads ...
[INFO] [XInput]: Attempting autoconf for "I-PAC Ultimate", user #0
[INFO] [XInput]: Attempting autoconf for "I-PAC Ultimate", user #1
[INFO] [XInput]: Attempting autoconf for "XInput Controller (User 1)", user #2
[INFO] [DINPUT]: Found XInput pad at index 0 (DINPUT index 2)
[INFO] [XInput]: Found VID/PID (045E/028E) from DINPUT index 2 for "XInput Controller (User 1)", user #2
[INFO] [XInput]: Attempting autoconf for "XInput Controller (User 2)", user #3
[INFO] [DINPUT]: Found XInput pad at index 1 (DINPUT index 3)
[INFO] [XInput]: Found VID/PID (045E/028E) from DINPUT index 3 for "XInput Controller (User 2)", user #3
[INFO] [XInput]: Attempting autoconf for user #4
[INFO] [XInput]: Attempting autoconf for user #5
[INFO] [XInput]: Attempting autoconf for user #6
[INFO] [XInput]: Attempting autoconf for user #7
[INFO] [XInput]: Attempting autoconf for user #8
[INFO] [XInput]: Attempting autoconf for user #9
[INFO] [XInput]: Attempting autoconf for user #10
[INFO] [XInput]: Attempting autoconf for user #11
[INFO] [XInput]: Attempting autoconf for user #12
[INFO] [XInput]: Attempting autoconf for user #13
[INFO] [XInput]: Attempting autoconf for user #14
[INFO] [XInput]: Attempting autoconf for user #15
[INFO] [Joypad]: Found joypad driver: "xinput".
[INFO] [Autoconf]: 143 profiles found.
[INFO] [Font]: Using font rendering backend: freetype.
[INFO] [Video]: Found display server: win32
[INFO] [XAudio2]: Requesting 64 ms latency, using 64 ms latency.
[INFO] [Autoconf]: selected configuration: F:\DUCKGAMES\EMULADORES\RetroArch\autoconfig\xinput\XInput_Controller_User_1.cfg
[INFO] [Autoconf]: 143 profiles found.
[INFO] [Autoconf]: selected configuration: F:\DUCKGAMES\EMULADORES\RetroArch\autoconfig\xinput\XInput_Controller_User_2.cfg
[INFO] [Menu]: Found menu display driver: "gl".
[INFO] [Font]: Using font rendering backend: freetype.
[INFO] [Font]: Using font rendering backend: freetype.
[INFO] [Menu]: Found menu display driver: "gl".
[INFO] [Font]: Using font rendering backend: freetype.
[INFO] [Font]: Using font rendering backend: freetype.
[INFO] [LED]: LED driver = 'null' 0000000000B8AF00
[INFO] [MIDI]: Initializing ...
[INFO] [MIDI]: Input disabled.
[INFO] [MIDI]: Output disabled.
[INFO] [MIDI]: Initialized "winmm" driver.
[INFO] SRAM will not be saved.
[INFO] Loading history file: [F:\DUCKGAMES\EMULADORES\RetroArch\content_history.lpl].
[INFO] Loading history file: [F:\DUCKGAMES\EMULADORES\RetroArch\content_music_history.lpl].
[INFO] Loading history file: [F:\DUCKGAMES\EMULADORES\RetroArch\content_video_history.lpl].
[INFO] Loading history file: [F:\DUCKGAMES\EMULADORES\RetroArch\content_image_history.lpl].
[INFO] Loading favorites file: [F:\DUCKGAMES\EMULADORES\RetroArch\content_favorites.lpl].
[INFO] [GL]: VSync => on
[INFO] [WGL]: wglSwapInterval(1)
[INFO] [GL]: VSync => on
[INFO] [WGL]: wglSwapInterval(1)
[INFO] [Font]: Using font rendering backend: freetype.
[INFO] [Font]: Using font rendering backend: freetype.
[ERROR] Failed to open libretro core: "F:\DUCKGAMES\EMULADORES\RetroArch\cores\citra_libretro.dll"
[ERROR] Error(s): unknown error 127
[ERROR] Failed to open libretro core: "F:\DUCKGAMES\EMULADORES\RetroArch\cores\citra_canary_libretro.dll"
[ERROR] Error(s): unknown error 127
[INFO] [config] Saved new config to "F:\DUCKGAMES\EMULADORES\RetroArch\retroarch.cfg".
[INFO] Content ran for a total of: 00 hours, 00 minutes, 00 seconds.
[INFO] Unloading game..
[INFO] Unloading core..
[INFO] Unloading core symbols..
[INFO] [Video]: Does not have enough samples for monitor refresh rate estimation. Requires to run for at least 4096 frames.
[INFO] [Video]: Does not have enough samples for monitor refresh rate estimation. Requires to run for at least 4096 frames.
[ERROR] Failed to open libretro core: "F:\DUCKGAMES\EMULADORES\RetroArch\cores\citra_libretro.dll"
[ERROR] Error(s): unknown error 127
[ERROR] Failed to open libretro core: "F:\DUCKGAMES\EMULADORES\RetroArch\cores\citra_canary_libretro.dll"
[ERROR] Error(s): unknown error 127

Those appear to be the errors, though I’m not sure what that actually means. Do any other cores work for you?

Yes,any other core works.