summaryrefslogtreecommitdiff
path: root/src/shader.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/shader.h')
-rw-r--r--src/shader.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/shader.h b/src/shader.h
index b52189a..a7df2ec 100644
--- a/src/shader.h
+++ b/src/shader.h
@@ -19,6 +19,12 @@
typedef struct shader_t shader_t;
+typedef struct shader_uniform_t {
+ char *name;
+ GLenum type;
+ int location;
+} shader_uniform_t;
+
unsigned int shader_pair_new_bare(const char *vs_src, const char *fs_src);
shader_t * shader_pair_new(const char *vs_src, const char *fs_src, unsigned n_uniforms, const char **uniforms, unsigned n_attributes, const char **attributes);
shader_t * shader_pair_new_files(const char *vs_path, const char *fs_path, unsigned n_uniforms, const char **uniforms, unsigned n_attributes, const char **attributes);
@@ -26,5 +32,6 @@ void shader_ref(shader_t *shader);
shader_t * shader_free(shader_t *shader);
void shader_use(shader_t *shader, unsigned *res_n_uniforms, int **res_uniform_locations, unsigned *res_n_attributes, int **res_attribute_locations);
int shader_reload_files(shader_t *shader);
+void shader_active_uniforms(shader_t *shader, int *res_n_uniforms, const shader_uniform_t **res_uniforms);
#endif
© All Rights Reserved