mirror of
https://gitlab.gnome.org/GNOME/gtk.git
synced 2024-12-25 21:21:21 +00:00
9defc7fc64
This allows the gskglprograms.defs a bit more control over how a shader will get generated and if it needs to combine sources. Currently, none of the built-in shaders do that, but upcoming shaders which come from external libraries will need the ability to inject additional sources in-between layers.
85 lines
4.9 KiB
Plaintext
85 lines
4.9 KiB
Plaintext
GSK_GL_DEFINE_PROGRAM (blend,
|
|
GSK_GL_SHADER_SINGLE (GSK_GL_SHADER_RESOURCE ("blend.glsl")),
|
|
GSK_GL_ADD_UNIFORM (1, BLEND_SOURCE2, u_source2)
|
|
GSK_GL_ADD_UNIFORM (2, BLEND_MODE, u_mode))
|
|
|
|
GSK_GL_DEFINE_PROGRAM (blit,
|
|
GSK_GL_SHADER_SINGLE (GSK_GL_SHADER_RESOURCE ("blit.glsl")),
|
|
GSK_GL_NO_UNIFORMS)
|
|
|
|
GSK_GL_DEFINE_PROGRAM (blur,
|
|
GSK_GL_SHADER_SINGLE (GSK_GL_SHADER_RESOURCE ("blur.glsl")),
|
|
GSK_GL_ADD_UNIFORM (1, BLUR_RADIUS, u_blur_radius)
|
|
GSK_GL_ADD_UNIFORM (2, BLUR_SIZE, u_blur_size)
|
|
GSK_GL_ADD_UNIFORM (3, BLUR_DIR, u_blur_dir))
|
|
|
|
GSK_GL_DEFINE_PROGRAM (border,
|
|
GSK_GL_SHADER_SINGLE (GSK_GL_SHADER_RESOURCE ("border.glsl")),
|
|
GSK_GL_ADD_UNIFORM (1, BORDER_WIDTHS, u_widths)
|
|
GSK_GL_ADD_UNIFORM (2, BORDER_OUTLINE_RECT, u_outline_rect))
|
|
|
|
GSK_GL_DEFINE_PROGRAM (color,
|
|
GSK_GL_SHADER_SINGLE (GSK_GL_SHADER_RESOURCE ("color.glsl")),
|
|
GSK_GL_NO_UNIFORMS)
|
|
|
|
GSK_GL_DEFINE_PROGRAM (coloring,
|
|
GSK_GL_SHADER_SINGLE (GSK_GL_SHADER_RESOURCE ("coloring.glsl")),
|
|
GSK_GL_NO_UNIFORMS)
|
|
|
|
GSK_GL_DEFINE_PROGRAM (color_matrix,
|
|
GSK_GL_SHADER_SINGLE (GSK_GL_SHADER_RESOURCE ("color_matrix.glsl")),
|
|
GSK_GL_ADD_UNIFORM (1, COLOR_MATRIX_COLOR_MATRIX, u_color_matrix)
|
|
GSK_GL_ADD_UNIFORM (2, COLOR_MATRIX_COLOR_OFFSET, u_color_offset))
|
|
|
|
GSK_GL_DEFINE_PROGRAM (conic_gradient,
|
|
GSK_GL_SHADER_SINGLE (GSK_GL_SHADER_RESOURCE ("conic_gradient.glsl")),
|
|
GSK_GL_ADD_UNIFORM (1, CONIC_GRADIENT_COLOR_STOPS, u_color_stops)
|
|
GSK_GL_ADD_UNIFORM (2, CONIC_GRADIENT_NUM_COLOR_STOPS, u_num_color_stops)
|
|
GSK_GL_ADD_UNIFORM (3, CONIC_GRADIENT_GEOMETRY, u_geometry))
|
|
|
|
GSK_GL_DEFINE_PROGRAM (cross_fade,
|
|
GSK_GL_SHADER_SINGLE (GSK_GL_SHADER_RESOURCE ("cross_fade.glsl")),
|
|
GSK_GL_ADD_UNIFORM (1, CROSS_FADE_PROGRESS, u_progress)
|
|
GSK_GL_ADD_UNIFORM (2, CROSS_FADE_SOURCE2, u_source2))
|
|
|
|
GSK_GL_DEFINE_PROGRAM (filled_border,
|
|
GSK_GL_SHADER_SINGLE (GSK_GL_SHADER_RESOURCE ("filled_border.glsl")),
|
|
GSK_GL_ADD_UNIFORM (1, FILLED_BORDER_WIDTHS, u_widths)
|
|
GSK_GL_ADD_UNIFORM (2, FILLED_BORDER_OUTLINE_RECT, u_outline_rect))
|
|
|
|
GSK_GL_DEFINE_PROGRAM (inset_shadow,
|
|
GSK_GL_SHADER_SINGLE (GSK_GL_SHADER_RESOURCE ("inset_shadow.glsl")),
|
|
GSK_GL_ADD_UNIFORM (1, INSET_SHADOW_SPREAD, u_spread)
|
|
GSK_GL_ADD_UNIFORM (2, INSET_SHADOW_OFFSET, u_offset)
|
|
GSK_GL_ADD_UNIFORM (3, INSET_SHADOW_OUTLINE_RECT, u_outline_rect))
|
|
|
|
GSK_GL_DEFINE_PROGRAM (linear_gradient,
|
|
GSK_GL_SHADER_SINGLE (GSK_GL_SHADER_RESOURCE ("linear_gradient.glsl")),
|
|
GSK_GL_ADD_UNIFORM (1, LINEAR_GRADIENT_COLOR_STOPS, u_color_stops)
|
|
GSK_GL_ADD_UNIFORM (2, LINEAR_GRADIENT_NUM_COLOR_STOPS, u_num_color_stops)
|
|
GSK_GL_ADD_UNIFORM (3, LINEAR_GRADIENT_POINTS, u_points)
|
|
GSK_GL_ADD_UNIFORM (4, LINEAR_GRADIENT_REPEAT, u_repeat))
|
|
|
|
GSK_GL_DEFINE_PROGRAM (outset_shadow,
|
|
GSK_GL_SHADER_SINGLE (GSK_GL_SHADER_RESOURCE ("outset_shadow.glsl")),
|
|
GSK_GL_ADD_UNIFORM (1, OUTSET_SHADOW_OUTLINE_RECT, u_outline_rect))
|
|
|
|
GSK_GL_DEFINE_PROGRAM (radial_gradient,
|
|
GSK_GL_SHADER_SINGLE (GSK_GL_SHADER_RESOURCE ("radial_gradient.glsl")),
|
|
GSK_GL_ADD_UNIFORM (1, RADIAL_GRADIENT_COLOR_STOPS, u_color_stops)
|
|
GSK_GL_ADD_UNIFORM (2, RADIAL_GRADIENT_NUM_COLOR_STOPS, u_num_color_stops)
|
|
GSK_GL_ADD_UNIFORM (3, RADIAL_GRADIENT_REPEAT, u_repeat)
|
|
GSK_GL_ADD_UNIFORM (4, RADIAL_GRADIENT_RANGE, u_range)
|
|
GSK_GL_ADD_UNIFORM (5, RADIAL_GRADIENT_GEOMETRY, u_geometry))
|
|
|
|
GSK_GL_DEFINE_PROGRAM (repeat,
|
|
GSK_GL_SHADER_SINGLE (GSK_GL_SHADER_RESOURCE ("repeat.glsl")),
|
|
GSK_GL_ADD_UNIFORM (1, REPEAT_CHILD_BOUNDS, u_child_bounds)
|
|
GSK_GL_ADD_UNIFORM (2, REPEAT_TEXTURE_RECT, u_texture_rect))
|
|
|
|
GSK_GL_DEFINE_PROGRAM (unblurred_outset_shadow,
|
|
GSK_GL_SHADER_SINGLE (GSK_GL_SHADER_RESOURCE ("unblurred_outset_shadow.glsl")),
|
|
GSK_GL_ADD_UNIFORM (1, UNBLURRED_OUTSET_SHADOW_SPREAD, u_spread)
|
|
GSK_GL_ADD_UNIFORM (2, UNBLURRED_OUTSET_SHADOW_OFFSET, u_offset)
|
|
GSK_GL_ADD_UNIFORM (3, UNBLURRED_OUTSET_SHADOW_OUTLINE_RECT, u_outline_rect))
|