.\" Automatically generated by Pandoc 3.1.12.1 .\" .TH "ALLEGRO_SHADER_TYPE" "3" "" "Allegro reference manual" "" .SH NAME ALLEGRO_SHADER_TYPE \- Allegro 5 API .SH SYNOPSIS .IP .EX #include \f[B]\f[R] \f[B]typedef\f[R] \f[B]enum\f[R] ALLEGRO_SHADER_TYPE ALLEGRO_SHADER_TYPE; .EE .SH DESCRIPTION Used with al_attach_shader_source(3) and al_attach_shader_source_file(3) to specify how to interpret the attached source. .TP ALLEGRO_VERTEX_SHADER A vertex shader is executed for each vertex it is used with. The program will output exactly one vertex at a time. .RS .PP When Allegro\[cq]s graphics are being used then in addition to all vertices of primitives from the primitives addon, each drawn bitmap also consists of four vertices. .RE .TP ALLEGRO_PIXEL_SHADER A pixel shader is executed for each pixel it is used with. The program will output exactly one pixel at a time \- either in the backbuffer or in the current target bitmap. .RS .PP With Allegro\[cq]s builtin graphics this means the shader is for example called for each destination pixel of the output of an al_draw_bitmap(3) call. .PP A more accurate term for pixel shader would be fragment shader since one final pixel in the target bitmap is not necessarily composed of only a single output but of multiple fragments (for example when multi\-sampling is being used). .RE .SH SINCE 5.1.0