Mercurial > mm7
comparison Indoor.cpp @ 1226:33b30398e286
m
author | Ritor1 |
---|---|
date | Fri, 07 Jun 2013 22:24:11 +0600 |
parents | 15ad868d972f |
children | 312e895a6439 |
comparison
equal
deleted
inserted
replaced
1225:42b41aaecd87 | 1226:33b30398e286 |
---|---|
766 v128 = stru_F8AD28.pDeltaUV[1]; | 766 v128 = stru_F8AD28.pDeltaUV[1]; |
767 v107 = bUseLoResSprites; | 767 v107 = bUseLoResSprites; |
768 v7 = sub_423B5D(v1); | 768 v7 = sub_423B5D(v1); |
769 if ( v7 ) | 769 if ( v7 ) |
770 { | 770 { |
771 if ( sub_424829(v7, &stru_F8A590, pBLVRenderParams->field_7C, v1) ) | 771 if ( isVisibleRoom(v7, &stru_F8A590, pBLVRenderParams->field_7C, v1) ) |
772 { | 772 { |
773 if ( v2->uPolygonType == 1 ) | 773 if ( v2->uPolygonType == 1 ) |
774 { | 774 { |
775 for ( i = 0; i < stru_F8AD28.uNumLightsApplied; stru_F8AD28._blv_lights_ys[v18] = v20 ) | 775 for ( i = 0; i < stru_F8AD28.uNumLightsApplied; stru_F8AD28._blv_lights_ys[v18] = v20 ) |
776 { | 776 { |
1382 //problem here when standing near/on portal, condition is false because of face_min_screenspace_x > p->uViewportZ | 1382 //problem here when standing near/on portal, condition is false because of face_min_screenspace_x > p->uViewportZ |
1383 if (face_max_screenspace_x >= p->uViewportX && | 1383 if (face_max_screenspace_x >= p->uViewportX && |
1384 // face_min_screenspace_x <= p->uViewportZ && | 1384 // face_min_screenspace_x <= p->uViewportZ && |
1385 face_max_screenspace_y >= p->uViewportY && | 1385 face_max_screenspace_y >= p->uViewportY && |
1386 face_min_screenspace_y <= p->uViewportW && | 1386 face_min_screenspace_y <= p->uViewportW && |
1387 sub_424829(num_vertices, &nodes[num_nodes].field_C, &p->field_C, uFaceID)) | 1387 isVisibleRoom(num_vertices, &nodes[num_nodes].field_C, &p->field_C, uFaceID)) |
1388 { | 1388 { |
1389 //v17 = v39; | 1389 //v17 = v39; |
1390 v18 = pFace->uSectorID; | 1390 v18 = pFace->uSectorID; |
1391 if (p->uSectorID == v18 ) | 1391 if (p->uSectorID == v18 ) |
1392 v18 = pFace->uBackSectorID; | 1392 v18 = pFace->uBackSectorID; |
1544 } | 1544 } |
1545 if ( v11 >= *((short *)v20 + 2005) | 1545 if ( v11 >= *((short *)v20 + 2005) |
1546 && v23 <= *((short *)v20 + 2007) | 1546 && v23 <= *((short *)v20 + 2007) |
1547 && v12 >= *((short *)v20 + 2006) | 1547 && v12 >= *((short *)v20 + 2006) |
1548 && v22 <= *((short *)v20 + 2008) | 1548 && v22 <= *((short *)v20 + 2008) |
1549 && sub_424829(v10, &v3->nodes[v3->num_nodes].field_C, (BspRenderer_stru2 *)(v20 + 4020), uFaceID) ) | 1549 && isVisibleRoom(v10, &v3->nodes[v3->num_nodes].field_C, (BspRenderer_stru2 *)(v20 + 4020), uFaceID) ) |
1550 { | 1550 { |
1551 v16 = v21->uSectorID; | 1551 v16 = v21->uSectorID; |
1552 if ( *((short *)v20 + 2004) == v16 ) | 1552 if ( *((short *)v20 + 2004) == v16 ) |
1553 v16 = v21->uBackSectorID; | 1553 v16 = v21->uBackSectorID; |
1554 v3->nodes[v3->num_nodes].uSectorID = v16; | 1554 v3->nodes[v3->num_nodes].uSectorID = v16; |
1603 v2 = pBspRenderer->faces[i].uFaceID; | 1603 v2 = pBspRenderer->faces[i].uFaceID; |
1604 pBLVRenderParams->field_7C = &pBspRenderer->nodes[pBspRenderer->faces[i].uNodeID].field_C; | 1604 pBLVRenderParams->field_7C = &pBspRenderer->nodes[pBspRenderer->faces[i].uNodeID].field_C; |
1605 v3 = sub_423B5D(v2); | 1605 v3 = sub_423B5D(v2); |
1606 if ( v3 ) | 1606 if ( v3 ) |
1607 { | 1607 { |
1608 if ( sub_424829(v3, &stru_F8A590, pBLVRenderParams->field_7C, v1) ) | 1608 if ( isVisibleRoom(v3, &stru_F8A590, pBLVRenderParams->field_7C, v1) ) |
1609 { | 1609 { |
1610 v4 = stru_F8A590._viewport_space_y; | 1610 v4 = stru_F8A590._viewport_space_y; |
1611 v5 = pBLVRenderParams->pRenderTarget; | 1611 v5 = pBLVRenderParams->pRenderTarget; |
1612 if ( stru_F8A590._viewport_space_y <= stru_F8A590._viewport_space_w ) | 1612 if ( stru_F8A590._viewport_space_y <= stru_F8A590._viewport_space_w ) |
1613 { | 1613 { |