We use fp16 for most values (e.g.: direction, color), which ultimately frees a vec4 (Currently unused) and a few other bits.