would texture atlas your tiles and just use the right texture coordinates.
I just looked up a texture atlas, and perhaps I miss understood it, or if there are special features in Unity 3D for it, but I have an issue it doesn't resolve.
The tiles will need to change. for instance, an explosion happens over grass, and there will no longer be grass, just charred dirt and gravel. I'll need to change out what these tiles are, on a regular basis in Real-Time.
Also, I don't actually need to do 3D collision detection here. Because my code contains a 2D array for a height map (managed), I can just apply the units position on the height map to define what Z level they are at. I can reserve collision detection for explosions, moving elements and buildings, but the ground can be fictitious in the physics sense. Rendering will still be quick because I'm using low polygon counts, and the area of visibility will be quite small. (maybe 100x100 tiles typically.)