mirror of
https://gitlab.gnome.org/GNOME/gtk.git
synced 2024-12-25 21:21:21 +00:00
7ea755e206
A GskGLShader is an abstraction of a GLSL fragment shader that can produce pixel values given inputs: * N (currently max 4) textures * Current arguments for the shader uniform Uniform types are: float,(u)int,bool,vec234) There is also a builder for the uniform arguments which are passed around as immutable GBytes in the built form. A GskGLShaderNode is a render node that renders a GskGLShader inside a specified rectangular bounds. It renders its child nodes as textures and passes those as texture arguments to the shader. You also pass it a uniform arguments object.
20 lines
402 B
C
20 lines
402 B
C
#ifndef __GSK_GLSHADER_PRIVATE_H__
|
|
#define __GSK_GLSHADER_PRIVATE_H__
|
|
|
|
#include <gsk/gskglshader.h>
|
|
|
|
G_BEGIN_DECLS
|
|
|
|
typedef struct {
|
|
char *name;
|
|
GskGLUniformType type;
|
|
gsize offset;
|
|
} GskGLUniform;
|
|
|
|
const GskGLUniform *gsk_gl_shader_get_uniforms (GskGLShader *shader,
|
|
int *n_uniforms);
|
|
|
|
G_END_DECLS
|
|
|
|
#endif /* __GSK_GLSHADER_PRIVATE_H__ */
|