#N canvas 35 199 631 458 10;
#X declare -lib Gem;
#X text 452 8 GEM object;
#X obj 8 335 cnv 15 430 80 empty empty empty 20 12 0 14 -233017 -66577
0;
#X text 11 336 Inlets:;
#X text 10 386 Outlets:;
#X obj 8 296 cnv 15 430 30 empty empty empty 20 12 0 14 -195568 -66577
0;
#X text 17 295 Arguments:;
#X obj 7 76 cnv 15 430 210 empty empty empty 20 12 0 14 -233017 -66577
0;
#X obj 449 77 cnv 15 170 250 empty empty empty 20 12 0 14 -228992 -66577
0;
#X text 453 60 Example:;
#X obj 474 334 cnv 15 100 60 empty empty empty 20 12 0 14 -195568 -66577
0;
#N canvas 0 0 450 300 gemwin 0;
#X obj 132 136 gemwin;
#X obj 67 89 outlet;
#X obj 67 10 inlet;
#X obj 67 41 route create;
#X msg 67 70 set destroy;
#X msg 142 68 set create;
#X msg 132 112 create \, 1;
#X msg 198 112 destroy;
#X connect 2 0 3 0;
#X connect 3 0 4 0;
#X connect 3 0 6 0;
#X connect 3 1 5 0;
#X connect 3 1 7 0;
#X connect 4 0 1 0;
#X connect 5 0 1 0;
#X connect 6 0 0 0;
#X connect 7 0 0 0;
#X restore 479 373 pd gemwin;
#X msg 479 354 create;
#X text 475 333 Create window:;
#X obj 450 158 cnv 15 160 70 empty empty empty 20 12 0 14 -24198 -66577
0;
#X obj 451 84 gemhead;
#X obj 510 85 bng 15 250 50 0 empty empty pix_load 20 8 0 8 -262144
-1 -1;
#N canvas 0 0 587 366 image 0;
#X obj 77 48 inlet;
#X obj 77 344 outlet;
#X obj 77 205 pix_image examples/data/fractal.JPG;
#X obj 223 55 inlet;
#X msg 223 123 open \$1;
#X obj 223 100 openpanel;
#X connect 0 0 2 0;
#X connect 2 0 1 0;
#X connect 3 0 5 0;
#X connect 4 0 2 0;
#X connect 5 0 4 0;
#X restore 451 113 pd image;
#X text 63 306 <none>;
#X text 28 399 Outlet 1: gemlist;
#X text 35 350 Inlet 1: gemlist;
#X text 516 105 open an image;
#X text 509 118 (JPEG \, TIFF \, ..);
#X obj 451 136 pix_texture;
#X obj 10 211 cnv 15 420 70 empty empty empty 20 12 0 14 -225280 -66577
0;
#X text 50 12 Synopsis: [vertex_program];
#X text 71 31 Class: shader object;
#X text 13 76 Description: set the ARB vertex shader;
#X text 24 95 [vertex_program] loads and applies an ARB (or NV) vertex
shader.;
#X obj 520 164 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#N canvas 0 0 450 300 open 0;
#X obj 75 103 openpanel;
#X obj 75 173 outlet;
#X obj 75 127 t b s;
#X msg 105 152 set open \$1;
#X obj 75 80 inlet;
#X connect 0 0 2 0;
#X connect 2 0 1 0;
#X connect 2 1 3 0;
#X connect 3 0 1 0;
#X connect 4 0 0 0;
#X restore 463 163 pd open;
#X msg 463 183 open examples/data/toon.vp;
#X obj 450 252 cnv 15 160 30 empty empty empty 20 12 0 14 -102041 -66577
0;
#N canvas 0 0 752 303 parameter 0;
#X obj 81 44 inlet;
#X obj 81 270 outlet;
#X obj 241 47 nbx 5 14 -1e+37 1e+37 0 0 empty empty empty 0 -6 0 10
-262144 -1 -1 0 256;
#X obj 288 64 nbx 5 14 -1e+37 1e+37 0 0 empty empty empty 0 -6 0 10
-262144 -1 -1 35 256;
#X obj 328 82 nbx 5 14 -1e+37 1e+37 0 0 empty empty empty 0 -6 0 10
-262144 -1 -1 1 256;
#X obj 288 101 t b f;
#X obj 328 101 t b f;
#X obj 149 230 nbx 5 14 -1e+37 1e+37 0 0 empty empty empty 0 -6 0 10
-262144 -1 -1 34336 256;
#X obj 217 162 nbx 5 14 -1e+37 1e+37 0 0 empty empty parameter# 0 -6
0 10 -262144 -1 -1 0 256;
#X obj 81 248 GEMglProgramEnvParameter4fvARB;
#X obj 88 175 loadbang;
#X obj 88 207 GLdefine GL_VERTEX_PROGRAM_ARB;
#X text 99 191 GL_VERTEX_PROGRAM_ARB = 34336;
#N canvas 0 0 450 300 defaults 0;
#X obj 112 43 loadbang;
#X msg 161 122 0 35 1;
#X msg 102 121 0;
#X obj 102 186 outlet;
#X obj 102 84 t b b;
#X obj 164 156 unpack 0 0 0;
#X obj 168 188 outlet;
#X obj 217 189 outlet;
#X obj 263 189 outlet;
#X text 101 208 param#;
#X text 205 216 param-values;
#X obj 179 44 inlet;
#X connect 0 0 4 0;
#X connect 1 0 5 0;
#X connect 2 0 3 0;
#X connect 4 0 2 0;
#X connect 4 1 1 0;
#X connect 5 0 6 0;
#X connect 5 1 7 0;
#X connect 5 2 8 0;
#X connect 11 0 4 0;
#X restore 217 25 pd defaults;
#X msg 217 8 default;
#X obj 286 121 pack 0 35 1 0;
#X text 301 250 "glProgramEnvParameter" to work on "GL_VERTEX_PROGRAM_ARB"
;
#X text 301 158 which parameter we want to modify;
#X text 398 122 the values for the parameter;
#X connect 0 0 9 0;
#X connect 2 0 15 0;
#X connect 3 0 5 0;
#X connect 4 0 6 0;
#X connect 5 0 15 0;
#X connect 5 1 15 1;
#X connect 6 0 15 0;
#X connect 6 1 15 2;
#X connect 7 0 9 1;
#X connect 8 0 9 2;
#X connect 9 0 1 0;
#X connect 10 0 11 0;
#X connect 11 0 7 0;
#X connect 13 0 8 0;
#X connect 13 1 2 0;
#X connect 13 2 3 0;
#X connect 13 3 4 0;
#X connect 14 0 13 0;
#X connect 15 0 9 3;
#X restore 451 256 pd parameter;
#X text 11 123 If you want to modify the parameters of the shader-program
\, you have to set the modification up yourself \, via [GEMglProgramEnvParameter*]
working on GL_VERTEX_PROGRAM_ARB.;
#X text 14 219 IMPORTANT NOTE: your openGL-implementation (gfx-card
driver \, ...) has to support either (or both) the ARB shader extensions
or the NV shader extensions in order to make use of this object.;
#X text 10 176 Of course \, you also have to supply anything else needed
for the shader to work (like textures \, ...);
#X text 35 362 Inlet 1: message: open <filename> : vertex shader program
to load;
#X obj 451 296 teapot;
#X obj 453 422 fragment_program;
#X text 451 405 see also:;
#X obj 451 206 vertex_program toon.vp;
#X obj 518 8 declare -lib Gem;
#X connect 10 0 11 0;
#X connect 11 0 10 0;
#X connect 14 0 16 0;
#X connect 15 0 16 1;
#X connect 16 0 22 0;
#X connect 22 0 40 0;
#X connect 28 0 29 0;
#X connect 29 0 30 0;
#X connect 30 0 40 0;
#X connect 32 0 37 0;
#X connect 40 0 32 0;
