Mercurial > mm7
comparison Render.cpp @ 107:23b213c3f8e1
Слияние
author | Ritor1 |
---|---|
date | Fri, 08 Feb 2013 18:34:09 +0600 |
parents | efece1632349 2fb33d31ca0d |
children | 3471df3713e2 c70fea5013aa |
comparison
equal
deleted
inserted
replaced
106:efece1632349 | 107:23b213c3f8e1 |
---|---|
1024 int v123; // [sp+64h] [bp-10h]@1 | 1024 int v123; // [sp+64h] [bp-10h]@1 |
1025 int v124; // [sp+68h] [bp-Ch]@1 | 1025 int v124; // [sp+68h] [bp-Ch]@1 |
1026 int v125; // [sp+6Ch] [bp-8h]@9 | 1026 int v125; // [sp+6Ch] [bp-8h]@9 |
1027 int v126; // [sp+70h] [bp-4h]@9 | 1027 int v126; // [sp+70h] [bp-4h]@9 |
1028 | 1028 |
1029 v105 = pIndoorCamera->sRotationY / ((signed int)stru_5C6E00->uIntegerHalfPi / 2); | 1029 v105 = pIndoorCamera->sRotationY / ((signed int)stru_5C6E00->uIntegerHalfPi / 2);//2 |
1030 pDirectionIndicator1 = stru_5C6E00->uDoublePiMask & (stru_5C6E00->uIntegerDoublePi - pIndoorCamera->sRotationY);//1536 | 1030 pDirectionIndicator1 = stru_5C6E00->uDoublePiMask & (stru_5C6E00->uIntegerDoublePi - pIndoorCamera->sRotationY);//1536 |
1031 pDirectionIndicator2 = stru_5C6E00->uDoublePiMask & (stru_5C6E00->uIntegerPi + pDirectionIndicator1);//512 | 1031 pDirectionIndicator2 = stru_5C6E00->uDoublePiMask & (stru_5C6E00->uIntegerPi + pDirectionIndicator1);//512 |
1032 v124 = ((pIndoorCamera->uMapGridCellX << 16) + 3 * stru_5C6E00->SinCos(stru_5C6E00->uDoublePiMask & (stru_5C6E00->uIntegerPi + pDirectionIndicator1))) >> 16; | 1032 v124 = ((pIndoorCamera->uMapGridCellX << 16) + 3 * stru_5C6E00->SinCos(stru_5C6E00->uDoublePiMask & (stru_5C6E00->uIntegerPi + pDirectionIndicator1))) >> 16; |
1033 v123 = ((pIndoorCamera->uMapGridCellZ << 16) + 3 * stru_5C6E00->SinCos(pDirectionIndicator2 - stru_5C6E00->uIntegerHalfPi)) >> 16; | 1033 v123 = ((pIndoorCamera->uMapGridCellZ << 16) + 3 * stru_5C6E00->SinCos(pDirectionIndicator2 - stru_5C6E00->uIntegerHalfPi)) >> 16; |
1034 v120 = pOutdoorCamera->outdoor_grid_band_3 + v124;//+- range X | 1034 v120 = pOutdoorCamera->outdoor_grid_band_3 + v124;//+- range X |
2045 //v26 = pOutdoorCamera->numStru148s - 1999 < 0; | 2045 //v26 = pOutdoorCamera->numStru148s - 1999 < 0; |
2046 v16->field_58 = floorf(thisf + 0.5f); | 2046 v16->field_58 = floorf(thisf + 0.5f); |
2047 if ( pOutdoorCamera->numStru148s >= 1999 ) | 2047 if ( pOutdoorCamera->numStru148s >= 1999 ) |
2048 return; | 2048 return; |
2049 ++pOutdoorCamera->numStru148s; | 2049 ++pOutdoorCamera->numStru148s; |
2050 if ( !sub_481FC9(v8, pVertices, v101, v16) ) | 2050 //if ( !sub_481FC9(v8, pVertices, v101, v16) )//Ritor1: It's temporary |
2051 //goto LABEL_126; | 2051 //goto LABEL_126; |
2052 { | 2052 //{ |
2053 --pOutdoorCamera->numStru148s; | 2053 //--pOutdoorCamera->numStru148s; |
2054 goto LABEL_162; | 2054 //goto LABEL_162; |
2055 } | 2055 //} |
2056 memcpy(&array_50AC10[0], v102, 0x30u); | 2056 memcpy(&array_50AC10[0], v102, 0x30u); |
2057 array_50AC10[0].flt_20 = 1.0 / (v102->vWorldViewPosition.x + 0.0000001000000011686097); | 2057 array_50AC10[0].flt_20 = 1.0 / (v102->vWorldViewPosition.x + 0.0000001000000011686097); |
2058 array_50AC10[0].u = 0.0; | 2058 array_50AC10[0].u = 0.0; |
2059 array_50AC10[0].v = 0.0; | 2059 array_50AC10[0].v = 0.0; |
2060 memcpy(&array_50AC10[1], pVertices, sizeof(array_50AC10[1])); | 2060 memcpy(&array_50AC10[1], pVertices, sizeof(array_50AC10[1])); |
11331 ErrD3D(pRenderer->pRenderD3D->pDevice->SetRenderState(D3DRENDERSTATE_ZWRITEENABLE, 0)); | 11331 ErrD3D(pRenderer->pRenderD3D->pDevice->SetRenderState(D3DRENDERSTATE_ZWRITEENABLE, 0)); |
11332 ErrD3D(pRenderer->pRenderD3D->pDevice->SetRenderState(D3DRENDERSTATE_CULLMODE, 1u)); | 11332 ErrD3D(pRenderer->pRenderD3D->pDevice->SetRenderState(D3DRENDERSTATE_CULLMODE, 1u)); |
11333 | 11333 |
11334 for (uint i = pRenderer->uNumBillboardsToDraw - 1; i != (uint)-1; --i) | 11334 for (uint i = pRenderer->uNumBillboardsToDraw - 1; i != (uint)-1; --i) |
11335 { | 11335 { |
11336 auto p = pRenderer->pBillboardRenderListD3D + i; | 11336 auto p = &pRenderer->pBillboardRenderListD3D[i]; |
11337 | 11337 |
11338 if (p->uOpacity != RenderBillboardD3D::InvalidOpacity) | 11338 if (p->uOpacity != RenderBillboardD3D::InvalidOpacity) |
11339 SetBillboardBlendOptions(p->uOpacity); | 11339 SetBillboardBlendOptions(p->uOpacity); |
11340 | 11340 |
11341 ErrD3D(pRenderer->pRenderD3D->pDevice->SetTexture(0, p->pTexture)); | 11341 pRenderer->pRenderD3D->pDevice->SetTexture(0, p->pTexture); |
11342 ErrD3D(pRenderer->pRenderD3D->pDevice->DrawPrimitive(D3DPT_TRIANGLEFAN, D3DFVF_XYZRHW | D3DFVF_DIFFUSE | D3DFVF_SPECULAR | D3DFVF_TEX1, | 11342 ErrD3D(pRenderer->pRenderD3D->pDevice->DrawPrimitive(D3DPT_TRIANGLEFAN, D3DFVF_XYZRHW | D3DFVF_DIFFUSE | D3DFVF_SPECULAR | D3DFVF_TEX1, |
11343 p->pQuards, p->uNumVertices, D3DDP_DONOTLIGHT | D3DDP_DONOTUPDATEEXTENTS)); | 11343 p->pQuards, p->uNumVertices, D3DDP_DONOTLIGHT | D3DDP_DONOTUPDATEEXTENTS)); |
11344 } | 11344 } |
11345 | 11345 |
11346 if (pRenderer->bFogEnabled) | 11346 if (pRenderer->bFogEnabled) |