Have you thought over your process? My instinct is not to assign a texture to every hex, but to procedurally create one texture to cover the whole torus, which would be constructed out of normal tris.
Or you could separate out your hexes and do instanced drawing? That might be worth trying if you are up for it.