diff options
author | Roman Masanin <36927roma@gmail.com> | 2020-10-25 22:16:46 +0100 |
---|---|---|
committer | Roman Masanin <36927roma@gmail.com> | 2020-10-25 22:16:46 +0100 |
commit | 44bbcbd14ac86e22c1514b78bbc2fad2f0f9cf24 (patch) | |
tree | 285278bf5fda41d6a528a7912153a892746262ed /src/render | |
parent | cleanup processVehicleOneShots, processVehicleX done (diff) | |
parent | small glass fix (diff) | |
download | re3-44bbcbd14ac86e22c1514b78bbc2fad2f0f9cf24.tar re3-44bbcbd14ac86e22c1514b78bbc2fad2f0f9cf24.tar.gz re3-44bbcbd14ac86e22c1514b78bbc2fad2f0f9cf24.tar.bz2 re3-44bbcbd14ac86e22c1514b78bbc2fad2f0f9cf24.tar.lz re3-44bbcbd14ac86e22c1514b78bbc2fad2f0f9cf24.tar.xz re3-44bbcbd14ac86e22c1514b78bbc2fad2f0f9cf24.tar.zst re3-44bbcbd14ac86e22c1514b78bbc2fad2f0f9cf24.zip |
Diffstat (limited to 'src/render')
-rw-r--r-- | src/render/Glass.cpp | 8 | ||||
-rw-r--r-- | src/render/Hud.cpp | 29 | ||||
-rw-r--r-- | src/render/WindModifiers.cpp | 2 |
3 files changed, 24 insertions, 15 deletions
diff --git a/src/render/Glass.cpp b/src/render/Glass.cpp index 0e26ee0b..426fa7f1 100644 --- a/src/render/Glass.cpp +++ b/src/render/Glass.cpp @@ -668,7 +668,7 @@ CGlass::WindowRespondsToCollision(CEntity *entity, float amount, CVector speed, object->bGlassBroken = true; object->bIsVisible = false; - object->bUsesCollision = true; + object->bUsesCollision = false; } void @@ -868,11 +868,11 @@ CGlass::HasGlassBeenShatteredAtCoors(float x, float y, float z) CWorld::AdvanceCurrentScanCode(); - for ( int32 y = nStartY; y <= nEndY; y++ ) + for ( int32 ys = nStartY; ys <= nEndY; ys++ ) { - for ( int32 x = nStartX; x <= nEndX; x++ ) + for ( int32 xs = nStartX; xs <= nEndX; xs++ ) { - CSector *sector = CWorld::GetSector(x, y); + CSector *sector = CWorld::GetSector(xs, ys); ASSERT(sector != nil); diff --git a/src/render/Hud.cpp b/src/render/Hud.cpp index 753bb42b..94e09044 100644 --- a/src/render/Hud.cpp +++ b/src/render/Hud.cpp @@ -468,14 +468,10 @@ void CHud::Draw() Sprites[WeaponType].Draw( CRect(SCREEN_SCALE_FROM_RIGHT(99.0f), SCREEN_SCALE_Y(27.0f), SCREEN_SCALE_FROM_RIGHT(35.0f), SCREEN_SCALE_Y(91.0f)), CRGBA(255, 255, 255, alpha), - 0.015f, - 0.015f, - 1.0f, - 0.0f, - 0.015f, - 1.0f, - 1.0f, - 1.0f); + 0.015f, 0.015f, + 1.0f, 0.0f, + 0.015f, 1.0f, + 1.0f, 1.0f); } else { CBaseModelInfo *weaponModel = CModelInfo::GetModelInfo(weaponInfo->m_nModelId); RwTexDictionary *weaponTxd = CTxdStore::GetSlot(weaponModel->GetTxdSlot())->texDict; @@ -483,13 +479,26 @@ void CHud::Draw() RwTexture *weaponIcon = RwTexDictionaryFindNamedTexture(weaponTxd, weaponModel->GetName()); if (weaponIcon) { RwRenderStateSet(rwRENDERSTATETEXTUREFILTER, (void*)rwFILTERLINEAR); +#ifndef FIX_BUGS + const float xSize = SCREEN_SCALE_X(64.0f / 2.0f); + const float ySize = SCREEN_SCALE_Y(64.0f / 2.0f); RwRenderStateSet(rwRENDERSTATEZTESTENABLE, (void*)FALSE); RwRenderStateSet(rwRENDERSTATETEXTURERASTER, RwTextureGetRaster(weaponIcon)); - const float xSize = SCREEN_SCALE_X(64.0f / 2.0f); - const float ySize = SCREEN_SCALE_X(64.0f / 2.0f); CSprite::RenderOneXLUSprite(SCREEN_SCALE_FROM_RIGHT(99.0f) + xSize, SCREEN_SCALE_Y(25.0f) + ySize, 1.0f, xSize, ySize, 255, 255, 255, 255, 1.0f, 255); RwRenderStateSet(rwRENDERSTATEZTESTENABLE, (void*)TRUE); +#else + static CSprite2d sprite; + sprite.m_pTexture = weaponIcon; + sprite.Draw( + CRect(SCREEN_SCALE_FROM_RIGHT(99.0f), SCREEN_SCALE_Y(27.0f), SCREEN_SCALE_FROM_RIGHT(35.0f), SCREEN_SCALE_Y(91.0f)), + CRGBA(255, 255, 255, alpha), + 0.015f, 0.015f, + 1.0f, 0.0f, + 0.015f, 1.0f, + 1.0f, 1.0f); + sprite.m_pTexture = nil; +#endif } } } diff --git a/src/render/WindModifiers.cpp b/src/render/WindModifiers.cpp index 2061df6a..b72e362e 100644 --- a/src/render/WindModifiers.cpp +++ b/src/render/WindModifiers.cpp @@ -33,7 +33,7 @@ CWindModifiers::FindWindModifier(CVector pos, float *x, float *y) float dist = (pos - Array[i].m_pos).Magnitude(); if (dist < MAX_FADE_DIST) { float distFade = dist < MIN_FADE_DIST ? 1.0f : 1.0f - (dist - MIN_FADE_DIST) / (MAX_FADE_DIST - MIN_FADE_DIST); - float heightFade = 1.0f - zDist / MAX_HEIGHT_DIST; + float heightFade = distFade * ((1.0f - zDist / MAX_HEIGHT_DIST) / 2.0f); dir = (pos - Array[i].m_pos) * heightFade / dist; bWasWindModifierFound = true; } |