Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!sun-barr!olivea!decwrl!sgi!shinobu!odin!home.asd.sgi.com!rad From: rad@home.asd.sgi.com (Bob Drebin) Newsgroups: comp.sys.sgi Subject: Re: SGI VGX Texturing Message-ID: <1991Feb28.172915.13853@odin.corp.sgi.com> Date: 28 Feb 91 17:29:15 GMT References: <9102271951.AA20115@taurus.cs.nps.navy.mil> Sender: news@odin.corp.sgi.com (Net News) Reply-To: rad@home.asd.sgi.com (Bob Drebin) Organization: sgi Lines: 41 You have to be careful when using scrsubdivide(). As noted in the man page: When the screen size of subdivided polygons is limited, either by minsize or by maxsize, adjacent polygons can subdivide differently such that newly created vertices on their shared boundary do not coincide. In this case, some pixels at their shared boundary may not be scan converted by either polygon. I can suggest two solutions: 1) Only use maxz to control subdivision. Disable minsize and maxsize by setting them to zero. This will prevent T-verticies from being generated, which cause the pixel dropouts. 2) Use anti-aliased lines. Draw your scene using your current scrsubdivide parameters, then redraw the outlines of troublesome polygons using anti-aliased lines. For example: /* draw the scene */ zbuffer(TRUE); blendfunction(BF_ONE,BF_ZERO); scrsubdivide(SS_ON,myparms); draw_terrain(); scrsubdivide(SS_OFF,myparms); draw_nontextured_stuff(); /* redraw outlines of textured polys */ blendfunction(BF_SA,BF_MSA); polymode(PYM_LINE); linesmooth(SML_ON); scrsubdivide(SS_ON,myparms); draw_terrain(); Hope this helps. Bob Drebin, SGI P.S.: The function polysmooth does not work with textured polygons. This is noted in its man page.