How are your meshes constucted? If your using shared vertex then that is the problem.
Here is the algorythm that I use to construct my meshes.
first I use this bit to call the function
For loop = 1 To V_Pos -1
For p_loop = 0 To profile_end -1
x1 = T_PointsX (loop-1, p_loop) : x2 = T_PointsX (loop-1, p_loop+1)
x3 = T_PointsX (loop,p_loop) : x4 = T_PointsX (loop,p_loop+1)
y1 = T_PointsY (loop-1, p_loop) : y2 = T_PointsY (loop-1, p_loop+1)
y3 = T_PointsY (loop,p_loop) : y4 = T_PointsY (loop,p_loop+1)
z1 = T_PointsZ (loop-1,p_loop) : z2 = T_PointsZ (loop-1,p_loop+1)
z3 = T_PointsZ (loop,p_loop) : z4 = T_PointsZ (loop,p_loop+1)
DrawQuadOnSurface (x1,y1,z1,x2,y2,z2,x3,y3,z3,x4,y4,z4,y5,1,0,1,surf)
Next
Next
and then use this function to draw the quad
Function DrawQuadOnSurface (x1,y1,z1,x2,y2,z2,x3,y3,z3,x4,y4,z4,start_u#,end_u#,start_v#,end_v#,surf)
;2---3 (x3,y3,z3,x4,y4,z4)
;| |
;0---1 (x1,y1,z1,x2,y2,z2)
v0 = AddVertex (surf,x3,y3,z3,start_u,start_v) ; 0 left top
v1 = AddVertex (surf, x4,y4,z4,end_u,start_v); 1 right top
v2 =AddVertex (surf,x1,y1,z1,start_u,end_v) ; 2 left bottom
v3 =AddVertex (surf,x2,y2,z2,end_u,end_v) ; 3 right bottom
AddTriangle surf,v2,v0,v1 ; and 2 triangles...
AddTriangle surf,v2,v1,v3
End Function
Each quad has it's own set of vertex.