I don't think this is correct. The non-indexed binding point (which
BindBuffer, BufferData uses) is distinct from the 0'th indexed binding
point (which BindBuffer{Base,Range} use).- Chris On Wed, Sep 30, 2015 at 1:10 PM, Jordan Justen <[email protected]> wrote: > The command is: > > ssbo <size> > > where <size> is the size in bytes to allocate for the SSBO buffer. > > This command only sets of a buffer for SSBO index 0. > > Signed-off-by: Jordan Justen <[email protected]> > --- > tests/shaders/shader_runner.c | 8 ++++++++ > 1 file changed, 8 insertions(+) > > diff --git a/tests/shaders/shader_runner.c b/tests/shaders/shader_runner.c > index e8c3aaa..32ac7bd 100644 > --- a/tests/shaders/shader_runner.c > +++ b/tests/shaders/shader_runner.c > @@ -113,6 +113,7 @@ GLenum geometry_layout_input_type = GL_TRIANGLES; > GLenum geometry_layout_output_type = GL_TRIANGLE_STRIP; > GLint geometry_layout_vertices_out = 0; > GLuint atomics_bo = 0; > +GLuint ssbo = 0; > > #define SHADER_TYPES 6 > static GLuint *subuniform_locations[SHADER_TYPES]; > @@ -2898,6 +2899,13 @@ piglit_display(void) > glShadeModel(GL_SMOOTH); > } else if (string_match("shade model flat", line)) { > glShadeModel(GL_FLAT); > + } else if (sscanf(line, "ssbo %d", &x) == 1) { > + GLuint *ssbo_init = calloc(x, 1); > + glGenBuffers(1, &ssbo); > + glBindBufferBase(GL_SHADER_STORAGE_BUFFER, 0, > ssbo); > + glBufferData(GL_SHADER_STORAGE_BUFFER, x, > + ssbo_init, GL_DYNAMIC_DRAW); > + free(ssbo_init); > } else if (sscanf(line, "texture rgbw %d ( %d", &tex, &w) > == 2) { > GLenum int_fmt = GL_RGBA; > int num_scanned = > -- > 2.5.1 > > _______________________________________________ > Piglit mailing list > [email protected] > http://lists.freedesktop.org/mailman/listinfo/piglit >
_______________________________________________ Piglit mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/piglit
