I am developing a new DRI driver based on XFree86 4.3.0,Mesa 4.0.4,and redhat9.0.
Because my hardware can do TCL,I hook my "tcl render" stage into mesa's pipe,and make it as the first stage,just like r200 driver. In my "run_tcl_render", I don't use mesa's template file t_dd_dmatmp2.h to generate my tcl render table. My code looks like(for vertices,not elements): for (i = VB->FirstPrimitive ; !(flags & PRIM_LAST) ; i += length) { flags = VB->Primitive[i]; length = VB->PrimitiveLength[i]; if (!length) continue; if (flags & PRIM_BEGIN) { start_prim(flags,current_vertex_counter); } copy_vertex_data(ctx,inputs,i,length); if (flags & PRIM_END) { end_prim(flags,current_vertex_counter); } } But I find PRIM_BEGIN and PRIM_END don't always pairs for a single display list call or a vertex array drawing. Then sometimes I meet with a non-ended primitive,and when I flush these primtives,I will lose some primitives. I know r200 works well, but I don't know why my method meets this problem. Thanks! ------------------------------------------------------- This SF.Net email sponsored by Black Hat Briefings & Training. Attend Black Hat Briefings & Training, Las Vegas July 24-29 - digital self defense, top technical experts, no vendor pitches, unmatched networking opportunities. Visit www.blackhat.com -- _______________________________________________ Dri-devel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/dri-devel