playing with oscillation. make this in 3d