Okay so there's an issue with a vec4, yes I plan on removing it. So this works

    if ((_blendFactor.r != other._blendFactor.r) ||
        (_blendFactor.g != other._blendFactor.g) ||
        (_blendFactor.b != other._blendFactor.b) ||
        (_blendFactor.a != other._blendFactor.a))
    {
      return false;
    }

but

    if (_blendFactor != other._blendFactor) { return false; }

does not work