I figured it out I think. The problem was that the example used in the gem examples was clearing the
color buffer and the depth buffer so no other object could exist. What I did was define the colormask
to 0
for stencil and 1 for not stencil that way the color and depth buffer did not have to be cleared. I know
nothing of opengl but I read this at an opengl gaming website and it worked. I have attached the
example.
Thanks,
Alain
fixed.
--------------------------------------------------------------
#N canvas 395 339 684 531 10;
#N canvas 0 22 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 198 112 destroy;
#X msg 132 112 create \, 1;
#X connect 2 0 3 0;
#X connect 3 0 4 0;
#X connect 3 0 7 0;
#X connect 3 1 5 0;
#X connect 3 1 6 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 23 42 pd gemwin;
#X msg 23 23 create;
#X obj 342 195 circle 0.5;
#X obj 342 272 square 1;
#X obj 342 100 translateXYZ;
#X floatatom 434 54 5 0 0 0 - - -;
#X obj 417 76 * 0.1;
#X obj 342 130 colorRGB 1 0 0;
#N canvas 503 119 569 725 GLbuffer 0;
#X obj 44 192 GEMglEnable;
#X floatatom 130 194 5 0 0 0 - - -;
#X obj 116 135 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X obj 159 146 loadbang;
#X obj 171 223 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X floatatom 124 269 5 0 0 0 - - -;
#X obj 109 221 loadbang;
#X obj 44 111 GEMglClearStencil 0;
#X obj 44 269 GEMglClear;
#X obj 44 368 GEMglStencilFunc;
#X msg 151 342 1;
#X obj 82 294 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X obj 128 300 loadbang;
#X floatatom 105 342 5 0 0 0 - - -;
#X obj 44 441 GEMglStencilOp;
#X floatatom 154 444 5 0 0 0 - - -;
#X obj 75 348 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X obj 100 392 loadbang;
#X text 38 16 allow \, clear and configure stencil buffer;
#X obj 44 63 inlet;
#X obj 44 548 outlet;
#X obj 348 63 inlet;
#X obj 348 120 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X obj 348 208 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X obj 348 279 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X obj 348 333 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X text 96 64 gemhead;
#X text 298 62 reset;
#X obj 79 321 GLdefine GL_ALWAYS;
#X obj 76 414 GLdefine GL_REPLACE;
#X obj 110 244 GLdefine GL_STENCIL_BUFFER_BIT;
#X obj 117 168 GLdefine GL_STENCIL_TEST;
#X obj 44 518 GEMglColorMask;
#X msg 107 486 0;
#X obj 107 464 loadbang;
#X text 163 494 disable colormask;
#X obj 348 471 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X connect 0 0 8 0;
#X connect 2 0 31 0;
#X connect 3 0 31 0;
#X connect 4 0 30 0;
#X connect 6 0 30 0;
#X connect 7 0 0 0;
#X connect 8 0 9 0;
#X connect 9 0 14 0;
#X connect 10 0 9 3;
#X connect 10 0 9 2;
#X connect 11 0 10 0;
#X connect 11 0 28 0;
#X connect 12 0 10 0;
#X connect 12 0 28 0;
#X connect 14 0 32 0;
#X connect 16 0 29 0;
#X connect 17 0 16 0;
#X connect 19 0 7 0;
#X connect 21 0 22 0;
#X connect 22 0 2 0;
#X connect 22 0 23 0;
#X connect 23 0 4 0;
#X connect 23 0 24 0;
#X connect 24 0 11 0;
#X connect 24 0 25 0;
#X connect 25 0 16 0;
#X connect 25 0 36 0;
#X connect 28 0 9 1;
#X connect 28 0 13 0;
#X connect 29 0 15 0;
#X connect 29 0 14 1;
#X connect 29 0 14 2;
#X connect 29 0 14 3;
#X connect 30 0 5 0;
#X connect 30 0 8 1;
#X connect 31 0 1 0;
#X connect 31 0 0 1;
#X connect 32 0 20 0;
#X connect 33 0 32 1;
#X connect 33 0 32 2;
#X connect 33 0 32 3;
#X connect 33 0 32 4;
#X connect 34 0 33 0;
#X connect 36 0 33 0;
#X restore 140 168 pd GLbuffer;
#X obj 140 201 circle 0.5;
#N canvas 389 219 539 610 GLaround 0;
#X obj 259 127 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X obj 91 110 loadbang;
#X obj 68 40 inlet;
#X obj 68 330 GEMglStencilFunc;
#X msg 175 306 1;
#X obj 103 263 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X obj 160 266 loadbang;
#X floatatom 113 307 5 0 0 0 - - -;
#X obj 68 408 GEMglStencilOp;
#X floatatom 179 407 5 0 0 0 - - -;
#X obj 99 353 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X obj 139 356 loadbang;
#X text 124 229 draw where the stencil buffer is not 1;
#X obj 68 496 outlet;
#X obj 404 42 inlet;
#X obj 404 112 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X obj 404 248 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X obj 404 338 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X text 121 40 gemhead;
#X text 356 41 reset;
#X obj 103 284 GLdefine GL_NOTEQUAL;
#X obj 99 374 GLdefine GL_KEEP;
#X obj 68 174 GEMglColorMask;
#X msg 128 142 1;
#X text 130 88 enable colormask;
#X connect 0 0 23 0;
#X connect 1 0 23 0;
#X connect 2 0 22 0;
#X connect 3 0 8 0;
#X connect 4 0 3 3;
#X connect 4 0 3 2;
#X connect 5 0 20 0;
#X connect 6 0 4 0;
#X connect 6 0 20 0;
#X connect 8 0 13 0;
#X connect 10 0 21 0;
#X connect 11 0 10 0;
#X connect 14 0 15 0;
#X connect 15 0 0 0;
#X connect 15 0 16 0;
#X connect 16 0 5 0;
#X connect 16 0 17 0;
#X connect 17 0 10 0;
#X connect 20 0 3 1;
#X connect 20 0 7 0;
#X connect 21 0 9 0;
#X connect 21 0 8 1;
#X connect 21 0 8 2;
#X connect 21 0 8 3;
#X connect 22 0 3 0;
#X connect 23 0 22 1;
#X connect 23 0 22 2;
#X connect 23 0 22 3;
#X connect 23 0 22 4;
#X restore 140 241 pd GLaround;
#X obj 140 278 square 1;
#X obj 140 82 translateXYZ;
#X floatatom 232 36 5 0 0 0 - - -;
#X obj 215 58 * 0.1;
#N canvas 0 22 478 328 GLinside 0;
#X obj 21 171 GEMglStencilFunc;
#X obj 56 106 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X floatatom 67 150 5 0 0 0 - - -;
#X obj 56 127 GLdefine GL_EQUAL;
#X text 30 14 draw where the stencil buffer is 1;
#X obj 21 38 inlet;
#X obj 21 226 outlet;
#X obj 152 38 inlet;
#X text 69 39 gemhead;
#X text 199 38 reset;
#X obj 146 90 loadbang;
#X connect 0 0 6 0;
#X connect 1 0 3 0;
#X connect 3 0 0 1;
#X connect 3 0 2 0;
#X connect 5 0 0 0;
#X connect 7 0 1 0;
#X connect 10 0 1 0;
#X restore 140 318 pd GLinside;
#N canvas 407 215 470 320 GLend 0;
#X floatatom 115 175 5 0 0 0 - - -;
#X obj 97 109 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X obj 97 150 GLdefine GL_STENCIL_TEST;
#X obj 115 125 loadbang;
#X obj 18 175 GEMglDisable;
#X obj 18 16 inlet;
#X obj 97 16 inlet;
#X obj 18 237 outlet;
#X connect 1 0 2 0;
#X connect 2 0 0 0;
#X connect 2 0 4 1;
#X connect 3 0 2 0;
#X connect 4 0 7 0;
#X connect 5 0 4 0;
#X connect 6 0 1 0;
#X restore 342 358 pd GLend;
#N canvas 503 119 569 725 GLbuffer 0;
#X obj 44 192 GEMglEnable;
#X floatatom 130 194 5 0 0 0 - - -;
#X obj 116 135 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X obj 159 146 loadbang;
#X obj 171 223 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X floatatom 124 269 5 0 0 0 - - -;
#X obj 109 221 loadbang;
#X obj 44 111 GEMglClearStencil 0;
#X obj 44 269 GEMglClear;
#X obj 44 368 GEMglStencilFunc;
#X msg 151 342 1;
#X obj 82 294 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X obj 128 300 loadbang;
#X floatatom 105 342 5 0 0 0 - - -;
#X obj 44 441 GEMglStencilOp;
#X floatatom 154 444 5 0 0 0 - - -;
#X obj 75 348 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X obj 100 392 loadbang;
#X text 38 16 allow \, clear and configure stencil buffer;
#X obj 44 63 inlet;
#X obj 44 548 outlet;
#X obj 348 63 inlet;
#X obj 348 120 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X obj 348 208 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X obj 348 279 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X obj 348 333 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X text 96 64 gemhead;
#X text 298 62 reset;
#X obj 79 321 GLdefine GL_ALWAYS;
#X obj 76 414 GLdefine GL_REPLACE;
#X obj 110 244 GLdefine GL_STENCIL_BUFFER_BIT;
#X obj 117 168 GLdefine GL_STENCIL_TEST;
#X obj 44 518 GEMglColorMask;
#X msg 107 486 0;
#X obj 107 464 loadbang;
#X text 163 494 disable colormask;
#X obj 348 471 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X connect 0 0 8 0;
#X connect 2 0 31 0;
#X connect 3 0 31 0;
#X connect 4 0 30 0;
#X connect 6 0 30 0;
#X connect 7 0 0 0;
#X connect 8 0 9 0;
#X connect 9 0 14 0;
#X connect 10 0 9 3;
#X connect 10 0 9 2;
#X connect 11 0 10 0;
#X connect 11 0 28 0;
#X connect 12 0 10 0;
#X connect 12 0 28 0;
#X connect 14 0 32 0;
#X connect 16 0 29 0;
#X connect 17 0 16 0;
#X connect 19 0 7 0;
#X connect 21 0 22 0;
#X connect 22 0 2 0;
#X connect 22 0 23 0;
#X connect 23 0 4 0;
#X connect 23 0 24 0;
#X connect 24 0 11 0;
#X connect 24 0 25 0;
#X connect 25 0 16 0;
#X connect 25 0 36 0;
#X connect 28 0 9 1;
#X connect 28 0 13 0;
#X connect 29 0 15 0;
#X connect 29 0 14 1;
#X connect 29 0 14 2;
#X connect 29 0 14 3;
#X connect 30 0 5 0;
#X connect 30 0 8 1;
#X connect 31 0 1 0;
#X connect 31 0 0 1;
#X connect 32 0 20 0;
#X connect 33 0 32 1;
#X connect 33 0 32 2;
#X connect 33 0 32 3;
#X connect 33 0 32 4;
#X connect 34 0 33 0;
#X connect 36 0 33 0;
#X restore 342 163 pd GLbuffer;
#N canvas 389 219 539 610 GLaround 0;
#X obj 259 127 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X obj 91 110 loadbang;
#X obj 68 40 inlet;
#X obj 68 330 GEMglStencilFunc;
#X msg 175 306 1;
#X obj 103 263 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X obj 160 266 loadbang;
#X floatatom 113 307 5 0 0 0 - - -;
#X obj 68 408 GEMglStencilOp;
#X floatatom 179 407 5 0 0 0 - - -;
#X obj 99 353 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X obj 139 356 loadbang;
#X text 124 229 draw where the stencil buffer is not 1;
#X obj 68 496 outlet;
#X obj 404 42 inlet;
#X obj 404 112 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X obj 404 248 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X obj 404 338 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X text 121 40 gemhead;
#X text 356 41 reset;
#X obj 103 284 GLdefine GL_NOTEQUAL;
#X obj 99 374 GLdefine GL_KEEP;
#X obj 68 174 GEMglColorMask;
#X msg 128 142 1;
#X text 130 88 enable colormask;
#X connect 0 0 23 0;
#X connect 1 0 23 0;
#X connect 2 0 22 0;
#X connect 3 0 8 0;
#X connect 4 0 3 3;
#X connect 4 0 3 2;
#X connect 5 0 20 0;
#X connect 6 0 4 0;
#X connect 6 0 20 0;
#X connect 8 0 13 0;
#X connect 10 0 21 0;
#X connect 11 0 10 0;
#X connect 14 0 15 0;
#X connect 15 0 0 0;
#X connect 15 0 16 0;
#X connect 16 0 5 0;
#X connect 16 0 17 0;
#X connect 17 0 10 0;
#X connect 20 0 3 1;
#X connect 20 0 7 0;
#X connect 21 0 9 0;
#X connect 21 0 8 1;
#X connect 21 0 8 2;
#X connect 21 0 8 3;
#X connect 22 0 3 0;
#X connect 23 0 22 1;
#X connect 23 0 22 2;
#X connect 23 0 22 3;
#X connect 23 0 22 4;
#X restore 342 235 pd GLaround;
#X obj 140 47 gemhead;
#X obj 342 65 gemhead;
#N canvas 0 22 474 324 GLinside 0;
#X obj 21 171 GEMglStencilFunc;
#X obj 56 106 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X floatatom 67 150 5 0 0 0 - - -;
#X obj 56 127 GLdefine GL_EQUAL;
#X text 30 14 draw where the stencil buffer is 1;
#X obj 21 38 inlet;
#X obj 21 226 outlet;
#X obj 152 38 inlet;
#X text 69 39 gemhead;
#X text 199 38 reset;
#X obj 146 90 loadbang;
#X connect 0 0 6 0;
#X connect 1 0 3 0;
#X connect 3 0 0 1;
#X connect 3 0 2 0;
#X connect 5 0 0 0;
#X connect 7 0 1 0;
#X connect 10 0 1 0;
#X restore 342 311 pd GLinside;
#X obj 140 112 colorRGB 0 1 0;
#N canvas 407 215 466 316 GLend 0;
#X floatatom 115 175 5 0 0 0 - - -;
#X obj 97 109 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X obj 97 150 GLdefine GL_STENCIL_TEST;
#X obj 115 125 loadbang;
#X obj 18 175 GEMglDisable;
#X obj 18 16 inlet;
#X obj 97 16 inlet;
#X obj 18 237 outlet;
#X connect 1 0 2 0;
#X connect 2 0 0 0;
#X connect 2 0 4 1;
#X connect 3 0 2 0;
#X connect 4 0 7 0;
#X connect 5 0 4 0;
#X connect 6 0 1 0;
#X restore 140 355 pd GLend;
#X connect 0 0 1 0;
#X connect 1 0 0 0;
#X connect 2 0 18 0;
#X connect 3 0 21 0;
#X connect 4 0 7 0;
#X connect 5 0 6 0;
#X connect 6 0 4 1;
#X connect 7 0 17 0;
#X connect 8 0 9 0;
#X connect 9 0 10 0;
#X connect 10 0 11 0;
#X connect 11 0 15 0;
#X connect 12 0 22 0;
#X connect 13 0 14 0;
#X connect 14 0 12 1;
#X connect 15 0 23 0;
#X connect 17 0 2 0;
#X connect 18 0 3 0;
#X connect 19 0 12 0;
#X connect 20 0 4 0;
#X connect 21 0 16 0;
#X connect 22 0 8 0;