portal_markid++;
Mod_CheckLoaded(model);
- Portal_PolygonRecursiveMarkLeafs(model->nodes, polypoints, numpoints);
+ Portal_PolygonRecursiveMarkLeafs(model->brushq1.nodes, polypoints, numpoints);
- eyeleaf = Mod_PointInLeaf(eye, model);
+ eyeleaf = model->brushq1.PointInLeaf(model, eye);
// find the center by averaging
VectorClear(center);
{
if (!info->surfacemark[*mark])
{
- surf = info->model->surfaces + *mark;
+ surf = info->model->brushq1.surfaces + *mark;
if (surf->poly_numverts)
{
if (surf->flags & SURF_PLANEBACK)
{
for (surfmesh = surf->mesh;surfmesh;surfmesh = surfmesh->chain)
{
- for (j = 0, elements = surfmesh->index;j < surfmesh->numtriangles;j++, elements += 3)
+ for (j = 0, elements = surfmesh->element3i;j < surfmesh->numtriangles;j++, elements += 3)
{
- VectorCopy((surfmesh->verts + elements[0] * 4), trianglepoints[0]);
- VectorCopy((surfmesh->verts + elements[1] * 4), trianglepoints[1]);
- VectorCopy((surfmesh->verts + elements[2] * 4), trianglepoints[2]);
- if ((info->eye[0] - trianglepoints[0][0]) * ((trianglepoints[0][1] - trianglepoints[1][1]) * (trianglepoints[2][2] - trianglepoints[1][2]) - (trianglepoints[0][2] - trianglepoints[1][2]) * (trianglepoints[2][1] - trianglepoints[1][1]))
- + (info->eye[1] - trianglepoints[0][1]) * ((trianglepoints[0][2] - trianglepoints[1][2]) * (trianglepoints[2][0] - trianglepoints[1][0]) - (trianglepoints[0][0] - trianglepoints[1][0]) * (trianglepoints[2][2] - trianglepoints[1][2]))
- + (info->eye[2] - trianglepoints[0][2]) * ((trianglepoints[0][0] - trianglepoints[1][0]) * (trianglepoints[2][1] - trianglepoints[1][1]) - (trianglepoints[0][1] - trianglepoints[1][1]) * (trianglepoints[2][0] - trianglepoints[1][0])) > 0
+ VectorCopy((surfmesh->vertex3f + elements[0] * 3), trianglepoints[0]);
+ VectorCopy((surfmesh->vertex3f + elements[1] * 3), trianglepoints[1]);
+ VectorCopy((surfmesh->vertex3f + elements[2] * 3), trianglepoints[2]);
+ if (PointInfrontOfTriangle(info->eye, trianglepoints[0], trianglepoints[1], trianglepoints[2])
&& Portal_PortalThroughPortalPlanes(&portalplanes[firstclipplane], numclipplanes, trianglepoints[0], 3, &portaltemppoints2[0][0], 256) >= 3)
break;
}
tinyplane_t *newplanes;
if (info->leafmark)
- info->leafmark[leaf - info->model->leafs] = true;
+ info->leafmark[leaf - info->model->brushq1.leafs] = true;
// mark surfaces in leaf that can be seen through portal
if (leaf->nummarksurfaces && info->surfacemark)
VectorCopy(eye, info.eye);
info.numfrustumplanes = numfrustumplanes;
- Portal_RecursiveFindLeafForFlow(&info, model->nodes);
+ Portal_RecursiveFindLeafForFlow(&info, model->brushq1.nodes);
if (ranoutofportalplanes)
Con_Printf("Portal_RecursiveFlow: ran out of %d plane stack when recursing through portals\n", MAXRECURSIVEPORTALPLANES);