Behavior of a non enabled vertex attribute in Series 6 Rogue Hood

Hello,



I’m having a trouble with non enabled vertex attribute in Series 6 Rogue Hood. My questions are:



Does Rogue Hood alphabetize their vertex attributes?



With an attribute at location 0, should we disable it (using glDisableVertexAttribArray)?




Thanks for your support.

Hi,


I'm having a trouble with non enabled vertex attribute in Series 6 Rogue Hood

Can you explain what problems you are experiencing with vertex attributes?

Does Rogue Hood alphabetize their vertex attributes?

Do you mean that you are relying on OpenGL ES's automatic attribute assignment? We recommend always explicitly assigning attributes.

With an attribute at location 0, should we disable it (using glDisableVertexAttribArray)?

You should always disable unused attribute locations.

Regards,
Joe

Hi Joe,



my trouble is that the value of a constant vertex attribute is never sent to vertex shader, although glVertexAttrib4f is called. The code runs finely on other GPUs.


Do you mean that you are relying on OpenGL ES's automatic attribute assignment?


Yes, please assume that. In my situation, I cannot explicitly assigning attributes.

I searched on Google and found some related information, but they are for OpenGL, not OpenGL ES, not Rogue Hood:

https://forum.libcinder.org/topic/glvertexattrib-incompatibility-between-ios-and-os-x
https://www.opengl.org/discussion_boards/showthread.php/181436-Behavior-of-a-non-enabled-vertex-attribute

As you can see, in OpenGL, we should not disable the location 0.

Hi Kata,



The first forum post you refer to is actually about ES and describes the situation perfectly as far as I can tell.



You should disable location 0 if you’re using glVertexAttrib4f to specify it - that is only a problem in desktop OpenGL with the compatibility profile. In OpenGL ES, it should be disabled as with every location.



If this is working on other mobile GPUs it’s off-spec behaviour - the value of glVertexAttrib4f should only be visible if the vertex attrib array is disabled.



Tobias