added uniform3d support