Mercurial > mm7
diff ParticleEngine.cpp @ 1029:c94d6a37d298
Pointing a face with mouse fixed.
author | Nomad |
---|---|
date | Tue, 21 May 2013 12:10:08 +0200 |
parents | c45d51b3f4f4 |
children | 613c77e51e38 |
line wrap: on
line diff
--- a/ParticleEngine.cpp Tue May 21 11:24:35 2013 +0200 +++ b/ParticleEngine.cpp Tue May 21 12:10:08 2013 +0200 @@ -237,10 +237,10 @@ int v42; // ecx@18 int v43; // eax@18 unsigned __int64 v44; // qax@18 - double v45; // st7@18 - int v46; // ecx@18 - float v47; // ST18_4@18 - unsigned __int64 v48; // qax@18 + //double v45; // st7@18 + //int v46; // ecx@18 + //float v47; // ST18_4@18 + //unsigned __int64 v48; // qax@18 int y_int_; // [sp+10h] [bp-40h]@2 int a2; // [sp+18h] [bp-38h]@10 int x_int; // [sp+20h] [bp-30h]@2 @@ -373,14 +373,9 @@ pParticle->uScreenSpaceX = v42; v44 = v43 * (signed __int64)v24; //uParticleID = v44 >> 16; - v45 = pParticle->flt_28; LODWORD(v44) = (signed int)(v44 >> 16) >> 16; - v46 = pBLVRenderParams->uViewportCenterY - v44; pParticle->uScreenSpaceY = pBLVRenderParams->uViewportCenterY - v44; - v47 = v45; - v48 = _48B561_mess_with_scaling_along_z(/*v46, */v47) * (signed __int64)pParticle->_screenspace_scale; - //_uParticleID = v48 >> 16; - pParticle->_screenspace_scale = v48 >> 16; + pParticle->_screenspace_scale = fixpoint_sub0(fixpoint_from_float(pParticle->flt_28), pParticle->_screenspace_scale); pParticle->sZValue = z; return true; } @@ -405,9 +400,9 @@ LODWORD(v6) = 0; HIDWORD(v6) = floorf(pParticle->flt_5C + 0.5f); //v7 = pParticle->flt_28; - pParticle->_screenspace_scale = v6 / x; + //pParticle->_screenspace_scale = v6 / x; //v8 = v7; - pParticle->_screenspace_scale = (unsigned __int64)(_48B561_mess_with_scaling_along_z(/*v9, */pParticle->flt_28) * (signed __int64)pParticle->_screenspace_scale) >> 16; + pParticle->_screenspace_scale = fixpoint_sub0(fixpoint_from_float(pParticle->flt_28), v6 / x); pParticle->sZValue = x; return true; } @@ -448,10 +443,10 @@ signed __int64 v29; // qtt@13 //int v30; // eax@13 //int v31; // ST1C_4@13 - double v32; // st7@13 + //double v32; // st7@13 signed int v33; // eax@13 - int v34; // ecx@13 - float v35; // ST04_4@13 + //int v34; // ecx@13 + //float v35; // ST04_4@13 int v36; // eax@13 int v37; // esi@15 //double v39; // [sp+10h] [bp-40h]@2 @@ -566,12 +561,10 @@ //v31 = v6->_screenspace_scale; v6->uScreenSpaceX = pViewport->uScreenCenterX - ((signed int)((unsigned __int64)(v6->_screenspace_scale * (signed __int64)v16) >> 16) >> 16); - v32 = v6->flt_28; v33 = (signed int)((unsigned __int64)(v6->_screenspace_scale * (signed __int64)v40) >> 16) >> 16; - v34 = pViewport->uScreenCenterY - v33; + //v34 = pViewport->uScreenCenterY - v33; v6->uScreenSpaceY = pViewport->uScreenCenterY - v33; - v35 = v32; - v6->_screenspace_scale = (unsigned __int64)(_48B561_mess_with_scaling_along_z(/*v34, */v35) * (signed __int64)v6->_screenspace_scale) >> 16; + v6->_screenspace_scale = fixpoint_sub0(fixpoint_from_float(v6->flt_28), v6->_screenspace_scale); v6->sZValue = X_4; v36 = v6->uScreenSpaceX; if ( v36 >= (signed int)pViewport->uViewportTL_X )