summaryrefslogtreecommitdiff
path: root/src/shader-node.h
blob: ae9b2521115dc13ca8921f0cc4df3f1d1c673f7b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#ifndef _SHADER_NODE_H
#define _SHADER_NODE_H

typedef struct shader_t shader_t;
typedef struct stage_t stage_t;
typedef struct m4f_t m4f_t;

typedef void (shader_node_uniforms_func_t)(shader_t *shader, void *uniforms_ctxt, void *render_ctxt, unsigned n_uniforms, const int *uniforms, const m4f_t *transform, float alpha);

stage_t * shader_node_new_shader(const stage_conf_t *conf, shader_t *shader, const m4f_t *transform, shader_node_uniforms_func_t *uniforms_func, void *uniforms_ctxt);
stage_t * shader_node_new_src(const stage_conf_t *conf, const char *vs_src, const char *fs_src, const m4f_t *transform, shader_node_uniforms_func_t *uniforms_func, void *uniforms_ctxt, unsigned n_uniforms, const char **uniforms);
stage_t * shader_node_new_files(const stage_conf_t *conf, const char *vs_path, const char *fs_path, const m4f_t *transform, shader_node_uniforms_func_t *uniforms_func, void *uniforms_ctxt, unsigned n_uniforms, const char **uniforms);

#endif
© All Rights Reserved