Mercurial > mm7
diff mm7_5.cpp @ 676:ecfb1b3c9a39
BLV: when standing right on the portal (orange wall) everything looks fine
author | Nomad |
---|---|
date | Fri, 15 Mar 2013 04:13:24 +0200 |
parents | a5750c94b022 |
children | c0bfb386b15f |
line wrap: on
line diff
--- a/mm7_5.cpp Thu Mar 14 23:44:03 2013 +0200 +++ b/mm7_5.cpp Fri Mar 15 04:13:24 2013 +0200 @@ -9251,25 +9251,24 @@ int v6; // ebx@3 uNumVisibleNotEmptySectors = 0; - for (uint i = 0; i < pNumSectors; ++i) - { - v6 = 0; + for (uint i = 0; i < num_nodes; ++i) + { if (!uNumVisibleNotEmptySectors) { - pVisibleSectorIDs_toDrawDecorsActorsEtcFrom[uNumVisibleNotEmptySectors++] = pSectors[i].uSectorID; - } - else - { - while (pVisibleSectorIDs_toDrawDecorsActorsEtcFrom[v6] != pSectors[i].uSectorID ) + pVisibleSectorIDs_toDrawDecorsActorsEtcFrom[uNumVisibleNotEmptySectors++] = nodes[i].uSectorID; + continue; + } + + v6 = 0; + while (pVisibleSectorIDs_toDrawDecorsActorsEtcFrom[v6] != nodes[i].uSectorID ) { ++v6; if ( v6 >= uNumVisibleNotEmptySectors) { - pVisibleSectorIDs_toDrawDecorsActorsEtcFrom[uNumVisibleNotEmptySectors++] = pSectors[i].uSectorID; - continue; - } - } - } + pVisibleSectorIDs_toDrawDecorsActorsEtcFrom[uNumVisibleNotEmptySectors++] = nodes[i].uSectorID; + } + } + } } @@ -11566,7 +11565,7 @@ ++sDepthb ) { v62 = &pIndoor->pFaces[(*(unsigned __int16 **)((char *)&v60->pWalls + v61))[sDepthb]]; - if ( v62->TwoSided() + if ( v62->Portal() || v119 > v62->pBounding.x2 || v123 < v62->pBounding.x1 || v127 > v62->pBounding.y2 @@ -11732,7 +11731,7 @@ while ( 1 ) { v90 = &pIndoor->pFaces[(*(unsigned __int16 **)((char *)&v88->pWalls + v89))[v162]]; - if ( v90->TwoSided() + if ( v90->Portal() || v120 > v90->pBounding.x2 || v124 < v90->pBounding.x1 || v128 > v90->pBounding.y2