Shader PSA - be very careful passing float Inf default values into shaders now that the modern APIs support Inf and NaN in shader code.
Graphics compilers can reassociate order of computation, and we often end up with "0 * Inf" after reassociation resulting in a NaN which is sticky and causes a downstream mess for the rest of the shader.
Default allowing Inf and NaNs in graphics shaders was a mistake IMO. Old-school FTZ for NaN and clamp to min/max value for Inf was a lot more stable.