modify the 3d framework