Commit e3cb0aa3 authored by Maciej Suminski's avatar Maciej Suminski
Browse files

Tesselation error fix.

Added missing callback function (combine callback).
parent b1144a86
Loading
Loading
Loading
Loading
+17 −4
Original line number Original line Diff line number Diff line
@@ -1394,6 +1394,18 @@ void CALLBACK VertexCallback( GLvoid* aVertexPtr )
}
}




void CALLBACK CombineCallback( GLdouble coords[3],
                               GLdouble* vertex_data[4],
                               GLfloat weight[4], GLdouble** dataOut )
{
   GLdouble* vertex = new GLdouble[3];

   memcpy( vertex, coords, 3 * sizeof(GLdouble) );

   *dataOut = vertex;
}


void CALLBACK BeginCallback( GLenum aWhich )
void CALLBACK BeginCallback( GLenum aWhich )
{
{
    glBegin( aWhich );
    glBegin( aWhich );
@@ -1418,6 +1430,7 @@ void CALLBACK ErrorCallback( GLenum aErrorCode )
void InitTesselatorCallbacks( GLUtesselator* aTesselator )
void InitTesselatorCallbacks( GLUtesselator* aTesselator )
{
{
    gluTessCallback( aTesselator, GLU_TESS_VERTEX,  ( void (CALLBACK*)() )VertexCallback );
    gluTessCallback( aTesselator, GLU_TESS_VERTEX,  ( void (CALLBACK*)() )VertexCallback );
    gluTessCallback( aTesselator, GLU_TESS_COMBINE, ( void (CALLBACK*)() )CombineCallback );
    gluTessCallback( aTesselator, GLU_TESS_BEGIN,   ( void (CALLBACK*)() )BeginCallback );
    gluTessCallback( aTesselator, GLU_TESS_BEGIN,   ( void (CALLBACK*)() )BeginCallback );
    gluTessCallback( aTesselator, GLU_TESS_END,     ( void (CALLBACK*)() )EndCallback );
    gluTessCallback( aTesselator, GLU_TESS_END,     ( void (CALLBACK*)() )EndCallback );
    gluTessCallback( aTesselator, GLU_TESS_ERROR,   ( void (CALLBACK*)() )ErrorCallback );
    gluTessCallback( aTesselator, GLU_TESS_ERROR,   ( void (CALLBACK*)() )ErrorCallback );