Added canvas to provide clearer interface for tiling texture