To LUGNET HomepageTo LUGNET News HomepageTo LUGNET Guide Homepage
 Help on Searching
 
Post new message to lugnet.cadOpen lugnet.cad in your NNTP NewsreaderTo LUGNET News Traffic PageSign In (Members)
 CAD / 17132
     
   
Subject: 
Re: LDForge - dev. plans and call for help
Newsgroups: 
lugnet.cad
Date: 
Wed, 31 Mar 2010 21:53:37 GMT
Viewed: 
21119 times
  

In lugnet.cad, Travis Cobbs wrote:
   In lugnet.cad, Santeri Piippo wrote:
  
Polygon sorting - help needed

I need a little bit help, however. The polygon sorting algorithm I have right now does not work properly. Currently it’s done by calculating the center of the polygon by simply calculating the means of the coordinates.

How do existing programs - LDView in particular as it’s an OpenGL one too - sort polygons? I’d appreciate help tremendously here..

The only polygons that LDView sorts are transparent ones. Everything else is handled by the OpenGL depth buffer (glEnable(GL_DEPTH_TEST), followed by glDepthFunc(GL_LEQUAL)). Transparent polygons need to be sorted before being drawn, and LDView does what you describe above for those. (There’s more to it than that for transparent polygons; sorting is just one step.)

Sorting by the distance to the centroid is only an approximation, but it’s good enough to look pretty good for transparent polygons. It’s not good enough to be used as the primary means of hiding geometry that’s farther away from the viewer.

If you prefer not to sort at all you can use glEnable(GL_POLYGON_STIPPLE) for transparent polygons. It doesn’t look nearly as good, but it’s really easy to code.

Have fun,

Don

   
         
   
Subject: 
Re: LDForge - dev. plans and call for help
Newsgroups: 
lugnet.cad, lugnet.cad.dev
Followup-To: 
lugnet.cad.dev
Date: 
Thu, 1 Apr 2010 12:38:42 GMT
Viewed: 
31762 times
  

In lugnet.cad, Don Heyse wrote:
   If you prefer not to sort at all you can use glEnable(GL_POLYGON_STIPPLE) for transparent polygons. It doesn’t look nearly as good, but it’s really easy to code.

Have fun,

Don

If you want a visual example on stipple, look at my LD4DStudio, it uses it for transparent stuff.

In combination with depth buffer you don’t need to sort anything just push the triangles and/or quad cords using glDrawElements and optionally ‘vbo’.

vbo means the driver will try to put all vertex data in video memory for rendering, this is about four times faster on most cards.

I’ll try to (re)find the tutorials/website I used to get started with LD4DStudio and post them tonight. But most stuff you can find by doing a search on glDrawElements and vbo (vertex buffer object)

ps: i suggest moving this to dev

Roland

 

©2005 LUGNET. All rights reserved. - hosted by steinbruch.info GbR