Help with GLUTesselator

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?

Have you tried glDisable(GL_CULL_FACE) ?

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.

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.