! Programs
: (gl-program) ( shaders quot: ( gl-program -- ) -- program )
- glCreateProgram
+ glCreateProgram
[
[ swap [ glAttachShader ] with each ]
[ swap call ] bi-curry bi*
: <gl-program> ( shaders -- program )
[ drop ] (gl-program) ;
-
+
: (gl-program?) ( object -- ? )
dup integer? [ glIsProgram c-bool> ] [ drop f ] if ;
[ <vertex-shader> check-gl-shader ]
[ <fragment-shader> check-gl-shader ] bi*
2array <gl-program> check-gl-program ;
-