fn between_corners_in_direction_between( first_corner: IVec3, second_corner: IVec3, direction: DVec3, ) -> Vec<BlockPos>