improving 2d, 3d interation