The thing with battlemats is, obviously, you can draw on them, but that great benefit is also that you usually have to interrupt the action to draw on them.....if you do it in-game. Because of this, what usually happens is you end up drawing something rather crude.
Personally I don't think players really mind since crude outlines of rooms and obstacles on a battlemat is the de facto standard for most home games, but it doesn't have to be.
The answer is to pre-draw some of your rooms/battles onto pieces of acetate. This was my go-to response for multi-table (i.e. big) tournaments where I wanted all the tables to have a standardized battlemat overlay. You can get thin flat sheets meant for use with overhead projectors at most any office supply store.
|Some of the higher-end (& quality) stuff from Dick Blick|
I prefer the thick acetate because it is usually more flexible and easier to work with. The thinner flat sheets for overhead projectors are the best, but hard to pick up and place...or at least they are for me. You can solve that problem easily enough by taping a small pick-up tab on a discreet spot along the edge.
Something I've been meaning to do and haven't gotten around to, is creating some flat trees (outlines) that have been printed out onto the acetate that I can use as terrain. I could also do small buildings the same way. IIRC they cost about $1 a page at places like FedEx Kinkos and if you lighted the design enough in Photoshop you can still make out your square/hex lines form the underlying battlemat.