Mercurial > mm7
diff Render.cpp @ 150:d92c78ab54fe
Слияние
author | Ritor1 |
---|---|
date | Tue, 12 Feb 2013 10:17:35 +0600 |
parents | 2b0c652cc165 b099dd069171 |
children | 796b79187c27 |
line wrap: on
line diff
--- a/Render.cpp Tue Feb 12 10:17:11 2013 +0600 +++ b/Render.cpp Tue Feb 12 10:17:35 2013 +0600 @@ -2938,7 +2938,7 @@ //----- (0047BACF) -------------------------------------------------------- void Render::TransformBillboardsAndSetPalettesODM() { - int v0; // edi@1 + //int v0; // edi@1 char *v1; // esi@2 unsigned int v2; // edx@3 int v3; // eax@3 @@ -2954,7 +2954,7 @@ int v13; // eax@14 RenderBillboardTransform_local0 billboard; // [sp+4h] [bp-60h]@1 int v15; // [sp+54h] [bp-10h]@13 - int v16; // [sp+58h] [bp-Ch]@1 + //int v16; // [sp+58h] [bp-Ch]@1 int v17; // [sp+5Ch] [bp-8h]@2 int v18; // [sp+60h] [bp-4h]@13 @@ -2966,20 +2966,22 @@ billboard.uViewportY = pViewport->uViewportY; billboard.uViewportZ = pViewport->uViewportZ - 1; billboard.uViewportW = pViewport->uViewportW; - v0 = 0; + //v0 = 0; pOutdoorCamera->uNumBillboards = uNumBillboardsToDraw; - v16 = 0; - if ( (signed int)uNumBillboardsToDraw > 0 ) - { + + //v16 = 0; + for (int i = 0; i < uNumBillboardsToDraw; ++i) + { + auto pBillboard = pBillboardRenderList + i; v17 = 0; - v1 = (char *)&pBillboardRenderList[0].uScreenSpaceY; - do - { - billboard.uScreenSpaceX = *((short *)v1 - 1); + v1 = (char *)&pBillboardRenderList[i].uScreenSpaceY; + //do + //{ + billboard.uScreenSpaceX = pBillboard->uScreenSpaceX; v2 = *((short *)v1 - 5); - billboard.uScreenSpaceY = *(short *)v1; + billboard.uScreenSpaceY = pBillboard->uScreenSpaceY; v3 = *((int *)v1 - 10); - billboard.uParentBillboardID = v0; + billboard.uParentBillboardID = i; v4 = *((int *)v1 + 1); billboard.field_10 = v3; v5 = *((int *)v1 - 9); @@ -3022,11 +3024,11 @@ } } v17 += 5; - v0 = v16 + 1; + //v0 = v16 + 1; v1 += 52; - ++v16; - } - while ( v16 < (signed int)uNumBillboardsToDraw ); + //++v16; + //} + //while ( v16 < (signed int)uNumBillboardsToDraw ); } }