From d17a4fd221699126bb93b70f571696a522d6189f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ricardo=20Lu=C3=ADs=20Vaz=20Silva?= Date: Tue, 22 Jul 2025 10:27:31 -0300 Subject: [PATCH] fix angled roll if xy billboard is enabled --- src/rendering/hwrenderer/scene/hw_sprites.cpp | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/rendering/hwrenderer/scene/hw_sprites.cpp b/src/rendering/hwrenderer/scene/hw_sprites.cpp index 6414c6e4b..54253ee9e 100644 --- a/src/rendering/hwrenderer/scene/hw_sprites.cpp +++ b/src/rendering/hwrenderer/scene/hw_sprites.cpp @@ -405,11 +405,14 @@ bool HWSprite::CalculateVertices(HWDrawInfo* di, FVector3* v, DVector3* vp) return true; } - + + // [DVR] +ANGLEDROLL + const bool AngledRoll = (actor != nullptr && actor->renderflags2 & RF2_ANGLEDROLL); + // [BB] Billboard stuff const bool drawWithXYBillboard = ((particle && gl_billboard_particles && !(particle->flags & SPF_NO_XY_BILLBOARD)) || (!(actor && actor->renderflags & RF_FORCEYBILLBOARD) //&& di->mViewActor != nullptr - && (gl_billboard_mode == 1 || (actor && actor->renderflags & RF_FORCEXYBILLBOARD)))); + && (gl_billboard_mode == 1 || (actor && actor->renderflags & RF_FORCEXYBILLBOARD)))) && !AngledRoll; const bool drawBillboardFacingCamera = hw_force_cambbpref ? gl_billboard_faces_camera : gl_billboard_faces_camera @@ -421,9 +424,6 @@ bool HWSprite::CalculateVertices(HWDrawInfo* di, FVector3* v, DVector3* vp) const bool drawRollParticle = (particle != nullptr && particle->flags & SPF_ROLL); const bool doRoll = (drawRollSpriteActor || drawRollParticle); - // [DVR] +ANGLEDROLL - const bool AngledRoll = (actor != nullptr && actor->renderflags2 & RF2_ANGLEDROLL); - // [fgsfds] check sprite type mask uint32_t spritetype = (uint32_t)-1; if (actor != nullptr) spritetype = actor->renderflags & RF_SPRITETYPEMASK;