diff options
Diffstat (limited to 'mesalib/src/mesa/state_tracker/st_atom_constbuf.c')
-rw-r--r-- | mesalib/src/mesa/state_tracker/st_atom_constbuf.c | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/mesalib/src/mesa/state_tracker/st_atom_constbuf.c b/mesalib/src/mesa/state_tracker/st_atom_constbuf.c index 723ab561c..f3c457625 100644 --- a/mesalib/src/mesa/state_tracker/st_atom_constbuf.c +++ b/mesalib/src/mesa/state_tracker/st_atom_constbuf.c @@ -254,4 +254,21 @@ const struct st_tracked_state st_bind_fs_ubos = { bind_fs_ubos }; +static void bind_gs_ubos(struct st_context *st) +{ + struct gl_shader_program *prog = st->ctx->Shader.CurrentGeometryProgram; + + if (!prog) + return; + + st_bind_ubos(st, prog->_LinkedShaders[MESA_SHADER_GEOMETRY], PIPE_SHADER_GEOMETRY); +} +const struct st_tracked_state st_bind_gs_ubos = { + "st_bind_gs_ubos", + { + 0, + ST_NEW_GEOMETRY_PROGRAM | ST_NEW_UNIFORM_BUFFER, + }, + bind_gs_ubos +}; |