AnsweredAssumed Answered

Vivante GC 2000 Issue

Question asked by Gustavo Ojeda on Jul 2, 2018
Latest reply on Aug 7, 2018 by Bio_TICFSL



I am working with a ConnectCore 6. Developing a graphical application using Qt and OpenGl



The problem we are trying to solve is related to the projection of OpenGL primitive lines.
We need to draw a grid permanently on the screen. For that, we created a vertex buffer with two vertexes per line. The buffer has vertexes for horizontal and vertical lines and it's regenerated for each change on the perspective. Finally we draw using glDrawArrays(GL_LINES,...).
On PC platform it works perfectly but in our board ccimx6sbc the lines aren't projected correctly when these are very long. The visual effect is that the lines are not parallel anymore. We think the issue is generated by the driver when it has to interpolate the vertexes placed outside the frustrum. When that occurs, the resulting vertexes are not aligned with the original line causing the lines don't be parallel between them.

Our issue is similar to the mentioned in StackOverflow.

We could avoid the problem splitting the line in many segments but it increase the amount of memory stored on GPU and the amount of operations to be executed by.


We are using:
- Yocto 2.4 (rocko) for ccimx6sbc with an update of the gpu driver and kernel module (provided in the branch master-next of meta-freescale).
- The GPU Info provided when we run an application using OpenGL in the board is:

Vendor : Vivante Corporation
Renderer : Vivante GC2000
Version : OpenGL ES 3.0 V6.2.4.p1.150331
Shading : OpenGL ES GLSL ES 3.00


Do you already know something about an interpolation issue on this driver?
Do you know where we can find more information? or where we can report this issue?


Please let me know if you need any further information.