From 1e546d4a19f5fcba6b0c2671daea12d967599a1e Mon Sep 17 00:00:00 2001 From: Jan Date: Sat, 6 Aug 2022 19:08:45 +0200 Subject: [PATCH] Write broken material statebits writing --- .../IW4/AssetLoaders/AssetLoaderMaterial.cpp | 22 +++++++++---------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/src/ObjLoading/Game/IW4/AssetLoaders/AssetLoaderMaterial.cpp b/src/ObjLoading/Game/IW4/AssetLoaders/AssetLoaderMaterial.cpp index e26f623b..fd38943a 100644 --- a/src/ObjLoading/Game/IW4/AssetLoaders/AssetLoaderMaterial.cpp +++ b/src/ObjLoading/Game/IW4/AssetLoaders/AssetLoaderMaterial.cpp @@ -779,13 +779,13 @@ namespace IW4 } m_base_statebits.loadBits[0] &= ~GFXS0_BLENDOP_RGB_MASK; - m_base_statebits.loadBits[0] |= ((static_cast(blendOp) - 1) >> GFXS0_BLENDOP_RGB_SHIFT) & GFXS0_BLENDOP_RGB_MASK; + m_base_statebits.loadBits[0] |= ((static_cast(blendOp) - 1) << GFXS0_BLENDOP_RGB_SHIFT) & GFXS0_BLENDOP_RGB_MASK; m_base_statebits.loadBits[0] &= ~GFXS0_SRCBLEND_RGB_MASK; - m_base_statebits.loadBits[0] |= ((static_cast(srcFunc) - 1) >> GFXS0_SRCBLEND_RGB_SHIFT) & GFXS0_SRCBLEND_RGB_MASK; + m_base_statebits.loadBits[0] |= ((static_cast(srcFunc) - 1) << GFXS0_SRCBLEND_RGB_SHIFT) & GFXS0_SRCBLEND_RGB_MASK; m_base_statebits.loadBits[0] &= ~GFXS0_DSTBLEND_RGB_MASK; - m_base_statebits.loadBits[0] |= ((static_cast(destFunc) - 1) >> GFXS0_DSTBLEND_RGB_SHIFT) & GFXS0_DSTBLEND_RGB_MASK; + m_base_statebits.loadBits[0] |= ((static_cast(destFunc) - 1) << GFXS0_DSTBLEND_RGB_SHIFT) & GFXS0_DSTBLEND_RGB_MASK; } void SetSeparateAlphaBlendFunc(BlendOp_e blendOp, CustomBlendFunc_e srcFunc, CustomBlendFunc_e destFunc) @@ -798,13 +798,13 @@ namespace IW4 } m_base_statebits.loadBits[0] &= ~GFXS0_BLENDOP_ALPHA_MASK; - m_base_statebits.loadBits[0] |= ((static_cast(blendOp) - 1) >> GFXS0_BLENDOP_ALPHA_SHIFT) & GFXS0_BLENDOP_ALPHA_MASK; + m_base_statebits.loadBits[0] |= ((static_cast(blendOp) - 1) << GFXS0_BLENDOP_ALPHA_SHIFT) & GFXS0_BLENDOP_ALPHA_MASK; m_base_statebits.loadBits[0] &= ~GFXS0_SRCBLEND_ALPHA_MASK; - m_base_statebits.loadBits[0] |= ((static_cast(srcFunc) - 1) >> GFXS0_SRCBLEND_ALPHA_SHIFT) & GFXS0_SRCBLEND_ALPHA_MASK; + m_base_statebits.loadBits[0] |= ((static_cast(srcFunc) - 1) << GFXS0_SRCBLEND_ALPHA_SHIFT) & GFXS0_SRCBLEND_ALPHA_MASK; m_base_statebits.loadBits[0] &= ~GFXS0_DSTBLEND_ALPHA_MASK; - m_base_statebits.loadBits[0] |= ((static_cast(destFunc) - 1) >> GFXS0_DSTBLEND_ALPHA_SHIFT) & GFXS0_DSTBLEND_ALPHA_MASK; + m_base_statebits.loadBits[0] |= ((static_cast(destFunc) - 1) << GFXS0_DSTBLEND_ALPHA_SHIFT) & GFXS0_DSTBLEND_ALPHA_MASK; } void SetColorWrite(const StateBitsEnabledStatus_e colorWriteRed, const StateBitsEnabledStatus_e colorWriteGreen, const StateBitsEnabledStatus_e colorWriteBlue, @@ -918,7 +918,7 @@ namespace IW4 } m_base_statebits.loadBits[1] &= ~GFXS1_POLYGON_OFFSET_MASK; - m_base_statebits.loadBits[1] |= ((static_cast(polygonOffset) - 1) >> GFXS1_POLYGON_OFFSET_SHIFT) & GFXS1_POLYGON_OFFSET_MASK; + m_base_statebits.loadBits[1] |= ((static_cast(polygonOffset) - 1) << GFXS1_POLYGON_OFFSET_SHIFT) & GFXS1_POLYGON_OFFSET_MASK; } static void GetStencilMasksForIndex(const StencilIndex stencil, unsigned& enabledMask, unsigned& funcShift, unsigned& funcMask, unsigned& opFailShift, unsigned& opFailMask, @@ -968,16 +968,16 @@ namespace IW4 m_base_statebits.loadBits[1] |= enabledMask; m_base_statebits.loadBits[1] &= ~funcMask; - m_base_statebits.loadBits[1] |= ((static_cast(stencilFunc) - 1) >> funcShift) & funcMask; + m_base_statebits.loadBits[1] |= ((static_cast(stencilFunc) - 1) << funcShift) & funcMask; m_base_statebits.loadBits[1] &= ~opFailMask; - m_base_statebits.loadBits[1] |= ((static_cast(stencilOpFail) - 1) >> opFailShift) & opFailMask; + m_base_statebits.loadBits[1] |= ((static_cast(stencilOpFail) - 1) << opFailShift) & opFailMask; m_base_statebits.loadBits[1] &= ~opZFailMask; - m_base_statebits.loadBits[1] |= ((static_cast(stencilOpZFail) - 1) >> opZFailShift) & opZFailMask; + m_base_statebits.loadBits[1] |= ((static_cast(stencilOpZFail) - 1) << opZFailShift) & opZFailMask; m_base_statebits.loadBits[1] &= ~opPassMask; - m_base_statebits.loadBits[1] |= ((static_cast(stencilOpPass) - 1) >> opPassShift) & opPassMask; + m_base_statebits.loadBits[1] |= ((static_cast(stencilOpPass) - 1) << opPassShift) & opPassMask; } void FinalizeMaterial() const