#include "Render/BlendColor.h" // OFFSET: 0x0055CFC0 // FUNCTION: fn_02095 std::uint32_t CRenderer::BlendColor(std::uint32_t base, std::uint32_t overlay) { const float alpha = static_cast(static_cast(overlay >> 24)) / 255.0f; const float inverse = 1.0f - alpha; auto* channels = reinterpret_cast(&base); channels[2] = static_cast(static_cast(static_cast(channels[2]) * inverse + static_cast(static_cast(overlay >> 16)) * alpha)); channels[1] = static_cast(static_cast(static_cast(static_cast(overlay >> 8)) * alpha + static_cast(channels[1]) * inverse)); channels[0] = static_cast(static_cast(static_cast(channels[0]) * inverse + static_cast(static_cast(overlay)) * alpha)); return base; }