<div class="gmail_quote"><div>Hi Gabor,</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">this can be done with a shader easily for example by inverting the alpha values.<br>
<br></blockquote><div><br></div><div>Cool, going to try this. Shaders are on my "to look into" list.</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">

i'm not sure how it would work with your method. i would be curious to see. other option would be to use stencil buffers, which are especially for these kind of things, but we have to implement them in fluxus first :).<br>
<br></blockquote><div><br></div><div>Well, we just do something I'm really good at; completely muck up the distance to the camera of the objects, then use transparency. Except this time we do it on purpose ;¬). I knew this "works" as I did it by accident a few times.</div>
<div><br></div><div><div>;stand clear; severe abuse ahead.</div><div><br></div><div>(clear-colour 0)</div><div>(clear)</div><div>(reset-camera)</div><div>(hint-depth-sort)</div><div>(define p (build-pixels 256 256 #t))</div>
<div><br></div><div><br></div><div><br></div><div>(with-pixels-renderer p</div><div>    (clear-colour (vector 0 0 0 0)) ;transparency</div><div><br></div><div>    (with-primitive (build-plane) ;fake background</div><div>        (translate (vector 0 0 -20))</div>
<div>        (scale 60)</div><div>        (hint-depth-sort))</div><div><br></div><div>    (with-primitive (build-polygons 3 'triangle-list) ;the hole</div><div>        (translate (vector 0 0 -21))    ;origin behind the fake background</div>
<div>        (colour (vector 0 0 0 0))</div><div>        (pdata-set! "p" 0 (vector -5 0 22))</div><div>        (pdata-set! "p" 1 (vector  5 0 22))</div><div>        (pdata-set! "p" 2 (vector  0 5 22))</div>
<div>        (hint-depth-sort)</div><div>        (recalc-normals 0)))</div><div><br></div><div><br></div><div>(with-primitive (build-cube) ;peek a boo</div><div>    (colour (vector 0 1 0))</div><div>    (translate (vector 0 0 -5)))</div>
</div><div><br></div><div><br></div><div>This won't fly for (build-cube) and the like as those have their origin in a sensible spot, but with some work you could probably turn the hole into a moving outline as well, as long as the origin stays behind the fake background and the real background is transparent. It'd just mean a whole lot of pdata-set!, or somehow moving the origin.</div>
<div><br></div><div>Yours,</div><div>Kas.</div></div>