it's re-rendering the same polygon after translation and lighting (so yes this probly will cause HT&L problems, unless the T&L step can be seperated from the rasterization step or we can tell it to render each primiteve twice with diferent flags and textures)
the problem with fog is that it (seems as if) it's getting twice the fogging it should be getting becase the poly is getting rendered twice,
I'm thinking if I just turn foging off and then use some sort of inverse of the fog values for lighting values (so the further away the dimmer they seem) it will work right
the proces this uses is; in the final step of poly rendering, just after the poly is rasterised, while I still have all of it's verts (in screen coordanants), I set the texture to be the glow map assosiated with the current texture (if there is one, otherwise I just leave), then I set it's (verts') lighting (color) values all to 255,255,255,0, and I set the poly to be rendered useing additive alpha, then I render it again, the effect is all polys rendered have another poly rendered additively in the _exact_ same place useing the _exact_ same values, this way I don't have to recalculate the transformations for each vert and I don't have to worry about any Z errors,
I could use a similar trick to make multi-texturing and just leave the lighting values alone
I'm also thinking it might be a good idea to redo the entire system that the model rendering system uses, I don't think it should use g3_draw_poly at all, but make a list of polys to be rendered, then all defpoints get transformed, then we use the gr_draw_primitive (I think that's what it's called, the thing that g3_draw_poly calls) to go through and render them, this way the transformation proces gets called only about 1/3 as oftine, also, this would make the transition to HT&L a bit easier, and we could use vertex buffers the do the whole thing in one go.
and I also think it might be a good idea to make vert buffers as part of each subobject, there can be a OGL equivelent only one of these gets used based on wich rendering mode were in