|
This post was finally edited by fredrum at 2023-3-3 01:40
System information:
Hardware: Orange Pi 5
OS: Armbian (23.02.2) aarch64
GPU: Mali-G610
Kernel version: Linux orangepi5 5.10.110-rockchip-rk3588 #23.02.2 SMP Fri Feb 17 23:59:20 UTC 2023 aarch64 aarch64 aarch64 GNU/Linux
Mesa version:
Extended renderer info (GLX_MESA_query_renderer):
Vendor: Panfrost (0xffffffff)
Device: Mali-G610 (Panfrost) (0xffffffff)
Version: 23.0.0
Accelerated: yes
Video memory: 7689MB
Unified memory: yes
Preferred profile: compat (0x2)
Max core profile version: 0.0
Max compat profile version: 3.0
Max GLES1 profile version: 1.1
Max GLES[23] profile version: 3.1
OpenGL vendor string: Panfrost
OpenGL renderer string: Mali-G610 (Panfrost)
OpenGL version string: 3.0 Mesa 23.0.0-devel
OpenGL shading language version string: 1.30
OpenGL context flags: (none)
OpenGL ES profile version string: OpenGL ES 3.1 Mesa 23.0.0-devel
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.10
Desktop manager and compositor: Wayland
I built the HoT dolphin emulator. It went through and gave me executables.
Then I changed the config to use GLES like this,
nano ~./config/dolphin-emu/GFX.ini
adding
PreferGLES = True
The gui of dolphin runs fine.
I didn't change any settings from default except to make sure 'OpenGL' was selected as graphics backend.
When I try to run a game I only get a black screen and immediate crash followed by this error message,
----------
Failed to compile vs shader: /home/fred/.local/share/dolphin-emu/Dump/bad_vs_OGL_0.txt
Debug info (Panfrost, Mali-G610 (Panfrost), OpenGL ES 3.1 Mesa 23.0.0-devel):
0:36(17): error: illegal use of reserved word `sampler2DMSArray'
0:36(17): error: syntax error, unexpected ERROR_TOK
---------
When I read the file /home/fred/.local/share/dolphin-emu/Dump/bad_vs_OGL_0.txt
I see that it starts by announcing its a #version 310 es which it seems this environment and gl drivers should be able to support?
Does anyone know how to build Dolphin on an Orange Pi 5 with Linux?
Cheers and thanks for all your hard work!
The shader text:
-----------------------------------
#version 310 es
#define FORCE_EARLY_Z layout(early_fragment_tests) in
#define ATTRIBUTE_LOCATION(x)
#define FRAGMENT_OUTPUT_LOCATION(x)
#define FRAGMENT_OUTPUT_LOCATION_INDEXED(x, y)
#define UBO_BINDING(packing, x) layout(packing, binding = x)
#define SAMPLER_BINDING(x) layout(binding = x)
#define TEXEL_BUFFER_BINDING(x) layout(binding = x)
#define SSBO_BINDING(x) layout(std430, binding = x)
#define IMAGE_BINDING(format, x) layout(format, binding = x)
#define VARYING_LOCATION(x)
#extension GL_OES_texture_buffer : enable
#extension GL_EXT_blend_func_extended : enable
#extension GL_EXT_shader_framebuffer_fetch: enable
#define FRAGMENT_INOUT inout
precision highp float;
precision highp int;
precision highp sampler2DArray;
precision highp usamplerBuffer;
precision highp sampler2DMSArray;
precision highp image2DArray;
#define API_OPENGL 1
#define float2 vec2
#define float3 vec3
#define float4 vec4
#define uint2 uvec2
#define uint3 uvec3
#define uint4 uvec4
#define int2 ivec2
#define int3 ivec3
#define int4 ivec4
#define frac fract
#define lerp mix
VARYING_LOCATION(0) out float3 v_tex0;
#define opos gl_Position
#define id gl_VertexID
void main()
{
...
} |
|