adding canvas support and camera