performance: unroll wall collision loop