add 2d and 3d demo