PDA

View Full Version : Help with GLUTesselator



raghoo
08-04-2006, 08:36 AM
Hi all,
I'm trying to render a self intersecting contour in the form of 8, and as opengl cannot render concave or complex polygons efficiently by itself, i'm using GLUTesselator to tesselate the polygons first. But, the tesselator seems to fail whenever it encounters a self intersection and hence only part of the contour is rendered. am I missing something? Is the GLUTesselator able to handle complex geometry objects having self-intersecting property?

k_szczech
08-04-2006, 09:23 AM
Have you tried glDisable(GL_CULL_FACE) ?

songho
08-04-2006, 10:51 PM
When GLU tessellator creates new intersect vertex data and calls your combine callback function, you must copy it into your application. Because tessellator does not hold the vertex data.

Also, try to use other winding rules for a self-intersecting polygon. Usually, GLU_TESS_WINDING_ODD works for simple concave or a polygon with hole, but, does not work for self intersecting polygon.

You may need GLU_TESS_WINDING_NONZERO or GLU_TESS_WINDING_POSITIVE for self-intersecting polygons.

raghoo
08-07-2006, 02:40 AM
thank you k_szczech and songho and sorry for my late response. i have tried out disabling culling but doesnt seem to have any improvement.
Copying the new vertex data into the application would mean I should have a global dynamic vertex array. maybe I have to try out different winding rules as songho suggested.