ERROR: VertexAttribPointer data is inaccessible

This topic contains 2 replies, has 2 voices, and was last updated by  Ulrich 2 days, 15 hours ago.

Viewing 3 posts - 1 through 3 (of 3 total)
  • Author
    Posts
  • #58628

    Ulrich
    Member

    I have an OpenGL ES 3.0 application running on windows. I’m developing with Visual Studio. The render output is corrupted and although eglGetError does not show any problem I get the following error in stdout when I’m using PVRTrace:

    ERROR: VertexAttribPointer data is inaccessible as we failed to obtain a valid pointer for the indices.

    I already checked the trace and could not find anything wrong. Can you please tell me what this error message exactly means? e.g. is the indexbuffer pointer not valid or is the VertexAttribPointer index incorrect??
    the pvrtrace.can be downloaded here: http://www.roulio.com/NativeWeb.exe.pvrtrace.zip

    What I do is I create a VAO fill it with VBO and IBO. The VBO is an interleaved vertex array. You can see the details in the trace.
    The vertex looks like this:

    	class DLL API3DVertex
    	{
    	public:
    		API3DVECTOR4 Position;
    		API3DVECTOR4 Normal;
    		API3DVECTOR4 TexCoords;
            }

    where an API3DVECTOR4 consists of 4 floats.

    Any help is appreciated!
    Ulrich

    • This topic was modified 3 days, 14 hours ago by  Ulrich.
    #58630

    Hi Ulrich,

    It is difficult to know what is going wrong. PVRTrace was unable to get valid index data. When I opened the trace in PVRTraceGUI it shows some application errors. It seems that two of the shaders are failing compilation. Maybe the IBO problem is just a side effect.
    The error is on this line
    vec4 color = texture (color_map, st).rgba*dot(normal.xyz, lightDir);
    which needs to be like this
    vec4 color = texture(color_map, st.xy).rgba*dot(normal.xyz, lightDir);

    Regards.

    Carlos.

    #58631

    Ulrich
    Member

    Hi Carlos.

    Thanks for the quick reply. I could fix this ES version by binding also the ibo before drawing(besides the VAO). But actually this should not be necessary in my eyes, as the VAO should also keep the ibo? e.g. I have a plain OpenGL Test application where this is working as expected. Sadly, I can only use GLES3.0 maybe it will work in 3.1?

    Thanks a lot for your help anyway!

Viewing 3 posts - 1 through 3 (of 3 total)
You must be logged in to reply to this topic.