void _prim (DWORD prim) { if (bClass3) { sPoly src,dst; src.resize (3); src[0] = verts[ tris[prim].verts[0] ]; src[1] = verts[ tris[prim].verts[1] ]; src[2] = verts[ tris[prim].verts[2] ]; if (F->ClipPoly(src,dst)) { RESULT& R = dest->r_add(); R.id = prim; R.verts[0] = verts[ tris[prim].verts[0] ]; R.verts[1] = verts[ tris[prim].verts[1] ]; R.verts[2] = verts[ tris[prim].verts[2] ]; R.dummy = tris[prim].dummy; } } else { RESULT& R = dest->r_add(); R.id = prim; R.verts[0] = verts[ tris[prim].verts[0] ]; R.verts[1] = verts[ tris[prim].verts[1] ]; R.verts[2] = verts[ tris[prim].verts[2] ]; R.dummy = tris[prim].dummy; } }
void _prim (DWORD prim) { TRI& T = tris[prim]; Fvector& v0 = verts[ T.verts[0] ]; mLeafVerts[0].x = v0.x; mLeafVerts[0].y = v0.y; mLeafVerts[0].z = v0.z; Fvector& v1 = verts[ T.verts[1] ]; mLeafVerts[1].x = v1.x; mLeafVerts[1].y = v1.y; mLeafVerts[1].z = v1.z; Fvector& v2 = verts[ T.verts[2] ]; mLeafVerts[2].x = v2.x; mLeafVerts[2].y = v2.y; mLeafVerts[2].z = v2.z; if (!_tri()) return; RESULT& R = dest->r_add(); R.id = prim; R.verts[0] = v0; R.verts[1] = v1; R.verts[2] = v2; R.dummy = T.dummy; }