I'm not sure if it would break the shader compiler also in this case. The point here really is just that 16777215 is the maximum value which a 24 bit integer can hold. So maybe something like MAX_UINT24 would be appropriate.