trzy / Supermodel

Official repository of the Sega Model 3 arcade emulator.

Home Page:https://supermodel3.com

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Supermodel on the newly released Raspberry Pi 5

vanfanel opened this issue · comments

Hello there,

I have just build Supermodel from latest GIT code on the new Raspberry Pi 5.

Seems to fail on launch:


Supermodel: A Sega Model 3 Arcade Emulator (Version 0.3a-WIP)
Copyright 2003-2023 by The Supermodel Team
WARNING: v3d support for hw version 71 is neither a complete nor a conformant OpenGL implementation. Testing use only.
Error: Unable to create OpenGL context: Could not create EGL context (call to eglCreateContext failed, reporting an error of EGL_BAD_MATCH)

This is the relevant GL information:


root@raspberrypi:~/model3# supermodel -print-gl-info
Supermodel: A Sega Model 3 Arcade Emulator (Version 0.3a-WIP)
Copyright 2003-2023 by The Supermodel Team
WARNING: v3d support for hw version 71 is neither a complete nor a conformant OpenGL implementation. Testing use only.
GPU info: 3.1 Mesa 23.2.1 

OpenGL information:

  Vendor                   : Broadcom
  Renderer                 : V3D 7.1
  Version                  : 3.1 Mesa 23.2.1
  Shading Language Version : 1.40
  Maximum Vertex Array Size: 3000 vertices
  Maximum Texture Size     : 4096 texels
  Maximum Vertex Attributes: 16
  Maximum Vertex Uniforms  : 16384
  Maximum Texture Img Units: 24

Shouldn't Supermodel be able to run on this? Shading language seems to be 1.40, which is superior to the minimum 1.2 required version according to:

https://www.supermodel3.com/FAQ.html

This is just an experiment, since I don't think Supermodel will perform so well on this.

Apparently, the Pi5 VC7 GPU supports OpenGL 2.1.

Answering to my own self:

Looking at

SDL_GL_SetAttribute(SDL_GL_CONTEXT_MAJOR_VERSION, 4);
, it seems clear that Supermodel wants OpenGL 4.1.

I could lower the context version to 2.1, but then I get no graphics on screen and no supported shader version errors:

0:3(10): error: GLSL 4.10 is not supported. Supported versions are: 1.10, 1.20, 1.30, 1.40, 1.00 ES, and 3.00 ES

0:3(10): error: GLSL 4.10 is not supported. Supported versions are: 1.10, 1.20, 1.30, 1.40, 1.00 ES, and 3.00 ES

error: linking with uncompiled/unspecialized shadererror: linking with uncompiled/unspecialized shader
0:3(10): error: GLSL 4.10 is not supported. Supported versions are: 1.10, 1.20, 1.30, 1.40, 1.00 ES, and 3.00 ES

0:3(10): error: GLSL 4.10 is not supported. Supported versions are: 1.10, 1.20, 1.30, 1.40, 1.00 ES, and 3.00 ES

error: linking with uncompiled/unspecialized shadererror: linking with uncompiled/unspecialized shader
Error: Vertex shader failed to compile. Your OpenGL driver said:
0:3(10): error: GLSL 4.10 is not supported. Supported versions are: 1.10, 1.20, 1.30, 1.40, 1.00 ES, and 3.00 ES

Error: Fragment shader failed to compile. Your OpenGL driver said:
0:3(10): error: GLSL 4.10 is not supported. Supported versions are: 1.10, 1.20, 1.30, 1.40, 1.00 ES, and 3.00 ES

Error: Failed to link shader objects. Your OpenGL driver said:
error: linking with uncompiled/unspecialized shadererror: linking with uncompiled/unspecialized shader

0:3(10): error: GLSL 4.10 is not supported. Supported versions are: 1.10, 1.20, 1.30, 1.40, 1.00 ES, and 3.00 ES

0:3(10): error: GLSL 4.10 is not supported. Supported versions are: 1.10, 1.20, 1.30, 1.40, 1.00 ES, and 3.00 ES

error: linking with uncompiled/unspecialized shadererror: linking with uncompiled/unspecialized shader
0:3(10): error: GLSL 4.10 is not supported. Supported versions are: 1.10, 1.20, 1.30, 1.40, 1.00 ES, and 3.00 ES

0:3(10): error: GLSL 4.10 is not supported. Supported versions are: 1.10, 1.20, 1.30, 1.40, 1.00 ES, and 3.00 ES

error: linking with uncompiled/unspecialized shadererror: linking with uncompiled/unspecialized shader
0:3(10): error: GLSL 4.10 is not supported. Supported versions are: 1.10, 1.20, 1.30, 1.40, 1.00 ES, and 3.00 ES

0:3(10): error: GLSL 4.10 is not supported. Supported versions are: 1.10, 1.20, 1.30, 1.40, 1.00 ES, and 3.00 ES

error: linking with uncompiled/unspecialized shadererror: linking with uncompiled/unspecialized shader

So no, no SuperModel on the Pi5.

Yeah supermodel needs gl 4.1. If you use an older build it'll support opengl 2.1.

Closing this as this is not really an issue.

Thanks for confirming!