Asus Tinker Board GL ES 3.0


#1

Hi,
My GL ES 3.0 app works fine under Android on the Tinker Board, but I’m trying to get it running under Tinker OS linux. It just runs with software rendering. I’m probably missing some drivers in Tinker OS.
(on the PI3, i’m getting hardware accelerated rendering working with gles2.0 with similar code)
Anybody knows how to get accelerated GLES 3.0 on the Tinker Board?

My init code looks like this:

SDL_VideoInit(0);
SDL_GL_SetAttribute(SDL_GL_CONTEXT_MAJOR_VERSION, 3);
SDL_GL_SetAttribute(SDL_GL_CONTEXT_MINOR_VERSION, 0);
SDL_GL_SetAttribute(SDL_GL_CONTEXT_PROFILE_MASK, SDL_GL_CONTEXT_PROFILE_ES);
SDL_GL_SetAttribute(SDL_GL_DOUBLEBUFFER, 1);
SDL_GL_SetAttribute(SDL_GL_DEPTH_SIZE, 24);
SDL_GL_SetAttribute(SDL_GL_STENCIL_SIZE, 8);
SDL_GL_SetAttribute(SDL_GL_ALPHA_SIZE, 8);
SDL_GL_SetAttribute(SDL_GL_RED_SIZE, 8);
SDL_GL_SetAttribute(SDL_GL_GREEN_SIZE, 8);
SDL_GL_SetAttribute(SDL_GL_BLUE_SIZE, 8);

int x = 0, y = 0;
SDL_DisplayMode dm;
SDL_GetDesktopDisplayMode(0, &dm);

x = dm.w;
y = dm.h;

gWindow = SDL_CreateWindow(“Tricky Machines”, SDL_WINDOWPOS_CENTERED, SDL_WINDOWPOS_CENTERED, x, y, SDL_WINDOW_OPENGL | SDL_WINDOW_SHOWN | SDL_WINDOW_FULLSCREEN | SDL_WINDOW_RESIZABLE|SDL_WINDOW_ALLOW_HIGHDPI);

gContext = SDL_GL_CreateContext(gWindow);

renderer = SDL_CreateRenderer(gWindow, -1, SDL_RENDERER_ACCELERATED | SDL_RENDERER_TARGETTEXTURE);

SDL_GL_SetSwapInterval(1);

Many thanks,


#2

Update:
I tried chosing different renderers.
Available renderers are: opengl, opengles2, software.
opengl returns ES 3.1 contest and it’s slow.
opengles2 returns an ES 2.0 context and it’s equally slow.

It complains for missing rockchip_dri.so


#3

Why are you creating both an OpenGL context and an accelerated SDL renderer? The GL context is for when you want to do your own OpenGL calls.


#4

The renderer was a mistake, I’m trying without that part.