Bug 1155

Summary: Bindless vertices rendering
Product: [JogAmp] Jogl Reporter: Giuseppe Barbieri <elect86>
Component: openglAssignee: Sven Gothel <sgothel>
Status: RESOLVED WORKSFORME    
Severity: blocker    
Priority: ---    
Version: 2.3.2   
Hardware: All   
OS: all   
Type: --- SCM Refs:
Workaround: ---

Description Giuseppe Barbieri 2015-04-21 10:52:36 CEST
I am trying to render vertices in bindless mode

I create each mesh and get their 64b vertex array pointer

https://github.com/elect86/NvGlSamples/blob/master/NvGlSamples/src/nvGlSamples/bindlessApp/util/Mesh.java#L80

Then, before the mesh.render() I set the attributes, enable it and its client state

https://github.com/elect86/NvGlSamples/blob/master/NvGlSamples/src/nvGlSamples/bindlessApp/util/Mesh.java#L115-140

and in the mesh.render() I set up the pointers to the vertices attributes

https://github.com/elect86/NvGlSamples/blob/master/NvGlSamples/src/nvGlSamples/bindlessApp/util/Mesh.java#L186-188

and then finally render

But I get this at the glDrawElements

Caused by: com.jogamp.opengl.GLException: element vertex_buffer_object must be bound to call this method
        at jogamp.opengl.gl4.GL4bcImpl.checkBufferObject(GL4bcImpl.java:39146)
        at jogamp.opengl.gl4.GL4bcImpl.checkElementVBOBound(GL4bcImpl.java:39197)
        at jogamp.opengl.gl4.GL4bcImpl.glDrawElements(GL4bcImpl.java:5440)
        at nvGlSamples.bindlessApp.util.Mesh.render(Mesh.java:223)

I think this is a bug of jogl that doesnt take in account the bindless rendering and requires a vbo in anycase


You can reproduce it by cloning my bindlessApp sample, it is pretty small

https://github.com/elect86/NvGlSamples

you have also to clone jglm and sdk

https://github.com/elect86/java-unofficial-opengl-SDK

https://github.com/elect86/Jglm
Comment 1 Giuseppe Barbieri 2015-04-29 22:05:39 CEST
I was joking, I tried again by using properly the dsa and it works...

It is awesome!