add three.js to support 3D