libretro / libretro/RetroArch

Some cores only work with opengles contexts in wayland.

Open
#11,085 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug: wayland
Dominant language
C
Stars
14.1k
Forks
2.2k
Avg merge
7h 35m
Merged PRs (30d)
51

Description

Description

I decided to try again to use ppsspp in a x11 less environment in RA and found something new and annoying.

It's possible to run ppsspp in a desktop wayland DE without XWayland if you build retroarch with --enable-opengles --enable-wayland (besides disabling x11) and build ppsspp with -DLIBRETRO=ON -DUSING_GLES2=ON -DUSING_EGL=OFF

This is more or less what i expected. Problem; running beetle hw always fallbacks to software even if you built RA with --enable-opengl additionally.

The message is helpful:
[ERROR] Requesting OpenGL context, but RetroArch is compiled against OpenGLES. Cannot use HW context.

This occurs even if you set the core settings to shared context on or off and allow cores to switch video driver on.

Expected behavior

I think this might be happening because the 'gl' option in retroarch is not really 'gl' but a combination of opengl OR opengles OR opengles3, so when the core attempts to switch to opengl it fails. Or maybe once retroarch has a main context type the cores must follow that context but i hope it's not that.

Actual behavior

Fallback to software in beetle (didn't really test other emulators).

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Reproduce the issue using the reported RetroArch --enable-opengles --enable-wayland and PPSSPP LIBRETRO, USING_GLES2, and USING_EGL settings, then compare it with --enable-opengl and Beetle HW. No source file or test is identified in the report; done means determining why the OpenGL context request falls back to software, or documenting the supported context limitation.

Written by the indexing model from the issue text.

Assessment

Tech stack
c
Domain
desktop
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.