Currently I'm doing: ```rust let bits_per_vertex_position_channel_x = range.as_vec3().x.log2().ceil() as u8; let bits_per_vertex_position_channel_y = range.as_vec3().y.log2().ceil() as u8; let bits_per_vertex_position_channel_z = range.as_vec3().z.log2().ceil() as u8; ``` IVec3 -> Vec3 -> log2 -> ceil -> cast to u8. Everything except log2() and cast to u8 can be done as vector ops.