Bug 1441

Summary: Fix ARB_multi_draw_indirect (GL4)
Product: [JogAmp] Jogl Reporter: Sven Gothel <sgothel>
Component: openglAssignee: Sven Gothel <sgothel>
Severity: normal    
Priority: P4    
Version: 2.5.0   
Hardware: All   
OS: all   
Type: DEFECT SCM Refs:
af321b4a90a4da9351dfbdd6d9a8202a73fc8c05 bcc4b5de41dcfca5eac19111506b996d3531d908
Workaround: ---
Bug Depends on: 852, 974    
Bug Blocks:    

Description Sven Gothel 2023-08-06 21:25:25 CEST
See Bug 974 and
- https://registry.khronos.org/OpenGL/extensions/ARB/ARB_multi_draw_indirect.txt
- https://www.khronos.org/opengl/wiki/GLAPI/glMultiDrawArraysIndirect
- https://www.khronos.org/opengl/wiki/GLAPI/glMultiDrawElementsIndirect

Extension requires GL4, subsumed in GL 4.3

glMultiDrawArraysIndirect() is dual mode, buffer address if VBO GL_DRAW_INDIRECT_BUFFER is unbound, otherwise byte offset. See Bug 974.

glMultiDrawElementsIndirect() is only VBO GL_DRAW_INDIRECT_BUFFER indirect.
It also required VBO buffer GL_ELEMENT_ARRAY_BUFFER to be bound (uncheck in JOGL).
Comment 1 Sven Gothel 2023-08-06 21:26:45 CEST
resolved with commit af321b4a90a4da9351dfbdd6d9a8202a73fc8c05
Comment 2 Sven Gothel 2023-08-06 21:41:58 CEST
Also see discussion regarding CPU (client memory) and GPU (VBO) sourced buffers in Bug 852.