.\" Automatically generated by Pandoc 2.17.1.1 .\" .\" Define V font for inline verbatim, using C font in formats .\" that render this, and otherwise B font. .ie "\f[CB]x\f[]"x" \{\ . ftr V B . ftr VI BI . ftr VB B . ftr VBI BI .\} .el \{\ . ftr V CR . ftr VI CI . ftr VB CB . ftr VBI CBI .\} .TH "al_create_shader" "3alleg5" "" "Allegro reference manual" "" .hy .SH NAME .PP al_create_shader - Allegro 5 API .SH SYNOPSIS .IP .nf \f[C] #include ALLEGRO_SHADER *al_create_shader(ALLEGRO_SHADER_PLATFORM platform) \f[R] .fi .SH DESCRIPTION .PP Create a shader object. .PP The platform argument is one of the ALLEGRO_SHADER_PLATFORM(3alleg5) values, and specifies the type of shader object to create, and which language is used to program the shader. .PP The shader platform must be compatible with the type of display that you will use the shader with. For example, you cannot create and use a HLSL shader on an OpenGL display, nor a GLSL shader on a Direct3D display. .PP The ALLEGRO_SHADER_AUTO value automatically chooses the appropriate platform for the display currently targeted by the calling thread; there must be such a display. It will create a GLSL shader for an OpenGL display, and a HLSL shader for a Direct3D display. .PP Returns the shader object on success. Otherwise, returns NULL. .SH SINCE .PP 5.1.0 .SH SEE ALSO .PP al_attach_shader_source(3alleg5), al_attach_shader_source_file(3alleg5), al_build_shader(3alleg5), al_use_shader(3alleg5), al_destroy_shader(3alleg5), al_get_shader_platform(3alleg5)