visibility as structured arrays

Does not work so well since this leads to the wrong memory layout.